DX9 Subsystem

Du brauchst Grafiken, gute Programme oder Leute die dir helfen? Frag hier.
Stefan
Beiträge: 125
Registriert: 29.08.2004 10:51
Kontaktdaten:

Beitrag von Stefan »

Bisher werden folgende Befehle unterstützt:(22)
InitSprite()
AvailableScreenMemory()
ExamineScreenModes()
NextScreenMode()
ScreenModeWidth()
ScreenModeHeight()
ScreenModeRefreshRate()
ScreenModeDepth()
OpenWindowedScreen(WindowID,x,y,Width,Height,AutoStretch,RightOffset,BottomOffset)
ClearScreen(Color)
ScreenID()
IsScreenActive()
FlipBuffers(Mode)
ScreenOutput()
SpriteOutput(Sprite)
DisplayTransparentSprite(Sprite,x,y)
DisplaySprite(Sprite,x,y)
DisplayRGBFilter(x,y,Width,Height,R,G,B)
FreeSprite(Sprite)
IsSprite(Sprite)
CreateSprite(Sprite,Width,Height,Mode)
TransparentSpriteColor(Sprite,Color)
Ein kleiner test:
http://hometown.aol.de/MoebiusStefan/DX ... emTest.exe
Stefan
Beiträge: 125
Registriert: 29.08.2004 10:51
Kontaktdaten:

Beitrag von Stefan »

Nun werden alle Sprite-Befehle unterstützt, bis auf:
ChangeAlphaIntensity()
DisplayAlphaSprite()
DisplayShadowSprite()
DisplaySolidSprite()
GrabSprite()
OpenScreen()
SaveSprite()
SpriteID()
Hier die aktuelle Version zum testen:
http://stefanmoebius.de/DX9Subsystem2.zip
Gruß
Stefan
Benutzeravatar
DrShrek
Beiträge: 1970
Registriert: 08.09.2004 00:59

Beitrag von DrShrek »

Hallo Stefan,

Wenn Du GrapSprite() noch implementierst...
dann kann ich es mit PBpuzzle testen...

Danke
IceSoft / Dr. Shrek
Siehste! Geht doch....?!
PB*, *4PB, PetriDish, Movie2Image, PictureManager, TrainYourBrain, ...
Stefan
Beiträge: 125
Registriert: 29.08.2004 10:51
Kontaktdaten:

Beitrag von Stefan »

Wenn Du GrapSprite() noch implementierst...
dann kann ich es mit PBpuzzle testen...
Das wäre cool! 8)
Ich hab jetzt noch GrabSprite(),OpenScreen() und SpriteID() hinzugefügt:
Link: http://stefanmoebius.de/DX9Subsystem3.zip

//edit:
ACHTUNG: OpenScreen() bitte nicht testen
Benutzeravatar
DrShrek
Beiträge: 1970
Registriert: 08.09.2004 00:59

Beitrag von DrShrek »

Invalid memory access bei:

Code: Alles auswählen

CreateSprite(1, 0, 0)
Siehste! Geht doch....?!
PB*, *4PB, PetriDish, Movie2Image, PictureManager, TrainYourBrain, ...
Stefan
Beiträge: 125
Registriert: 29.08.2004 10:51
Kontaktdaten:

Beitrag von Stefan »

@Dr. Shrek
Ist dein PBPuzzle nun kompilierbar ?
Dr. Shrek hat geschrieben:Invalid memory access bei:

Code: Alles auswählen

CreateSprite(1, 0, 0)
Ok, hab eine Abfrage eingebaut.
Benutzeravatar
DrShrek
Beiträge: 1970
Registriert: 08.09.2004 00:59

Beitrag von DrShrek »

Stefan hat geschrieben:@Dr. Shrek
Ist dein PBPuzzle nun kompilierbar ?
Ja...kompilierbar schon...
..aber ich bekomme Runtime errors... siehe oben...
Es fehlen einfach noch ein paar Checks in Deinen Routinen :wink:
Siehste! Geht doch....?!
PB*, *4PB, PetriDish, Movie2Image, PictureManager, TrainYourBrain, ...
Benutzeravatar
DrShrek
Beiträge: 1970
Registriert: 08.09.2004 00:59

Beitrag von DrShrek »

Hier das nächste 'Invalid memory access' bei:

CopySprite(#sOrginal, #Sprite2 )

HIer noch ein Hinweis aus der Hilfe: #Sprite2 is created if it does not exist.

Example:

Code: Alles auswählen

If InitSprite()=0:Debug "Can't init DX9":EndIf
OpenWindow(1,0,0,400,300,"Test")
If OpenWindowedScreen(WindowID(1),10,10,320,240,1,10,10)=0
Debug "Can't open screen"
EndIf

sx = 20
sy = 20
#sOrginal = 10
#Sprite2 = 20

CreateSprite(#sOrginal, sX, sY)
CopySprite(#sOrginal, #Sprite2 ) 


Repeat

Until WindowEvent()=#PB_Event_CloseWindow
Siehste! Geht doch....?!
PB*, *4PB, PetriDish, Movie2Image, PictureManager, TrainYourBrain, ...
Hellhound66
Beiträge: 476
Registriert: 23.03.2005 23:19

Beitrag von Hellhound66 »

Hi Stefan, ich brauche deine Hilfe.

Ich mache gerade genau das Gleiche wie du, nur als Interface, mit dem einzigen Unterschied, dass ich ein OGL-Programmierer bin und von DX9 keine Ahnung habe. Die schäbigen Tutorials und mein DX9 Buch hier zu Hause waren der totale Reinfall. Ich verzweifle an so einfachen Sachen, wie das verändern von Texturen im Speicher. Überall werden diese verfi***** Dinger aus irgendwelchen Dateien geladen, aber nirgends steht, wie man sie danach verändert. MipMaps,ja klar, aber das wars schon. Mir ist das alles zu kryptisch. Hast du mir einen Tipp, wo ich ein gutes Tutorial finden kann, eines wie das Red Book für OGL?

Danke im Voraus.

/edit: Ich brauche auf jeden Fall etwas wie CatchSprite/Texture.
Optimismus ist ein Mangel an Information.
Stefan
Beiträge: 125
Registriert: 29.08.2004 10:51
Kontaktdaten:

Beitrag von Stefan »

@Hellhound66
Sorry, hab im moment sehr wenig Zeit, schau dir mal diese Links an:
/edit: Ich brauche auf jeden Fall etwas wie CatchSprite/Texture
Das müsstest du mit den Methoden GetRenderTargetData() und UpdateSurface() hinbekommen.
//edit:
Die Quelltexte des Subsystem findest du hier http://stefanmoebius.de/DX9Ssrc.zip
(allerdings ist das dort sehr schlecht gelöst (bis jetzt :wink: ) und hat sehr viele Bugs)

Gruß
Stefan
Antworten