Hi,
I'd like to say a word for the effect interface in d3dx9_xx.dll, what's already done and what's on the todo list.
The parser for binary effects works pretty much. It should nearly parse the effect files completely, but it should fail on effect files which contain functions (if anyone has a binary effect with a function, I'd be interested in it). It is also possible to Get/Set some values, but not yet all, because there are some tricky cases which I haven't figured out completely yet (an example is GetVector() on an D3DXPT_INT). I'm currently working on the correct applying for the states and making some progress with that. But it seems to me that there are a lot of special cases in that.
Todo: - Apply the states - Handle parameter blocks - State savings: State saving and restoring in Begin/End is needed. - ASCII effects: The effect could be supplied as byte code or as ASCII text. - ID3DXEffectPool: The support for effect pools is needed.
I'm not sure if it might be useful to post an example of a commented binary effect file to make the format "visible" without reading the code. At least it could help when writing the ASCII effect parser.
Cheers Rico