- minor indentation and traces fixes
- fix locking/unlocking/dirty behavior (dirtify on lock) +
optimisations (only copy when dirty)
- fix IDirect3DDevice8::Clear behavior (problem seen after a
locking/unlocking code error)
- begin to fix volume and cube textures management
- minor indentation changes
- fix SELECTARG2 behavior (with help from Lionel Ulmer)
- surface locking/unlocking (only rendering and textures surfaces
supported now)
- beginning of Target/Front surface support
- try to get D3DTOP_SELECTARG_* working
- implemented D3DTOP_SUBTRACT: currently only if OpenGL1.3 is used, we
have to use GL_SUBTRACT_ARB for other versions
the others as well), and call when needed as well.
- Change D3DFMT_R5G6B5 handling to make backdrop of Max Payne appear.
- Add code to reject attempts to use invalid texture units (Max Payne
did this a lot).
- ValidateDevice fixme silenced as harmless but occurs frequently.
- Add trace which can be compiled in to debug vertex shaders, and
correct fixmes and dprintf's into appropriate trace statements.
- Ensure we trace what we return when querying the device caps.
- Correct bug with negative numbers in vertex shader code.
DrawPrimitive call.
- Beginning of VertexShader constants support into stateblock (only
stored, not captured yet).
- Fix compiation with nivdia GL/gl.h and mesa Gl/glext headers as
reported by Andrew John Hughes.
- One glActiveTexture/glActiveTextureARB missing.
- stateblocks to IDirect3DStateBlockImpl interface and moving into
a new file (stateblock.c)
- shaders to IDirect3D*ShaderImpl interfaces
- splitting vshader and vshader declaration as in dx9 into 2
interfaces (for future common layer use)
- vshader declaration code to a new file (vsaderdeclaration.c)
- device calls to new interfaces (redirect stubs)
Simple texture fix for a little regression after last Jason's patches.
Some caps code using the GL/glext.h defines (GL_VERSION_*).
alpha alpha stage as i haven't understand needed extension behavior)
- modify SetRenderState for matrix blending specific params
- by default diffuse color is white ;)
- comments most of the traces (else flood ...)
- add more urls in comments
- indent, cleanups
- AddRef/Release where needed
- use IUnknown* instead void*
- fix many GetDevice using AddRef
- fix IDirect3DSurface8Impl_GetContainer using QueryInterface
- better traces
- specific input data filling function for vertex shaders using vertex
shader declaration (and not FVF ... maybe FVF will return for fast
path with simples vertex shader declarations)
- huge vertex shader fixes:
- add and fix many vs (1.0->2.0) used opcodes in complex shaders
- improvements to programs parser: parse comments, version, ..
- add a vertex shader input filler function (parsing vertex shader
declaration): almost complete
- comments most of the traces (else flood ...)
- add more urls in comments
- indent, cleanups