Go to the documentation of this file.
48 template <
typename EngineImplTraits>
49 class ShaderBase :
public DeviceObjectBase<typename EngineImplTraits::ShaderInterface, typename EngineImplTraits::RenderDeviceImplType, ShaderDesc>
68 bool bIsDeviceInternal =
false) :
71 const auto& deviceFeatures = pDevice->GetDeviceCaps().Features;
@ SHADER_TYPE_AMPLIFICATION
Amplification (task) shader.
Definition: GraphicsTypes.h:74
Base interface for a reference counter object that stores the number of strong and weak references an...
Definition: ReferenceCounters.h:44
@ SHADER_TYPE_RAY_GEN
Ray generation shader.
Definition: GraphicsTypes.h:76
#define LOG_ERROR_AND_THROW(...)
Definition: Errors.hpp:101
@ SHADER_TYPE_DOMAIN
Domain (tessellation evaluation) shader.
Definition: GraphicsTypes.h:72
@ SHADER_TYPE_COMPUTE
Compute shader.
Definition: GraphicsTypes.h:73
Template class implementing base functionality of the shader object.
Definition: ShaderBase.hpp:49
Shader description.
Definition: Shader.h:110
#define IMPLEMENT_QUERY_INTERFACE_IN_PLACE(InterfaceID, ParentClassName)
Definition: ObjectBase.hpp:59
DeviceObjectBase< BaseInterface, RenderDeviceImplType, ShaderDesc > TDeviceObjectBase
Definition: ShaderBase.hpp:58
ShaderBase(IReferenceCounters *pRefCounters, RenderDeviceImplType *pDevice, const ShaderDesc &ShdrDesc, bool bIsDeviceInternal=false)
Definition: ShaderBase.hpp:65
@ SHADER_TYPE_HULL
Hull (tessellation control) shader.
Definition: GraphicsTypes.h:71
typename EngineGLImplTraits ::ShaderInterface BaseInterface
Definition: ShaderBase.hpp:53
@ SHADER_TYPE_GEOMETRY
Geometry shader.
Definition: GraphicsTypes.h:70
@ SHADER_TYPE_CALLABLE
Callable shader.
Definition: GraphicsTypes.h:81
typename EngineGLImplTraits ::RenderDeviceImplType RenderDeviceImplType
Definition: ShaderBase.hpp:56
@ SHADER_TYPE_MESH
Mesh shader.
Definition: GraphicsTypes.h:75
Template class implementing base functionality of the device object.
Definition: DeviceObjectBase.hpp:45
The library uses Direct3D-style math:
Definition: AdvancedMath.hpp:37