DX9 Subsystem
-
- Beiträge: 476
- Registriert: 23.03.2005 23:19
Hi
Hier mal wieder ein kleines Update:
http://hometown.aol.de/MoebiusStefan/DX9S.zip
An der Sprite-Lib hab ich allerdings nicht viel getan (nur 2 bugs in FlipBuffers() behoben) Ich arbeite zur zeit noch an einem besseren Sprite-Manager.
Dafür hab ich aber die komplette Keyboard-Lib eingebaut.
Der Befehl KeyboardInkey() muss bis jetzt aber so verwendet werden:
Hier mal wieder ein kleines Update:
http://hometown.aol.de/MoebiusStefan/DX9S.zip
An der Sprite-Lib hab ich allerdings nicht viel getan (nur 2 bugs in FlipBuffers() behoben) Ich arbeite zur zeit noch an einem besseren Sprite-Manager.
Dafür hab ich aber die komplette Keyboard-Lib eingebaut.
Der Befehl KeyboardInkey() muss bis jetzt aber so verwendet werden:

Code: Alles auswählen
Debug PeekS(KeyboardInkey())
Hi
Ich hab das Subsystem nur um einiges schneller gemacht (manche Befehle sind nun über 3 mal schneller).Sprites werden nun automatisch für schnelle darstellung oder schnelles bearbeiten optimiert. Außerdem hab ich die komplette Sprite3D Library hinzugefügt.
Link:DX9S v0.06
Ich würde mich über viele bugreports freuen.
Gruß
Stefan
Ich hab das Subsystem nur um einiges schneller gemacht (manche Befehle sind nun über 3 mal schneller).Sprites werden nun automatisch für schnelle darstellung oder schnelles bearbeiten optimiert. Außerdem hab ich die komplette Sprite3D Library hinzugefügt.
Link:DX9S v0.06
Ich würde mich über viele bugreports freuen.

Gruß
Stefan
Von den ganzen Beispielen funktionieren nur 2
. Die restlichen kacken
mit nem ungültigen Speicherzugriff ab. Von den 2en, die funktionieren,
geben aber auch kein korrektes Bild ab. Hier mal ein kleines Bild:

Da die Sprites und das "bunte" "Ding" sind in Kästchen unterteilt. So viel
zum Thema D[size=0]i[/size]rec[size=0]t[/size]X

mit nem ungültigen Speicherzugriff ab. Von den 2en, die funktionieren,
geben aber auch kein korrektes Bild ab. Hier mal ein kleines Bild:
Da die Sprites und das "bunte" "Ding" sind in Kästchen unterteilt. So viel
zum Thema D[size=0]i[/size]rec[size=0]t[/size]X

Hm, steht da noch eine Zeilennummer dabei ?Die restlichen kacken
mit nem ungültigen Speicherzugriff ab.
Das liegt wohl daran, dass der screen gestaucht wurde(ohne Filter).Da die Sprites und das "bunte" "Ding" sind in Kästchen unterteilt. So viel
zum Thema DirectX
Was für eine Grafikkarte hast du ?
Code: Alles auswählen
---------------------------
ERROR in Line:192
---------------------------
Module: C:\DX9Subsystem\DX9S\DX9Src\NEW\DX9S_TextureManager.pbi
Description:An attemped read or write to/from an address to which that process isn't allowed
Quit ?
---------------------------
Ja Nein
---------------------------
@Stefan,
Erste Bugmeldungen:
DX9 kennt den 'Transparency' Parameter nicht.
Parameter Mode 0/1 arbeitet nicht wie bei DX7.
Siehe hierzu test3.pb
Arbeitet nicht wie bei DX7
Setzt scheinbar kein (Default) TransparentSpriteColor(), sollte RGB(0,0,0) sein.
Erhalte bei: OhTannenbaum.pb (WinterContest)):
angewendet bevor der
aufgerufen ist chrashed (Sprite3DQuality(0) chrashed nicht!)
Example (snip von test3.pb):
Erste Bugmeldungen:
Code: Alles auswählen
DisplaySprite3D(#Sprite3D, x, y, [Transparency])
Code: Alles auswählen
RotateSprite3D(2,c,0)
Siehe hierzu test3.pb
Code: Alles auswählen
Sprite3DBlendingMode(...)
Code: Alles auswählen
CreateSprite(...)
Erhalte bei: OhTannenbaum.pb (WinterContest)):
Code: Alles auswählen
POLILINK error: _PB_IsScreenActive
Code: Alles auswählen
Sprite3DQuality(1)
Code: Alles auswählen
OpenWindowedScreen(WindowID(1),10,10,640,480,1,10,10)
Example (snip von test3.pb):
Code: Alles auswählen
InitSprite()
InitSprite3D()
Sprite3DQuality(1)
OpenWindow(1,0,0,640,480,"DX9Subsystem test 1",#PB_Window_ScreenCentered|#PB_Window_SystemMenu|#PB_Window_Minimize|#PB_Window_SizeGadget)
OpenWindowedScreen(WindowID(1),10,10,640,480,1,10,10)
Siehste! Geht doch....?!
PB*, *4PB, PetriDish, Movie2Image, PictureManager, TrainYourBrain, ...
PB*, *4PB, PetriDish, Movie2Image, PictureManager, TrainYourBrain, ...
Die bugs sollten jetzt alle behoben sein.Dr. Shrek hat geschrieben:@Stefan,
Erste Bugmeldungen:DX9 kennt den 'Transparency' Parameter nicht.Code: Alles auswählen
DisplaySprite3D(#Sprite3D, x, y, [Transparency])
angewendet bevor derCode: Alles auswählen
Sprite3DQuality(1)
aufgerufen ist chrashed (Sprite3DQuality(0) chrashed nicht!)Code: Alles auswählen
OpenWindowedScreen(WindowID(1),10,10,640,480,1,10,10)
Arbeitet nicht wie bei DX7Code: Alles auswählen
Sprite3DBlendingMode(...)
Link:http://www.stefanmoebius.de/test_1149776719.zip
Hm, Ich hab den Befehl nach den Angaben in der Hilfe geschrieben.Dr. Shrek hat geschrieben:Parameter Mode 0/1 arbeitet nicht wie bei DX7.Code: Alles auswählen
RotateSprite3D(2,c,0)
Siehe hierzu test3.pb
Der DX7 Befehl verhält sich meiner Meinung nach falsch.(Ich hab da glaub auch mal einen Bugreport geschrieben)
Ich weiß nicht ob ich diesen Unterschied beheben soll, da es mir so besser gefällt.
Bist du sicher ?Setzt scheinbar kein (Default) TransparentSpriteColor(), sollte RGB(0,0,0) sein.Code: Alles auswählen
CreateSprite(...)
Bei mir scheint es zu funktionieren.(Ein Bsp wäre hilfreich)
Der Fehler tritt aber nur auf, wenn man die Mouse,Joystick oder Sound Library verwendet, oder ?Erhalte bei: OhTannenbaum.pb (WinterContest)):Code: Alles auswählen
POLILINK error: _PB_IsScreenActive
Mal schauen, ob ich das hinbekomme, ansonsten musst du warten bis ich die Libs selbst geschrieben habe.

P.S.: Super, weiter so !

Gruß
Stefan
Hallo!
Ich teste gerade dein dx9 System.
Es ist super. Bisher laufen alle meine Codes.
Der Performanceanstieg ist beachtlich!
Zwei Dinge sind mir aufgefallen:
- Trotz Flipbuffers(0) scheint mir die Bildschirmausgabe syncronisiert zu sein.
- SpritePixelCollision() bremst das System stark aus, keine Verbesserung
zum Dx7 System. Vielleicht kanst du hier noch etwas "schrauben"?
Gute Arbeit!
Gruß
Ralf
Ich teste gerade dein dx9 System.
Es ist super. Bisher laufen alle meine Codes.
Der Performanceanstieg ist beachtlich!
Zwei Dinge sind mir aufgefallen:
- Trotz Flipbuffers(0) scheint mir die Bildschirmausgabe syncronisiert zu sein.
- SpritePixelCollision() bremst das System stark aus, keine Verbesserung
zum Dx7 System. Vielleicht kanst du hier noch etwas "schrauben"?
Gute Arbeit!
Gruß
Ralf