Programmier-Problem

Hier kann über alles diskutiert werden, wirklich alles. Betonung liegt auf "diskutiert", das ist also kein Freischein zum Spammen.
(Beitragszähler deaktiviert)
Antworten
Benutzeravatar
WILLenloser Zombie
Kopolaspinne
Beiträge: 947
Registriert: 18. Nov 2007, 09:46
Wohnort: Buran

Programmier-Problem

Beitrag von WILLenloser Zombie » 21. Dez 2009, 16:08

Wollte mal fragen wie man folgendes am besten umsetzt:

Man hat zum Beispiel eine Karte von 100 x 100 Feldern, aber nur einen Kartenausschnitt (also das was man sieht) von 30 x 30 Feldern... Den Kartenausschnitt kann man natürlich bewegen...

Jedes Feld (ein Feld könnte dann wiederum aus zum Beispiel 10 x 10 Pixeln bestehen) kann dann unterschiedlich aussehen und im Kartenausschnitt geändert werden...

Nun ist die Frage, wie setze ich das am geschicktesten um, dabei kommt es mir vor allem auf die Rechenleistung drauf an...

Folgende Ansätze hätte ich:

1. Ein Array, unterschiedlichem Aussehen setzt man bestimmten Zuständen gleich, die dann für jedes Feld gespeichert und ausgelsen werden wenn man den Kartenausschnitt bewegt...

2. Eine Bitmap im Hintergrund, die speichert wie die Felder aussehen die man gerade nicht sieht

Hoffe auf Unterstützung :)
"It is said that your life flashes before your eyes just before you die. That is true, it's called Life."
-- Terry Pratchett

Nils
Teidam
Beiträge: 162
Registriert: 10. Mai 2009, 12:29

Re: Programmier-Problem

Beitrag von Nils » 21. Dez 2009, 16:59

Um dir richtig helfen zu können währe es wichtig zu wissen in welcher Sprache und umgebung das laufen soll und wass du am ende damit vorhast. (Datenbank im Hintergrund oder sowas?)

Nils

Benutzeravatar
WILLenloser Zombie
Kopolaspinne
Beiträge: 947
Registriert: 18. Nov 2007, 09:46
Wohnort: Buran

Re: Programmier-Problem

Beitrag von WILLenloser Zombie » 21. Dez 2009, 19:47

Also eigentlich sollte es halt in Delphi sein, macht ja aber keinen großen unterschied zu c++ oder java...

Hintergrund ist für ein Informatikprojekt ein spiel, bei dem man halt aus draufsicht agiert...
"It is said that your life flashes before your eyes just before you die. That is true, it's called Life."
-- Terry Pratchett

Brio
Kriechlapf
Beiträge: 42
Registriert: 17. Feb 2006, 23:14

Re: Programmier-Problem

Beitrag von Brio » 21. Dez 2009, 21:15

also im Prinzip willst du sowas ähnliches wie die Karte in Freewar realisieren, wenn ich das richtig verstanden habe?

Array wäre halt die programmiertechnisch einfachste Lösung, denk ich mal. Bringt aber natürlich den Nachteil, dass ab einer bestimmten Kartengröße sehr viel Speicher benötigt wird. Kurz: Je größer die Gesamtkarte, desto langsamer das ganze Skript.
Lösen könnte man das natürlich, wenn man mit Datenbanken arbeitet, da weiß ich aber nicht wie das in Delphi mit DBs aussieht....

Bei der Bitmap hab ich keine Ahnung, könnt ich mir aber gut vorstellen, wenn in Delphi die entsprechenden Auslese-Funktionen bereitstehen.

mfg brio

Benutzeravatar
WILLenloser Zombie
Kopolaspinne
Beiträge: 947
Registriert: 18. Nov 2007, 09:46
Wohnort: Buran

Re: Programmier-Problem

Beitrag von WILLenloser Zombie » 21. Dez 2009, 23:29

Naja, eher wie das Scrollen in einem Echtzeit-Strategie-Spiel ;D
Bringt aber natürlich den Nachteil, dass ab einer bestimmten Kartengröße sehr viel Speicher benötigt wird.
Eben darum geht es mir, wäre blöd wenn sich der Spieler dann einzelne Pics (von garantiert schlechter Grafik xD) anschauen darf ^^
Deswegen wollt ich halt wissen, was am wenigsten Rechenleistung benötigt

Trotzdem danke für die Hilfe :)
"It is said that your life flashes before your eyes just before you die. That is true, it's called Life."
-- Terry Pratchett

Benutzeravatar
ChrismanusMcBeth
Kaklatron
Beiträge: 30
Registriert: 9. Feb 2004, 20:47

Re: Programmier-Problem

Beitrag von ChrismanusMcBeth » 23. Dez 2009, 23:17

Soviel Rechenleistung braucht man jetzt auch nicht für ein 100x100 Array

Benutzeravatar
WILLenloser Zombie
Kopolaspinne
Beiträge: 947
Registriert: 18. Nov 2007, 09:46
Wohnort: Buran

Re: Programmier-Problem

Beitrag von WILLenloser Zombie » 24. Dez 2009, 03:53

Stimmt schon, aber 1. sollen ja noch andere Prozesse nebenbei laufen und 2. war das natürlich nur ein Beispiel mit nem 100x100 Feld

Werds am besten mal woanders versuchen ;D
"It is said that your life flashes before your eyes just before you die. That is true, it's called Life."
-- Terry Pratchett

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 354 Gäste