Grafigbuffer versenden

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

Silernthunt4r

Betreff: Grafigbuffer versenden

BeitragFr, Apr 23, 2010 22:42
Antworten mit Zitat
Benutzer-Profile anzeigen
ist es möglich einen grafigbuffer per udp zu versenden ? wenn ja wie?

Starwar

BeitragFr, Apr 23, 2010 22:52
Antworten mit Zitat
Benutzer-Profile anzeigen
ReadPixelFast und dann die Daten versenden. Ist aber sehr langsam. Also Echtzeit kannst du vergessen.
MFG

hazumu-kun

BeitragFr, Apr 23, 2010 23:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn du in Echtzeit arbeiten willst bist du gezwungen den Desktopbuffer auf 8bit Grafik runterzurechnen und die Pixeldaten dann zu verschicken.
Ansonsten sind es 3 bis 4mal soviele Daten.

EDIT:
Du wirst nie auf ne ansehnliche Framerate kommen, allein schon deswegen weil das Umrechnen zum Traficschonen, die CPU ausbremst.
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

ToeB

BeitragSa, Apr 24, 2010 0:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Teil liebe den Bildschirm in bewegliche und unbewegliche objekte auf. Die unbeweglichen werden am afang dem Client mitgeteilt, die beweglichen fortlaufend. Falls du z.B. level dateien für ein "level-bild" verschicken möchtest, tu das auch am anfang und nicht während des spieles Smile

mfgToeB
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!
 

Silernthunt4r

BeitragSa, Apr 24, 2010 17:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Erstmal danke für die Zahlreichen antworten, aber ich verstehe leider noch nicht wie ich den buffer überhaupt senden bzw empfangen soll.

Ich hab mir das bisher so gedacht:

Code: [AUSKLAPPEN]

CopyRect 0, 0, ClientWidth(Desktop()),  ClientHeight(Desktop()), 0, 0, DesktopBuffer()
WriteLine  Stream,DesktopBuffer()

SendUDPMsg Stream,BroadCast,8080


oder

Code: [AUSKLAPPEN]

CopyRect 0, 0, ClientWidth(Desktop()),  ClientHeight(Desktop()), 0, 0, DesktopBuffer(),Stream

SendUDPMsg Stream,BroadCast,8080

ToeB

BeitragSa, Apr 24, 2010 18:21
Antworten mit Zitat
Benutzer-Profile anzeigen
Mhmm... das hast du was falsch verstanden.

Kes dir mal die hilfe zu CopyRect und SendUDPMsg durch...

Du kannst kein Buffer handle verschicken, dann würde der empfänger nämlich nur eine Zahl bekommen, die bei ihm entweder eine andere oder gar keine beduetung hat. Und das Handle hat nur in dem Programm selber einen "sinn", schickt man das handle an einen anderen, so kann der damit nix anfangen, weil der Speicher auch ganz anders aufgebaut ist etc.

Du müsstest dir befehle wie ReadPixelFast, LockBuffer/UnlockBuffer, WritepixelFast und CopyPixelFast etc. angucken.

Mit readpixel(fast) ließt du einen Pixel aus. Ich würde um das ganze zu beschleunigen, erst eine Bank anfertigen (oder array) und dort die Pixel reinspeichern. Dann öffnest du den stream, verbindest dich mit deinem anderen Programm und schickst dann die werte alle nach einander rüber. Der andere ließt dann die Zahlen und malt den Pixel an der Position mit WritePixel(fast).... Ganz einfach ;D

mfg ToeB
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

FireballFlame

BeitragSa, Apr 24, 2010 23:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Sry, hat nix mit deiner Frage zu tun, aber gewöhn dir mal bitte an, deine Threadtitel richtig zu schreiben Wink
Dann kann man sie 1. leichter lesen und 2. auch mit der Suche finden.
PC: Intel Core i7 @ 4x2.93GHz | 6 GB RAM | Nvidia GeForce GT 440 | Desktop 2x1280x1024px | Windows 7 Professional 64bit
Laptop: Intel Core i7 @ 4x2.00GHz | 8 GB RAM | Nvidia GeForce GT 540M | Desktop 1366x768px | Windows 7 Home Premium 64bit
 

BBPro2

BeitragMo, Apr 26, 2010 0:34
Antworten mit Zitat
Benutzer-Profile anzeigen
er hats nich nur im titel falsch geschrieben. er scheint also zu denken, dass man
grafik so schreibt Sad

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group