AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Spieloberfläche aus Quadraten

Ein Thema von Nicolai1234 · begonnen am 3. Okt 2004 · letzter Beitrag vom 4. Okt 2004
Antwort Antwort
Nicolai1234

Registriert seit: 21. Feb 2004
1.008 Beiträge
 
Turbo Delphi für Win32
 
#1

Spieloberfläche aus Quadraten

  Alt 3. Okt 2004, 20:36
Ich würde gerne eine Spieloberfläche aus einzelnen Quadraten erstellen!
Also meine Spielfigur ist ein Quadrat groß, ein Baum ist ein Quadrat groß usw. (wie Pokemon/Zelda usw.)
Ich habe beispielsweise eine Map von 100x100 Feldern.
Der Spieler soll immer nur einen Ausschnitt von 9x9 Feldern sehen, wobei die Speilfigur immer in der Mitte stehen soll!
Wie kann ich das am besten verwirklichen?
Ich weiß nicht, wie ich das angehen soll, weil wenn man dich bewegt, müssen ja immer ein paar neue Quadrate geladen werden!
Wie kann ich das machen? Ich bräucht mal einen Gedankenanstoss!
Danke im voraus
  Mit Zitat antworten Zitat
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#2

Re: Speiloberfläche aus Quadraten

  Alt 3. Okt 2004, 20:40
Nimm dir doch erstnal ein array[0..99] of array[0..99] of TKleinesQuadrat und merkst dir die Position der Figur. Wenn der Spieler dann auf -> drückt weisst du dann welche Quadrate du dann neu Zeichnen musst.
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat
Nicolai1234

Registriert seit: 21. Feb 2004
1.008 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Speiloberfläche aus Quadraten

  Alt 3. Okt 2004, 20:46
Wahrscheinlich unterschätze ich die Rechenleistung unser 3 GHZ!
Ich hatte gedacht, dass die Ladezeit zu langsam sein würde, wenn man es so macht!
Bei der Methode würde mir aber der Übergang zwischen den 2 Bildern nicht gefallen! Da wäre das zweite Bild halt einfach da, aber es wäre schöner, wenn es sich quasi verschiebt, sodass man auch erkennt, dass die Spielfigur läuft!
Sorry, hatte mich oben zu unpräzisiese ausgedrückt!
  Mit Zitat antworten Zitat
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#4

Re: Spieloberfläche aus Quadraten

  Alt 3. Okt 2004, 21:07
Ich hab dir mal was aus einem meiner Programme rausgeschrieben, vielleicht kannst du es für deine Zwecke anpassen. Ich hab ein Image in eine ScrollBox gesteckt, die scrollt sobald sich die Maus im Randbereich der Scrollbox bewegt. Du könntest jetzt ein Riesenimage mit den 10000 Quadraten reinzeichnen und dann mit der Methode bewegen.
Angehängte Dateien
Dateityp: pas unit1_735.pas (1,5 KB, 18x aufgerufen)
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat
Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#5

Re: Spieloberfläche aus Quadraten

  Alt 3. Okt 2004, 23:12
wenn man da wirklich das ganze Image reinhaut, dann wird es wirklich zu lahm. immer nur den sichtbaren teil zeichenen!
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat
Nicolai1234

Registriert seit: 21. Feb 2004
1.008 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Spieloberfläche aus Quadraten

  Alt 4. Okt 2004, 10:38
Zitat von nailor:
wenn man da wirklich das ganze Image reinhaut, dann wird es wirklich zu lahm. immer nur den sichtbaren teil zeichenen!
Das ganze Bild möchte ich da auch nicht reinmachen!
Aber wenn ich nur den sichbaren Teil nehmen, weiß ich nicht, wie ich den Übergang machen soll, damit man auch erkennt, dass die Figur läuft!
Weiß da einer Rat?
  Mit Zitat antworten Zitat
Benutzerbild von dizzy
dizzy

Registriert seit: 26. Nov 2003
Ort: Lünen
1.932 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Spieloberfläche aus Quadraten

  Alt 4. Okt 2004, 12:34
Die gerade eben noch nicht sichtbaren Quadrate schon mal "vorladen", und bei Bedarf scrollen.

Dann hast du einen Quadrat-Overhead der erträglich ist, da du nur den Rahmen um den sichtbaren Bereich vorab schon mal im Speicher hast.

Wenn die Quadrate zu klein sind oder das nachladen zu langsam für die Scrollgeschwindigkeit ist, dann könnte man diesen "Rahmen" ja einfach "dicker" machen.

Frag mich aber nicht nach einer Umsetzung - das ist nur ne theoretische Überlegung! Hab sowas noch nicht gemacht

Gruss,
Fabian
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat
Nicolai1234

Registriert seit: 21. Feb 2004
1.008 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: Spieloberfläche aus Quadraten

  Alt 4. Okt 2004, 13:18
Würdet ihr es denn auch mit einer scrollbox machen oder gibt es da noch eine andere Variante?
  Mit Zitat antworten Zitat
Benutzerbild von dizzy
dizzy

Registriert seit: 26. Nov 2003
Ort: Lünen
1.932 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: Spieloberfläche aus Quadraten

  Alt 4. Okt 2004, 13:30
Ne Scrollbox wäre da imho völlig unangebracht. Ich würde das Scrolling dann eher per Hand in einer PaintBox machen, oder aber evtl. auf nem DirectX-Surface (habbich aber auch noch nie gemacht ).

Die Scrollbox macht eher nur dann Sinn, wenn du die gesamte Karte einlädst. Ansonsten musst du ja nach dem Scrollen den neuen Bereich als Mitte ansehen, ein paar Rand-Quadrate fallen weg, ein paar kommen hinzu, und du müsstest dann auch wieder "von Hand" hin und her scrollen. Imho wenig komfortabel.
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:30 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz