ein enzelner punkt mit imagge collision?[erledigt]

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

feuerball11

Betreff: ein enzelner punkt mit imagge collision?[erledigt]

BeitragMo, Apr 06, 2009 15:48
Antworten mit Zitat
Benutzer-Profile anzeigen
ist es möglich, eine collisopn zwichen einem einzelnem punkt und einem bild zu überprüfen???
  • Zuletzt bearbeitet von feuerball11 am Mo, Apr 06, 2009 16:09, insgesamt einmal bearbeitet

ozzi789

BeitragMo, Apr 06, 2009 15:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Mit ein wenig denken, ist es kein Problem -.-


Entweder mit Imagescollide / ImageRectCollide oder einer selbst geschriebenen Funktion (simple abfrage) => https://www.blitzforum.de/foru...hp?t=27025
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5
 

feuerball11

BeitragMo, Apr 06, 2009 16:05
Antworten mit Zitat
Benutzer-Profile anzeigen
heute ein bissle denkfaul.....

imagescollide brauch man doch 2 bilder oder?
mit imagerectcollide kann ich es mal probieren...

*edit* funktionert. danke
  • Zuletzt bearbeitet von feuerball11 am Mo, Apr 06, 2009 16:09, insgesamt einmal bearbeitet

ozzi789

BeitragMo, Apr 06, 2009 16:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Denkfaul, ja
Das kennt jeder, aber bitte überleg zuerst 5-10 min bevor du das BPP mit 5 neuen Threads vollpostest Wink

Nimmst du Plot / Writepixel oder Writepixel fast?
Wenn du Plot/Writepixel nimmst, hast du mehr speed wenn du ein ein pixel bild machst und das verwendest Very Happy
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5
 

DjDETE

BeitragMo, Apr 06, 2009 16:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Rect ist am schnellsten...
Aktuelles Projekt: XXX |XXX | 3% der v1b fertig
www.emu-soft.de.vu Für die Homepage suche ich noch Linktauschpartner, bei Interesse einfach melden.
 

feuerball11

BeitragMo, Apr 06, 2009 16:32
Antworten mit Zitat
Benutzer-Profile anzeigen
was ist für ein pixel oder ien paar mehr am schnellsten??

plot
writepixel
writepixelfast
oder rect ????

... oder nen image

ps: writepixelfast funtzt bei mir nicht....
mein beispiel:

Code: [AUSKLAPPEN]
Global a = 255
Global r = 255
Global g = 255
Global b = 0
Global rgb = a*$1000000 + r*$10000 + g*$100 + b
Global rgb2 = rgb And $FFFFFF


und später:

Function draw_feld()
LockBuffer
   For fel.feld = Each feld
      WritePixelFast fel\x,fel\y,rgb2
      
   Next
   UnlockBuffer
End Function



was ist daran nun falsch??ß ich bekomme dauernt ein memory... ich habe schon in der hilfe geschaut, finde aber nichts falsches....

hectic

Sieger des IS Talentwettbewerb 2006

BeitragMo, Apr 06, 2009 18:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Der Unterschied zwischen WritePixel und WritePixelFast ist, dass WritePixelFast keine automatische Überprüfung macht, ob ein Pixel außerhalb des Puffers gezeichnet wird. Dadurch wird es extrem schnell. Dafür muß man als Programmierer dann eben selbst für sorgen, dass dies nicht geschieht.

Dein Code funktioniert nicht, weil keine Angabe gemacht wurde, welcher Puffer gesperrt werden soll. Lies dir mal dazu die Hilfe durch WritePixelFast. Da wird es genau erklärt. Außerde kannst du die Hilfe auch in dein Blitz integrieren. Dann fallen auch keine solche Fragen mehr auf.
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D
 

feuerball11

BeitragMo, Apr 06, 2009 18:50
Antworten mit Zitat
Benutzer-Profile anzeigen
aber mit angaben funtzt es auch nicht...

hectic

Sieger des IS Talentwettbewerb 2006

BeitragMo, Apr 06, 2009 18:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Hast du dir dazu die Hilfe durchgelesen, die ich da verlinkt habe? Hast du das dortige Beispiel mal ausprobiert?

Im übrigen ist WritePixelFast langsamer als WritePixel, wenn man:
- immer nur ein Pixel zeichnet/ausliesst und dafür jedesmal den Puffer neu sperren und entsperren muß
- man eine eigene If X>799 or X<0 ... macht

Wichtig zu wissen ist auch, wie der Farbcode berechnet wird. Wenn du Farbe 0 auf schwarzem Hintergrund einzeichnest, wergibt es auch keinen Sinn.

Also was geht denn nun nicht? Wie sieht der Code aus?
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D

Noobody

BeitragMo, Apr 06, 2009 19:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Das sollte schon funktionieren, da der Standardwert bei LockBuffer und UnlockBuffer der durch SetBuffer gesetzte Puffer ist.
Ich schätze, das Programm wirft einen Fehler, weil du einfach ausserhalb der Bildschirmes zeichnest - probier testweise mal WritePixel anstatt WritePixelFast.
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun
 

feuerball11

BeitragMo, Apr 06, 2009 19:42
Antworten mit Zitat
Benutzer-Profile anzeigen
es lag an der position des pixels.... ich wuste nicht, das bei einem fenster von 400 auf 400 pixel die position 245,400 auserhalb des bildschirms liegt....

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group