mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-03-15 16:29:16 +01:00
[d3d9] Fix default initialization of some state values
If we end up being the same as what we are, we don't dirty initially.
This commit is contained in:
parent
89b1f025eb
commit
d4d4f0ca18
@ -5,12 +5,6 @@
|
|||||||
namespace dxvk {
|
namespace dxvk {
|
||||||
|
|
||||||
D3D9CapturableState::D3D9CapturableState() {
|
D3D9CapturableState::D3D9CapturableState() {
|
||||||
for (uint32_t i = 0; i < textures.size(); i++)
|
|
||||||
textures[i] = nullptr;
|
|
||||||
|
|
||||||
for (uint32_t i = 0; i < clipPlanes.size(); i++)
|
|
||||||
clipPlanes[i] = D3D9ClipPlane();
|
|
||||||
|
|
||||||
for (uint32_t i = 0; i < streamFreq.size(); i++)
|
for (uint32_t i = 0; i < streamFreq.size(); i++)
|
||||||
streamFreq[i] = 1;
|
streamFreq[i] = 1;
|
||||||
|
|
||||||
|
@ -27,7 +27,7 @@ namespace dxvk {
|
|||||||
}
|
}
|
||||||
|
|
||||||
struct D3D9ClipPlane {
|
struct D3D9ClipPlane {
|
||||||
float coeff[4];
|
float coeff[4] = {};
|
||||||
};
|
};
|
||||||
|
|
||||||
struct D3D9RenderStateInfo {
|
struct D3D9RenderStateInfo {
|
||||||
@ -189,40 +189,40 @@ namespace dxvk {
|
|||||||
Com<D3D9VertexDecl, false> vertexDecl;
|
Com<D3D9VertexDecl, false> vertexDecl;
|
||||||
Com<D3D9IndexBuffer, false> indices;
|
Com<D3D9IndexBuffer, false> indices;
|
||||||
|
|
||||||
std::array<DWORD, RenderStateCount> renderStates = { 0 };
|
std::array<DWORD, RenderStateCount> renderStates = {};
|
||||||
|
|
||||||
std::array<
|
std::array<
|
||||||
std::array<DWORD, SamplerStateCount>,
|
std::array<DWORD, SamplerStateCount>,
|
||||||
SamplerCount> samplerStates;
|
SamplerCount> samplerStates = {};
|
||||||
|
|
||||||
std::array<D3D9VBO, caps::MaxStreams> vertexBuffers;
|
std::array<D3D9VBO, caps::MaxStreams> vertexBuffers = {};
|
||||||
|
|
||||||
std::array<
|
std::array<
|
||||||
IDirect3DBaseTexture9*,
|
IDirect3DBaseTexture9*,
|
||||||
SamplerCount> textures;
|
SamplerCount> textures = {};
|
||||||
|
|
||||||
Com<D3D9VertexShader, false> vertexShader;
|
Com<D3D9VertexShader, false> vertexShader;
|
||||||
Com<D3D9PixelShader, false> pixelShader;
|
Com<D3D9PixelShader, false> pixelShader;
|
||||||
|
|
||||||
D3DVIEWPORT9 viewport;
|
D3DVIEWPORT9 viewport = {};
|
||||||
RECT scissorRect;
|
RECT scissorRect = {};
|
||||||
|
|
||||||
std::array<
|
std::array<
|
||||||
D3D9ClipPlane,
|
D3D9ClipPlane,
|
||||||
caps::MaxClipPlanes> clipPlanes;
|
caps::MaxClipPlanes> clipPlanes = {};
|
||||||
|
|
||||||
std::array<
|
std::array<
|
||||||
std::array<DWORD, TextureStageStateCount>,
|
std::array<DWORD, TextureStageStateCount>,
|
||||||
caps::TextureStageCount> textureStages;
|
caps::TextureStageCount> textureStages = {};
|
||||||
|
|
||||||
D3D9ShaderConstantsVSSoftware vsConsts;
|
D3D9ShaderConstantsVSSoftware vsConsts;
|
||||||
D3D9ShaderConstantsPS psConsts;
|
D3D9ShaderConstantsPS psConsts;
|
||||||
|
|
||||||
std::array<UINT, caps::MaxStreams> streamFreq;
|
std::array<UINT, caps::MaxStreams> streamFreq = {};
|
||||||
|
|
||||||
std::array<Matrix4, caps::MaxTransforms> transforms;
|
std::array<Matrix4, caps::MaxTransforms> transforms = {};
|
||||||
|
|
||||||
D3DMATERIAL9 material = D3DMATERIAL9();
|
D3DMATERIAL9 material = {};
|
||||||
|
|
||||||
std::vector<std::optional<D3DLIGHT9>> lights;
|
std::vector<std::optional<D3DLIGHT9>> lights;
|
||||||
std::array<DWORD, caps::MaxEnabledLights> enabledLightIndices;
|
std::array<DWORD, caps::MaxEnabledLights> enabledLightIndices;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user