Writepixelfast -> memory access violation

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

Suthriel

Betreff: Writepixelfast -> memory access violation

BeitragMi, Dez 06, 2006 12:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo, ich bin zugegebenermaßen brandneu bei Blitzbasic, derzeit auch damit beschäftigt, eifrig die Onlinehilfe zu studieren und die dortigen beispiele auszutesten (in Form von kopieren und sehen was passiert).

Bei dem Befehl Writepixelfast jedoch komm ich etwas ins grübeln, in der Onlinehilfe gibt es dort ein Beispiel, wo ein einfaches bewegtes Sternenfeld oder Regenschauer dargestellt werden sollte. Ich habe nun zum tsten cnihts weiter gemacht, als erstmal das komplette beispiel in BB kopiert und laufen lassen wollen (es war vollständig)
Nur kam in genau diesem Beispiel bei Writepixelfast die Fehlermeldung über Memory access violation. Auch bei anderen Beispielen mit diesem befehl kam es zu dieser fehlermeldung (ein anderes war mit Lightmaps erstellen). Als ich in den beiden Beispielen jedoch einfach nur aus writepixelfast den Befehl Writepixel machte (das fast also einfach löschte), funktionierten beide Programme wunderbar Confused
Frage, ist das normal? Oder gibts zwischen den beiden Befehlen Unterschiede, die nicht in der Onlinehilfe stehen? Oder ist mein Rechner einfach nur zu blöd? (oder ich?)

Schöne Grüße und fröhlichen Nikolaus
ein frischgebackener BB-Noob ^.^ (und stolz drauf Wink )

PS: ich benutz eine Demo von Blitz3D, version müsste 1.82 sein
Wer die Pizza nicht ehrt, ist die Pasta nicht wert.

bekennender Noob

darth

BeitragMi, Dez 06, 2006 13:54
Antworten mit Zitat
Benutzer-Profile anzeigen
lockbuffer() drin?
Diese Signatur ist leer.
 

Suthriel

BeitragMi, Dez 06, 2006 14:38
Antworten mit Zitat
Benutzer-Profile anzeigen
von lockbufer hab ich was gelesen, kann grade nicht nachschauen, da ich auhf Arbeit bin. Aber das Beispiel ist ja direkt aus der onlinehilfe, da sollte es eigentlich funzen.
Stand beim anderen Lightmapbeispiel sogar fett dahinter, das der sehr wichtig ist.
Braucht writepixel kein lockbuffer() um zu funzen?
Wer die Pizza nicht ehrt, ist die Pasta nicht wert.

bekennender Noob

BladeRunner

Moderator

BeitragMi, Dez 06, 2006 14:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
If Y#(i)>479 Then X(i)=Rand(0,639):Y#(i)=Y#(i)-479:V#(i)=Rnd(1,5)

Der Fehlerteufel macht leider auch nicht vor der OH halt:
Im Original steht da eine 480 anstatt einer 479 und deswegen kann es sein dass versucht wird ein Pixel ausserhalb des Screens zu zeichnen. Das geht mit Writepixelfast nicht. Der Code oben ist verbessert und funktioniert fehlerfrei.

Writepixel geht ohne ql:lockbuffer da es eine Grenzprüfung enthält - dafür ist es aber wesentlich langsamer als writepixelfast.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group