summaryrefslogtreecommitdiffstats
path: root/Graphics/GraphicsTools
diff options
context:
space:
mode:
authorEgor Yusov <egor.yusov@gmail.com>2019-02-08 19:14:34 +0000
committerEgor Yusov <egor.yusov@gmail.com>2019-02-08 19:14:34 +0000
commitfdb17bd1b125ced2d7d1e871de4184433446f6b1 (patch)
treeeee1b24f0a2ae298da1ae55c3cf9d5e4438cc9d2 /Graphics/GraphicsTools
parentMinor updates to StandardFile (diff)
downloadDiligentCore-fdb17bd1b125ced2d7d1e871de4184433446f6b1.tar.gz
DiligentCore-fdb17bd1b125ced2d7d1e871de4184433446f6b1.zip
Cleared interface: removed superfluous default constructors; added default memeber initializers instead.
Diffstat (limited to 'Graphics/GraphicsTools')
-rw-r--r--Graphics/GraphicsTools/include/CommonlyUsedStates.h185
1 files changed, 152 insertions, 33 deletions
diff --git a/Graphics/GraphicsTools/include/CommonlyUsedStates.h b/Graphics/GraphicsTools/include/CommonlyUsedStates.h
index 6dcb5801..7cbe5aa9 100644
--- a/Graphics/GraphicsTools/include/CommonlyUsedStates.h
+++ b/Graphics/GraphicsTools/include/CommonlyUsedStates.h
@@ -35,42 +35,161 @@
namespace Diligent
{
// Common depth-stencil states
- const DepthStencilStateDesc DSS_DisableDepth(False, False);
+ static const DepthStencilStateDesc DSS_Default{};
+
+ static const DepthStencilStateDesc DSS_DisableDepth
+ {
+ False, // DepthEnable
+ False // DepthWriteEnable
+ };
- // Common rasterizer states
- const RasterizerStateDesc RS_SolidFillNoCull(FILL_MODE_SOLID, CULL_MODE_NONE);
- const RasterizerStateDesc RS_WireFillNoCull(FILL_MODE_WIREFRAME, CULL_MODE_NONE, false, 1, 0.f, 1.f);
+ // Common rasterizer states
+ static const RasterizerStateDesc RS_Default{};
+
+ static const RasterizerStateDesc RS_SolidFillNoCull
+ {
+ FILL_MODE_SOLID,
+ CULL_MODE_NONE
+ };
+
+ static const RasterizerStateDesc RS_WireFillNoCull
+ {
+ FILL_MODE_WIREFRAME,
+ CULL_MODE_NONE
+ };
+
+
+ // Blend states
+ static const BlendStateDesc BS_Default{};
+
+ static const BlendStateDesc BS_AlphaBlend =
+ {
+ False, // AlphaToCoverageEnable
+ False, // IndependentBlendEnable
+ { // RenderTagets
+ {
+ True, // BlendEnable
+ False, // LogicOperationEnable
+ BLEND_FACTOR_SRC_ALPHA, // SrcBlend
+ BLEND_FACTOR_INV_SRC_ALPHA, // DestBlend
+ BLEND_OPERATION_ADD, // BlendOp
+ BLEND_FACTOR_SRC_ALPHA, // SrcBlendAlpha
+ BLEND_FACTOR_INV_SRC_ALPHA, // DestBlendAlpha
+ BLEND_OPERATION_ADD // BlendOpAlpha
+ }
+ }
+ };
// Common sampler states
- const SamplerDesc Sam_LinearClamp(FILTER_TYPE_LINEAR, FILTER_TYPE_LINEAR, FILTER_TYPE_LINEAR,
- TEXTURE_ADDRESS_CLAMP, TEXTURE_ADDRESS_CLAMP, TEXTURE_ADDRESS_CLAMP);
-
- const SamplerDesc Sam_PointClamp(FILTER_TYPE_POINT, FILTER_TYPE_POINT, FILTER_TYPE_POINT,
- TEXTURE_ADDRESS_CLAMP, TEXTURE_ADDRESS_CLAMP, TEXTURE_ADDRESS_CLAMP);
-
- const SamplerDesc Sam_LinearMirror(FILTER_TYPE_LINEAR, FILTER_TYPE_LINEAR, FILTER_TYPE_LINEAR,
- TEXTURE_ADDRESS_MIRROR, TEXTURE_ADDRESS_MIRROR, TEXTURE_ADDRESS_MIRROR);
-
- const SamplerDesc Sam_PointWrap(FILTER_TYPE_POINT, FILTER_TYPE_POINT, FILTER_TYPE_POINT,
- TEXTURE_ADDRESS_WRAP, TEXTURE_ADDRESS_WRAP, TEXTURE_ADDRESS_WRAP);
-
- const SamplerDesc Sam_LinearWrap(FILTER_TYPE_LINEAR, FILTER_TYPE_LINEAR, FILTER_TYPE_LINEAR,
- TEXTURE_ADDRESS_WRAP, TEXTURE_ADDRESS_WRAP, TEXTURE_ADDRESS_WRAP);
-
- const SamplerDesc Sam_Aniso2xClamp(FILTER_TYPE_ANISOTROPIC, FILTER_TYPE_ANISOTROPIC, FILTER_TYPE_ANISOTROPIC,
- TEXTURE_ADDRESS_CLAMP, TEXTURE_ADDRESS_CLAMP, TEXTURE_ADDRESS_CLAMP, 0.f, 2);
-
- const SamplerDesc Sam_Aniso4xClamp(FILTER_TYPE_ANISOTROPIC, FILTER_TYPE_ANISOTROPIC, FILTER_TYPE_ANISOTROPIC,
- TEXTURE_ADDRESS_CLAMP, TEXTURE_ADDRESS_CLAMP, TEXTURE_ADDRESS_CLAMP, 0.f, 4);
-
- const SamplerDesc Sam_Aniso8xClamp(FILTER_TYPE_ANISOTROPIC, FILTER_TYPE_ANISOTROPIC, FILTER_TYPE_ANISOTROPIC,
- TEXTURE_ADDRESS_CLAMP, TEXTURE_ADDRESS_CLAMP, TEXTURE_ADDRESS_CLAMP, 0.f, 8);
-
- const SamplerDesc Sam_Aniso16xClamp(FILTER_TYPE_ANISOTROPIC, FILTER_TYPE_ANISOTROPIC, FILTER_TYPE_ANISOTROPIC,
- TEXTURE_ADDRESS_CLAMP, TEXTURE_ADDRESS_CLAMP, TEXTURE_ADDRESS_CLAMP, 0.f, 16);
-
- const SamplerDesc Sam_Aniso8xWrap(FILTER_TYPE_ANISOTROPIC, FILTER_TYPE_ANISOTROPIC, FILTER_TYPE_ANISOTROPIC,
- TEXTURE_ADDRESS_WRAP, TEXTURE_ADDRESS_WRAP, TEXTURE_ADDRESS_WRAP, 0.f, 8);
+ static const SamplerDesc Sam_LinearClamp
+ {
+ FILTER_TYPE_LINEAR,
+ FILTER_TYPE_LINEAR,
+ FILTER_TYPE_LINEAR,
+ TEXTURE_ADDRESS_CLAMP,
+ TEXTURE_ADDRESS_CLAMP,
+ TEXTURE_ADDRESS_CLAMP
+ };
+
+ static const SamplerDesc Sam_PointClamp
+ {
+ FILTER_TYPE_POINT,
+ FILTER_TYPE_POINT,
+ FILTER_TYPE_POINT,
+ TEXTURE_ADDRESS_CLAMP,
+ TEXTURE_ADDRESS_CLAMP,
+ TEXTURE_ADDRESS_CLAMP
+ };
+
+ static const SamplerDesc Sam_LinearMirror
+ {
+ FILTER_TYPE_LINEAR,
+ FILTER_TYPE_LINEAR,
+ FILTER_TYPE_LINEAR,
+ TEXTURE_ADDRESS_MIRROR,
+ TEXTURE_ADDRESS_MIRROR,
+ TEXTURE_ADDRESS_MIRROR
+ };
+
+ static const SamplerDesc Sam_PointWrap
+ {
+ FILTER_TYPE_POINT,
+ FILTER_TYPE_POINT,
+ FILTER_TYPE_POINT,
+ TEXTURE_ADDRESS_WRAP,
+ TEXTURE_ADDRESS_WRAP,
+ TEXTURE_ADDRESS_WRAP
+ };
+
+ static const SamplerDesc Sam_LinearWrap
+ {
+ FILTER_TYPE_LINEAR,
+ FILTER_TYPE_LINEAR,
+ FILTER_TYPE_LINEAR,
+ TEXTURE_ADDRESS_WRAP,
+ TEXTURE_ADDRESS_WRAP,
+ TEXTURE_ADDRESS_WRAP
+ };
+
+ static const SamplerDesc Sam_Aniso2xClamp
+ {
+ FILTER_TYPE_ANISOTROPIC,
+ FILTER_TYPE_ANISOTROPIC,
+ FILTER_TYPE_ANISOTROPIC,
+ TEXTURE_ADDRESS_CLAMP,
+ TEXTURE_ADDRESS_CLAMP,
+ TEXTURE_ADDRESS_CLAMP,
+ 0.f, // MipLODBias
+ 2 // MaxAnisotropy
+ };
+
+ static const SamplerDesc Sam_Aniso4xClamp
+ {
+ FILTER_TYPE_ANISOTROPIC,
+ FILTER_TYPE_ANISOTROPIC,
+ FILTER_TYPE_ANISOTROPIC,
+ TEXTURE_ADDRESS_CLAMP,
+ TEXTURE_ADDRESS_CLAMP,
+ TEXTURE_ADDRESS_CLAMP,
+ 0.f, // MipLODBias
+ 4 // MaxAnisotropy
+ };
+
+ static const SamplerDesc Sam_Aniso8xClamp
+ {
+ FILTER_TYPE_ANISOTROPIC,
+ FILTER_TYPE_ANISOTROPIC,
+ FILTER_TYPE_ANISOTROPIC,
+ TEXTURE_ADDRESS_CLAMP,
+ TEXTURE_ADDRESS_CLAMP,
+ TEXTURE_ADDRESS_CLAMP,
+ 0.f, // MipLODBias
+ 8 // MaxAnisotropy
+ };
+
+ static const SamplerDesc Sam_Aniso16xClamp
+ {
+ FILTER_TYPE_ANISOTROPIC,
+ FILTER_TYPE_ANISOTROPIC,
+ FILTER_TYPE_ANISOTROPIC,
+ TEXTURE_ADDRESS_CLAMP,
+ TEXTURE_ADDRESS_CLAMP,
+ TEXTURE_ADDRESS_CLAMP,
+ 0.f, // MipLODBias
+ 16 // MaxAnisotropy
+ };
+
+ static const SamplerDesc Sam_Aniso8xWrap
+ {
+ FILTER_TYPE_ANISOTROPIC,
+ FILTER_TYPE_ANISOTROPIC,
+ FILTER_TYPE_ANISOTROPIC,
+ TEXTURE_ADDRESS_WRAP,
+ TEXTURE_ADDRESS_WRAP,
+ TEXTURE_ADDRESS_WRAP,
+ 0.f, // MipLODBias
+ 8 // MaxAnisotropy
+ };
}