From 15740faf9fe9fe4be08965098bbf2947e096aeeb Mon Sep 17 00:00:00 2001 From: chai Date: Wed, 14 Aug 2019 22:50:43 +0800 Subject: +Unity Runtime code --- Runtime/Filters/Mesh/LodMeshFilter.h | 38 ++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Runtime/Filters/Mesh/LodMeshFilter.h (limited to 'Runtime/Filters/Mesh/LodMeshFilter.h') diff --git a/Runtime/Filters/Mesh/LodMeshFilter.h b/Runtime/Filters/Mesh/LodMeshFilter.h new file mode 100644 index 0000000..ff6273b --- /dev/null +++ b/Runtime/Filters/Mesh/LodMeshFilter.h @@ -0,0 +1,38 @@ +#ifndef LODMESHFILTER_H +#define LODMESHFILTER_H + +#include "Runtime/BaseClasses/GameObject.h" +#include "Runtime/Modules/ExportModules.h" + +class Mesh; + +class EXPORT_COREMODULE MeshFilter : public Unity::Component +{ +public: + REGISTER_DERIVED_CLASS (MeshFilter, Unity::Component) + DECLARE_OBJECT_SERIALIZE (MeshFilter) + + MeshFilter (MemLabelId label, ObjectCreationMode mode); + + void SetSharedMesh (PPtr mesh); + PPtr GetSharedMesh (); + + Mesh* GetInstantiatedMesh (); + void SetInstantiatedMesh (Mesh* mesh); + + static void InitializeClass (); + static void CleanupClass () {} + + void OnDidAddMesh (); + +protected: + virtual void AwakeFromLoad (AwakeFromLoadMode awakeMode); + + +private: + void AssignMeshToRenderer (); + + PPtr m_Mesh; +}; + +#endif -- cgit v1.1-26-g67d0