Lines Matching defs:pCaps

4483 static HRESULT WINAPI IWineD3DImpl_GetDeviceCaps(IWineD3D *iface, UINT Adapter, WINED3DDEVTYPE DeviceType, WINED3DCAPS* pCaps) {
4494 TRACE_(d3d_caps)("(%p)->(Adptr:%d, DevType: %x, pCaps: %p)\n", This, Adapter, DeviceType, pCaps);
4505 pCaps->DeviceType = (DeviceType == WINED3DDEVTYPE_HAL) ? WINED3DDEVTYPE_HAL : WINED3DDEVTYPE_REF; /* Not quite true, but use h/w supported by opengl I suppose */
4506 pCaps->AdapterOrdinal = Adapter;
4508 pCaps->Caps = 0;
4509 pCaps->Caps2 = WINED3DCAPS2_CANRENDERWINDOWED |
4514 pCaps->Caps2 |= WINED3DCAPS2_CANAUTOGENMIPMAP;
4517 pCaps->Caps3 = WINED3DCAPS3_ALPHA_FULLSCREEN_FLIP_OR_DISCARD |
4521 pCaps->PresentationIntervals = WINED3DPRESENT_INTERVAL_IMMEDIATE |
4524 pCaps->CursorCaps = WINED3DCURSORCAPS_COLOR |
4527 pCaps->DevCaps = WINED3DDEVCAPS_FLOATTLVERTEX |
4543 pCaps->PrimitiveMiscCaps = WINED3DPMISCCAPS_CULLNONE |
4559 pCaps->PrimitiveMiscCaps |= WINED3DPMISCCAPS_SEPARATEALPHABLEND;
4561 pCaps->PrimitiveMiscCaps |= WINED3DPMISCCAPS_INDEPENDENTWRITEMASKS;
4563 pCaps->RasterCaps = WINED3DPRASTERCAPS_DITHER |
4578 pCaps->RasterCaps |= WINED3DPRASTERCAPS_ANISOTROPY |
4584 pCaps->RasterCaps |= WINED3DPRASTERCAPS_FOGRANGE;
4593 pCaps->ZCmpCaps = WINED3DPCMPCAPS_ALWAYS |
4602 pCaps->SrcBlendCaps = WINED3DPBLENDCAPS_BOTHINVSRCALPHA |
4616 pCaps->DestBlendCaps = WINED3DPBLENDCAPS_DESTALPHA |
4635 pCaps->SrcBlendCaps |= WINED3DPBLENDCAPS_BLENDFACTOR;
4636 pCaps->DestBlendCaps |= WINED3DPBLENDCAPS_BLENDFACTOR;
4640 pCaps->AlphaCmpCaps = WINED3DPCMPCAPS_ALWAYS |
4649 pCaps->ShadeCaps = WINED3DPSHADECAPS_SPECULARGOURAUDRGB |
4658 pCaps->TextureCaps = WINED3DPTEXTURECAPS_ALPHA |
4668 pCaps->TextureCaps |= WINED3DPTEXTURECAPS_POW2 |
4674 pCaps->TextureCaps |= WINED3DPTEXTURECAPS_VOLUMEMAP |
4681 pCaps->TextureCaps |= WINED3DPTEXTURECAPS_CUBEMAP |
4687 pCaps->TextureFilterCaps = WINED3DPTFILTERCAPS_MAGFLINEAR |
4702 pCaps->TextureFilterCaps |= WINED3DPTFILTERCAPS_MAGFANISOTROPIC |
4708 pCaps->CubeTextureFilterCaps = WINED3DPTFILTERCAPS_MAGFLINEAR |
4723 pCaps->CubeTextureFilterCaps |= WINED3DPTFILTERCAPS_MAGFANISOTROPIC |
4727 pCaps->CubeTextureFilterCaps = 0;
4731 pCaps->VolumeTextureFilterCaps = WINED3DPTFILTERCAPS_MAGFLINEAR |
4744 pCaps->VolumeTextureFilterCaps = 0;
4746 pCaps->TextureAddressCaps = WINED3DPTADDRESSCAPS_INDEPENDENTUV |
4752 pCaps->TextureAddressCaps |= WINED3DPTADDRESSCAPS_BORDER;
4756 pCaps->TextureAddressCaps |= WINED3DPTADDRESSCAPS_MIRROR;
4760 pCaps->TextureAddressCaps |= WINED3DPTADDRESSCAPS_MIRRORONCE;
4765 pCaps->VolumeTextureAddressCaps = WINED3DPTADDRESSCAPS_INDEPENDENTUV |
4770 pCaps->VolumeTextureAddressCaps |= WINED3DPTADDRESSCAPS_BORDER;
4774 pCaps->VolumeTextureAddressCaps |= WINED3DPTADDRESSCAPS_MIRROR;
4778 pCaps->VolumeTextureAddressCaps |= WINED3DPTADDRESSCAPS_MIRRORONCE;
4781 pCaps->VolumeTextureAddressCaps = 0;
4783 pCaps->LineCaps = WINED3DLINECAPS_TEXTURE |
4792 pCaps->MaxTextureWidth = gl_info->limits.texture_size;
4793 pCaps->MaxTextureHeight = gl_info->limits.texture_size;
4796 pCaps->MaxVolumeExtent = gl_info->limits.texture3d_size;
4798 pCaps->MaxVolumeExtent = 0;
4800 pCaps->MaxTextureRepeat = 32768;
4801 pCaps->MaxTextureAspectRatio = gl_info->limits.texture_size;
4802 pCaps->MaxVertexW = 1.0f;
4804 pCaps->GuardBandLeft = 0.0f;
4805 pCaps->GuardBandTop = 0.0f;
4806 pCaps->GuardBandRight = 0.0f;
4807 pCaps->GuardBandBottom = 0.0f;
4809 pCaps->ExtentsAdjust = 0.0f;
4811 pCaps->StencilCaps = WINED3DSTENCILCAPS_DECRSAT |
4819 pCaps->StencilCaps |= WINED3DSTENCILCAPS_DECR |
4824 pCaps->StencilCaps |= WINED3DSTENCILCAPS_TWOSIDED;
4827 pCaps->FVFCaps = WINED3DFVFCAPS_PSIZE | 0x0008; /* 8 texture coords */
4829 pCaps->MaxUserClipPlanes = gl_info->limits.clipplanes;
4830 pCaps->MaxActiveLights = gl_info->limits.lights;
4832 pCaps->MaxVertexBlendMatrices = gl_info->limits.blends;
4833 pCaps->MaxVertexBlendMatrixIndex = 0;
4835 pCaps->MaxAnisotropy = gl_info->limits.anisotropy;
4836 pCaps->MaxPointSize = gl_info->limits.pointsize_max;
4840 pCaps->VertexProcessingCaps = WINED3DVTXPCAPS_DIRECTIONALLIGHTS |
4847 pCaps->MaxPrimitiveCount = 0xFFFFF; /* For now set 2^20-1 which is used by most >=Geforce3/Radeon8500 cards */
4848 pCaps->MaxVertexIndex = 0xFFFFF;
4849 pCaps->MaxStreams = MAX_STREAMS;
4850 pCaps->MaxStreamStride = 1024;
4853 pCaps->DevCaps2 = WINED3DDEVCAPS2_STREAMOFFSET |
4855 pCaps->MaxNpatchTessellationLevel = 0;
4856 pCaps->MasterAdapterOrdinal = 0;
4857 pCaps->AdapterOrdinalInGroup = 0;
4858 pCaps->NumberOfAdaptersInGroup = 1;
4860 pCaps->NumSimultaneousRTs = gl_info->limits.buffers;
4862 pCaps->StretchRectFilterCaps = WINED3DPTFILTERCAPS_MINFPOINT |
4866 pCaps->VertexTextureFilterCaps = 0;
4875 pCaps->PrimitiveMiscCaps |= fragment_caps.PrimitiveMiscCaps;
4882 pCaps->VertexShaderVersion = WINED3DVS_VERSION(0,0);
4883 pCaps->MaxVertexShaderConst = 0;
4885 pCaps->VertexShaderVersion = shader_caps.VertexShaderVersion;
4886 pCaps->MaxVertexShaderConst = shader_caps.MaxVertexShaderConst;
4891 pCaps->PixelShaderVersion = WINED3DPS_VERSION(0,0);
4892 pCaps->PixelShader1xMaxValue = 0.0f;
4894 pCaps->PixelShaderVersion = shader_caps.PixelShaderVersion;
4895 pCaps->PixelShader1xMaxValue = shader_caps.PixelShader1xMaxValue;
4898 pCaps->TextureOpCaps = fragment_caps.TextureOpCaps;
4899 pCaps->MaxTextureBlendStages = fragment_caps.MaxTextureBlendStages;
4900 pCaps->MaxSimultaneousTextures = fragment_caps.MaxSimultaneousTextures;
4902 pCaps->VS20Caps = shader_caps.VS20Caps;
4903 pCaps->MaxVShaderInstructionsExecuted = shader_caps.MaxVShaderInstructionsExecuted;
4904 pCaps->MaxVertexShader30InstructionSlots= shader_caps.MaxVertexShader30InstructionSlots;
4905 pCaps->PS20Caps = shader_caps.PS20Caps;
4906 pCaps->MaxPShaderInstructionsExecuted = shader_caps.MaxPShaderInstructionsExecuted;
4907 pCaps->MaxPixelShader30InstructionSlots = shader_caps.MaxPixelShader30InstructionSlots;
4913 if(pCaps->VertexShaderVersion == WINED3DVS_VERSION(3,0)) {
4916 pCaps->VS20Caps.Caps = WINED3DVS20CAPS_PREDICATION;
4917 pCaps->VS20Caps.DynamicFlowControlDepth = WINED3DVS20_MAX_DYNAMICFLOWCONTROLDEPTH; /* VS 3.0 requires MAX_DYNAMICFLOWCONTROLDEPTH (24) */
4918 pCaps->VS20Caps.NumTemps = max(32, adapter->gl_info.limits.arb_vs_temps);
4919 pCaps->VS20Caps.StaticFlowControlDepth = WINED3DVS20_MAX_STATICFLOWCONTROLDEPTH ; /* level of nesting in loops / if-statements; VS 3.0 requires MAX (4) */
4921 pCaps->MaxVShaderInstructionsExecuted = 65535; /* VS 3.0 needs at least 65535, some cards even use 2^32-1 */
4922 pCaps->MaxVertexShader30InstructionSlots = max(512, adapter->gl_info.limits.arb_vs_instructions);
4924 else if (pCaps->VertexShaderVersion == WINED3DVS_VERSION(2,0))
4926 pCaps->VS20Caps.Caps = 0;
4927 pCaps->VS20Caps.DynamicFlowControlDepth = WINED3DVS20_MIN_DYNAMICFLOWCONTROLDEPTH;
4928 pCaps->VS20Caps.NumTemps = max(12, adapter->gl_info.limits.arb_vs_temps);
4929 pCaps->VS20Caps.StaticFlowControlDepth = 1;
4931 pCaps->MaxVShaderInstructionsExecuted = 65535;
4932 pCaps->MaxVertexShader30InstructionSlots = 0;
4934 pCaps->VS20Caps.Caps = 0;
4935 pCaps->VS20Caps.DynamicFlowControlDepth = 0;
4936 pCaps->VS20Caps.NumTemps = 0;
4937 pCaps->VS20Caps.StaticFlowControlDepth = 0;
4939 pCaps->MaxVShaderInstructionsExecuted = 0;
4940 pCaps->MaxVertexShader30InstructionSlots = 0;
4943 if(pCaps->PixelShaderVersion == WINED3DPS_VERSION(3,0)) {
4948 pCaps->PS20Caps.Caps = WINED3DPS20CAPS_ARBITRARYSWIZZLE |
4953 pCaps->PS20Caps.DynamicFlowControlDepth = WINED3DPS20_MAX_DYNAMICFLOWCONTROLDEPTH; /* PS 3.0 requires MAX_DYNAMICFLOWCONTROLDEPTH (24) */
4954 pCaps->PS20Caps.NumTemps = max(32, adapter->gl_info.limits.arb_ps_temps);
4955 pCaps->PS20Caps.StaticFlowControlDepth = WINED3DPS20_MAX_STATICFLOWCONTROLDEPTH; /* PS 3.0 requires MAX_STATICFLOWCONTROLDEPTH (4) */
4956 pCaps->PS20Caps.NumInstructionSlots = WINED3DPS20_MAX_NUMINSTRUCTIONSLOTS; /* PS 3.0 requires MAX_NUMINSTRUCTIONSLOTS (512) */
4958 pCaps->MaxPShaderInstructionsExecuted = 65535;
4959 pCaps->MaxPixelShader30InstructionSlots = max(WINED3DMIN30SHADERINSTRUCTIONS,
4962 else if(pCaps->PixelShaderVersion == WINED3DPS_VERSION(2,0))
4965 pCaps->PS20Caps.Caps = 0;
4966 pCaps->PS20Caps.DynamicFlowControlDepth = 0; /* WINED3DVS20_MIN_DYNAMICFLOWCONTROLDEPTH = 0 */
4967 pCaps->PS20Caps.NumTemps = max(12, adapter->gl_info.limits.arb_ps_temps);
4968 pCaps->PS20Caps.StaticFlowControlDepth = WINED3DPS20_MIN_STATICFLOWCONTROLDEPTH; /* Minimum: 1 */
4969 pCaps->PS20Caps.NumInstructionSlots = WINED3DPS20_MIN_NUMINSTRUCTIONSLOTS; /* Minimum number (64 ALU + 32 Texture), a GeforceFX uses 512 */
4971 pCaps->MaxPShaderInstructionsExecuted = 512; /* Minimum value, a GeforceFX uses 1024 */
4972 pCaps->MaxPixelShader30InstructionSlots = 0;
4974 pCaps->PS20Caps.Caps = 0;
4975 pCaps->PS20Caps.DynamicFlowControlDepth = 0;
4976 pCaps->PS20Caps.NumTemps = 0;
4977 pCaps->PS20Caps.StaticFlowControlDepth = 0;
4978 pCaps->PS20Caps.NumInstructionSlots = 0;
4980 pCaps->MaxPShaderInstructionsExecuted = 0;
4981 pCaps->MaxPixelShader30InstructionSlots = 0;
4984 if(pCaps->VertexShaderVersion >= WINED3DVS_VERSION(2,0)) {
4992 pCaps->DeclTypes = WINED3DDTCAPS_UBYTE4 |
4998 pCaps->DeclTypes |= WINED3DDTCAPS_FLOAT16_2 |
5002 pCaps->DeclTypes = 0;
5031 pCaps->DirectDrawCaps.Caps = WINEDDCAPS_GDI |
5034 pCaps->DirectDrawCaps.Caps2 = WINEDDCAPS2_CERTIFIED |
5039 pCaps->DirectDrawCaps.SVBCaps = blit_caps;
5040 pCaps->DirectDrawCaps.SVBCKeyCaps = ckey_caps;
5041 pCaps->DirectDrawCaps.SVBFXCaps = fx_caps;
5042 pCaps->DirectDrawCaps.VSBCaps = blit_caps;
5043 pCaps->DirectDrawCaps.VSBCKeyCaps = ckey_caps;
5044 pCaps->DirectDrawCaps.VSBFXCaps = fx_caps;
5045 pCaps->DirectDrawCaps.SSBCaps = blit_caps;
5046 pCaps->DirectDrawCaps.SSBCKeyCaps = ckey_caps;
5047 pCaps->DirectDrawCaps.SSBFXCaps = fx_caps;
5049 pCaps->DirectDrawCaps.ddsCaps = WINEDDSCAPS_ALPHA |
5059 pCaps->DirectDrawCaps.StrideAlign = DDRAW_PITCH_ALIGNMENT;
5064 pCaps->DirectDrawCaps.ddsCaps |=WINEDDSCAPS_3DDEVICE |
5068 pCaps->DirectDrawCaps.Caps |= WINEDDCAPS_3D;