From 02639f6a752b044070e84df4d1ef121a8cbd2fe9 Mon Sep 17 00:00:00 2001 From: turanszkij Date: Thu, 6 Aug 2015 21:27:27 +0200 Subject: [PATCH] lua bindings added + updated --- WickedEngine/DeferredRenderableComponent.cpp | 3 ++ .../DeferredRenderableComponent_BindLua.cpp | 36 +++++++++++++++++++ .../DeferredRenderableComponent_BindLua.h | 19 ++++++++++ WickedEngine/ForwardRenderableComponent.cpp | 3 ++ .../ForwardRenderableComponent_BindLua.cpp | 36 +++++++++++++++++++ .../ForwardRenderableComponent_BindLua.h | 20 +++++++++++ WickedEngine/LoadingScreenComponent.cpp | 1 + WickedEngine/LoadingScreenComponent.h | 4 +-- .../LoadingScreenComponent_BindLua.cpp | 4 +-- WickedEngine/LoadingScreenComponent_BindLua.h | 2 -- WickedEngine/Renderable2DComponent_BindLua.h | 2 +- WickedEngine/Renderable3DComponent_BindLua.h | 2 +- WickedEngine/WickedEngine.vcxproj | 4 +++ WickedEngine/WickedEngine.vcxproj.filters | 12 +++++++ 14 files changed, 140 insertions(+), 8 deletions(-) create mode 100644 WickedEngine/DeferredRenderableComponent_BindLua.cpp create mode 100644 WickedEngine/DeferredRenderableComponent_BindLua.h create mode 100644 WickedEngine/ForwardRenderableComponent_BindLua.cpp create mode 100644 WickedEngine/ForwardRenderableComponent_BindLua.h diff --git a/WickedEngine/DeferredRenderableComponent.cpp b/WickedEngine/DeferredRenderableComponent.cpp index 451bd11f3..cadb3dc33 100644 --- a/WickedEngine/DeferredRenderableComponent.cpp +++ b/WickedEngine/DeferredRenderableComponent.cpp @@ -6,6 +6,7 @@ #include "wiStencilRef.h" #include "wiHelper.h" #include "wiTextureHelper.h" +#include "DeferredRenderableComponent_BindLua.h" DeferredRenderableComponent::DeferredRenderableComponent(){ Renderable3DComponent::setProperties(); @@ -14,6 +15,8 @@ DeferredRenderableComponent::DeferredRenderableComponent(){ setSSAOEnabled(true); setPreferredThreadingCount(0); + + DeferredRenderableComponent_BindLua::Bind(); } DeferredRenderableComponent::~DeferredRenderableComponent(){ } diff --git a/WickedEngine/DeferredRenderableComponent_BindLua.cpp b/WickedEngine/DeferredRenderableComponent_BindLua.cpp new file mode 100644 index 000000000..92019d78b --- /dev/null +++ b/WickedEngine/DeferredRenderableComponent_BindLua.cpp @@ -0,0 +1,36 @@ +#include "DeferredRenderableComponent_BindLua.h" + +const char DeferredRenderableComponent_BindLua::className[] = "DeferredRenderableComponent"; + +Luna::FunctionType DeferredRenderableComponent_BindLua::methods[] = { + lunamethod(DeferredRenderableComponent_BindLua, GetContent), + { NULL, NULL } +}; +Luna::PropertyType DeferredRenderableComponent_BindLua::properties[] = { + { NULL, NULL } +}; + +DeferredRenderableComponent_BindLua::DeferredRenderableComponent_BindLua(DeferredRenderableComponent* component) +{ + this->component = component; +} + +DeferredRenderableComponent_BindLua::DeferredRenderableComponent_BindLua(lua_State *L) +{ + component = new DeferredRenderableComponent(); +} + + +DeferredRenderableComponent_BindLua::~DeferredRenderableComponent_BindLua() +{ +} + +void DeferredRenderableComponent_BindLua::Bind() +{ + static bool initialized = false; + if (!initialized) + { + initialized = true; + Luna::Register(wiLua::GetGlobal()->GetLuaState()); + } +} diff --git a/WickedEngine/DeferredRenderableComponent_BindLua.h b/WickedEngine/DeferredRenderableComponent_BindLua.h new file mode 100644 index 000000000..ed822a6f6 --- /dev/null +++ b/WickedEngine/DeferredRenderableComponent_BindLua.h @@ -0,0 +1,19 @@ +#pragma once +#include "wiLua.h" +#include "wiLuna.h" +#include "DeferredRenderableComponent.h" +#include "Renderable3DComponent_BindLua.h" + +class DeferredRenderableComponent_BindLua : public Renderable3DComponent_BindLua +{ +public: + static const char className[]; + static Luna::FunctionType methods[]; + static Luna::PropertyType properties[]; + + DeferredRenderableComponent_BindLua(DeferredRenderableComponent* component = nullptr); + DeferredRenderableComponent_BindLua(lua_State *L); + ~DeferredRenderableComponent_BindLua(); + + static void Bind(); +}; diff --git a/WickedEngine/ForwardRenderableComponent.cpp b/WickedEngine/ForwardRenderableComponent.cpp index 383ea60f2..b05288475 100644 --- a/WickedEngine/ForwardRenderableComponent.cpp +++ b/WickedEngine/ForwardRenderableComponent.cpp @@ -5,6 +5,7 @@ #include "wiCamera.h" #include "wiStencilRef.h" #include "wiHelper.h" +#include "ForwardRenderableComponent_BindLua.h" ForwardRenderableComponent::ForwardRenderableComponent(){ Renderable3DComponent::setProperties(); @@ -14,6 +15,8 @@ ForwardRenderableComponent::ForwardRenderableComponent(){ setShadowsEnabled(false); setPreferredThreadingCount(0); + + ForwardRenderableComponent_BindLua::Bind(); } ForwardRenderableComponent::~ForwardRenderableComponent(){ } diff --git a/WickedEngine/ForwardRenderableComponent_BindLua.cpp b/WickedEngine/ForwardRenderableComponent_BindLua.cpp new file mode 100644 index 000000000..927246ea3 --- /dev/null +++ b/WickedEngine/ForwardRenderableComponent_BindLua.cpp @@ -0,0 +1,36 @@ +#include "ForwardRenderableComponent_BindLua.h" + +const char ForwardRenderableComponent_BindLua::className[] = "ForwardRenderableComponent"; + +Luna::FunctionType ForwardRenderableComponent_BindLua::methods[] = { + lunamethod(ForwardRenderableComponent_BindLua, GetContent), + { NULL, NULL } +}; +Luna::PropertyType ForwardRenderableComponent_BindLua::properties[] = { + { NULL, NULL } +}; + +ForwardRenderableComponent_BindLua::ForwardRenderableComponent_BindLua(ForwardRenderableComponent* component) +{ + this->component = component; +} + +ForwardRenderableComponent_BindLua::ForwardRenderableComponent_BindLua(lua_State *L) +{ + component = new ForwardRenderableComponent(); +} + + +ForwardRenderableComponent_BindLua::~ForwardRenderableComponent_BindLua() +{ +} + +void ForwardRenderableComponent_BindLua::Bind() +{ + static bool initialized = false; + if (!initialized) + { + initialized = true; + Luna::Register(wiLua::GetGlobal()->GetLuaState()); + } +} diff --git a/WickedEngine/ForwardRenderableComponent_BindLua.h b/WickedEngine/ForwardRenderableComponent_BindLua.h new file mode 100644 index 000000000..09d6489fd --- /dev/null +++ b/WickedEngine/ForwardRenderableComponent_BindLua.h @@ -0,0 +1,20 @@ +#pragma once +#include "wiLua.h" +#include "wiLuna.h" +#include "ForwardRenderableComponent.h" +#include "Renderable3DComponent_BindLua.h" + +class ForwardRenderableComponent_BindLua : public Renderable3DComponent_BindLua +{ +public: + static const char className[]; + static Luna::FunctionType methods[]; + static Luna::PropertyType properties[]; + + ForwardRenderableComponent_BindLua(ForwardRenderableComponent* component = nullptr); + ForwardRenderableComponent_BindLua(lua_State *L); + ~ForwardRenderableComponent_BindLua(); + + static void Bind(); +}; + diff --git a/WickedEngine/LoadingScreenComponent.cpp b/WickedEngine/LoadingScreenComponent.cpp index 5250e89d2..adb51115a 100644 --- a/WickedEngine/LoadingScreenComponent.cpp +++ b/WickedEngine/LoadingScreenComponent.cpp @@ -4,6 +4,7 @@ LoadingScreenComponent::LoadingScreenComponent() { + Renderable2DComponent::Renderable2DComponent(); loaders.clear(); finish = nullptr; LoadingScreenComponent_BindLua::Bind(); diff --git a/WickedEngine/LoadingScreenComponent.h b/WickedEngine/LoadingScreenComponent.h index 310421e12..1450359f4 100644 --- a/WickedEngine/LoadingScreenComponent.h +++ b/WickedEngine/LoadingScreenComponent.h @@ -1,9 +1,9 @@ #pragma once -#include "RenderableComponent.h" +#include "Renderable2DComponent.h" #include class LoadingScreenComponent : - public RenderableComponent + public Renderable2DComponent { private: struct LoaderTask diff --git a/WickedEngine/LoadingScreenComponent_BindLua.cpp b/WickedEngine/LoadingScreenComponent_BindLua.cpp index 73af91355..fcbb98c1b 100644 --- a/WickedEngine/LoadingScreenComponent_BindLua.cpp +++ b/WickedEngine/LoadingScreenComponent_BindLua.cpp @@ -1,5 +1,4 @@ #include "LoadingScreenComponent_BindLua.h" -#include "wiResourceManager_BindLua.h" const char LoadingScreenComponent_BindLua::className[] = "LoadingScreenComponent"; @@ -12,8 +11,9 @@ Luna::PropertyType LoadingScreenComponent_BindLu { NULL, NULL } }; -LoadingScreenComponent_BindLua::LoadingScreenComponent_BindLua(LoadingScreenComponent* component) :component(component) +LoadingScreenComponent_BindLua::LoadingScreenComponent_BindLua(LoadingScreenComponent* component) { + this->component = component; } LoadingScreenComponent_BindLua::LoadingScreenComponent_BindLua(lua_State *L) diff --git a/WickedEngine/LoadingScreenComponent_BindLua.h b/WickedEngine/LoadingScreenComponent_BindLua.h index bd3a31bba..e61babd3d 100644 --- a/WickedEngine/LoadingScreenComponent_BindLua.h +++ b/WickedEngine/LoadingScreenComponent_BindLua.h @@ -6,8 +6,6 @@ class LoadingScreenComponent_BindLua : public Renderable2DComponent_BindLua { -private: - LoadingScreenComponent* component; public: static const char className[]; static Luna::FunctionType methods[]; diff --git a/WickedEngine/Renderable2DComponent_BindLua.h b/WickedEngine/Renderable2DComponent_BindLua.h index 2220bac39..4a13092a8 100644 --- a/WickedEngine/Renderable2DComponent_BindLua.h +++ b/WickedEngine/Renderable2DComponent_BindLua.h @@ -5,7 +5,7 @@ class Renderable2DComponent_BindLua { -private: +protected: Renderable2DComponent* component; public: static const char className[]; diff --git a/WickedEngine/Renderable3DComponent_BindLua.h b/WickedEngine/Renderable3DComponent_BindLua.h index 39d1d4a58..3361be785 100644 --- a/WickedEngine/Renderable3DComponent_BindLua.h +++ b/WickedEngine/Renderable3DComponent_BindLua.h @@ -5,7 +5,7 @@ class Renderable3DComponent_BindLua { -private: +protected: Renderable3DComponent* component; public: static const char className[]; diff --git a/WickedEngine/WickedEngine.vcxproj b/WickedEngine/WickedEngine.vcxproj index 157e3e5a6..f727cf174 100644 --- a/WickedEngine/WickedEngine.vcxproj +++ b/WickedEngine/WickedEngine.vcxproj @@ -173,6 +173,8 @@ + + @@ -412,6 +414,8 @@ + + diff --git a/WickedEngine/WickedEngine.vcxproj.filters b/WickedEngine/WickedEngine.vcxproj.filters index ef5af4330..682328af4 100644 --- a/WickedEngine/WickedEngine.vcxproj.filters +++ b/WickedEngine/WickedEngine.vcxproj.filters @@ -758,6 +758,12 @@ ScriptBinders + + ScriptBinders + + + ScriptBinders + @@ -1687,6 +1693,12 @@ ScriptBinders + + ScriptBinders + + + ScriptBinders +