Wildvine Engine
Referencia Doxygen del codigo propio de Wildvine Engine.
Cargando...
Buscando...
Nada coincide
Referencia de la clase SamplerState

Encapsula un ID3D11SamplerState para la etapa de muestreo de texturas en Direct3D 11. Más...

#include <SamplerState.h>

Métodos públicos

void destroy ()
 Libera el recurso ID3D11SamplerState.
 
HRESULT init (Device &device)
 Inicializa el Sampler State con una configuración predeterminada.
 
void render (DeviceContext &deviceContext, unsigned int StartSlot, unsigned int NumSamplers)
 Asigna el Sampler State a la etapa de Pixel Shader.
 
 SamplerState ()=default
 Constructor por defecto.
 
void update ()
 Actualiza parámetros internos del Sampler.
 
 ~SamplerState ()=default
 Destructor por defecto.
 

Atributos públicos

ID3D11SamplerState * m_sampler = nullptr
 Recurso COM de Direct3D 11 para el Sampler State.
 

Descripción detallada

Un Sampler State define cómo se leen las texturas en los shaders:

  • Filtrado (point, linear, anisotropic).
  • Direccionamiento (wrap, mirror, clamp, border).
  • Nivel de mipmapping.

Esta clase administra la creación, aplicación y destrucción de un SamplerState.

Definición en la línea 23 del archivo SamplerState.h.

Documentación de constructores y destructores

◆ SamplerState()

SamplerState::SamplerState ( )
default

◆ ~SamplerState()

SamplerState::~SamplerState ( )
default

No libera automáticamente el recurso COM; llamar a destroy().

Documentación de funciones miembro

◆ destroy()

void SamplerState::destroy ( )

Idempotente: puede llamarse múltiples veces de forma segura.

Postcondición
m_sampler == nullptr.

Definición en la línea 53 del archivo SamplerState.cpp.

Hace referencia a m_sampler y SAFE_RELEASE.

Referenciado por BaseApp::destroy() y Actor::destroy().

◆ init()

HRESULT SamplerState::init ( Device device)

Crea un ID3D11SamplerState configurado según la implementación (ejemplo: filtrado lineal, wrap en UV, LOD completo).

Parámetros
deviceDispositivo con el que se creará el recurso.
Devuelve
S_OK si fue exitoso; código HRESULT en caso de error.
Postcondición
Si retorna S_OK, m_sampler != nullptr.
Ver también
render(), destroy()

Definición en la línea 11 del archivo SamplerState.cpp.

Hace referencia a Device::CreateSamplerState(), ERROR, Device::m_device y m_sampler.

Referenciado por Actor::Actor(), BaseApp::init() y Skybox::init().

◆ render()

void SamplerState::render ( DeviceContext deviceContext,
unsigned int  StartSlot,
unsigned int  NumSamplers 
)

Llama a ID3D11DeviceContext::PSSetSamplers para establecer el sampler.

Parámetros
deviceContextContexto donde se aplicará el sampler.
StartSlotSlot inicial en el que se vinculará el sampler.
NumSamplersNúmero de samplers a enlazar (normalmente 1).
Precondición
m_sampler debe haberse creado con init().

Definición en la línea 41 del archivo SamplerState.cpp.

Hace referencia a ERROR, m_sampler y DeviceContext::PSSetSamplers().

Referenciado por Skybox::render(), Actor::render() y ForwardRenderer::renderObject().

◆ update()

void SamplerState::update ( )

Método de marcador para recrear o mutar dinámicamente la configuración (por ejemplo, cambiar de filtrado linear a anisotrópico).

Nota
Actualmente no realiza ninguna operación.

Definición en la línea 36 del archivo SamplerState.cpp.

Documentación de datos miembro

◆ m_sampler

ID3D11SamplerState* SamplerState::m_sampler = nullptr

Válido tras init(); nullptr después de destroy().

Definición en la línea 94 del archivo SamplerState.h.

Referenciado por destroy(), init() y render().


La documentación de esta clase está generada de los siguientes archivos: