diff options
author | chai <chaifix@163.com> | 2019-01-14 08:34:29 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2019-01-14 08:34:29 +0800 |
commit | b3b6d64ae9ebf07268b5b931ce9cca5ed5860cfd (patch) | |
tree | da1141d3c52ee92b516c0e0ab4b84614e72cd4fd /Source | |
parent | 2fb6b09dcf2ceb09cf021adb4a89f4c1255d5558 (diff) |
*材质
Diffstat (limited to 'Source')
-rw-r--r-- | Source/Asura/Graphics/Material.cpp | 18 | ||||
-rw-r--r-- | Source/Asura/Graphics/Material.h | 29 | ||||
-rw-r--r-- | Source/Asura/Graphics/Renderer.cpp | 0 | ||||
-rw-r--r-- | Source/Asura/Graphics/Renderer.h | 27 |
4 files changed, 65 insertions, 9 deletions
diff --git a/Source/Asura/Graphics/Material.cpp b/Source/Asura/Graphics/Material.cpp index e69de29..eaf9742 100644 --- a/Source/Asura/Graphics/Material.cpp +++ b/Source/Asura/Graphics/Material.cpp @@ -0,0 +1,18 @@ +#include "Material.h" + +namespace AsuraEngine +{ + namespace Graphics + { + + + + //-------------------------------------------------------------------------------------------------------- + + int Material::l_SetColor(lua_State* L) + { + + } + + } +} diff --git a/Source/Asura/Graphics/Material.h b/Source/Asura/Graphics/Material.h index 538e651..6093d18 100644 --- a/Source/Asura/Graphics/Material.h +++ b/Source/Asura/Graphics/Material.h @@ -2,6 +2,7 @@ #define __AE_MATERIAL_H__ #include "Containers/Vector.hpp" +#include "Containers/String.h" #include "Math/Vector2.h" #include "Math/Vector3.h" #include "Math/Vector4.h" @@ -24,8 +25,16 @@ namespace AsuraEngine class Material : public Object { public: + Material(); + Material(const Material& srcMat); + ~Material(); + + Material* Clone(); + // Uniform + static int GetUniformID(const Containers::String& name); + void SetTexture(int ID, Texture* texture); void SetVector2(int ID, Math::Vector2* vector2); void SetVector3(int ID, Math::Vector3* vector3); @@ -41,15 +50,17 @@ namespace AsuraEngine //---------------------------------------------------------------------------------------------------- - LUAX_DECL_METHOD( _SetTexture ); - LUAX_DECL_METHOD( _SetVector2 ); - LUAX_DECL_METHOD( _SetVector3 ); - LUAX_DECL_METHOD( _SetVector4 ); - LUAX_DECL_METHOD( _SetMatrix44 ); - LUAX_DECL_METHOD( _SetFloat ); - LUAX_DECL_METHOD( _SetInteger ); - LUAX_DECL_METHOD( _SetColor ); - LUAX_DECL_METHOD( _SetVertexAttributes ); + LUAX_DECL_FACTORY( Material ); + + LUAX_DECL_METHOD( l_SetTexture ); + LUAX_DECL_METHOD( l_SetVector2 ); + LUAX_DECL_METHOD( l_SetVector3 ); + LUAX_DECL_METHOD( l_SetVector4 ); + LUAX_DECL_METHOD( l_SetMatrix44 ); + LUAX_DECL_METHOD( l_SetFloat ); + LUAX_DECL_METHOD( l_SetInteger ); + LUAX_DECL_METHOD( l_SetColor ); + LUAX_DECL_METHOD( l_SetVertexAttributes ); private: //Color mColor; diff --git a/Source/Asura/Graphics/Renderer.cpp b/Source/Asura/Graphics/Renderer.cpp new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/Source/Asura/Graphics/Renderer.cpp diff --git a/Source/Asura/Graphics/Renderer.h b/Source/Asura/Graphics/Renderer.h new file mode 100644 index 0000000..004bbe4 --- /dev/null +++ b/Source/Asura/Graphics/Renderer.h @@ -0,0 +1,27 @@ +#ifndef __AE_RENDERER_H__ +#define __AE_RENDERER_H__ + +#include "Material.h" + +namespace AsuraEngine +{ + namespace Graphics + { + + class Renderer + { + public: + /// + /// + /// + Material* GetMaterial(); + + private: + Material* mMaterial; + + }; + + } +} + +#endif
\ No newline at end of file |