Vulkan Schnee 0.0.1
High-performance rendering engine
Loading...
Searching...
No Matches
WindTrailComponent.h
Go to the documentation of this file.
1#pragma once
2
4#include <memory>
5
6namespace Engine::Entities
7{
8 class SceneNode;
9 class Scene;
10} // namespace Engine::Entities
11
12namespace Engine::Components {
13
17 class WindTrail : public Logic
18 {
19 public:
20 static constexpr bool IsUnique = true;
21 static constexpr const char * ComponentName = "WindTrail";
22
23 explicit WindTrail( Entities::Scene * owningScene );
24 ~WindTrail() override = default;
25
26 void beginPlay() override;
27 void endPlay() override;
28
33 [[nodiscard]] std::shared_ptr<Entities::SceneNode> getEmitterNode() const
34 {
35 return emitterNode_;
36 }
37
38 private:
39 std::shared_ptr<Entities::SceneNode> emitterNode_;
40 };
41
42} // namespace EngineCore
Logic(Entities::Scene *owningScene)
~WindTrail() override=default
void beginPlay() override
Called when the component is added to the scene or the game starts.
std::shared_ptr< Entities::SceneNode > emitterNode_
std::shared_ptr< Entities::SceneNode > getEmitterNode() const
Gets the scene node used as the trail emitter.
void endPlay() override
Called when the component is removed or the game ends.
static constexpr const char * ComponentName
WindTrail(Entities::Scene *owningScene)
Represents a node in the scene graph, containing information about its position, rotation,...
Definition SceneGraph.h:18
A scene is the overarching structure which can spawn, contain and destroy actors or entities.
Definition Scene.h:62