mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-02-20 10:54:16 +01:00
[d3d9] Move capture struct and enum to stateblock header
Makes more sense for it to be here.
This commit is contained in:
parent
3cdae3ae1d
commit
91b5105db5
@ -280,61 +280,6 @@ namespace dxvk {
|
|||||||
: UpdateHelper(pState->psConsts);
|
: UpdateHelper(pState->psConsts);
|
||||||
}
|
}
|
||||||
|
|
||||||
enum class D3D9CapturedStateFlag : uint32_t {
|
|
||||||
VertexDecl,
|
|
||||||
Indices,
|
|
||||||
RenderStates,
|
|
||||||
SamplerStates,
|
|
||||||
VertexBuffers,
|
|
||||||
Textures,
|
|
||||||
VertexShader,
|
|
||||||
PixelShader,
|
|
||||||
Viewport,
|
|
||||||
ScissorRect,
|
|
||||||
ClipPlanes,
|
|
||||||
VsConstants,
|
|
||||||
PsConstants,
|
|
||||||
StreamFreq,
|
|
||||||
Transforms,
|
|
||||||
TextureStages,
|
|
||||||
Material
|
|
||||||
};
|
|
||||||
|
|
||||||
using D3D9CapturedStateFlags = Flags<D3D9CapturedStateFlag>;
|
|
||||||
|
|
||||||
struct D3D9StateCaptures {
|
|
||||||
D3D9CapturedStateFlags flags;
|
|
||||||
|
|
||||||
std::bitset<RenderStateCount> renderStates;
|
|
||||||
|
|
||||||
std::bitset<SamplerCount> samplers;
|
|
||||||
std::array<
|
|
||||||
std::bitset<SamplerStateCount>,
|
|
||||||
SamplerCount> samplerStates;
|
|
||||||
|
|
||||||
std::bitset<caps::MaxStreams> vertexBuffers;
|
|
||||||
std::bitset<SamplerCount> textures;
|
|
||||||
std::bitset<caps::MaxClipPlanes> clipPlanes;
|
|
||||||
std::bitset<caps::MaxStreams> streamFreq;
|
|
||||||
std::bitset<caps::MaxTransforms> transforms;
|
|
||||||
std::bitset<caps::TextureStageCount> textureStages;
|
|
||||||
std::array<
|
|
||||||
std::bitset<D3DTSS_CONSTANT>,
|
|
||||||
caps::TextureStageCount> textureStageStates;
|
|
||||||
|
|
||||||
struct {
|
|
||||||
std::bitset<caps::MaxFloatConstantsSoftware> fConsts;
|
|
||||||
std::bitset<caps::MaxOtherConstantsSoftware> iConsts;
|
|
||||||
std::bitset<caps::MaxOtherConstantsSoftware> bConsts;
|
|
||||||
} vsConsts;
|
|
||||||
|
|
||||||
struct {
|
|
||||||
std::bitset<caps::MaxFloatConstantsPS> fConsts;
|
|
||||||
std::bitset<caps::MaxOtherConstants> iConsts;
|
|
||||||
std::bitset<caps::MaxOtherConstants> bConsts;
|
|
||||||
} psConsts;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct Direct3DState9 : public D3D9CapturableState {
|
struct Direct3DState9 : public D3D9CapturableState {
|
||||||
|
|
||||||
std::array<Com<D3D9Surface, false>, caps::MaxSimultaneousRenderTargets> renderTargets;
|
std::array<Com<D3D9Surface, false>, caps::MaxSimultaneousRenderTargets> renderTargets;
|
||||||
|
@ -6,6 +6,61 @@
|
|||||||
|
|
||||||
namespace dxvk {
|
namespace dxvk {
|
||||||
|
|
||||||
|
enum class D3D9CapturedStateFlag : uint32_t {
|
||||||
|
VertexDecl,
|
||||||
|
Indices,
|
||||||
|
RenderStates,
|
||||||
|
SamplerStates,
|
||||||
|
VertexBuffers,
|
||||||
|
Textures,
|
||||||
|
VertexShader,
|
||||||
|
PixelShader,
|
||||||
|
Viewport,
|
||||||
|
ScissorRect,
|
||||||
|
ClipPlanes,
|
||||||
|
VsConstants,
|
||||||
|
PsConstants,
|
||||||
|
StreamFreq,
|
||||||
|
Transforms,
|
||||||
|
TextureStages,
|
||||||
|
Material
|
||||||
|
};
|
||||||
|
|
||||||
|
using D3D9CapturedStateFlags = Flags<D3D9CapturedStateFlag>;
|
||||||
|
|
||||||
|
struct D3D9StateCaptures {
|
||||||
|
D3D9CapturedStateFlags flags;
|
||||||
|
|
||||||
|
std::bitset<RenderStateCount> renderStates;
|
||||||
|
|
||||||
|
std::bitset<SamplerCount> samplers;
|
||||||
|
std::array<
|
||||||
|
std::bitset<SamplerStateCount>,
|
||||||
|
SamplerCount> samplerStates;
|
||||||
|
|
||||||
|
std::bitset<caps::MaxStreams> vertexBuffers;
|
||||||
|
std::bitset<SamplerCount> textures;
|
||||||
|
std::bitset<caps::MaxClipPlanes> clipPlanes;
|
||||||
|
std::bitset<caps::MaxStreams> streamFreq;
|
||||||
|
std::bitset<caps::MaxTransforms> transforms;
|
||||||
|
std::bitset<caps::TextureStageCount> textureStages;
|
||||||
|
std::array<
|
||||||
|
std::bitset<D3DTSS_CONSTANT>,
|
||||||
|
caps::TextureStageCount> textureStageStates;
|
||||||
|
|
||||||
|
struct {
|
||||||
|
std::bitset<caps::MaxFloatConstantsSoftware> fConsts;
|
||||||
|
std::bitset<caps::MaxOtherConstantsSoftware> iConsts;
|
||||||
|
std::bitset<caps::MaxOtherConstantsSoftware> bConsts;
|
||||||
|
} vsConsts;
|
||||||
|
|
||||||
|
struct {
|
||||||
|
std::bitset<caps::MaxFloatConstantsPS> fConsts;
|
||||||
|
std::bitset<caps::MaxOtherConstants> iConsts;
|
||||||
|
std::bitset<caps::MaxOtherConstants> bConsts;
|
||||||
|
} psConsts;
|
||||||
|
};
|
||||||
|
|
||||||
enum class D3D9StateBlockType :uint32_t {
|
enum class D3D9StateBlockType :uint32_t {
|
||||||
None,
|
None,
|
||||||
VertexState,
|
VertexState,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user