3#include "Engine/Asset/AssetHandles.h"
4#include "Engine/Component/LogicComponent.h"
5#include "Engine/Files/Path.h"
6#include "Engine/Material/RuntimeMaterialLease.h"
42 void tick(
double deltaTime )
override;
Move-only ownership of a material created at runtime.
Logic(Entities::Scene *owningScene)
Constructs a logic component owned by a scene.
A component which can be attached as many times to an actor as one wants. It makes it possible to ren...
WidgetComponent * widget_
WorldUiSurfaceComponent(Entities::Scene *scene, Mesh *mesh, WidgetComponent *widget, Asset::MeshPath materialPath, WorldUiMaterialSettings settings={})
void tick(double deltaTime) override
Called every frame if ticking is enabled.
Asset::MeshPath materialPath_
void beginPlay() override
Called when the component is added to the scene or the game starts.
WorldUiMaterialSettings settings_
Assets::MaterialHandle getMaterialHandle() const
void tryInstallMaterial()
Assets::RuntimeMaterialLease materialLease_
bool isMaterialInstalled() const
bool loggedWaitingForDescriptor_
Owns scene entities, actor lifetime, and the scene graph root.
AssetHandle< MaterialHandleTag > MaterialHandle
Handle to a material payload.
Identifies a named mesh-like asset inside an asset file.
glm::vec4 baseColorFactor