|
| | MeshNode (const std::string &sNodeName) |
| |
| void | setMaterial (std::unique_ptr< Material > pMaterial, size_t iMaterialSlot=0) |
| |
| void | setMeshData (const MeshData &meshData) |
| |
| void | setMeshData (MeshData &&meshData) |
| |
| void | onMeshDataChanged () |
| |
| void | setIsVisible (bool bVisible) |
| |
| Material * | getMaterial (size_t iMaterialSlot=0) |
| |
| size_t | getAvailableMaterialSlotCount () |
| |
| std::pair< std::recursive_mutex *, MeshData * > | getMeshData () |
| |
| std::pair< std::recursive_mutex, GpuResources > * | getMeshGpuResources () |
| |
| std::pair< std::recursive_mutex, MeshShaderConstants > * | getMeshShaderConstants () |
| |
| AABB * | getAABB () |
| |
| bool | isVisible () const |
| |
| | SpatialNode (const std::string &sNodeName) |
| |
| void | setRelativeLocation (const glm::vec3 &location) |
| |
| void | setRelativeRotation (const glm::vec3 &rotation) |
| |
| void | setRelativeScale (const glm::vec3 &scale) |
| |
| void | setWorldLocation (const glm::vec3 &location) |
| |
| void | setWorldRotation (const glm::vec3 &rotation) |
| |
| void | setWorldScale (const glm::vec3 &scale) |
| |
| glm::vec3 | getRelativeLocation () const |
| |
| glm::vec3 | getRelativeRotation () const |
| |
| glm::vec3 | getRelativeScale () const |
| |
| glm::mat4x4 | getRelativeRotationMatrix () |
| |
| glm::vec3 | getWorldLocation () |
| |
| glm::vec3 | getWorldRotation () |
| |
| glm::quat | getWorldRotationQuaternion () |
| |
| glm::vec3 | getWorldScale () |
| |
| glm::vec3 | getWorldForwardDirection () |
| |
| glm::vec3 | getWorldRightDirection () |
| |
| glm::vec3 | getWorldUpDirection () |
| |
| glm::mat4x4 | getWorldMatrix () |
| |
| std::pair< std::recursive_mutex, sgc::GcPtr< SpatialNode > > * | getClosestSpatialParent () |
| |
| | Node () |
| |
| | Node (const std::string &sName) |
| |
|
| Node (const Node &)=delete |
| |
|
Node & | operator= (const Node &)=delete |
| |
|
| Node (Node &&)=delete |
| |
|
Node & | operator= (Node &&)=delete |
| |
| virtual | ~Node () override |
| |
| void | setNodeName (const std::string &sName) |
| |
| void | detachFromParentAndDespawn () |
| |
| void | addChildNode (const sgc::GcPtr< Node > &pNode, AttachmentRule locationRule=AttachmentRule::KEEP_WORLD, AttachmentRule rotationRule=AttachmentRule::KEEP_WORLD, AttachmentRule scaleRule=AttachmentRule::KEEP_WORLD) |
| |
| void | setSerialize (bool bSerialize) |
| |
| std::optional< Error > | serializeNodeTree (const std::filesystem::path &pathToFile, bool bEnableBackup) |
| |
| std::string | getNodeName () const |
| |
| sgc::GcPtr< Node > | getWorldRootNode () |
| |
| std::pair< std::recursive_mutex, sgc::GcPtr< Node > > * | getParentNode () |
| |
| std::pair< std::recursive_mutex, sgc::GcVector< sgc::GcPtr< Node > > > * | getChildNodes () |
| |
template<typename NodeType >
requires std::derived_from<NodeType, Node> |
| sgc::GcPtr< NodeType > | getParentNodeOfType (const std::string &sParentNodeName="") |
| |
template<typename NodeType >
requires std::derived_from<NodeType, Node> |
| sgc::GcPtr< NodeType > | getChildNodeOfType (const std::string &sChildNodeName="") |
| |
| TickGroup | getTickGroup () const |
| |
| std::optional< size_t > | getNodeId () const |
| |
| bool | isCalledEveryFrame () |
| |
| bool | isReceivingInput () |
| |
| bool | isSpawned () |
| |
| bool | isParentOf (Node *pNode) |
| |
| bool | isChildOf (Node *pNode) |
| |
| bool | isSerialized () const |
| |
| std::optional< Error > | serialize (std::filesystem::path pathToFile, bool bEnableBackup, const std::unordered_map< std::string, std::string > &customAttributes={}) |
| |
| std::variant< std::string, Error > | serialize (toml::value &tomlData, const std::string &sEntityId="", const std::unordered_map< std::string, std::string > &customAttributes={}, const std::optional< std::filesystem::path > &optionalPathToFile={}, bool bEnableBackup=false) |
| |
| std::variant< std::string, Error > | serialize (toml::value &tomlData, Serializable *pOriginalObject, std::string sEntityId="", const std::unordered_map< std::string, std::string > &customAttributes={}, const std::optional< std::filesystem::path > &optionalPathToFile={}, bool bEnableBackup=false) |
| |
| std::optional< std::pair< std::string, std::string > > | getPathDeserializedFromRelativeToRes () const |
| |
|
| static const char * | getMeshShaderConstantBufferName () |
| |
| static size_t | getAliveNodeCount () |
| |
| static std::variant< sgc::GcPtr< Node >, Error > | deserializeNodeTree (const std::filesystem::path &pathToFile) |
| |
| static GameInstance * | getGameInstance () |
| |
| static std::variant< std::pair< std::set< std::string >, toml::value >, Error > | getIdsFromFile (std::filesystem::path pathToFile) |
| |
| static std::optional< Error > | serializeMultiple (std::filesystem::path pathToFile, std::vector< SerializableObjectInformation > vObjects, bool bEnableBackup) |
| |
template<typename SmartPointer , typename InnerType = typename SmartPointer::element_type>
requires std::derived_from<InnerType, Serializable> && (std::same_as<SmartPointer, sgc::GcPtr<InnerType>> || std::same_as<SmartPointer, std::unique_ptr<InnerType>>) |
| static std::variant< SmartPointer, Error > | deserialize (const std::filesystem::path &pathToFile) |
| |
template<typename SmartPointer , typename InnerType = typename SmartPointer::element_type>
requires std::derived_from<InnerType, Serializable> && (std::same_as<SmartPointer, sgc::GcPtr<InnerType>> || std::same_as<SmartPointer, std::unique_ptr<InnerType>>) |
| static std::variant< SmartPointer, Error > | deserialize (const std::filesystem::path &pathToFile, std::unordered_map< std::string, std::string > &customAttributes) |
| |
template<typename SmartPointer , typename InnerType = typename SmartPointer::element_type>
requires std::derived_from<InnerType, Serializable> && (std::same_as<SmartPointer, sgc::GcPtr<InnerType>> || std::same_as<SmartPointer, std::unique_ptr<InnerType>>) |
| static std::variant< SmartPointer, Error > | deserialize (std::filesystem::path pathToFile, std::unordered_map< std::string, std::string > &customAttributes, const std::string &sEntityId) |
| |
template<typename SmartPointer , typename InnerType = typename SmartPointer::element_type>
requires std::derived_from<InnerType, Serializable> && (std::same_as<SmartPointer, sgc::GcPtr<InnerType>> || std::same_as<SmartPointer, std::unique_ptr<InnerType>>) |
| static std::variant< SmartPointer, Error > | deserialize (const std::filesystem::path &pathToFile, const std::string &sEntityId) |
| |
template<typename SmartPointer , typename InnerType = typename SmartPointer::element_type>
requires std::same_as<SmartPointer, sgc::GcPtr<Serializable>> || std::same_as<SmartPointer, std::unique_ptr<Serializable>> |
| static std::variant< std::vector< DeserializedObjectInformation< SmartPointer > >, Error > | deserializeMultiple (std::filesystem::path pathToFile) |
| |
template<typename SmartPointer , typename InnerType = typename SmartPointer::element_type>
requires std::derived_from<InnerType, Serializable> && (std::same_as<SmartPointer, sgc::GcPtr<InnerType>> || std::same_as<SmartPointer, std::unique_ptr<InnerType>>) |
| static std::variant< SmartPointer, Error > | deserialize (const toml::value &tomlData, std::unordered_map< std::string, std::string > &customAttributes, std::string sEntityId="", const std::optional< std::filesystem::path > &optionalPathToFile={}) |
| |
|
| virtual void | onAfterDeserialized () override |
| |
| virtual void | onSpawning () override |
| |
| virtual void | onDespawning () override |
| |
| virtual void | onWorldLocationRotationScaleChanged () override |
| |
| void | setShaderCpuWriteResourceBinding (const std::string &sShaderResourceName, size_t iResourceSizeInBytes, const std::function< void *()> &onStartedUpdatingResource, const std::function< void()> &onFinishedUpdatingResource) |
| |
| void | setShaderTextureResourceBinding (const std::string &sShaderResourceName, const std::string &sPathToTextureResourceRelativeRes) |
| |
| void | markShaderCpuWriteResourceToBeCopiedToGpu (const std::string &sShaderResourceName) |
| |
| virtual void | onAfterDeserialized () override |
| |
| virtual void | onSpawning () override |
| |
| virtual void | onAfterAttachedToNewParent (bool bThisNodeBeingAttached) override |
| |
| virtual void | onWorldLocationRotationScaleChanged () |
| |
| void | setIsCalledEveryFrame (bool bEnable) |
| |
| void | setTickGroup (TickGroup tickGroup) |
| |
| void | setIsReceivingInput (bool bEnable) |
| |
| Timer * | createTimer (const std::string &sTimerName) |
| |
| template<typename FunctionType > |
| NodeNotificationBroadcaster< FunctionType > * | createNotificationBroadcaster () |
| |
| std::pair< std::recursive_mutex, std::unordered_map< unsigned int, std::function< void(KeyboardModifiers, bool)> > > * | getActionEventBindings () |
| |
| std::pair< std::recursive_mutex, std::unordered_map< unsigned int, std::function< void(KeyboardModifiers, float)> > > * | getAxisEventBindings () |
| |
| std::recursive_mutex * | getSpawnDespawnMutex () |
| |
| virtual void | onMouseMove (double xOffset, double yOffset) |
| |
| virtual void | onMouseScrollMove (int iOffset) |
| |
| virtual void | onBeforeNewFrame (float timeSincePrevFrameInSec) |
| |
| virtual void | onSpawning () |
| |
| virtual void | onChildNodesSpawned () |
| |
| virtual void | onDespawning () |
| |
| virtual void | onBeforeDetachedFromParent (bool bThisNodeBeingDetached) |
| |
| virtual void | onAfterAttachedToNewParent (bool bThisNodeBeingAttached) |
| |
| virtual void | onAfterDeserialized () |
| |
Represents a node that can have 3D geometry to display (mesh).