[WINED3D] Clean up per version shader limits code

Ivan Gyurdiev ivg2 at cornell.edu
Wed Apr 26 21:22:14 CDT 2006


The patch makes a function called set_version() - one for pshaders, and 
one for vshaders. It places the limits and version code in there, and 
invokes this function when the version is first parsed, not later like 
it's currently done. It saves a structure (SHADER_LIMITS) and a hex 
version into the base shader - those will be useful later for merging 
pixel and vertex shaders.

The GL declarations code is moved up before the 2nd pass even begins for 
improved clarity and less identation.
============================
Note: This patch also corrects the limits.
The following changes were made:

- constants were split into float, int, and boolean for future 2.0/3.0 work
- 2.0/3.0 constant numbers were bumped up by a lot up to spec
- VS constants were made to match WINED3D_VSHADER_MAX_CONSTANTS, which 
is the same value written to D3D9 caps (i.e 96, no change here)
- default case was made to match the lowest supported one
- ps 1.1-1.3 temporaries decreased to 2 (note: hl2 will respect this limit)
- ps 1.4 temporaruies decreased to 6 (note: hl2 will respect this limit)


-------------- next part --------------
A non-text attachment was scrubbed...
Name: wine.register_limits.diff
Type: text/x-patch
Size: 17804 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-patches/attachments/20060426/fa92a421/wine.register_limits-0001.diff


More information about the wine-patches mailing list