Am Freitag 12 Januar 2007 20:06 schrieb Christoph Bumiller: > Stefan Dösinger wrote: > > We will need software shaders for a correct implementation of > > IWineD3DDevice::ProcessVertices. It supports Vertex shaders, but I > > don't really think OpenGL feedback mode is what we want here. > > > > Maybe we should remove it for now, but keep the code somewhere(in the > > wiki maybe). If someone is extra-ambitious we can do something like > > Softwire/SwiftShader does. But I think ProcessVertices is a good > > oportunity to verify our vertex shader implementation. > > Sounds fun *g* ... I thought of generating Intel assembly code from the > vertex shader bytecode on the fly, just like GLSL and ARB shaders are > generated, using primarily SSE for doing the floating point > computations (in situations where it brings an advantage), and directly > referencing the memory at IWineD3DVertexShaderImpl->data,input,output > (load constants, input data, store temporary values, store output > data). Would something like that even be accepted in wine ? This is precicely the best way to do implement software shaders, if I understood things correctly, and this is what SoftWire / SwiftShader does. SoftWire is an open source project(C++), Transgaming hired its developer and development went on in a propritary way and is now known as SwiftShader. No idea if SwiftShader ever had any practical use though. It is a Software D3D rasterizer that is said to deliver approximately the performance of Intel integrated cards.
pgpiKZ0JHRDOh.pgp
Description: PGP signature