Hi Leute!
Ich habe in Problem mit den SamplerStates.
Ich benutze die Shader ohne das Effect-Framework.
Allerdings bekomme ich hierbei Probleme.
Hier ist der Code des SamplerStates:
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
|
SamplerState TextureSamplerWrap
{
Filter= MACRO_TEXTURE_FILTER;
MaxAnisotropy= MACRO_MAX_ANISOTROPY;
AddressU= Wrap;
AddressV= Wrap;
AddressW= Wrap;
};
|
Der PixelShader nutzt ihn ganz normal, wie er ihn eben nutzen sollte:
|
C-/C++-Quelltext
|
1
2
3
|
...
Out.Color= Texture.Sample(TextureSamplerWrap, In.vTextureCoord.xy);
...
|
Kompilieren ist kein Problem, aber beim Ausführen sagt D3D per Debugger:
D3D11: WARNING: ID3D11DeviceContext:
rawIndexed: The Pixel Shader unit expects a Sampler to be set at Slot 0, but none is bound. This is perfectly valid, as a NULL Sampler maps to default Sampler state. However, the developer may not want to rely on the defaults. [ EXECUTION WARNING #352: DEVICE_DRAW_SAMPLER_NOT_SET ]
Klar habe ich kein SamplerState extra von außen gesetzt. Dafür definiere ich es ja in der Datei.
Fakt ist: Der SamplerState wird nicht angenommen. Es wird so ein StandardClamp-Teil genommen.
Wie löse ich jetzt das Problemchen?