I asked a bit about this in the Opengl2.0 forum on 3dlabs site, but the action there is quite slow ( i got some response from 3dlabs in a few questions so its not all silent, but nearly )
- The spec doesnt have inverse or transpose of the common matrices. I know that its pretty easy to make this myself and upload in some variable, but the driver has this information, and i bet that the driver developers more often take advantage of SSE2 and similar than the average opengl developer, and since the driver are forced to make this matrices when you have vertex_program i cant see why it couldnt follow into the GLSlang spec.
If your application is split between an exe and a dll, and both are allowed to make glrotate/translate/loadmatrix and similar calls, you ( the application ) never knows if it has to create the inverse again or if the last one still is valid, and that means glGetFloat() to get the current matrice, inverse, and upload… that might work on consumer cards, but if you have a full set of matrice operations in sillicon ( doenst some workstationclass card have that?) it could cause a stall each time.
Is every one here on the spec side and thinks that the developer should be responsible for keeping the inverse and trasnpose of the matrices updated? I whould just like to know why its not there, and not even an ‘issue’ remark in the spec about it.
- none if the ‘shaders’ ( like the call it now) have any kind of header, you know the “!!ARBvp1.0” and “!!ARBvfp1.0”. Some might think that its unnecessary since you still need to state the programtype when you upload it, but i think its as smart as creating a new imageformat without a header, and let the user choose from a list when you load it… If you want a simple load function to load the files and place them in the correct shadertype you must invent your own tagging ( .ext or a commented row with your own header) and that means that we cant get a compatible format for the marking.
any comments? from developers, and maybe the ARB members ( still no meetingnotes from that meeting )