24 #ifndef PXR_IMAGING_HD_ST_SAMPLER_OBJECT_H 25 #define PXR_IMAGING_HD_ST_SAMPLER_OBJECT_H 28 #include "pxr/imaging/hdSt/api.h" 30 #include "pxr/imaging/hgi/handle.h" 31 #include "pxr/imaging/hd/enums.h" 32 #include "pxr/imaging/hd/types.h" 36 PXR_NAMESPACE_OPEN_SCOPE
43 class HdSt_SamplerObjectRegistry;
46 using HdStSamplerObjectSharedPtr =
47 std::shared_ptr<class HdStSamplerObject>;
72 HdSt_SamplerObjectRegistry * samplerObjectRegistry);
75 HdSt_SamplerObjectRegistry *
const _samplerObjectRegistry;
88 HdSt_SamplerObjectRegistry * samplerObjectRegistry);
112 HdSt_SamplerObjectRegistry * samplerObjectRegistry);
137 HdSt_SamplerObjectRegistry * samplerObjectRegistry);
144 return _texelsSampler;
150 return _layoutSampler;
169 HdSt_SamplerObjectRegistry * samplerObjectRegistry);
176 return _texelsSampler;
182 return _layoutSampler;
190 template<HdTextureType textureType>
191 struct HdSt_TypedSamplerObjectHelper;
198 template<HdTextureType textureType>
200 typename HdSt_TypedSamplerObjectHelper<textureType>::type;
203 struct HdSt_TypedSamplerObjectHelper<HdTextureType::Uv> {
208 struct HdSt_TypedSamplerObjectHelper<HdTextureType::Field> {
213 struct HdSt_TypedSamplerObjectHelper<HdTextureType::Ptex> {
218 struct HdSt_TypedSamplerObjectHelper<HdTextureType::Udim> {
222 PXR_NAMESPACE_CLOSE_SCOPE
A sampler suitable for Udim textures (wraps one GPU sampler for the texels texture).
Ptex doesn't bind samplers, so this class is just holding a sampler to resolve handles for bindless t...
A base class encapsulating a GPU sampler object.
const HgiSamplerHandle & GetTexelsSampler() const
The GPU sampler object for the texels texture.
const HgiSamplerHandle & GetSampler() const
The sampler.
const HgiSamplerHandle & GetTexelsSampler() const
The GPU sampler object for the texels texture.
const HgiSamplerHandle & GetSampler() const
The sampler.
Hydra Graphics Interface.
A uvw texture with a bounding box describing how to transform it.
const HgiSamplerHandle & GetLayoutSampler() const
The GPU sampler object for the layout texture.
A sampler suitable for HdStFieldTextureObject.
Collection of standard parameters such as wrap modes to sample a texture.
A template alias such that, e.g., HdStUvSamplerObject can be accessed as HdStTypedSamplerObject<HdTex...
A sampler suitable for HdStUvTextureObject.
const HgiSamplerHandle & GetLayoutSampler() const
The GPU sampler object for the layout texture.
A base class for uv textures.