Estoy trabajando con DX9/SM3 por el momento, y la documentación de MSDN en HLSL samplers parece ser muy deficiente para explicar cómo usar los diferentes tipos de muestreador. Lo peor es que tratan de cubrir DX9 y DX10 en un solo artículo, por lo que emburujar todas las palabras clave:¿Para qué sirven los diferentes tipos de muestras HLSL?
sampler Nombre = SamplerType {Textura = < texture_variable>; [state_name = state_value;] ...};
...
SamplerType
[en] El tipo de muestras, que es uno de los siguientes: sampler, sampler1D, sampler2D, sampler3D, samplerCUBE, sampler_state, SamplerState.
Diferencias entre Direct3D 9 y Direct3D 10:
Direct3D 10 soporta un segundo tipo de toma de muestras: SamplerComparisonState.
tengo la sensación de que, contrariamente a esta valoración crítica, es SamplerState
DX10 solamente. Prácticamente todo el código que veo usa sampler_state
para SamplerType. Un ejemplo rápido de BasicHLSL (DX9):
sampler MeshTextureSampler =
sampler_state
{
Texture = <g_MeshTexture>;
MipFilter = LINEAR;
MinFilter = LINEAR;
MagFilter = LINEAR;
};
¿Por qué existen todas las diferentes _SamplerType_s y cuándo se usa, por ejemplo, sampler
o sampler2D
en lugar de sampler_state
? Debe ser explícito cuando busque de alguna manera, p. tex2D
, texCUBE
, entonces, ¿qué está pasando aquí?
tenga cuidado, [email protected] no se supervisa activamente. – Goz
No lo sabía, gracias. Bueno, también califiqué y proporcioné comentarios sobre el artículo en cuestión, así que tal vez eso funcione. – Tchami
Gracias, me alegro de no haberlo perdido. Logré sacar mi viejo DX9 CHM y tenía un artículo mucho más limpio. DX9 incluso admite matrices de muestras, pero nunca lo sabrías de la página recién restaurada de MSDN. –