Writepixelfast -> memory access violation
Übersicht

SuthrielBetreff: Writepixelfast -> memory access violation |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
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 ![]() 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 ![]() 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 |
![]() Antworten mit Zitat ![]() |
---|---|---|
lockbuffer() drin? | ||
Diese Signatur ist leer. |
Suthriel |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
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 |
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
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 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group