Gruppi di stati di effetto (Direct3D 11)
Gli stati di effetto sono coppie valore nome sotto forma di espressione.
- Stato di blend
- Stato profondità e Stencil
- Stato rasterizer
- Stato dell'esempio
- Stato dell'oggetto Effetto
- Definizione e uso di oggetti di stato
- Argomenti correlati
Stato di blend
Stato effetto | Gruppo |
---|---|
ALPHATOCOVERAGEENABLEBLENDENABLESRCBLENDESTBLENDBLENDOP SRCBLENDALPHADESTBLENDALPHABLENDOPALPHARENDERTARGETWRITEMASK | Membri di D3D11_BLEND_DESC |
Stato profondità e Stencil
Stato effetto | Gruppo |
---|---|
DEPTHENABLEDEPTHWRITEMASKDEPTHFUNCSTENCILENABLESTENCILREADMASKSTENCILWRITEMASK | Membri di D3D11_DEPTH_STENCIL_DESC |
FRONTFACESTENCILFAILFRONTFACESTENCILZFAILFRONTFACESTENCILPASSFRONTFACESTENCILFUNCBACKFACESTENCILFAILBACKFACESTENCILZFAILBACKFACESTENCILPASSBACKFACESTENCILFUNC | Membro di D3D11_DEPTH_STENCILOP_DESC |
Stato rasterizer
Stato effetto | Gruppo |
---|---|
FILLMODE | D3D11_FILL_MODE |
CULLMODE | D3D11_CULL_MODE |
FRONTCOUNTERCLOCKWISEDEPTHBIASDEPTHBIASCLAMPSLOPESCALEDDEPTHBIAS ZCLIPENABLESCISSORENABLEMULTISAMPLEENABLEANTIALIASEDLINEENABLE | Membri di D3D11_RASTERIZER_DESC |
Stato dell'esempio
Stato effetto | Gruppo |
---|---|
Filter AddressU AddressV AddressW MipLODBias MaxAnisotropy ComparisonFunc BorderColor MinLOD MaxLOD | Membri di D3D11_SAMPLER_DESC |
Per esempi, vedere Sampler Type (DirectX HLSL).
Stato dell'oggetto Effetto
Questo oggetto Effect | Mapping a |
---|---|
RASTERIZERSTATE | Oggetto Stato Rasterizer . |
DEPTHSTENCILSTATE | Oggetto State Depth e Stencil State . |
BLENDSTATE | Oggetto Stato Blend . |
VERTEXSHADER | Oggetto vertex shader compilato. |
PIXELSHADER | Oggetto pixel shader compilato. |
GEOMETRYSHADER | Oggetto geometry shader compilato. |
DS_STENCILREFAB_BLENDFACTORAB_SAMPLEMASK | Membri di D3DX11_PASS_DESC. |
Definizione e uso di oggetti di stato
Gli oggetti stato vengono dichiarati nei file FX nel formato seguente. StateObjectType è uno degli stati elencati sopra e MemberName è il nome di qualsiasi membro che avrà un valore non predefinito.
StateObjectType ObjectName {
MemberName = value;
...
MemberName = value;
};
Ad esempio, per configurare un oggetto stato blend con AlphaToCoverageEnable e BlendEnable[0] impostato su FALSE , verrà usato il codice seguente.
BlendState NoBlend {
AlphaToCoverageEnable = FALSE;
BlendEnable[0] = FALSE;
};
L'oggetto state viene applicato a una tecnica passando usando una delle funzioni SetStateGroup descritte nella sintassi di Effect Technique (Direct3D 11). Ad esempio, per applicare l'oggetto BlendState descritto sopra il codice seguente verrà usato.
SetBlendState( NoBlend, float4( 0.0f, 0.0f, 0.0f, 0.0f ), 0xFFFFFFFF );
Argomenti correlati