PlanetSwitch Planet3DS PlanetVita PSP.de PlanetiPhone Classics Forum Handheld-Wiki

PGN-ID:[?] (Nicht eingeloggt)
Login
Registrieren
PlanetDS PlanetGameboy N-Page.de
portablegaming.de  

Zurück   portablegaming.de > Allgemeines Spielehandheldforum, GBA, N-Gage und Development > Development Abteilung


Development Abteilung Ihr wollt für euren Lieblingshandheld Spiele oder Tools entwickeln?
Bitte die Präfixe benutzen!

Antwort
 
LinkBack Themen-Optionen Thema durchsuchen
Alt 09.05.2005, 15:15   #1
 
Registriert seit: 11.06.2004
Alter: 32

opticdelusion hat die Renommee-Anzeige deaktiviert

opticdelusion eine Nachricht über ICQ schicken
Standard Flüssige Animationen?

Ich hab erst neulich mit der GBA-Programmierung angefangen. Davor hatte ich schon mit Direct3D gearbeitet, wurde aber langweilig.

Jetzt hab ich eine Frage: Wie bekomm ich es hin, dass meine Animationen (Sprites verschieben ) flüssig sind? Also bis jetzt hab ich da ziemlich wenig fps (schätzungsweise 20). Muss ich dazu mitn Backbuffer arbeiten? Wie geht das? Ich benutze Mode4.

Wenn ihr den code sehen wollt, poste ich noch ne gekürzte Version nach. (ist nicht viel)
Schonmal Danke!
opticdelusion ist offline   Mit Zitat antworten
Sponsored Links
Alt 09.05.2005, 16:42   #2
ehem. Teammitglied
 
Benutzerbild von Tharo
 
Registriert seit: 02.09.2002
Ort: フランクフルト
Spielt gerade: FF7 Remake

Tharo wird schon bald berühmt werdenTharo wird schon bald berühmt werden

Standard

Okay. Also ich gehe mal davon aus, dass du die HW sprites benutzt. Die werden von einem extra chip gerendert und da hilft dir auch double buffering nicht soo viel weiter.

In jedem Fall ist es schonmal ganz wichtig das du gebrauch vom "V_Blank" machst, denn sonst flackert sowieso alles.


Eigentlich haben wir tutorials dazu, die sind aber grade im Umzug und daher nur auf "robsite.de" gebackupt zu finden. sorry :/
__________________
Ney ney ney. So viel Sand und keine Förmchen

Code:
Hey DU! Join uns im PG Discord! https://discord.gg/SVqutfFpTc
Tharo ist offline   Mit Zitat antworten
Alt 09.05.2005, 18:02   #3
Moderator
 
Benutzerbild von goldmomo
 
Registriert seit: 03.02.2003

goldmomo hat die Renommee-Anzeige deaktiviert

Standard

Mode 4 ist 240x160x16 der nimmt schon HW-Spritespeicher weg. Ich gehe mal davon aus, dass du die Sprites selber zeichnest (also mit CPU in den VRAM kopierst).

Wenn du Sprites benutzen willst dann nimm die HW-Sprites, davon gibts 128 und die bekommst nicht zum Ruckeln (eher zum Flackern (siehe Timing)).
Dann kommts auch auf deinem Code an (Thumb/Arm) und wo er liegt, .......

Würde die stark empfehlen, erstmal die Tuts zu lesen. Denn den GBA programmiert man nicht wie einen PC, da ist alles etwas anders. Besonders Mode 3/4/5 sind eher für Spiele mit Sprites etc. sinnlos.

Wenn du HW-Sprites genommen hast dann zeig mal den Code.
goldmomo ist offline   Mit Zitat antworten
Alt 09.05.2005, 19:37   #4
 
Registriert seit: 11.06.2004
Alter: 32

opticdelusion hat die Renommee-Anzeige deaktiviert

opticdelusion eine Nachricht über ICQ schicken
Standard

Es tut halt ruckeln, aber gleichmäßig, halt ne animation mit wenig fps.
Der source (gekürzt) hängt im Anhang und ich hab ihn mit dem devkitadvance r4 erfolgreich komplimieren können. Ich hab alle Header, die ich benutze, mal mit reinpepackt.
Angehängte Dateien
Dateityp: zip pong.zip (5,7 KB, 65x aufgerufen)
opticdelusion ist offline   Mit Zitat antworten
Alt 10.05.2005, 07:09   #5
ehem. Teammitglied
 
Benutzerbild von Tharo
 
Registriert seit: 02.09.2002
Ort: フランクフルト
Spielt gerade: FF7 Remake

Tharo wird schon bald berühmt werdenTharo wird schon bald berühmt werden

Standard

Ich schau heut mittag ma rein
__________________
Ney ney ney. So viel Sand und keine Förmchen

Code:
Hey DU! Join uns im PG Discord! https://discord.gg/SVqutfFpTc
Tharo ist offline   Mit Zitat antworten
Alt 10.05.2005, 08:21   #6
Moderator
 
Benutzerbild von goldmomo
 
Registriert seit: 03.02.2003

goldmomo hat die Renommee-Anzeige deaktiviert

Standard

Sieht soweit ganz gut aus. Muesste mal den Code der Funktion 'WaitForVsync' sehen. Wenn es die Bios Funktion (4/5) ist, ist es wichtig das auch die entsprechenden Interrupts gesetzt sind und auch eine Flag gesetz wird ("The interrupt handler must update the 16bit value at [3007FF8h] in WRAM by software").
Wenn es ein Busy-Wait ist der nur den V-Counter testet ist, kann es sein, dass die restlichen Funktionen zu schnell sind und er in mehren Durchgaengen den selben V-Count hat und so nicht sauber synchronisiert, somit also Frameschwankungen bekommt. Am besten da etwas Zeit verbraten oder am ende auf einen tieferen V-Count warten.
goldmomo ist offline   Mit Zitat antworten
Alt 11.05.2005, 18:25   #7
 
Registriert seit: 11.06.2004
Alter: 32

opticdelusion hat die Renommee-Anzeige deaktiviert

opticdelusion eine Nachricht über ICQ schicken
Standard

Code:
void WaitForVsync()
{
	while((volatile u16)REG_VCOUNT != 160){}
}
Damit warte ich laut Tutorial darauf, das der screen mit zeichnen fertig ist.
opticdelusion ist offline   Mit Zitat antworten
Alt 11.05.2005, 18:42   #8
Tom männlich
 
Benutzerbild von Tom
 
Registriert seit: 08.10.2002
Alter: 35

Tom hat die Renommee-Anzeige deaktiviert

Standard

Versuch mal das:

Ändere die Funktion zum warten von

while((volatile u16)REG_VCOUNT != 160){}

auf

while((volatile u16)REG_VCOUNT < 160){}

und füge nach

MoveBall();
WaitForVsync();
CopyOAM();

die folgende Zeile ein:

while((volatile u16)REG_VCOUNT >= 160){}

Damit sollte er warten, bis der Vblank zu Ende ist, bevor er weiter macht..
Tom ist offline   Mit Zitat antworten
Alt 11.05.2005, 18:44   #9
ehem. Teammitglied
 
Benutzerbild von Tharo
 
Registriert seit: 02.09.2002
Ort: フランクフルト
Spielt gerade: FF7 Remake

Tharo wird schon bald berühmt werdenTharo wird schon bald berühmt werden

Standard

Eigentlich sollte da kein fehler sein. Probier mal 165 oder 170. Der GBA hat nämlich noch etwa 20 "unsichtbare" pixel die zum abfangen fürs flackern da sein sollten. Vielleicht ist es dann ja besser oder der fehler steckt tiefer.
__________________
Ney ney ney. So viel Sand und keine Förmchen

Code:
Hey DU! Join uns im PG Discord! https://discord.gg/SVqutfFpTc
Tharo ist offline   Mit Zitat antworten
Antwort

  portablegaming.de > Allgemeines Spielehandheldforum, GBA, N-Gage und Development > Development Abteilung

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

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 an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Strichmännchen Animationen DerWixxer Seiten- und Forumfeedback 138 22.06.2006 14:46
Stopmotion Animationen KevituZ Art 21 16.06.2006 13:20
Strichmänchen-animationen Taifun Art 1059 06.06.2006 17:01
Wie bekomme ich Animationen in meine Signatur??? Zockerbabe Seiten- und Forumfeedback 3 21.05.2005 15:00
Flash-animationen auf dem n-gage? Taifun Sonstiges (N-Gage) 4 07.03.2004 18:21


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:06 Uhr.


Powered by vBulletin® Version 3.8.9 (Deutsch)
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.0
Template-Modifikationen durch TMS
PortableGaming.de © bk 2000 - 2010

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231