--- Ann and Jason Edmeades us@the-edmeades.demon.co.uk wrote:
This clears out the next blocking part of the d3d9 / wined3d support and has been a real pain to implement. I think I've got it right now, and it adds support for render targets but more importantly the beginnings of a front and back buffer which lots of the code relied upon.
Unfortunately I couldn't get this next step any smaller than the patch attached....
Major areas still to go - textures and pixel / vertex shader support. I'm moving onto the textures next...
Changelog
Add render target support, and ensure there is a front and back buffer created during device creation
Jason
Hi, I've just done more-or-less exactly the same this weekend with a couple of differences.
I've merged all the creation surface code into a single createSurface function that is called with different parameters/flags to create a backbuffer, PlainOffscreenSurface or rendertarget etc...
This should mean that you only require one call-back function for CreateDevice in WineD3D.
I'll merge your patch with what I've got and see how it goes.
As soon as I'm happy with how wine's and directX work I can stop duplicating what you've done and start moving onto a more co-operative development, or moving DirectX8 over to using WineD3d.
So far I can run Pirates! and a few of the demos from http://www.codesampler.com/dx9src.htm, but without textures.
Pirates uses DirectX 9c but doesn't do anything too fancy and runs without crashing so it seems good for testing.
Many of the demos at http://www.codesampler.com/dx9src.htm have OpenGL versions and since I don't know OpenGL or DirectX (but can hack a good Dos demo) it seemed a good place to start.
___________________________________________________________ ALL-NEW Yahoo! Messenger - all new features - even more fun! http://uk.messenger.yahoo.com