VirtualBox

Ignore:
Timestamp:
Jun 2, 2010 4:56:06 PM (15 years ago)
Author:
vboxsync
Message:

wddm/3d: additional caps fixes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/WINNT/Graphics/Display/wddm/VBoxDispD3D.cpp

    r29966 r30003  
    10991099                        pCaps->PS20Caps.NumTemps = D3DVS20_MAX_NUMTEMPS;
    11001100                        pCaps->VertexTextureFilterCaps |= D3DPTFILTERCAPS_MINFPOINT | D3DPTFILTERCAPS_MAGFPOINT;
    1101                         pCaps->MaxVertexShader30InstructionSlots = 512;
    1102                         pCaps->MaxPixelShader30InstructionSlots = 512;
     1101#if 1 /* workaround for wine not returning InstructionSlots correctly for  shaders v3.0 */
     1102                        if ((pCaps->VertexShaderVersion & 0xff00) == 0x0300)
     1103                        {
     1104                            pCaps->MaxVertexShader30InstructionSlots = RT_MIN(32768, pCaps->MaxVertexShader30InstructionSlots);
     1105                            pCaps->MaxPixelShader30InstructionSlots = RT_MIN(32768, pCaps->MaxPixelShader30InstructionSlots);
     1106                        }
     1107#endif
     1108#ifdef DEBUG
     1109                        if ((pCaps->VertexShaderVersion & 0xff00) == 0x0300)
     1110                        {
     1111                            Assert(pCaps->MaxVertexShader30InstructionSlots >= 512);
     1112                            Assert(pCaps->MaxVertexShader30InstructionSlots <= 32768);
     1113                            Assert(pCaps->MaxPixelShader30InstructionSlots >= 512);
     1114                            Assert(pCaps->MaxPixelShader30InstructionSlots <= 32768);
     1115                        }
     1116                        else if ((pCaps->VertexShaderVersion & 0xff00) == 0x0200)
     1117                        {
     1118                            Assert(pCaps->MaxVertexShader30InstructionSlots == 0);
     1119                            Assert(pCaps->MaxPixelShader30InstructionSlots == 0);
     1120                        }
     1121                        else
     1122                        {
     1123                            AssertBreakpoint();
     1124                        }
     1125#endif
    11031126                        break;
    11041127                    }
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette