DesktopBuffer für Blitz3D
Übersicht

![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Etwas weniger spam würde diesem Thread sehr gut bekommen. | ||
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 |
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
ChristianK hat Folgendes geschrieben: Nici, hast du vorher auch GetDesktopBuffer aufgerufen?
Ja, habe ich. Ein kleiner Codeausschnitt: Code: [AUSKLAPPEN] GetDesktopBuffer() For y = 0 To gfy - 1 For x = 0 To gfx - 1 rgb% = GetDesktopPixel(x,y) a = (rgb And $FF000000)/$1000000 r = (rgb And $FF0000)/$10000 g = (rgb And $FF00)/$100 b = rgb And $FF PokeByte(desktopbank,3*(x * y),r) PokeByte(desktopbank,3*(x * y) + 1,g) PokeByte(desktopbank,3*(x * y) + 2,b) Next Next InitDesktop wurde auch schon ausgeführt. MfG und danke für die schnelle Antwort. ![]() |
||
ChristianK |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hm, bei mir werden die richtigen Farbwerte zurückgegeben. Das erste Sample funktioniert dann bei dir vermutlich auch nicht, oder? | ||
AdvanceLcd
Intel Core 2 Duo 3.2 GHz, 4 GB RAM, GeForce 8800 GTX | MacBook Pro 15,4″ Intel Core 2 Duo 2.4 GHz, 2 GB RAM, GeForce 8600M GT |
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Doch, das funktioniert, das ist ja das verrückte.
Wenn ich nun die Pixel per WritePixelFast zeichne, sehe ich nichts. Zeichne ich sie einfach rot, werden sie angezeigt. |
||
![]() |
HolzchopfMeisterpacker |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] PokeByte(desktopbank,3*(x * y),r)
PokeByte(desktopbank,3*(x * y) + 1,g) PokeByte(desktopbank,3*(x * y) + 2,b) ist falsch, das müsste Code: [AUSKLAPPEN] PokeByte(desktopbank,3*(x + y * DesktopWidth),r)
PokeByte(desktopbank,3*(x + y * DesktopWidth) + 1,g) PokeByte(desktopbank,3*(x + y * DesktopWidth) + 2,b) sein. Und wieso überhaupt eine Zerlegung? Den Wert könntest du auch einfach mit PokeInt speichern... |
||
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BY ♫ BinaryBorn - Yogurt ♫ (31.10.2018) Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm |
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo,
danke vielmals Holzchopf! Jetzt geht es. Entschuldigung an ChristianK dass ich seine Lib dafür verantwortlich machte. ![]() MfG The_Nici Edit: Achja, und, Holzchopf, ich brauche nur 3 bytes. Integer = 4 bytes = 25% mehr Speicherauslastung = 25% mehr Traffic beim versenden. ;> |
||
jeykey |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Weis jemand wie man die Funktion "GrabDesktop" auch unter BlitzMax verwenden kann?
Das Problem ist, dass ich nicht weis was ich für den Parameter "buffer" übergeben soll. Die Funktion "ImageBuffer" gibt es ja nicht in BlitzMax... Ich hab schon unterschiedliche Sachen wie "pixmap.PixelPtr(0,0)" ausprobiert, aber nichts hat funktioniert. |
||
ChristianK |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Die Funktion kannst du leider nicht mit BlitzMax benutzen. Läuft nur mit Blitz3D-Buffern. | ||
AdvanceLcd
Intel Core 2 Duo 3.2 GHz, 4 GB RAM, GeForce 8800 GTX | MacBook Pro 15,4″ Intel Core 2 Duo 2.4 GHz, 2 GB RAM, GeForce 8600M GT |
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mit BlitzMax geht es auch:
https://www.blitzforum.de/foru...hp?t=15645 |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
![]() |
Pummelie |
![]() Antworten mit Zitat ![]() |
---|---|---|
Entschuldigung, das ich die Leiche schände, doch ich habe ein Problem mit der DLL.
Ich kann damit keine "großen" Desktop's abfragen... Nach einem bestimmten bereich liefert mit die DLL bei GetDesktopPixel immer nur eine 0 zurück... ZB: GetDesktopPixel(1500,50) = 0 |
||
It's done when it's done. |
![]() |
hazumu-kun |
![]() Antworten mit Zitat ![]() |
---|---|---|
Scheint eine interne Grenze der DLL zu sein. | ||
Warum kann es keine omnipotente Macht geben?
Weil diese omnipotente Macht in der Lage sein müsste, einen so schweren Stein zu schaffen, dass sie ihn nicht heben kann -> nicht omnipotent |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group