|
Cogs.Core
|
Classes | |
| struct | EffectBindingInstance |
| struct | TexturePropertyState |
Public Member Functions | |
| ActivationResult | update (Material *material, IGraphicsDevice *device, class RenderResources *resources, struct RenderStates *renderStates) |
| void | release (class Renderer *renderer) |
| EffectBinding * | getBinding (const size_t permutationIndex, const MaterialInstance *materialInstance, const MeshStreamsLayout *streamsLayout, const EnginePermutation *enginePermutation, const RenderPassOptions &passOptions, const ClipShapeType clipShape) |
Public Member Functions inherited from Cogs::Core::RenderResourceBase< Material > | |
| RenderResourceBase (const RenderResourceBase &)=delete | |
| void | setResource (Material *resource) |
| Material * | getResource () const |
Public Member Functions inherited from Cogs::Core::RenderResource | |
| RenderResource (const RenderResource &)=delete | |
| RenderResource & | operator= (const RenderResource &)=delete |
| void | setActive () |
| void | setDelayed () |
| void | setFailed () |
| void | setReleased () |
| void | setOwned () |
| void | setPersistent () |
| void | setOverride () |
| bool | isActive () const |
| Get if the render resource is active and can be used for rendering. | |
| bool | isDelayed () const |
| Get if the render resource is in a delayed state. | |
| bool | isSet (RenderResourceFlags flag) const |
| bool | isPersistent () const |
| bool | isOverride () const |
| bool | hasFailed () const |
| bool | isReleased () const |
| bool | isOwned () const |
| void | setName (std::string_view str) |
| const std::string & | getName () const |
| RenderResourceType | getType () const |
| RenderResourceFlags | getFlags () const |
| void | incrementGeneration () |
| uint16_t | getGeneration () |
| Id | getIdentity () const |
Public Attributes | |
| std::vector< EffectBindingInstance > | bindings |
| std::vector< EffectBindingInstance > | pendingBindings |
| std::vector< TexturePropertyState > | texturePropertyStates |
| uint32_t | updatedGeneration = ~0u |
Private Attributes | |
| IRenderer * | renderer = nullptr |
Additional Inherited Members | |
Public Types inherited from Cogs::Core::RenderResource | |
| typedef uint32_t | Id |
Protected Attributes inherited from Cogs::Core::RenderResource | |
| std::string | name |
| RenderResourceType | type = RenderResourceType::Unknown |
| RenderResourceFlags | flags = RenderResourceFlags::None |
| uint16_t | generation = 0 |
| Id | identity = 0 |
Definition at line 24 of file RenderMaterial.h.
| Cogs::Core::EffectBinding * Cogs::Core::RenderMaterial::getBinding | ( | const size_t | permutationIndex, |
| const MaterialInstance * | materialInstance, | ||
| const MeshStreamsLayout * | streamsLayout, | ||
| const EnginePermutation * | enginePermutation, | ||
| const RenderPassOptions & | passOptions, | ||
| const ClipShapeType | clipShape | ||
| ) |
Get effect for a material variant with a given permutation/variant/streamlayout combo.
Definition at line 362 of file RenderMaterial.cpp.
References Cogs::Core::Material::getEffect(), and Cogs::Core::Renderer::getEffectBindings().
Referenced by Cogs::Core::RenderMaterialInstance::checkReady().
| void Cogs::Core::RenderMaterial::release | ( | class Renderer * | renderer | ) |
Definition at line 331 of file RenderMaterial.cpp.
| Cogs::Core::ActivationResult Cogs::Core::RenderMaterial::update | ( | Material * | material, |
| IGraphicsDevice * | device, | ||
| class RenderResources * | resources, | ||
| struct RenderStates * | renderStates | ||
| ) |
Definition at line 251 of file RenderMaterial.cpp.
| std::vector<EffectBindingInstance> Cogs::Core::RenderMaterial::bindings |
Definition at line 45 of file RenderMaterial.h.
| std::vector<EffectBindingInstance> Cogs::Core::RenderMaterial::pendingBindings |
Definition at line 46 of file RenderMaterial.h.
|
private |
Definition at line 58 of file RenderMaterial.h.
| std::vector<TexturePropertyState> Cogs::Core::RenderMaterial::texturePropertyStates |
Definition at line 53 of file RenderMaterial.h.
| uint32_t Cogs::Core::RenderMaterial::updatedGeneration = ~0u |
Definition at line 55 of file RenderMaterial.h.