libdonut
2.3.2
Application framework for cross-platform game development in C++20
|
Configuration of a 3D Model instance, for drawing as part of a RenderPass. More...
#include <donut/graphics/RenderPass.hpp>
Public Attributes | |
Shader3D * | shader = Shader3D::BLINN_PHONG |
Non-owning pointer the shader to use when rendering this model. More... | |
const Model * | model |
Non-owning pointer to the model to be drawn. More... | |
const Texture * | diffuseMapOverride = nullptr |
Non-owning pointer to the texture to use for the base color, or nullptr to use the original textures specified by the model. More... | |
const Texture * | specularMapOverride = nullptr |
Non-owning pointer to the texture to use for specular highlights, or nullptr to use the original textures specified by the model. More... | |
const Texture * | normalMapOverride = nullptr |
Non-owning pointer to the texture to use for normal mapping, or nullptr to use the original textures specified by the model. More... | |
const Texture * | emissiveMapOverride = nullptr |
Non-owning pointer to the texture to use for emissive mapping, or nullptr to use the original textures specified by the model. More... | |
mat4 | transformation = identity<mat4>() |
Transformation matrix to apply to every vertex position of the model, in world space. More... | |
vec2 | textureOffset {0.0f, 0.0f} |
Offset, in texture coordinates, to apply to the texture coordinates before sampling textures. More... | |
vec2 | textureScale {1.0f, 1.0f} |
Coefficients to scale the texture coordinates by before sampling textures. More... | |
Color | tintColor = Color::WHITE |
Tint color to use in the shader. More... | |
vec3 | specularFactor {1.0f, 1.0f, 1.0f} |
Specular factor to use in the shader. More... | |
vec3 | emissiveFactor {1.0f, 1.0f, 1.0f} |
Emissive factor to use in the shader. More... | |
Configuration of a 3D Model instance, for drawing as part of a RenderPass.
Required fields:
Shader3D* donut::graphics::ModelInstance::shader = Shader3D::BLINN_PHONG |
Non-owning pointer the shader to use when rendering this model.
const Model* donut::graphics::ModelInstance::model |
Non-owning pointer to the model to be drawn.
const Texture* donut::graphics::ModelInstance::diffuseMapOverride = nullptr |
Non-owning pointer to the texture to use for the base color, or nullptr to use the original textures specified by the model.
const Texture* donut::graphics::ModelInstance::specularMapOverride = nullptr |
Non-owning pointer to the texture to use for specular highlights, or nullptr to use the original textures specified by the model.
const Texture* donut::graphics::ModelInstance::normalMapOverride = nullptr |
Non-owning pointer to the texture to use for normal mapping, or nullptr to use the original textures specified by the model.
const Texture* donut::graphics::ModelInstance::emissiveMapOverride = nullptr |
Non-owning pointer to the texture to use for emissive mapping, or nullptr to use the original textures specified by the model.
mat4 donut::graphics::ModelInstance::transformation = identity<mat4>() |
Transformation matrix to apply to every vertex position of the model, in world space.
vec2 donut::graphics::ModelInstance::textureOffset {0.0f, 0.0f} |
Offset, in texture coordinates, to apply to the texture coordinates before sampling textures.
vec2 donut::graphics::ModelInstance::textureScale {1.0f, 1.0f} |
Coefficients to scale the texture coordinates by before sampling textures.
Color donut::graphics::ModelInstance::tintColor = Color::WHITE |
Tint color to use in the shader.
vec3 donut::graphics::ModelInstance::specularFactor {1.0f, 1.0f, 1.0f} |
Specular factor to use in the shader.
vec3 donut::graphics::ModelInstance::emissiveFactor {1.0f, 1.0f, 1.0f} |
Emissive factor to use in the shader.