Antwort schreiben  Thema schreiben 
Verfasser Nachricht
DoubleDD_aka_domis4
Durchstarter
**


Beiträge: 62
Gruppe: User
Registriert seit: Sep 2011

Status: Offline
Danke erhalten: 8
Beitrag: #1
xPSP  [C] mitscrollender Hintergrund

Ich bin recht weit fortgeschritten, mit dem Technischen in meinem homebrew. Auch ein eigenes Mappingsystem nenne ich mein Eigen^^

ich würde gerne, ein im Hintergrund sich bewegendes Bild zeichnen, dass zwar mit der Kamera läuft, jedoch keinen Rand anzeigt. Im Prinzip eben, der Teil, der am linken/rechten/unteren/oberen Teil verschwindet wieder im entgegengesetzter Richtung drawen.

mein Ansatz ist:
blitAlphaImageToScreen(0+camx,0+camy,480+camx,272+camy,grass ,0,0);

leider ist funktioniert das nur (falschherum) mit den y koordinaten und X steht an 464 fest. Irgendwo liegt ein Denkfehler^^

28.04.2012 11:17
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
vista200
Head of Awesomeness
***


Beiträge: 189
Gruppe: User
Registriert seit: Jul 2009

Status: Offline
Danke erhalten: 139
Beitrag: #2
xPSP  RE: [C] mitscrollender Hintergrund

Ich musste den Post jetzt zehn Mal lesen und habe glaube ich immer noch nicht ganz verstanden, was Du machen willst...

Willst Du sowas wie eine Endlos-Karte haben? Die Figur würde sich sozusagen auf einer Kugel bewegen. Wenn sie immer nach oben (zum Nordpol) geht und einfach immer geradeaus, dann würde sie irgendwann am Südpol ankommen. Wenn sie weitergeht kommt sie da an, wo sie losgelaufen ist.

Da musst Du dann gucken, ob die Figur mittlerweile weiter gelaufen ist als die Map breit ist. Wenn die Karte z.B. 16 Felder breit ist, dann soll das 17. wieder das erste sein, richtig?

Mit ein bisschen Mathematik (Modulo lässt grüßen) kann man das Problem leicht lösen.

Hoffe, das hilft Wink

Mit freundlichen Grüßen
wurzelbums


28.04.2012 15:03
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
DoubleDD_aka_domis4
Durchstarter
**


Beiträge: 62
Gruppe: User
Registriert seit: Sep 2011

Status: Offline
Danke erhalten: 8
Beitrag: #3
RE: [C] mitscrollender Hintergrund

ja, ist ein bisschen kompliziert zu erklären^^

die View ist 480x272 groß. In der View soll ein einfaches Bild gedrawt werden. Bis dahin kein Problem.
Wenn man sich allerdings bewegt, soll sich der inhalt des Bildes in entgegengesetzter Richtung bewegen, nicht jedoch das gesammte Bild.

es soll der Eindruck entstehen, dass das Bild unendlich groß ist. In wirklichkeit ist es nur 480x272

bisher habe ich das so gelöst:
camx/y = 64 //Kamerafokus
x/y = 64 // Spielerposition
im prinzip also camx/y = x/y

blitAlphaImageToScreen(0+camx,0+camy,camx+480,camy+272,grass ,camx-x,camy-y);


das ist das genaue Gegenteil vondem ich will^^das Bild bewegt sich entgegen der Kameraposition. Einfach umdrehen kann ich das natürlich nicht.

28.04.2012 15:33
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Neutrosider
Developer
*


Beiträge: 2.442
Gruppe: Developer
Registriert seit: Feb 2010

Status: Offline
Danke erhalten: 2325
Beitrag: #4
RE: [C] mitscrollender Hintergrund

doch, sag einfach camx=-x und camy=-y





GEGEN ACTA, SOPA UND PIPA!
was sind ACTA, SOPA und PIPA?
Infos dazu hier (video), hier (video) und hier (website)
28.04.2012 16:43
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
DoubleDD_aka_domis4
Durchstarter
**


Beiträge: 62
Gruppe: User
Registriert seit: Sep 2011

Status: Offline
Danke erhalten: 8
Beitrag: #5
RE: [C] mitscrollender Hintergrund

so einfach dann doch nicht. ich habe anstatt camx/y eine neue definiert, um weiteren Problemen aus dem weg zu gehen.

int xcam=-x;
int ycam=-y;
blitAlphaImageToScreen(0+camx,0+camy,480+camx,272+camy,grass ,xcam+x,ycam+y);

leider bewegt sich das Bild in die falsche Richtung, sowie es an der X Koordinate bei +464 ein Ende hat.

28.04.2012 20:25
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Antwort schreiben  Thema schreiben 

Druckversion anzeigen
Thema einem Freund senden
Thema abonnieren | Thema zu den Favoriten hinzufügen




» zum Seitenanfang