Graf. Schönh.fehler bei "Tileartigem" BG [gelöst]

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

Hakkai

Betreff: Graf. Schönh.fehler bei "Tileartigem" BG [gelöst]

BeitragMi, Dez 23, 2009 23:55
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich sezte mir einen, sich bewegenden (von oben nach unten laufenden) Hintergrund mit folgendem Code zusammen:

Code: [AUSKLAPPEN]
   
; Hintergrund terrain
If Abs(pic_timer-MilliSecs())/4 >= ImageHeight(bg1) Then pic_timer = MilliSecs() ;Grafiken wieder hochsetzen wenn img einmal verschwunden
   
   For i2 = -1 To 10 Step 1
      For i=0 To 10 Step 1
         DrawImage bg1, ImageWidth(bg1)*i, ImageHeight(bg1)*i2 - (pic_timer-MilliSecs())/4
         If ImageWidth(bg1)*i > resolution_x Then Exit
      Next
      If ImageHeight(bg1)*(i2) > resolution_y Then Exit
   Next


dabei, bekomme ich gelegentlich horizontale schwarze Linien. kennt jmd. die Lösung für das Problem?

Das Spiel nutzt zwar nur 2 Dimmensionen ist aber in B3D programmiert, ich hoffe das muss nicht verschoben werden.

Die Linien bekomme ich nicht Fotografiert, aber sie sind immer mal für eine millisekunde über dem Hintergrund:
user posted image
  • Zuletzt bearbeitet von Hakkai am Do, Dez 24, 2009 0:21, insgesamt einmal bearbeitet

SYSThern

BeitragDo, Dez 24, 2009 0:12
Antworten mit Zitat
Benutzer-Profile anzeigen
ich denke das hat was mit dem bildschirm aufbau zu tun ?

Flip 0??
Timer??

mfg SYSThern
Tools and Programms
--------------------
www.systhern.de

Hakkai

BeitragDo, Dez 24, 2009 0:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]


Flip

Cls

draw_2d()

WaitTimer( frame_timer )



in der Funktion draw_2d() steckt der Code von ganz oben drin.
  • Zuletzt bearbeitet von Hakkai am Do, Dez 24, 2009 0:29, insgesamt 2-mal bearbeitet

Holzchopf

Meisterpacker

BeitragDo, Dez 24, 2009 0:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Speichere den Wert von MilliSecs am Anfang der Hauptschleife in eine Variable und arbeite später mit dieser Variable. Denn sonst kommt es eben zu diesen Verschiebungen, weil innerhalb der Zeichenroutine der Wert von MilliSecs ändern kann.

mfG
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm

Hakkai

BeitragDo, Dez 24, 2009 0:21
Antworten mit Zitat
Benutzer-Profile anzeigen
Irre, es klappt. Tausend Dank.

Nicdel

BeitragDo, Dez 24, 2009 10:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Mach noch Flip 0 statt Flip, sonst nützt der Timer nichts Wink
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group