Chris Culy 13 лет назад
Родитель
Сommit
0b21c11ac0
53 измененных файлов с 923 добавлено и 301 удалено
  1. 16 16
      gameplay-luagen/gameplay-luagen.vcxproj
  2. 41 12
      gameplay-luagen/gameplay-luagen.vcxproj.filters
  3. 2 0
      gameplay/gameplay.vcxproj
  4. 6 0
      gameplay/gameplay.vcxproj.filters
  5. 5 0
      gameplay/src/Texture.cpp
  6. 2 2
      gameplay/src/lua/lua_AnimationClip.cpp
  7. 6 6
      gameplay/src/lua/lua_Button.cpp
  8. 2 2
      gameplay/src/lua/lua_Button.h
  9. 6 6
      gameplay/src/lua/lua_CheckBox.cpp
  10. 2 2
      gameplay/src/lua/lua_CheckBox.h
  11. 6 6
      gameplay/src/lua/lua_Container.cpp
  12. 2 2
      gameplay/src/lua/lua_Container.h
  13. 6 6
      gameplay/src/lua/lua_Control.cpp
  14. 2 2
      gameplay/src/lua/lua_Control.h
  15. 0 39
      gameplay/src/lua/lua_DepthStencilTarget.cpp
  16. 0 1
      gameplay/src/lua/lua_DepthStencilTarget.h
  17. 6 6
      gameplay/src/lua/lua_Form.cpp
  18. 2 2
      gameplay/src/lua/lua_Form.h
  19. 77 23
      gameplay/src/lua/lua_FrameBuffer.cpp
  20. 2 0
      gameplay/src/lua/lua_FrameBuffer.h
  21. 4 4
      gameplay/src/lua/lua_Game.cpp
  22. 21 16
      gameplay/src/lua/lua_Global.cpp
  23. 0 1
      gameplay/src/lua/lua_Global.h
  24. 78 0
      gameplay/src/lua/lua_Joint.cpp
  25. 2 0
      gameplay/src/lua/lua_Joint.h
  26. 6 6
      gameplay/src/lua/lua_Joystick.cpp
  27. 2 2
      gameplay/src/lua/lua_Joystick.h
  28. 6 6
      gameplay/src/lua/lua_Label.cpp
  29. 2 2
      gameplay/src/lua/lua_Label.h
  30. 78 0
      gameplay/src/lua/lua_Node.cpp
  31. 2 0
      gameplay/src/lua/lua_Node.h
  32. 1 1
      gameplay/src/lua/lua_ParticleEmitter.cpp
  33. 39 0
      gameplay/src/lua/lua_Pass.cpp
  34. 1 0
      gameplay/src/lua/lua_Pass.h
  35. 114 2
      gameplay/src/lua/lua_PhysicsController.cpp
  36. 197 0
      gameplay/src/lua/lua_PhysicsControllerHitFilter.cpp
  37. 17 0
      gameplay/src/lua/lua_PhysicsControllerHitFilter.h
  38. 1 100
      gameplay/src/lua/lua_PhysicsRigidBodyParameters.cpp
  39. 0 1
      gameplay/src/lua/lua_PhysicsRigidBodyParameters.h
  40. 55 3
      gameplay/src/lua/lua_Platform.cpp
  41. 1 0
      gameplay/src/lua/lua_Platform.h
  42. 6 6
      gameplay/src/lua/lua_RadioButton.cpp
  43. 2 2
      gameplay/src/lua/lua_RadioButton.h
  44. 6 6
      gameplay/src/lua/lua_Slider.cpp
  45. 2 2
      gameplay/src/lua/lua_Slider.h
  46. 39 0
      gameplay/src/lua/lua_SpriteBatch.cpp
  47. 1 0
      gameplay/src/lua/lua_SpriteBatch.h
  48. 6 6
      gameplay/src/lua/lua_TextBox.cpp
  49. 2 2
      gameplay/src/lua/lua_TextBox.h
  50. 38 0
      gameplay/src/lua/lua_Texture.cpp
  51. 1 0
      gameplay/src/lua/lua_Texture.h
  52. 1 0
      gameplay/src/lua/lua_all_bindings.cpp
  53. 1 0
      gameplay/src/lua/lua_all_bindings.h

+ 16 - 16
gameplay-luagen/gameplay-luagen.vcxproj

@@ -10,6 +10,22 @@
       <Platform>Win32</Platform>
     </ProjectConfiguration>
   </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="src\ClassBinding.cpp" />
+    <ClCompile Include="src\DebugNew.cpp" />
+    <ClCompile Include="src\FunctionBinding.cpp" />
+    <ClCompile Include="src\Generator.cpp" />
+    <ClCompile Include="src\main.cpp" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="src\Base.h" />
+    <ClInclude Include="src\ClassBinding.h" />
+    <ClInclude Include="src\DebugNew.h" />
+    <ClInclude Include="src\EnumBinding.h" />
+    <ClInclude Include="src\FunctionBinding.h" />
+    <ClInclude Include="src\Generator.h" />
+    <ClInclude Include="src\TypedefBinding.h" />
+  </ItemGroup>
   <PropertyGroup Label="Globals">
     <ProjectGuid>{CA137C5D-FDE1-4095-926A-59E8472504BF}</ProjectGuid>
     <Keyword>Win32Proj</Keyword>
@@ -80,22 +96,6 @@
       <AdditionalDependencies>tinyxml2.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
     </Link>
   </ItemDefinitionGroup>
-  <ItemGroup>
-    <ClCompile Include="FunctionBinding.cpp" />
-    <ClCompile Include="ClassBinding.cpp" />
-    <ClCompile Include="DebugNew.cpp" />
-    <ClCompile Include="Generator.cpp" />
-    <ClCompile Include="main.cpp" />
-  </ItemGroup>
-  <ItemGroup>
-    <ClInclude Include="Base.h" />
-    <ClInclude Include="FunctionBinding.h" />
-    <ClInclude Include="ClassBinding.h" />
-    <ClInclude Include="DebugNew.h" />
-    <ClInclude Include="EnumBinding.h" />
-    <ClInclude Include="Generator.h" />
-    <ClInclude Include="TypedefBinding.h" />
-  </ItemGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
   <ImportGroup Label="ExtensionTargets">
   </ImportGroup>

+ 41 - 12
gameplay-luagen/gameplay-luagen.vcxproj.filters

@@ -1,19 +1,48 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <ItemGroup>
-    <ClCompile Include="main.cpp" />
-    <ClCompile Include="DebugNew.cpp" />
-    <ClCompile Include="Generator.cpp" />
-    <ClCompile Include="ClassBinding.cpp" />
-    <ClCompile Include="FunctionBinding.cpp" />
+    <Filter Include="src">
+      <UniqueIdentifier>{ff86fc9c-4adf-479c-bcfc-fef8919ed4c1}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
-    <ClInclude Include="Base.h" />
-    <ClInclude Include="DebugNew.h" />
-    <ClInclude Include="ClassBinding.h" />
-    <ClInclude Include="Generator.h" />
-    <ClInclude Include="FunctionBinding.h" />
-    <ClInclude Include="EnumBinding.h" />
-    <ClInclude Include="TypedefBinding.h" />
+    <ClCompile Include="src\ClassBinding.cpp">
+      <Filter>src</Filter>
+    </ClCompile>
+    <ClCompile Include="src\DebugNew.cpp">
+      <Filter>src</Filter>
+    </ClCompile>
+    <ClCompile Include="src\FunctionBinding.cpp">
+      <Filter>src</Filter>
+    </ClCompile>
+    <ClCompile Include="src\Generator.cpp">
+      <Filter>src</Filter>
+    </ClCompile>
+    <ClCompile Include="src\main.cpp">
+      <Filter>src</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="src\Base.h">
+      <Filter>src</Filter>
+    </ClInclude>
+    <ClInclude Include="src\ClassBinding.h">
+      <Filter>src</Filter>
+    </ClInclude>
+    <ClInclude Include="src\DebugNew.h">
+      <Filter>src</Filter>
+    </ClInclude>
+    <ClInclude Include="src\EnumBinding.h">
+      <Filter>src</Filter>
+    </ClInclude>
+    <ClInclude Include="src\FunctionBinding.h">
+      <Filter>src</Filter>
+    </ClInclude>
+    <ClInclude Include="src\Generator.h">
+      <Filter>src</Filter>
+    </ClInclude>
+    <ClInclude Include="src\TypedefBinding.h">
+      <Filter>src</Filter>
+    </ClInclude>
   </ItemGroup>
 </Project>

+ 2 - 0
gameplay/gameplay.vcxproj

@@ -116,6 +116,7 @@
     <ClCompile Include="src\lua\lua_PhysicsCollisionShapeDefinition.cpp" />
     <ClCompile Include="src\lua\lua_PhysicsConstraint.cpp" />
     <ClCompile Include="src\lua\lua_PhysicsController.cpp" />
+    <ClCompile Include="src\lua\lua_PhysicsControllerHitFilter.cpp" />
     <ClCompile Include="src\lua\lua_PhysicsControllerHitResult.cpp" />
     <ClCompile Include="src\lua\lua_PhysicsControllerListener.cpp" />
     <ClCompile Include="src\lua\lua_PhysicsFixedConstraint.cpp" />
@@ -319,6 +320,7 @@
     <ClInclude Include="src\lua\lua_PhysicsCollisionShapeDefinition.h" />
     <ClInclude Include="src\lua\lua_PhysicsConstraint.h" />
     <ClInclude Include="src\lua\lua_PhysicsController.h" />
+    <ClInclude Include="src\lua\lua_PhysicsControllerHitFilter.h" />
     <ClInclude Include="src\lua\lua_PhysicsControllerHitResult.h" />
     <ClInclude Include="src\lua\lua_PhysicsControllerListener.h" />
     <ClInclude Include="src\lua\lua_PhysicsFixedConstraint.h" />

+ 6 - 0
gameplay/gameplay.vcxproj.filters

@@ -615,6 +615,9 @@
     <ClCompile Include="src\lua\lua_VerticalLayout.cpp">
       <Filter>lua</Filter>
     </ClCompile>
+    <ClCompile Include="src\lua\lua_PhysicsControllerHitFilter.cpp">
+      <Filter>lua</Filter>
+    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="src\Animation.h">
@@ -1226,6 +1229,9 @@
     <ClInclude Include="src\lua\lua_VerticalLayout.h">
       <Filter>lua</Filter>
     </ClInclude>
+    <ClInclude Include="src\lua\lua_PhysicsControllerHitFilter.h">
+      <Filter>lua</Filter>
+    </ClInclude>
   </ItemGroup>
   <ItemGroup>
     <None Include="res\shaders\bumped-specular.vsh">

+ 5 - 0
gameplay/src/Texture.cpp

@@ -736,6 +736,11 @@ Texture* Texture::createCompressedDDS(const char* path)
     return texture;
 }
 
+Texture::Format Texture::getFormat() const
+{
+    return _format;
+}
+
 unsigned int Texture::getWidth() const
 {
     return _width;

+ 2 - 2
gameplay/src/lua/lua_AnimationClip.cpp

@@ -477,10 +477,10 @@ int lua_AnimationClip_getElaspedTime(lua_State* state)
             if (lua_type(state, 1) == LUA_TUSERDATA)
             {
                 AnimationClip* instance = getInstance(state);
-                unsigned long result = instance->getElaspedTime();
+                float result = instance->getElaspedTime();
 
                 // Push the return value onto the stack.
-                lua_pushunsigned(state, result);
+                lua_pushnumber(state, result);
 
                 return 1;
             }

+ 6 - 6
gameplay/src/lua/lua_Button.cpp

@@ -31,7 +31,7 @@ void luaRegister_Button()
         {"getBounds", lua_Button_getBounds},
         {"getClip", lua_Button_getClip},
         {"getClipBounds", lua_Button_getClipBounds},
-        {"getConsumeTouchEvents", lua_Button_getConsumeTouchEvents},
+        {"getConsumeInputEvents", lua_Button_getConsumeInputEvents},
         {"getCursorColor", lua_Button_getCursorColor},
         {"getCursorRegion", lua_Button_getCursorRegion},
         {"getCursorUVs", lua_Button_getCursorUVs},
@@ -66,7 +66,7 @@ void luaRegister_Button()
         {"setAutoWidth", lua_Button_setAutoWidth},
         {"setBorder", lua_Button_setBorder},
         {"setBounds", lua_Button_setBounds},
-        {"setConsumeTouchEvents", lua_Button_setConsumeTouchEvents},
+        {"setConsumeInputEvents", lua_Button_setConsumeInputEvents},
         {"setCursorColor", lua_Button_setCursorColor},
         {"setCursorRegion", lua_Button_setCursorRegion},
         {"setFont", lua_Button_setFont},
@@ -1085,7 +1085,7 @@ int lua_Button_getClipBounds(lua_State* state)
     return 0;
 }
 
-int lua_Button_getConsumeTouchEvents(lua_State* state)
+int lua_Button_getConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -1098,7 +1098,7 @@ int lua_Button_getConsumeTouchEvents(lua_State* state)
             if (lua_type(state, 1) == LUA_TUSERDATA)
             {
                 Button* instance = getInstance(state);
-                bool result = instance->getConsumeTouchEvents();
+                bool result = instance->getConsumeInputEvents();
 
                 // Push the return value onto the stack.
                 lua_pushboolean(state, result);
@@ -2718,7 +2718,7 @@ int lua_Button_setBounds(lua_State* state)
     return 0;
 }
 
-int lua_Button_setConsumeTouchEvents(lua_State* state)
+int lua_Button_setConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -2735,7 +2735,7 @@ int lua_Button_setConsumeTouchEvents(lua_State* state)
                 bool param1 = (luaL_checkint(state, 2) != 0);
 
                 Button* instance = getInstance(state);
-                instance->setConsumeTouchEvents(param1);
+                instance->setConsumeInputEvents(param1);
                 
                 return 0;
             }

+ 2 - 2
gameplay/src/lua/lua_Button.h

@@ -24,7 +24,7 @@ int lua_Button_getBorder(lua_State* state);
 int lua_Button_getBounds(lua_State* state);
 int lua_Button_getClip(lua_State* state);
 int lua_Button_getClipBounds(lua_State* state);
-int lua_Button_getConsumeTouchEvents(lua_State* state);
+int lua_Button_getConsumeInputEvents(lua_State* state);
 int lua_Button_getCursorColor(lua_State* state);
 int lua_Button_getCursorRegion(lua_State* state);
 int lua_Button_getCursorUVs(lua_State* state);
@@ -59,7 +59,7 @@ int lua_Button_setAutoHeight(lua_State* state);
 int lua_Button_setAutoWidth(lua_State* state);
 int lua_Button_setBorder(lua_State* state);
 int lua_Button_setBounds(lua_State* state);
-int lua_Button_setConsumeTouchEvents(lua_State* state);
+int lua_Button_setConsumeInputEvents(lua_State* state);
 int lua_Button_setCursorColor(lua_State* state);
 int lua_Button_setCursorRegion(lua_State* state);
 int lua_Button_setFont(lua_State* state);

+ 6 - 6
gameplay/src/lua/lua_CheckBox.cpp

@@ -31,7 +31,7 @@ void luaRegister_CheckBox()
         {"getBounds", lua_CheckBox_getBounds},
         {"getClip", lua_CheckBox_getClip},
         {"getClipBounds", lua_CheckBox_getClipBounds},
-        {"getConsumeTouchEvents", lua_CheckBox_getConsumeTouchEvents},
+        {"getConsumeInputEvents", lua_CheckBox_getConsumeInputEvents},
         {"getCursorColor", lua_CheckBox_getCursorColor},
         {"getCursorRegion", lua_CheckBox_getCursorRegion},
         {"getCursorUVs", lua_CheckBox_getCursorUVs},
@@ -69,7 +69,7 @@ void luaRegister_CheckBox()
         {"setBorder", lua_CheckBox_setBorder},
         {"setBounds", lua_CheckBox_setBounds},
         {"setChecked", lua_CheckBox_setChecked},
-        {"setConsumeTouchEvents", lua_CheckBox_setConsumeTouchEvents},
+        {"setConsumeInputEvents", lua_CheckBox_setConsumeInputEvents},
         {"setCursorColor", lua_CheckBox_setCursorColor},
         {"setCursorRegion", lua_CheckBox_setCursorRegion},
         {"setFont", lua_CheckBox_setFont},
@@ -1089,7 +1089,7 @@ int lua_CheckBox_getClipBounds(lua_State* state)
     return 0;
 }
 
-int lua_CheckBox_getConsumeTouchEvents(lua_State* state)
+int lua_CheckBox_getConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -1102,7 +1102,7 @@ int lua_CheckBox_getConsumeTouchEvents(lua_State* state)
             if (lua_type(state, 1) == LUA_TUSERDATA)
             {
                 CheckBox* instance = getInstance(state);
-                bool result = instance->getConsumeTouchEvents();
+                bool result = instance->getConsumeInputEvents();
 
                 // Push the return value onto the stack.
                 lua_pushboolean(state, result);
@@ -2835,7 +2835,7 @@ int lua_CheckBox_setChecked(lua_State* state)
     return 0;
 }
 
-int lua_CheckBox_setConsumeTouchEvents(lua_State* state)
+int lua_CheckBox_setConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -2852,7 +2852,7 @@ int lua_CheckBox_setConsumeTouchEvents(lua_State* state)
                 bool param1 = (luaL_checkint(state, 2) != 0);
 
                 CheckBox* instance = getInstance(state);
-                instance->setConsumeTouchEvents(param1);
+                instance->setConsumeInputEvents(param1);
                 
                 return 0;
             }

+ 2 - 2
gameplay/src/lua/lua_CheckBox.h

@@ -24,7 +24,7 @@ int lua_CheckBox_getBorder(lua_State* state);
 int lua_CheckBox_getBounds(lua_State* state);
 int lua_CheckBox_getClip(lua_State* state);
 int lua_CheckBox_getClipBounds(lua_State* state);
-int lua_CheckBox_getConsumeTouchEvents(lua_State* state);
+int lua_CheckBox_getConsumeInputEvents(lua_State* state);
 int lua_CheckBox_getCursorColor(lua_State* state);
 int lua_CheckBox_getCursorRegion(lua_State* state);
 int lua_CheckBox_getCursorUVs(lua_State* state);
@@ -62,7 +62,7 @@ int lua_CheckBox_setAutoWidth(lua_State* state);
 int lua_CheckBox_setBorder(lua_State* state);
 int lua_CheckBox_setBounds(lua_State* state);
 int lua_CheckBox_setChecked(lua_State* state);
-int lua_CheckBox_setConsumeTouchEvents(lua_State* state);
+int lua_CheckBox_setConsumeInputEvents(lua_State* state);
 int lua_CheckBox_setCursorColor(lua_State* state);
 int lua_CheckBox_setCursorRegion(lua_State* state);
 int lua_CheckBox_setFont(lua_State* state);

+ 6 - 6
gameplay/src/lua/lua_Container.cpp

@@ -32,7 +32,7 @@ void luaRegister_Container()
         {"getBounds", lua_Container_getBounds},
         {"getClip", lua_Container_getClip},
         {"getClipBounds", lua_Container_getClipBounds},
-        {"getConsumeTouchEvents", lua_Container_getConsumeTouchEvents},
+        {"getConsumeInputEvents", lua_Container_getConsumeInputEvents},
         {"getControl", lua_Container_getControl},
         {"getCursorColor", lua_Container_getCursorColor},
         {"getCursorRegion", lua_Container_getCursorRegion},
@@ -72,7 +72,7 @@ void luaRegister_Container()
         {"setAutoWidth", lua_Container_setAutoWidth},
         {"setBorder", lua_Container_setBorder},
         {"setBounds", lua_Container_setBounds},
-        {"setConsumeTouchEvents", lua_Container_setConsumeTouchEvents},
+        {"setConsumeInputEvents", lua_Container_setConsumeInputEvents},
         {"setCursorColor", lua_Container_setCursorColor},
         {"setCursorRegion", lua_Container_setCursorRegion},
         {"setFont", lua_Container_setFont},
@@ -1140,7 +1140,7 @@ int lua_Container_getClipBounds(lua_State* state)
     return 0;
 }
 
-int lua_Container_getConsumeTouchEvents(lua_State* state)
+int lua_Container_getConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -1153,7 +1153,7 @@ int lua_Container_getConsumeTouchEvents(lua_State* state)
             if (lua_type(state, 1) == LUA_TUSERDATA)
             {
                 Container* instance = getInstance(state);
-                bool result = instance->getConsumeTouchEvents();
+                bool result = instance->getConsumeInputEvents();
 
                 // Push the return value onto the stack.
                 lua_pushboolean(state, result);
@@ -3019,7 +3019,7 @@ int lua_Container_setBounds(lua_State* state)
     return 0;
 }
 
-int lua_Container_setConsumeTouchEvents(lua_State* state)
+int lua_Container_setConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -3036,7 +3036,7 @@ int lua_Container_setConsumeTouchEvents(lua_State* state)
                 bool param1 = (luaL_checkint(state, 2) != 0);
 
                 Container* instance = getInstance(state);
-                instance->setConsumeTouchEvents(param1);
+                instance->setConsumeInputEvents(param1);
                 
                 return 0;
             }

+ 2 - 2
gameplay/src/lua/lua_Container.h

@@ -25,7 +25,7 @@ int lua_Container_getBorder(lua_State* state);
 int lua_Container_getBounds(lua_State* state);
 int lua_Container_getClip(lua_State* state);
 int lua_Container_getClipBounds(lua_State* state);
-int lua_Container_getConsumeTouchEvents(lua_State* state);
+int lua_Container_getConsumeInputEvents(lua_State* state);
 int lua_Container_getControl(lua_State* state);
 int lua_Container_getCursorColor(lua_State* state);
 int lua_Container_getCursorRegion(lua_State* state);
@@ -65,7 +65,7 @@ int lua_Container_setAutoHeight(lua_State* state);
 int lua_Container_setAutoWidth(lua_State* state);
 int lua_Container_setBorder(lua_State* state);
 int lua_Container_setBounds(lua_State* state);
-int lua_Container_setConsumeTouchEvents(lua_State* state);
+int lua_Container_setConsumeInputEvents(lua_State* state);
 int lua_Container_setCursorColor(lua_State* state);
 int lua_Container_setCursorRegion(lua_State* state);
 int lua_Container_setFont(lua_State* state);

+ 6 - 6
gameplay/src/lua/lua_Control.cpp

@@ -31,7 +31,7 @@ void luaRegister_Control()
         {"getBounds", lua_Control_getBounds},
         {"getClip", lua_Control_getClip},
         {"getClipBounds", lua_Control_getClipBounds},
-        {"getConsumeTouchEvents", lua_Control_getConsumeTouchEvents},
+        {"getConsumeInputEvents", lua_Control_getConsumeInputEvents},
         {"getCursorColor", lua_Control_getCursorColor},
         {"getCursorRegion", lua_Control_getCursorRegion},
         {"getCursorUVs", lua_Control_getCursorUVs},
@@ -65,7 +65,7 @@ void luaRegister_Control()
         {"setAutoWidth", lua_Control_setAutoWidth},
         {"setBorder", lua_Control_setBorder},
         {"setBounds", lua_Control_setBounds},
-        {"setConsumeTouchEvents", lua_Control_setConsumeTouchEvents},
+        {"setConsumeInputEvents", lua_Control_setConsumeInputEvents},
         {"setCursorColor", lua_Control_setCursorColor},
         {"setCursorRegion", lua_Control_setCursorRegion},
         {"setFont", lua_Control_setFont},
@@ -1083,7 +1083,7 @@ int lua_Control_getClipBounds(lua_State* state)
     return 0;
 }
 
-int lua_Control_getConsumeTouchEvents(lua_State* state)
+int lua_Control_getConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -1096,7 +1096,7 @@ int lua_Control_getConsumeTouchEvents(lua_State* state)
             if (lua_type(state, 1) == LUA_TUSERDATA)
             {
                 Control* instance = getInstance(state);
-                bool result = instance->getConsumeTouchEvents();
+                bool result = instance->getConsumeInputEvents();
 
                 // Push the return value onto the stack.
                 lua_pushboolean(state, result);
@@ -2679,7 +2679,7 @@ int lua_Control_setBounds(lua_State* state)
     return 0;
 }
 
-int lua_Control_setConsumeTouchEvents(lua_State* state)
+int lua_Control_setConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -2696,7 +2696,7 @@ int lua_Control_setConsumeTouchEvents(lua_State* state)
                 bool param1 = (luaL_checkint(state, 2) != 0);
 
                 Control* instance = getInstance(state);
-                instance->setConsumeTouchEvents(param1);
+                instance->setConsumeInputEvents(param1);
                 
                 return 0;
             }

+ 2 - 2
gameplay/src/lua/lua_Control.h

@@ -24,7 +24,7 @@ int lua_Control_getBorder(lua_State* state);
 int lua_Control_getBounds(lua_State* state);
 int lua_Control_getClip(lua_State* state);
 int lua_Control_getClipBounds(lua_State* state);
-int lua_Control_getConsumeTouchEvents(lua_State* state);
+int lua_Control_getConsumeInputEvents(lua_State* state);
 int lua_Control_getCursorColor(lua_State* state);
 int lua_Control_getCursorRegion(lua_State* state);
 int lua_Control_getCursorUVs(lua_State* state);
@@ -58,7 +58,7 @@ int lua_Control_setAutoHeight(lua_State* state);
 int lua_Control_setAutoWidth(lua_State* state);
 int lua_Control_setBorder(lua_State* state);
 int lua_Control_setBounds(lua_State* state);
-int lua_Control_setConsumeTouchEvents(lua_State* state);
+int lua_Control_setConsumeInputEvents(lua_State* state);
 int lua_Control_setCursorColor(lua_State* state);
 int lua_Control_setCursorRegion(lua_State* state);
 int lua_Control_setFont(lua_State* state);

+ 0 - 39
gameplay/src/lua/lua_DepthStencilTarget.cpp

@@ -17,7 +17,6 @@ void luaRegister_DepthStencilTarget()
         {"getFormat", lua_DepthStencilTarget_getFormat},
         {"getID", lua_DepthStencilTarget_getID},
         {"getRefCount", lua_DepthStencilTarget_getRefCount},
-        {"getTexture", lua_DepthStencilTarget_getTexture},
         {"release", lua_DepthStencilTarget_release},
         {NULL, NULL}
     };
@@ -224,44 +223,6 @@ int lua_DepthStencilTarget_getRefCount(lua_State* state)
     return 0;
 }
 
-int lua_DepthStencilTarget_getTexture(lua_State* state)
-{
-    // Get the number of parameters.
-    int paramCount = lua_gettop(state);
-
-    // Attempt to match the parameters to a valid binding.
-    switch (paramCount)
-    {
-        case 1:
-        {
-            if (lua_type(state, 1) == LUA_TUSERDATA)
-            {
-                DepthStencilTarget* instance = getInstance(state);
-                ScriptController::LuaObject* object = (ScriptController::LuaObject*)lua_newuserdata(state, sizeof(ScriptController::LuaObject));
-                object->instance = (void*)instance->getTexture();
-                object->owns = false;
-                luaL_getmetatable(state, "Texture");
-                lua_setmetatable(state, -2);
-
-                return 1;
-            }
-            else
-            {
-                lua_pushstring(state, "Failed to match the given parameters to a valid function signature.");
-                lua_error(state);
-            }
-            break;
-        }
-        default:
-        {
-            lua_pushstring(state, "Invalid number of parameters (expected 1).");
-            lua_error(state);
-            break;
-        }
-    }
-    return 0;
-}
-
 int lua_DepthStencilTarget_release(lua_State* state)
 {
     // Get the number of parameters.

+ 0 - 1
gameplay/src/lua/lua_DepthStencilTarget.h

@@ -10,7 +10,6 @@ int lua_DepthStencilTarget_addRef(lua_State* state);
 int lua_DepthStencilTarget_getFormat(lua_State* state);
 int lua_DepthStencilTarget_getID(lua_State* state);
 int lua_DepthStencilTarget_getRefCount(lua_State* state);
-int lua_DepthStencilTarget_getTexture(lua_State* state);
 int lua_DepthStencilTarget_release(lua_State* state);
 int lua_DepthStencilTarget_static_create(lua_State* state);
 int lua_DepthStencilTarget_static_getDepthStencilTarget(lua_State* state);

+ 6 - 6
gameplay/src/lua/lua_Form.cpp

@@ -33,7 +33,7 @@ void luaRegister_Form()
         {"getBounds", lua_Form_getBounds},
         {"getClip", lua_Form_getClip},
         {"getClipBounds", lua_Form_getClipBounds},
-        {"getConsumeTouchEvents", lua_Form_getConsumeTouchEvents},
+        {"getConsumeInputEvents", lua_Form_getConsumeInputEvents},
         {"getControl", lua_Form_getControl},
         {"getCursorColor", lua_Form_getCursorColor},
         {"getCursorRegion", lua_Form_getCursorRegion},
@@ -73,7 +73,7 @@ void luaRegister_Form()
         {"setAutoWidth", lua_Form_setAutoWidth},
         {"setBorder", lua_Form_setBorder},
         {"setBounds", lua_Form_setBounds},
-        {"setConsumeTouchEvents", lua_Form_setConsumeTouchEvents},
+        {"setConsumeInputEvents", lua_Form_setConsumeInputEvents},
         {"setCursorColor", lua_Form_setCursorColor},
         {"setCursorRegion", lua_Form_setCursorRegion},
         {"setFont", lua_Form_setFont},
@@ -1180,7 +1180,7 @@ int lua_Form_getClipBounds(lua_State* state)
     return 0;
 }
 
-int lua_Form_getConsumeTouchEvents(lua_State* state)
+int lua_Form_getConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -1193,7 +1193,7 @@ int lua_Form_getConsumeTouchEvents(lua_State* state)
             if (lua_type(state, 1) == LUA_TUSERDATA)
             {
                 Form* instance = getInstance(state);
-                bool result = instance->getConsumeTouchEvents();
+                bool result = instance->getConsumeInputEvents();
 
                 // Push the return value onto the stack.
                 lua_pushboolean(state, result);
@@ -3059,7 +3059,7 @@ int lua_Form_setBounds(lua_State* state)
     return 0;
 }
 
-int lua_Form_setConsumeTouchEvents(lua_State* state)
+int lua_Form_setConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -3076,7 +3076,7 @@ int lua_Form_setConsumeTouchEvents(lua_State* state)
                 bool param1 = (luaL_checkint(state, 2) != 0);
 
                 Form* instance = getInstance(state);
-                instance->setConsumeTouchEvents(param1);
+                instance->setConsumeInputEvents(param1);
                 
                 return 0;
             }

+ 2 - 2
gameplay/src/lua/lua_Form.h

@@ -26,7 +26,7 @@ int lua_Form_getBorder(lua_State* state);
 int lua_Form_getBounds(lua_State* state);
 int lua_Form_getClip(lua_State* state);
 int lua_Form_getClipBounds(lua_State* state);
-int lua_Form_getConsumeTouchEvents(lua_State* state);
+int lua_Form_getConsumeInputEvents(lua_State* state);
 int lua_Form_getControl(lua_State* state);
 int lua_Form_getCursorColor(lua_State* state);
 int lua_Form_getCursorRegion(lua_State* state);
@@ -66,7 +66,7 @@ int lua_Form_setAutoHeight(lua_State* state);
 int lua_Form_setAutoWidth(lua_State* state);
 int lua_Form_setBorder(lua_State* state);
 int lua_Form_setBounds(lua_State* state);
-int lua_Form_setConsumeTouchEvents(lua_State* state);
+int lua_Form_setConsumeInputEvents(lua_State* state);
 int lua_Form_setCursorColor(lua_State* state);
 int lua_Form_setCursorRegion(lua_State* state);
 int lua_Form_setFont(lua_State* state);

+ 77 - 23
gameplay/src/lua/lua_FrameBuffer.cpp

@@ -16,9 +16,11 @@ void luaRegister_FrameBuffer()
         {"addRef", lua_FrameBuffer_addRef},
         {"bind", lua_FrameBuffer_bind},
         {"getDepthStencilTarget", lua_FrameBuffer_getDepthStencilTarget},
+        {"getHeight", lua_FrameBuffer_getHeight},
         {"getID", lua_FrameBuffer_getID},
         {"getRefCount", lua_FrameBuffer_getRefCount},
         {"getRenderTarget", lua_FrameBuffer_getRenderTarget},
+        {"getWidth", lua_FrameBuffer_getWidth},
         {"release", lua_FrameBuffer_release},
         {"setDepthStencilTarget", lua_FrameBuffer_setDepthStencilTarget},
         {"setRenderTarget", lua_FrameBuffer_setRenderTarget},
@@ -190,6 +192,43 @@ int lua_FrameBuffer_getDepthStencilTarget(lua_State* state)
     return 0;
 }
 
+int lua_FrameBuffer_getHeight(lua_State* state)
+{
+    // Get the number of parameters.
+    int paramCount = lua_gettop(state);
+
+    // Attempt to match the parameters to a valid binding.
+    switch (paramCount)
+    {
+        case 1:
+        {
+            if (lua_type(state, 1) == LUA_TUSERDATA)
+            {
+                FrameBuffer* instance = getInstance(state);
+                unsigned int result = instance->getHeight();
+
+                // Push the return value onto the stack.
+                lua_pushunsigned(state, result);
+
+                return 1;
+            }
+            else
+            {
+                lua_pushstring(state, "Failed to match the given parameters to a valid function signature.");
+                lua_error(state);
+            }
+            break;
+        }
+        default:
+        {
+            lua_pushstring(state, "Invalid number of parameters (expected 1).");
+            lua_error(state);
+            break;
+        }
+    }
+    return 0;
+}
+
 int lua_FrameBuffer_getID(lua_State* state)
 {
     // Get the number of parameters.
@@ -326,6 +365,43 @@ int lua_FrameBuffer_getRenderTarget(lua_State* state)
     return 0;
 }
 
+int lua_FrameBuffer_getWidth(lua_State* state)
+{
+    // Get the number of parameters.
+    int paramCount = lua_gettop(state);
+
+    // Attempt to match the parameters to a valid binding.
+    switch (paramCount)
+    {
+        case 1:
+        {
+            if (lua_type(state, 1) == LUA_TUSERDATA)
+            {
+                FrameBuffer* instance = getInstance(state);
+                unsigned int result = instance->getWidth();
+
+                // Push the return value onto the stack.
+                lua_pushunsigned(state, result);
+
+                return 1;
+            }
+            else
+            {
+                lua_pushstring(state, "Failed to match the given parameters to a valid function signature.");
+                lua_error(state);
+            }
+            break;
+        }
+        default:
+        {
+            lua_pushstring(state, "Invalid number of parameters (expected 1).");
+            lua_error(state);
+            break;
+        }
+    }
+    return 0;
+}
+
 int lua_FrameBuffer_release(lua_State* state)
 {
     // Get the number of parameters.
@@ -511,28 +587,6 @@ int lua_FrameBuffer_static_create(lua_State* state)
     // Attempt to match the parameters to a valid binding.
     switch (paramCount)
     {
-        case 1:
-        {
-            if (lua_type(state, 1) == LUA_TSTRING)
-            {
-                // Get parameter 1 off the stack.
-                const char* param1 = luaL_checkstring(state, 1);
-
-                ScriptController::LuaObject* object = (ScriptController::LuaObject*)lua_newuserdata(state, sizeof(ScriptController::LuaObject));
-                object->instance = (void*)FrameBuffer::create(param1);
-                object->owns = false;
-                luaL_getmetatable(state, "FrameBuffer");
-                lua_setmetatable(state, -2);
-
-                return 1;
-            }
-            else
-            {
-                lua_pushstring(state, "Failed to match the given parameters to a valid function signature.");
-                lua_error(state);
-            }
-            break;
-        }
         case 3:
         {
             if (lua_type(state, 1) == LUA_TSTRING &&
@@ -565,7 +619,7 @@ int lua_FrameBuffer_static_create(lua_State* state)
         }
         default:
         {
-            lua_pushstring(state, "Invalid number of parameters (expected 1 or 3).");
+            lua_pushstring(state, "Invalid number of parameters (expected 3).");
             lua_error(state);
             break;
         }

+ 2 - 0
gameplay/src/lua/lua_FrameBuffer.h

@@ -9,9 +9,11 @@ int lua_FrameBuffer__gc(lua_State* state);
 int lua_FrameBuffer_addRef(lua_State* state);
 int lua_FrameBuffer_bind(lua_State* state);
 int lua_FrameBuffer_getDepthStencilTarget(lua_State* state);
+int lua_FrameBuffer_getHeight(lua_State* state);
 int lua_FrameBuffer_getID(lua_State* state);
 int lua_FrameBuffer_getRefCount(lua_State* state);
 int lua_FrameBuffer_getRenderTarget(lua_State* state);
+int lua_FrameBuffer_getWidth(lua_State* state);
 int lua_FrameBuffer_release(lua_State* state);
 int lua_FrameBuffer_setDepthStencilTarget(lua_State* state);
 int lua_FrameBuffer_setRenderTarget(lua_State* state);

+ 4 - 4
gameplay/src/lua/lua_Game.cpp

@@ -1044,10 +1044,10 @@ int lua_Game_static_getAbsoluteTime(lua_State* state)
     {
         case 0:
         {
-            long result = Game::getAbsoluteTime();
+            double result = Game::getAbsoluteTime();
 
             // Push the return value onto the stack.
-            lua_pushinteger(state, result);
+            lua_pushnumber(state, result);
 
             return 1;
             break;
@@ -1072,10 +1072,10 @@ int lua_Game_static_getGameTime(lua_State* state)
     {
         case 0:
         {
-            long result = Game::getGameTime();
+            double result = Game::getGameTime();
 
             // Push the return value onto the stack.
-            lua_pushinteger(state, result);
+            lua_pushnumber(state, result);
 
             return 1;
             break;

+ 21 - 16
gameplay/src/lua/lua_Global.cpp

@@ -193,6 +193,8 @@ void luaRegister_lua_Global()
         sc->registerConstantString("CLICK", "CLICK", scopePath);
         sc->registerConstantString("VALUE_CHANGED", "VALUE_CHANGED", scopePath);
         sc->registerConstantString("TEXT_CHANGED", "TEXT_CHANGED", scopePath);
+        sc->registerConstantString("MIDDLE_CLICK", "MIDDLE_CLICK", scopePath);
+        sc->registerConstantString("RIGHT_CLICK", "RIGHT_CLICK", scopePath);
     }
 
     // Register enumeration Control::State.
@@ -262,8 +264,8 @@ void luaRegister_lua_Global()
     {
         std::vector<std::string> scopePath;
         scopePath.push_back("DepthStencilTarget");
-        sc->registerConstantString("DEPTH24", "DEPTH24", scopePath);
-        sc->registerConstantString("DEPTH24_STENCIL8", "DEPTH24_STENCIL8", scopePath);
+        sc->registerConstantString("DEPTH", "DEPTH", scopePath);
+        sc->registerConstantString("DEPTH_STENCIL", "DEPTH_STENCIL", scopePath);
     }
 
     // Register enumeration Font::Justify.
@@ -685,7 +687,6 @@ void luaRegister_lua_Global()
         sc->registerConstantString("RGB", "RGB", scopePath);
         sc->registerConstantString("RGBA", "RGBA", scopePath);
         sc->registerConstantString("ALPHA", "ALPHA", scopePath);
-        sc->registerConstantString("DEPTH", "DEPTH", scopePath);
     }
 
     // Register enumeration Texture::Wrap.
@@ -1003,6 +1004,10 @@ Control::Listener::EventType lua_enumFromString_ControlListenerEventType(const c
         return Control::Listener::VALUE_CHANGED;
     if (strcmp(s, "TEXT_CHANGED") == 0)
         return Control::Listener::TEXT_CHANGED;
+    if (strcmp(s, "MIDDLE_CLICK") == 0)
+        return Control::Listener::MIDDLE_CLICK;
+    if (strcmp(s, "RIGHT_CLICK") == 0)
+        return Control::Listener::RIGHT_CLICK;
     GP_ERROR("Invalid enumeration value '%s' for enumeration Control::Listener::EventType.", s);
     return Control::Listener::PRESS;
 }
@@ -1019,6 +1024,10 @@ std::string lua_stringFromEnum_ControlListenerEventType(Control::Listener::Event
         return std::string("VALUE_CHANGED");
     if (e == Control::Listener::TEXT_CHANGED)
         return std::string("TEXT_CHANGED");
+    if (e == Control::Listener::MIDDLE_CLICK)
+        return std::string("MIDDLE_CLICK");
+    if (e == Control::Listener::RIGHT_CLICK)
+        return std::string("RIGHT_CLICK");
     GP_ERROR("Invalid enumeration value '%d' for enumeration Control::Listener::EventType.", e);
     return std::string();
 }
@@ -1253,20 +1262,20 @@ std::string lua_stringFromEnum_CurveInterpolationType(Curve::InterpolationType e
 
 DepthStencilTarget::Format lua_enumFromString_DepthStencilTargetFormat(const char* s)
 {
-    if (strcmp(s, "DEPTH24") == 0)
-        return DepthStencilTarget::DEPTH24;
-    if (strcmp(s, "DEPTH24_STENCIL8") == 0)
-        return DepthStencilTarget::DEPTH24_STENCIL8;
+    if (strcmp(s, "DEPTH") == 0)
+        return DepthStencilTarget::DEPTH;
+    if (strcmp(s, "DEPTH_STENCIL") == 0)
+        return DepthStencilTarget::DEPTH_STENCIL;
     GP_ERROR("Invalid enumeration value '%s' for enumeration DepthStencilTarget::Format.", s);
-    return DepthStencilTarget::DEPTH24;
+    return DepthStencilTarget::DEPTH;
 }
 
 std::string lua_stringFromEnum_DepthStencilTargetFormat(DepthStencilTarget::Format e)
 {
-    if (e == DepthStencilTarget::DEPTH24)
-        return std::string("DEPTH24");
-    if (e == DepthStencilTarget::DEPTH24_STENCIL8)
-        return std::string("DEPTH24_STENCIL8");
+    if (e == DepthStencilTarget::DEPTH)
+        return std::string("DEPTH");
+    if (e == DepthStencilTarget::DEPTH_STENCIL)
+        return std::string("DEPTH_STENCIL");
     GP_ERROR("Invalid enumeration value '%d' for enumeration DepthStencilTarget::Format.", e);
     return std::string();
 }
@@ -2643,8 +2652,6 @@ Texture::Format lua_enumFromString_TextureFormat(const char* s)
         return Texture::RGBA;
     if (strcmp(s, "ALPHA") == 0)
         return Texture::ALPHA;
-    if (strcmp(s, "DEPTH") == 0)
-        return Texture::DEPTH;
     GP_ERROR("Invalid enumeration value '%s' for enumeration Texture::Format.", s);
     return Texture::RGB;
 }
@@ -2657,8 +2664,6 @@ std::string lua_stringFromEnum_TextureFormat(Texture::Format e)
         return std::string("RGBA");
     if (e == Texture::ALPHA)
         return std::string("ALPHA");
-    if (e == Texture::DEPTH)
-        return std::string("DEPTH");
     GP_ERROR("Invalid enumeration value '%d' for enumeration Texture::Format.", e);
     return std::string();
 }

+ 0 - 1
gameplay/src/lua/lua_Global.h

@@ -68,7 +68,6 @@
 #include "PhysicsGenericConstraint.h"
 #include "PhysicsGhostObject.h"
 #include "PhysicsHingeConstraint.h"
-#include "PhysicsMotionState.h"
 #include "PhysicsRigidBody.h"
 #include "PhysicsSocketConstraint.h"
 #include "PhysicsSpringConstraint.h"

+ 78 - 0
gameplay/src/lua/lua_Joint.cpp

@@ -56,6 +56,7 @@ void luaRegister_Joint()
         {"getProjectionMatrix", lua_Joint_getProjectionMatrix},
         {"getRefCount", lua_Joint_getRefCount},
         {"getRightVector", lua_Joint_getRightVector},
+        {"getRightVectorWorld", lua_Joint_getRightVectorWorld},
         {"getRootNode", lua_Joint_getRootNode},
         {"getRotation", lua_Joint_getRotation},
         {"getScale", lua_Joint_getScale},
@@ -71,6 +72,7 @@ void luaRegister_Joint()
         {"getTranslationZ", lua_Joint_getTranslationZ},
         {"getType", lua_Joint_getType},
         {"getUpVector", lua_Joint_getUpVector},
+        {"getUpVectorWorld", lua_Joint_getUpVectorWorld},
         {"getViewMatrix", lua_Joint_getViewMatrix},
         {"getViewProjectionMatrix", lua_Joint_getViewProjectionMatrix},
         {"getWorldMatrix", lua_Joint_getWorldMatrix},
@@ -2289,6 +2291,44 @@ int lua_Joint_getRightVector(lua_State* state)
     return 0;
 }
 
+int lua_Joint_getRightVectorWorld(lua_State* state)
+{
+    // Get the number of parameters.
+    int paramCount = lua_gettop(state);
+
+    // Attempt to match the parameters to a valid binding.
+    switch (paramCount)
+    {
+        case 1:
+        {
+            if (lua_type(state, 1) == LUA_TUSERDATA)
+            {
+                Joint* instance = getInstance(state);
+                ScriptController::LuaObject* object = (ScriptController::LuaObject*)lua_newuserdata(state, sizeof(ScriptController::LuaObject));
+                object->instance = (void*)new Vector3(instance->getRightVectorWorld());
+                object->owns = true;
+                luaL_getmetatable(state, "Vector3");
+                lua_setmetatable(state, -2);
+
+                return 1;
+            }
+            else
+            {
+                lua_pushstring(state, "Failed to match the given parameters to a valid function signature.");
+                lua_error(state);
+            }
+            break;
+        }
+        default:
+        {
+            lua_pushstring(state, "Invalid number of parameters (expected 1).");
+            lua_error(state);
+            break;
+        }
+    }
+    return 0;
+}
+
 int lua_Joint_getRootNode(lua_State* state)
 {
     // Get the number of parameters.
@@ -2993,6 +3033,44 @@ int lua_Joint_getUpVector(lua_State* state)
     return 0;
 }
 
+int lua_Joint_getUpVectorWorld(lua_State* state)
+{
+    // Get the number of parameters.
+    int paramCount = lua_gettop(state);
+
+    // Attempt to match the parameters to a valid binding.
+    switch (paramCount)
+    {
+        case 1:
+        {
+            if (lua_type(state, 1) == LUA_TUSERDATA)
+            {
+                Joint* instance = getInstance(state);
+                ScriptController::LuaObject* object = (ScriptController::LuaObject*)lua_newuserdata(state, sizeof(ScriptController::LuaObject));
+                object->instance = (void*)new Vector3(instance->getUpVectorWorld());
+                object->owns = true;
+                luaL_getmetatable(state, "Vector3");
+                lua_setmetatable(state, -2);
+
+                return 1;
+            }
+            else
+            {
+                lua_pushstring(state, "Failed to match the given parameters to a valid function signature.");
+                lua_error(state);
+            }
+            break;
+        }
+        default:
+        {
+            lua_pushstring(state, "Invalid number of parameters (expected 1).");
+            lua_error(state);
+            break;
+        }
+    }
+    return 0;
+}
+
 int lua_Joint_getViewMatrix(lua_State* state)
 {
     // Get the number of parameters.

+ 2 - 0
gameplay/src/lua/lua_Joint.h

@@ -49,6 +49,7 @@ int lua_Joint_getPreviousSibling(lua_State* state);
 int lua_Joint_getProjectionMatrix(lua_State* state);
 int lua_Joint_getRefCount(lua_State* state);
 int lua_Joint_getRightVector(lua_State* state);
+int lua_Joint_getRightVectorWorld(lua_State* state);
 int lua_Joint_getRootNode(lua_State* state);
 int lua_Joint_getRotation(lua_State* state);
 int lua_Joint_getScale(lua_State* state);
@@ -64,6 +65,7 @@ int lua_Joint_getTranslationY(lua_State* state);
 int lua_Joint_getTranslationZ(lua_State* state);
 int lua_Joint_getType(lua_State* state);
 int lua_Joint_getUpVector(lua_State* state);
+int lua_Joint_getUpVectorWorld(lua_State* state);
 int lua_Joint_getViewMatrix(lua_State* state);
 int lua_Joint_getViewProjectionMatrix(lua_State* state);
 int lua_Joint_getWorldMatrix(lua_State* state);

+ 6 - 6
gameplay/src/lua/lua_Joystick.cpp

@@ -31,7 +31,7 @@ void luaRegister_Joystick()
         {"getBounds", lua_Joystick_getBounds},
         {"getClip", lua_Joystick_getClip},
         {"getClipBounds", lua_Joystick_getClipBounds},
-        {"getConsumeTouchEvents", lua_Joystick_getConsumeTouchEvents},
+        {"getConsumeInputEvents", lua_Joystick_getConsumeInputEvents},
         {"getCursorColor", lua_Joystick_getCursorColor},
         {"getCursorRegion", lua_Joystick_getCursorRegion},
         {"getCursorUVs", lua_Joystick_getCursorUVs},
@@ -69,7 +69,7 @@ void luaRegister_Joystick()
         {"setAutoWidth", lua_Joystick_setAutoWidth},
         {"setBorder", lua_Joystick_setBorder},
         {"setBounds", lua_Joystick_setBounds},
-        {"setConsumeTouchEvents", lua_Joystick_setConsumeTouchEvents},
+        {"setConsumeInputEvents", lua_Joystick_setConsumeInputEvents},
         {"setCursorColor", lua_Joystick_setCursorColor},
         {"setCursorRegion", lua_Joystick_setCursorRegion},
         {"setFont", lua_Joystick_setFont},
@@ -1088,7 +1088,7 @@ int lua_Joystick_getClipBounds(lua_State* state)
     return 0;
 }
 
-int lua_Joystick_getConsumeTouchEvents(lua_State* state)
+int lua_Joystick_getConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -1101,7 +1101,7 @@ int lua_Joystick_getConsumeTouchEvents(lua_State* state)
             if (lua_type(state, 1) == LUA_TUSERDATA)
             {
                 Joystick* instance = getInstance(state);
-                bool result = instance->getConsumeTouchEvents();
+                bool result = instance->getConsumeInputEvents();
 
                 // Push the return value onto the stack.
                 lua_pushboolean(state, result);
@@ -2835,7 +2835,7 @@ int lua_Joystick_setBounds(lua_State* state)
     return 0;
 }
 
-int lua_Joystick_setConsumeTouchEvents(lua_State* state)
+int lua_Joystick_setConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -2852,7 +2852,7 @@ int lua_Joystick_setConsumeTouchEvents(lua_State* state)
                 bool param1 = (luaL_checkint(state, 2) != 0);
 
                 Joystick* instance = getInstance(state);
-                instance->setConsumeTouchEvents(param1);
+                instance->setConsumeInputEvents(param1);
                 
                 return 0;
             }

+ 2 - 2
gameplay/src/lua/lua_Joystick.h

@@ -24,7 +24,7 @@ int lua_Joystick_getBorder(lua_State* state);
 int lua_Joystick_getBounds(lua_State* state);
 int lua_Joystick_getClip(lua_State* state);
 int lua_Joystick_getClipBounds(lua_State* state);
-int lua_Joystick_getConsumeTouchEvents(lua_State* state);
+int lua_Joystick_getConsumeInputEvents(lua_State* state);
 int lua_Joystick_getCursorColor(lua_State* state);
 int lua_Joystick_getCursorRegion(lua_State* state);
 int lua_Joystick_getCursorUVs(lua_State* state);
@@ -62,7 +62,7 @@ int lua_Joystick_setAutoHeight(lua_State* state);
 int lua_Joystick_setAutoWidth(lua_State* state);
 int lua_Joystick_setBorder(lua_State* state);
 int lua_Joystick_setBounds(lua_State* state);
-int lua_Joystick_setConsumeTouchEvents(lua_State* state);
+int lua_Joystick_setConsumeInputEvents(lua_State* state);
 int lua_Joystick_setCursorColor(lua_State* state);
 int lua_Joystick_setCursorRegion(lua_State* state);
 int lua_Joystick_setFont(lua_State* state);

+ 6 - 6
gameplay/src/lua/lua_Label.cpp

@@ -31,7 +31,7 @@ void luaRegister_Label()
         {"getBounds", lua_Label_getBounds},
         {"getClip", lua_Label_getClip},
         {"getClipBounds", lua_Label_getClipBounds},
-        {"getConsumeTouchEvents", lua_Label_getConsumeTouchEvents},
+        {"getConsumeInputEvents", lua_Label_getConsumeInputEvents},
         {"getCursorColor", lua_Label_getCursorColor},
         {"getCursorRegion", lua_Label_getCursorRegion},
         {"getCursorUVs", lua_Label_getCursorUVs},
@@ -66,7 +66,7 @@ void luaRegister_Label()
         {"setAutoWidth", lua_Label_setAutoWidth},
         {"setBorder", lua_Label_setBorder},
         {"setBounds", lua_Label_setBounds},
-        {"setConsumeTouchEvents", lua_Label_setConsumeTouchEvents},
+        {"setConsumeInputEvents", lua_Label_setConsumeInputEvents},
         {"setCursorColor", lua_Label_setCursorColor},
         {"setCursorRegion", lua_Label_setCursorRegion},
         {"setFont", lua_Label_setFont},
@@ -1085,7 +1085,7 @@ int lua_Label_getClipBounds(lua_State* state)
     return 0;
 }
 
-int lua_Label_getConsumeTouchEvents(lua_State* state)
+int lua_Label_getConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -1098,7 +1098,7 @@ int lua_Label_getConsumeTouchEvents(lua_State* state)
             if (lua_type(state, 1) == LUA_TUSERDATA)
             {
                 Label* instance = getInstance(state);
-                bool result = instance->getConsumeTouchEvents();
+                bool result = instance->getConsumeInputEvents();
 
                 // Push the return value onto the stack.
                 lua_pushboolean(state, result);
@@ -2718,7 +2718,7 @@ int lua_Label_setBounds(lua_State* state)
     return 0;
 }
 
-int lua_Label_setConsumeTouchEvents(lua_State* state)
+int lua_Label_setConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -2735,7 +2735,7 @@ int lua_Label_setConsumeTouchEvents(lua_State* state)
                 bool param1 = (luaL_checkint(state, 2) != 0);
 
                 Label* instance = getInstance(state);
-                instance->setConsumeTouchEvents(param1);
+                instance->setConsumeInputEvents(param1);
                 
                 return 0;
             }

+ 2 - 2
gameplay/src/lua/lua_Label.h

@@ -24,7 +24,7 @@ int lua_Label_getBorder(lua_State* state);
 int lua_Label_getBounds(lua_State* state);
 int lua_Label_getClip(lua_State* state);
 int lua_Label_getClipBounds(lua_State* state);
-int lua_Label_getConsumeTouchEvents(lua_State* state);
+int lua_Label_getConsumeInputEvents(lua_State* state);
 int lua_Label_getCursorColor(lua_State* state);
 int lua_Label_getCursorRegion(lua_State* state);
 int lua_Label_getCursorUVs(lua_State* state);
@@ -59,7 +59,7 @@ int lua_Label_setAutoHeight(lua_State* state);
 int lua_Label_setAutoWidth(lua_State* state);
 int lua_Label_setBorder(lua_State* state);
 int lua_Label_setBounds(lua_State* state);
-int lua_Label_setConsumeTouchEvents(lua_State* state);
+int lua_Label_setConsumeInputEvents(lua_State* state);
 int lua_Label_setCursorColor(lua_State* state);
 int lua_Label_setCursorRegion(lua_State* state);
 int lua_Label_setFont(lua_State* state);

+ 78 - 0
gameplay/src/lua/lua_Node.cpp

@@ -55,6 +55,7 @@ void luaRegister_Node()
         {"getProjectionMatrix", lua_Node_getProjectionMatrix},
         {"getRefCount", lua_Node_getRefCount},
         {"getRightVector", lua_Node_getRightVector},
+        {"getRightVectorWorld", lua_Node_getRightVectorWorld},
         {"getRootNode", lua_Node_getRootNode},
         {"getRotation", lua_Node_getRotation},
         {"getScale", lua_Node_getScale},
@@ -70,6 +71,7 @@ void luaRegister_Node()
         {"getTranslationZ", lua_Node_getTranslationZ},
         {"getType", lua_Node_getType},
         {"getUpVector", lua_Node_getUpVector},
+        {"getUpVectorWorld", lua_Node_getUpVectorWorld},
         {"getViewMatrix", lua_Node_getViewMatrix},
         {"getViewProjectionMatrix", lua_Node_getViewProjectionMatrix},
         {"getWorldMatrix", lua_Node_getWorldMatrix},
@@ -2251,6 +2253,44 @@ int lua_Node_getRightVector(lua_State* state)
     return 0;
 }
 
+int lua_Node_getRightVectorWorld(lua_State* state)
+{
+    // Get the number of parameters.
+    int paramCount = lua_gettop(state);
+
+    // Attempt to match the parameters to a valid binding.
+    switch (paramCount)
+    {
+        case 1:
+        {
+            if (lua_type(state, 1) == LUA_TUSERDATA)
+            {
+                Node* instance = getInstance(state);
+                ScriptController::LuaObject* object = (ScriptController::LuaObject*)lua_newuserdata(state, sizeof(ScriptController::LuaObject));
+                object->instance = (void*)new Vector3(instance->getRightVectorWorld());
+                object->owns = true;
+                luaL_getmetatable(state, "Vector3");
+                lua_setmetatable(state, -2);
+
+                return 1;
+            }
+            else
+            {
+                lua_pushstring(state, "Failed to match the given parameters to a valid function signature.");
+                lua_error(state);
+            }
+            break;
+        }
+        default:
+        {
+            lua_pushstring(state, "Invalid number of parameters (expected 1).");
+            lua_error(state);
+            break;
+        }
+    }
+    return 0;
+}
+
 int lua_Node_getRootNode(lua_State* state)
 {
     // Get the number of parameters.
@@ -2955,6 +2995,44 @@ int lua_Node_getUpVector(lua_State* state)
     return 0;
 }
 
+int lua_Node_getUpVectorWorld(lua_State* state)
+{
+    // Get the number of parameters.
+    int paramCount = lua_gettop(state);
+
+    // Attempt to match the parameters to a valid binding.
+    switch (paramCount)
+    {
+        case 1:
+        {
+            if (lua_type(state, 1) == LUA_TUSERDATA)
+            {
+                Node* instance = getInstance(state);
+                ScriptController::LuaObject* object = (ScriptController::LuaObject*)lua_newuserdata(state, sizeof(ScriptController::LuaObject));
+                object->instance = (void*)new Vector3(instance->getUpVectorWorld());
+                object->owns = true;
+                luaL_getmetatable(state, "Vector3");
+                lua_setmetatable(state, -2);
+
+                return 1;
+            }
+            else
+            {
+                lua_pushstring(state, "Failed to match the given parameters to a valid function signature.");
+                lua_error(state);
+            }
+            break;
+        }
+        default:
+        {
+            lua_pushstring(state, "Invalid number of parameters (expected 1).");
+            lua_error(state);
+            break;
+        }
+    }
+    return 0;
+}
+
 int lua_Node_getViewMatrix(lua_State* state)
 {
     // Get the number of parameters.

+ 2 - 0
gameplay/src/lua/lua_Node.h

@@ -48,6 +48,7 @@ int lua_Node_getPreviousSibling(lua_State* state);
 int lua_Node_getProjectionMatrix(lua_State* state);
 int lua_Node_getRefCount(lua_State* state);
 int lua_Node_getRightVector(lua_State* state);
+int lua_Node_getRightVectorWorld(lua_State* state);
 int lua_Node_getRootNode(lua_State* state);
 int lua_Node_getRotation(lua_State* state);
 int lua_Node_getScale(lua_State* state);
@@ -63,6 +64,7 @@ int lua_Node_getTranslationY(lua_State* state);
 int lua_Node_getTranslationZ(lua_State* state);
 int lua_Node_getType(lua_State* state);
 int lua_Node_getUpVector(lua_State* state);
+int lua_Node_getUpVectorWorld(lua_State* state);
 int lua_Node_getViewMatrix(lua_State* state);
 int lua_Node_getViewProjectionMatrix(lua_State* state);
 int lua_Node_getWorldMatrix(lua_State* state);

+ 1 - 1
gameplay/src/lua/lua_ParticleEmitter.cpp

@@ -2577,7 +2577,7 @@ int lua_ParticleEmitter_update(lua_State* state)
                 lua_type(state, 2) == LUA_TNUMBER)
             {
                 // Get parameter 1 off the stack.
-                long param1 = (long)luaL_checklong(state, 2);
+                float param1 = (float)luaL_checknumber(state, 2);
 
                 ParticleEmitter* instance = getInstance(state);
                 instance->update(param1);

+ 39 - 0
gameplay/src/lua/lua_Pass.cpp

@@ -20,6 +20,7 @@ void luaRegister_Pass()
         {"getParameter", lua_Pass_getParameter},
         {"getRefCount", lua_Pass_getRefCount},
         {"getStateBlock", lua_Pass_getStateBlock},
+        {"getVertexAttributeBinding", lua_Pass_getVertexAttributeBinding},
         {"release", lua_Pass_release},
         {"setParameterAutoBinding", lua_Pass_setParameterAutoBinding},
         {"setStateBlock", lua_Pass_setStateBlock},
@@ -340,6 +341,44 @@ int lua_Pass_getStateBlock(lua_State* state)
     return 0;
 }
 
+int lua_Pass_getVertexAttributeBinding(lua_State* state)
+{
+    // Get the number of parameters.
+    int paramCount = lua_gettop(state);
+
+    // Attempt to match the parameters to a valid binding.
+    switch (paramCount)
+    {
+        case 1:
+        {
+            if (lua_type(state, 1) == LUA_TUSERDATA)
+            {
+                Pass* instance = getInstance(state);
+                ScriptController::LuaObject* object = (ScriptController::LuaObject*)lua_newuserdata(state, sizeof(ScriptController::LuaObject));
+                object->instance = (void*)instance->getVertexAttributeBinding();
+                object->owns = false;
+                luaL_getmetatable(state, "VertexAttributeBinding");
+                lua_setmetatable(state, -2);
+
+                return 1;
+            }
+            else
+            {
+                lua_pushstring(state, "Failed to match the given parameters to a valid function signature.");
+                lua_error(state);
+            }
+            break;
+        }
+        default:
+        {
+            lua_pushstring(state, "Invalid number of parameters (expected 1).");
+            lua_error(state);
+            break;
+        }
+    }
+    return 0;
+}
+
 int lua_Pass_release(lua_State* state)
 {
     // Get the number of parameters.

+ 1 - 0
gameplay/src/lua/lua_Pass.h

@@ -13,6 +13,7 @@ int lua_Pass_getId(lua_State* state);
 int lua_Pass_getParameter(lua_State* state);
 int lua_Pass_getRefCount(lua_State* state);
 int lua_Pass_getStateBlock(lua_State* state);
+int lua_Pass_getVertexAttributeBinding(lua_State* state);
 int lua_Pass_release(lua_State* state);
 int lua_Pass_setParameterAutoBinding(lua_State* state);
 int lua_Pass_setStateBlock(lua_State* state);

+ 114 - 2
gameplay/src/lua/lua_PhysicsController.cpp

@@ -1331,9 +1331,62 @@ int lua_PhysicsController_rayTest(lua_State* state)
             }
             break;
         }
+        case 5:
+        {
+            if (lua_type(state, 1) == LUA_TUSERDATA &&
+                lua_type(state, 2) == LUA_TUSERDATA &&
+                lua_type(state, 3) == LUA_TNUMBER &&
+                lua_type(state, 4) == LUA_TUSERDATA &&
+                lua_type(state, 5) == LUA_TUSERDATA)
+            {
+                // Get parameter 1 off the stack.
+                void* userdata2 = ScriptController::getInstance()->getObjectPointer(2, "Ray");
+                if (!userdata2)
+                {
+                    lua_pushstring(state, "Failed to retrieve a valid object pointer of type 'Ray' for parameter 2.");
+                    lua_error(state);
+                }
+                Ray* param1 = (Ray*)((ScriptController::LuaObject*)userdata2)->instance;
+
+                // Get parameter 2 off the stack.
+                float param2 = (float)luaL_checknumber(state, 3);
+
+                // Get parameter 3 off the stack.
+                void* userdata4 = ScriptController::getInstance()->getObjectPointer(4, "PhysicsControllerHitResult");
+                if (!userdata4)
+                {
+                    lua_pushstring(state, "Failed to retrieve a valid object pointer of type 'PhysicsController::HitResult' for parameter 4.");
+                    lua_error(state);
+                }
+                PhysicsController::HitResult* param3 = (PhysicsController::HitResult*)((ScriptController::LuaObject*)userdata4)->instance;
+
+                // Get parameter 4 off the stack.
+                void* userdata5 = ScriptController::getInstance()->getObjectPointer(5, "PhysicsControllerHitFilter");
+                if (!userdata5)
+                {
+                    lua_pushstring(state, "Failed to retrieve a valid object pointer of type 'PhysicsController::HitFilter' for parameter 5.");
+                    lua_error(state);
+                }
+                PhysicsController::HitFilter* param4 = (PhysicsController::HitFilter*)((ScriptController::LuaObject*)userdata5)->instance;
+
+                PhysicsController* instance = getInstance(state);
+                bool result = instance->rayTest(*param1, param2, param3, param4);
+
+                // Push the return value onto the stack.
+                lua_pushboolean(state, result);
+
+                return 1;
+            }
+            else
+            {
+                lua_pushstring(state, "Failed to match the given parameters to a valid function signature.");
+                lua_error(state);
+            }
+            break;
+        }
         default:
         {
-            lua_pushstring(state, "Invalid number of parameters (expected 3 or 4).");
+            lua_pushstring(state, "Invalid number of parameters (expected 3, 4 or 5).");
             lua_error(state);
             break;
         }
@@ -1525,9 +1578,68 @@ int lua_PhysicsController_sweepTest(lua_State* state)
             }
             break;
         }
+        case 5:
+        {
+            if (lua_type(state, 1) == LUA_TUSERDATA &&
+                lua_type(state, 2) == LUA_TUSERDATA &&
+                lua_type(state, 3) == LUA_TUSERDATA &&
+                lua_type(state, 4) == LUA_TUSERDATA &&
+                lua_type(state, 5) == LUA_TUSERDATA)
+            {
+                // Get parameter 1 off the stack.
+                void* userdata2 = ScriptController::getInstance()->getObjectPointer(2, "PhysicsCollisionObject");
+                if (!userdata2)
+                {
+                    lua_pushstring(state, "Failed to retrieve a valid object pointer of type 'PhysicsCollisionObject' for parameter 2.");
+                    lua_error(state);
+                }
+                PhysicsCollisionObject* param1 = (PhysicsCollisionObject*)((ScriptController::LuaObject*)userdata2)->instance;
+
+                // Get parameter 2 off the stack.
+                void* userdata3 = ScriptController::getInstance()->getObjectPointer(3, "Vector3");
+                if (!userdata3)
+                {
+                    lua_pushstring(state, "Failed to retrieve a valid object pointer of type 'Vector3' for parameter 3.");
+                    lua_error(state);
+                }
+                Vector3* param2 = (Vector3*)((ScriptController::LuaObject*)userdata3)->instance;
+
+                // Get parameter 3 off the stack.
+                void* userdata4 = ScriptController::getInstance()->getObjectPointer(4, "PhysicsControllerHitResult");
+                if (!userdata4)
+                {
+                    lua_pushstring(state, "Failed to retrieve a valid object pointer of type 'PhysicsController::HitResult' for parameter 4.");
+                    lua_error(state);
+                }
+                PhysicsController::HitResult* param3 = (PhysicsController::HitResult*)((ScriptController::LuaObject*)userdata4)->instance;
+
+                // Get parameter 4 off the stack.
+                void* userdata5 = ScriptController::getInstance()->getObjectPointer(5, "PhysicsControllerHitFilter");
+                if (!userdata5)
+                {
+                    lua_pushstring(state, "Failed to retrieve a valid object pointer of type 'PhysicsController::HitFilter' for parameter 5.");
+                    lua_error(state);
+                }
+                PhysicsController::HitFilter* param4 = (PhysicsController::HitFilter*)((ScriptController::LuaObject*)userdata5)->instance;
+
+                PhysicsController* instance = getInstance(state);
+                bool result = instance->sweepTest(param1, *param2, param3, param4);
+
+                // Push the return value onto the stack.
+                lua_pushboolean(state, result);
+
+                return 1;
+            }
+            else
+            {
+                lua_pushstring(state, "Failed to match the given parameters to a valid function signature.");
+                lua_error(state);
+            }
+            break;
+        }
         default:
         {
-            lua_pushstring(state, "Invalid number of parameters (expected 3 or 4).");
+            lua_pushstring(state, "Invalid number of parameters (expected 3, 4 or 5).");
             lua_error(state);
             break;
         }

+ 197 - 0
gameplay/src/lua/lua_PhysicsControllerHitFilter.cpp

@@ -0,0 +1,197 @@
+#include "Base.h"
+#include "ScriptController.h"
+#include "PhysicsController.h"
+#include "lua_PhysicsControllerHitFilter.h"
+#include "lua_Global.h"
+
+namespace gameplay
+{
+
+void luaRegister_PhysicsControllerHitFilter()
+{
+    ScriptController* sc = ScriptController::getInstance();
+
+    const luaL_Reg lua_members[] = 
+    {
+        {"filter", lua_PhysicsControllerHitFilter_filter},
+        {"hit", lua_PhysicsControllerHitFilter_hit},
+        {NULL, NULL}
+    };
+    const luaL_Reg* lua_statics = NULL;
+    std::vector<std::string> scopePath;
+    scopePath.push_back("PhysicsController");
+
+    sc->registerClass("PhysicsControllerHitFilter", lua_members, lua_PhysicsControllerHitFilter__init, lua_PhysicsControllerHitFilter__gc, lua_statics, scopePath);
+}
+
+static PhysicsController::HitFilter* getInstance(lua_State* state)
+{
+    void* userdata = luaL_checkudata(state, 1, "PhysicsControllerHitFilter");
+    luaL_argcheck(state, userdata != NULL, 1, "'PhysicsControllerHitFilter' expected.");
+    return (PhysicsController::HitFilter*)((ScriptController::LuaObject*)userdata)->instance;
+}
+
+int lua_PhysicsControllerHitFilter__gc(lua_State* state)
+{
+    // Get the number of parameters.
+    int paramCount = lua_gettop(state);
+
+    // Attempt to match the parameters to a valid binding.
+    switch (paramCount)
+    {
+        case 1:
+        {
+            if (lua_type(state, 1) == LUA_TUSERDATA)
+            {
+                void* userdata = luaL_checkudata(state, 1, "PhysicsControllerHitFilter");
+                luaL_argcheck(state, userdata != NULL, 1, "'PhysicsControllerHitFilter' expected.");
+                ScriptController::LuaObject* object = (ScriptController::LuaObject*)userdata;
+                if (object->owns)
+                {
+                    PhysicsController::HitFilter* instance = (PhysicsController::HitFilter*)object->instance;
+                    SAFE_DELETE(instance);
+                }
+                
+                return 0;
+            }
+            else
+            {
+                lua_pushstring(state, "Failed to match the given parameters to a valid function signature.");
+                lua_error(state);
+            }
+            break;
+        }
+        default:
+        {
+            lua_pushstring(state, "Invalid number of parameters (expected 1).");
+            lua_error(state);
+            break;
+        }
+    }
+    return 0;
+}
+
+int lua_PhysicsControllerHitFilter__init(lua_State* state)
+{
+    // Get the number of parameters.
+    int paramCount = lua_gettop(state);
+
+    // Attempt to match the parameters to a valid binding.
+    switch (paramCount)
+    {
+        case 0:
+        {
+            ScriptController::LuaObject* object = (ScriptController::LuaObject*)lua_newuserdata(state, sizeof(ScriptController::LuaObject));
+            object->instance = (void*)new PhysicsController::HitFilter();
+            object->owns = true;
+            luaL_getmetatable(state, "PhysicsControllerHitFilter");
+            lua_setmetatable(state, -2);
+
+            return 1;
+            break;
+        }
+        default:
+        {
+            lua_pushstring(state, "Invalid number of parameters (expected 0).");
+            lua_error(state);
+            break;
+        }
+    }
+    return 0;
+}
+
+int lua_PhysicsControllerHitFilter_filter(lua_State* state)
+{
+    // Get the number of parameters.
+    int paramCount = lua_gettop(state);
+
+    // Attempt to match the parameters to a valid binding.
+    switch (paramCount)
+    {
+        case 2:
+        {
+            if (lua_type(state, 1) == LUA_TUSERDATA &&
+                lua_type(state, 2) == LUA_TUSERDATA)
+            {
+                // Get parameter 1 off the stack.
+                void* userdata2 = ScriptController::getInstance()->getObjectPointer(2, "PhysicsCollisionObject");
+                if (!userdata2)
+                {
+                    lua_pushstring(state, "Failed to retrieve a valid object pointer of type 'PhysicsCollisionObject' for parameter 2.");
+                    lua_error(state);
+                }
+                PhysicsCollisionObject* param1 = (PhysicsCollisionObject*)((ScriptController::LuaObject*)userdata2)->instance;
+
+                PhysicsController::HitFilter* instance = getInstance(state);
+                bool result = instance->filter(param1);
+
+                // Push the return value onto the stack.
+                lua_pushboolean(state, result);
+
+                return 1;
+            }
+            else
+            {
+                lua_pushstring(state, "Failed to match the given parameters to a valid function signature.");
+                lua_error(state);
+            }
+            break;
+        }
+        default:
+        {
+            lua_pushstring(state, "Invalid number of parameters (expected 2).");
+            lua_error(state);
+            break;
+        }
+    }
+    return 0;
+}
+
+int lua_PhysicsControllerHitFilter_hit(lua_State* state)
+{
+    // Get the number of parameters.
+    int paramCount = lua_gettop(state);
+
+    // Attempt to match the parameters to a valid binding.
+    switch (paramCount)
+    {
+        case 2:
+        {
+            if (lua_type(state, 1) == LUA_TUSERDATA &&
+                lua_type(state, 2) == LUA_TUSERDATA)
+            {
+                // Get parameter 1 off the stack.
+                void* userdata2 = ScriptController::getInstance()->getObjectPointer(2, "PhysicsControllerHitResult");
+                if (!userdata2)
+                {
+                    lua_pushstring(state, "Failed to retrieve a valid object pointer of type 'PhysicsController::HitResult' for parameter 2.");
+                    lua_error(state);
+                }
+                PhysicsController::HitResult* param1 = (PhysicsController::HitResult*)((ScriptController::LuaObject*)userdata2)->instance;
+
+                PhysicsController::HitFilter* instance = getInstance(state);
+                bool result = instance->hit(*param1);
+
+                // Push the return value onto the stack.
+                lua_pushboolean(state, result);
+
+                return 1;
+            }
+            else
+            {
+                lua_pushstring(state, "Failed to match the given parameters to a valid function signature.");
+                lua_error(state);
+            }
+            break;
+        }
+        default:
+        {
+            lua_pushstring(state, "Invalid number of parameters (expected 2).");
+            lua_error(state);
+            break;
+        }
+    }
+    return 0;
+}
+
+}

+ 17 - 0
gameplay/src/lua/lua_PhysicsControllerHitFilter.h

@@ -0,0 +1,17 @@
+#ifndef LUA_PHYSICSCONTROLLERHITFILTER_H_
+#define LUA_PHYSICSCONTROLLERHITFILTER_H_
+
+namespace gameplay
+{
+
+// Lua bindings for PhysicsController::HitFilter.
+int lua_PhysicsControllerHitFilter__gc(lua_State* state);
+int lua_PhysicsControllerHitFilter__init(lua_State* state);
+int lua_PhysicsControllerHitFilter_filter(lua_State* state);
+int lua_PhysicsControllerHitFilter_hit(lua_State* state);
+
+void luaRegister_PhysicsControllerHitFilter();
+
+}
+
+#endif

+ 1 - 100
gameplay/src/lua/lua_PhysicsRigidBodyParameters.cpp

@@ -16,7 +16,6 @@ void luaRegister_PhysicsRigidBodyParameters()
         {"angularDamping", lua_PhysicsRigidBodyParameters_angularDamping},
         {"anisotropicFriction", lua_PhysicsRigidBodyParameters_anisotropicFriction},
         {"friction", lua_PhysicsRigidBodyParameters_friction},
-        {"gravity", lua_PhysicsRigidBodyParameters_gravity},
         {"kinematic", lua_PhysicsRigidBodyParameters_kinematic},
         {"linearDamping", lua_PhysicsRigidBodyParameters_linearDamping},
         {"mass", lua_PhysicsRigidBodyParameters_mass},
@@ -340,71 +339,9 @@ int lua_PhysicsRigidBodyParameters__init(lua_State* state)
             }
             break;
         }
-        case 8:
-        {
-            if (lua_type(state, 1) == LUA_TNUMBER &&
-                lua_type(state, 2) == LUA_TNUMBER &&
-                lua_type(state, 3) == LUA_TNUMBER &&
-                lua_type(state, 4) == LUA_TNUMBER &&
-                lua_type(state, 5) == LUA_TNUMBER &&
-                lua_type(state, 6) == LUA_TBOOLEAN &&
-                lua_type(state, 7) == LUA_TUSERDATA &&
-                lua_type(state, 8) == LUA_TUSERDATA)
-            {
-                // Get parameter 1 off the stack.
-                float param1 = (float)luaL_checknumber(state, 1);
-
-                // Get parameter 2 off the stack.
-                float param2 = (float)luaL_checknumber(state, 2);
-
-                // Get parameter 3 off the stack.
-                float param3 = (float)luaL_checknumber(state, 3);
-
-                // Get parameter 4 off the stack.
-                float param4 = (float)luaL_checknumber(state, 4);
-
-                // Get parameter 5 off the stack.
-                float param5 = (float)luaL_checknumber(state, 5);
-
-                // Get parameter 6 off the stack.
-                bool param6 = (luaL_checkint(state, 6) != 0);
-
-                // Get parameter 7 off the stack.
-                void* userdata7 = ScriptController::getInstance()->getObjectPointer(7, "Vector3");
-                if (!userdata7)
-                {
-                    lua_pushstring(state, "Failed to retrieve a valid object pointer of type 'Vector3' for parameter 7.");
-                    lua_error(state);
-                }
-                Vector3* param7 = (Vector3*)((ScriptController::LuaObject*)userdata7)->instance;
-
-                // Get parameter 8 off the stack.
-                void* userdata8 = ScriptController::getInstance()->getObjectPointer(8, "Vector3");
-                if (!userdata8)
-                {
-                    lua_pushstring(state, "Failed to retrieve a valid object pointer of type 'Vector3' for parameter 8.");
-                    lua_error(state);
-                }
-                Vector3* param8 = (Vector3*)((ScriptController::LuaObject*)userdata8)->instance;
-
-                ScriptController::LuaObject* object = (ScriptController::LuaObject*)lua_newuserdata(state, sizeof(ScriptController::LuaObject));
-                object->instance = (void*)new PhysicsRigidBody::Parameters(param1, param2, param3, param4, param5, param6, *param7, *param8);
-                object->owns = true;
-                luaL_getmetatable(state, "PhysicsRigidBodyParameters");
-                lua_setmetatable(state, -2);
-
-                return 1;
-            }
-            else
-            {
-                lua_pushstring(state, "Failed to match the given parameters to a valid function signature.");
-                lua_error(state);
-            }
-            break;
-        }
         default:
         {
-            lua_pushstring(state, "Invalid number of parameters (expected 0, 1, 2, 3, 4, 5, 6, 7 or 8).");
+            lua_pushstring(state, "Invalid number of parameters (expected 0, 1, 2, 3, 4, 5, 6 or 7).");
             lua_error(state);
             break;
         }
@@ -506,42 +443,6 @@ int lua_PhysicsRigidBodyParameters_friction(lua_State* state)
     }
 }
 
-int lua_PhysicsRigidBodyParameters_gravity(lua_State* state)
-{
-    // Validate the number of parameters.
-    if (lua_gettop(state) > 2)
-    {
-        lua_pushstring(state, "Invalid number of parameters (expected 1 or 2).");
-        lua_error(state);
-    }
-
-    PhysicsRigidBody::Parameters* instance = getInstance(state);
-    if (lua_gettop(state) == 2)
-    {
-        // Get parameter 2 off the stack.
-        void* userdata2 = ScriptController::getInstance()->getObjectPointer(2, "Vector3");
-        if (!userdata2)
-        {
-            lua_pushstring(state, "Failed to retrieve a valid object pointer of type 'Vector3' for parameter 2.");
-            lua_error(state);
-        }
-        Vector3* param2 = (Vector3*)((ScriptController::LuaObject*)userdata2)->instance;
-
-        instance->gravity = *param2;
-        return 0;
-    }
-    else
-    {
-        ScriptController::LuaObject* object = (ScriptController::LuaObject*)lua_newuserdata(state, sizeof(ScriptController::LuaObject));
-        object->instance = (void*)new Vector3(instance->gravity);
-        object->owns = true;
-        luaL_getmetatable(state, "Vector3");
-        lua_setmetatable(state, -2);
-
-        return 1;
-    }
-}
-
 int lua_PhysicsRigidBodyParameters_kinematic(lua_State* state)
 {
     // Validate the number of parameters.

+ 0 - 1
gameplay/src/lua/lua_PhysicsRigidBodyParameters.h

@@ -10,7 +10,6 @@ int lua_PhysicsRigidBodyParameters__init(lua_State* state);
 int lua_PhysicsRigidBodyParameters_angularDamping(lua_State* state);
 int lua_PhysicsRigidBodyParameters_anisotropicFriction(lua_State* state);
 int lua_PhysicsRigidBodyParameters_friction(lua_State* state);
-int lua_PhysicsRigidBodyParameters_gravity(lua_State* state);
 int lua_PhysicsRigidBodyParameters_kinematic(lua_State* state);
 int lua_PhysicsRigidBodyParameters_linearDamping(lua_State* state);
 int lua_PhysicsRigidBodyParameters_mass(lua_State* state);

+ 55 - 3
gameplay/src/lua/lua_Platform.cpp

@@ -27,6 +27,7 @@ void luaRegister_Platform()
         {"isMultiTouch", lua_Platform_static_isMultiTouch},
         {"isVsync", lua_Platform_static_isVsync},
         {"keyEventInternal", lua_Platform_static_keyEventInternal},
+        {"mouseEventInternal", lua_Platform_static_mouseEventInternal},
         {"setAbsoluteTime", lua_Platform_static_setAbsoluteTime},
         {"setMultiTouch", lua_Platform_static_setMultiTouch},
         {"setVsync", lua_Platform_static_setVsync},
@@ -217,10 +218,10 @@ int lua_Platform_static_getAbsoluteTime(lua_State* state)
     {
         case 0:
         {
-            long result = Platform::getAbsoluteTime();
+            double result = Platform::getAbsoluteTime();
 
             // Push the return value onto the stack.
-            lua_pushinteger(state, result);
+            lua_pushnumber(state, result);
 
             return 1;
             break;
@@ -427,6 +428,57 @@ int lua_Platform_static_keyEventInternal(lua_State* state)
     return 0;
 }
 
+int lua_Platform_static_mouseEventInternal(lua_State* state)
+{
+    // Get the number of parameters.
+    int paramCount = lua_gettop(state);
+
+    // Attempt to match the parameters to a valid binding.
+    switch (paramCount)
+    {
+        case 4:
+        {
+            if (lua_type(state, 1) == LUA_TSTRING &&
+                lua_type(state, 2) == LUA_TNUMBER &&
+                lua_type(state, 3) == LUA_TNUMBER &&
+                lua_type(state, 4) == LUA_TNUMBER)
+            {
+                // Get parameter 1 off the stack.
+                Mouse::MouseEvent param1 = (Mouse::MouseEvent)lua_enumFromString_MouseMouseEvent(luaL_checkstring(state, 1));
+
+                // Get parameter 2 off the stack.
+                int param2 = (int)luaL_checkint(state, 2);
+
+                // Get parameter 3 off the stack.
+                int param3 = (int)luaL_checkint(state, 3);
+
+                // Get parameter 4 off the stack.
+                int param4 = (int)luaL_checkint(state, 4);
+
+                bool result = Platform::mouseEventInternal(param1, param2, param3, param4);
+
+                // Push the return value onto the stack.
+                lua_pushboolean(state, result);
+
+                return 1;
+            }
+            else
+            {
+                lua_pushstring(state, "Failed to match the given parameters to a valid function signature.");
+                lua_error(state);
+            }
+            break;
+        }
+        default:
+        {
+            lua_pushstring(state, "Invalid number of parameters (expected 4).");
+            lua_error(state);
+            break;
+        }
+    }
+    return 0;
+}
+
 int lua_Platform_static_setAbsoluteTime(lua_State* state)
 {
     // Get the number of parameters.
@@ -440,7 +492,7 @@ int lua_Platform_static_setAbsoluteTime(lua_State* state)
             if (lua_type(state, 1) == LUA_TNUMBER)
             {
                 // Get parameter 1 off the stack.
-                long param1 = (long)luaL_checklong(state, 1);
+                double param1 = (double)luaL_checknumber(state, 1);
 
                 Platform::setAbsoluteTime(param1);
                 

+ 1 - 0
gameplay/src/lua/lua_Platform.h

@@ -16,6 +16,7 @@ int lua_Platform_static_getDisplayWidth(lua_State* state);
 int lua_Platform_static_isMultiTouch(lua_State* state);
 int lua_Platform_static_isVsync(lua_State* state);
 int lua_Platform_static_keyEventInternal(lua_State* state);
+int lua_Platform_static_mouseEventInternal(lua_State* state);
 int lua_Platform_static_setAbsoluteTime(lua_State* state);
 int lua_Platform_static_setMultiTouch(lua_State* state);
 int lua_Platform_static_setVsync(lua_State* state);

+ 6 - 6
gameplay/src/lua/lua_RadioButton.cpp

@@ -31,7 +31,7 @@ void luaRegister_RadioButton()
         {"getBounds", lua_RadioButton_getBounds},
         {"getClip", lua_RadioButton_getClip},
         {"getClipBounds", lua_RadioButton_getClipBounds},
-        {"getConsumeTouchEvents", lua_RadioButton_getConsumeTouchEvents},
+        {"getConsumeInputEvents", lua_RadioButton_getConsumeInputEvents},
         {"getCursorColor", lua_RadioButton_getCursorColor},
         {"getCursorRegion", lua_RadioButton_getCursorRegion},
         {"getCursorUVs", lua_RadioButton_getCursorUVs},
@@ -68,7 +68,7 @@ void luaRegister_RadioButton()
         {"setAutoWidth", lua_RadioButton_setAutoWidth},
         {"setBorder", lua_RadioButton_setBorder},
         {"setBounds", lua_RadioButton_setBounds},
-        {"setConsumeTouchEvents", lua_RadioButton_setConsumeTouchEvents},
+        {"setConsumeInputEvents", lua_RadioButton_setConsumeInputEvents},
         {"setCursorColor", lua_RadioButton_setCursorColor},
         {"setCursorRegion", lua_RadioButton_setCursorRegion},
         {"setFont", lua_RadioButton_setFont},
@@ -1088,7 +1088,7 @@ int lua_RadioButton_getClipBounds(lua_State* state)
     return 0;
 }
 
-int lua_RadioButton_getConsumeTouchEvents(lua_State* state)
+int lua_RadioButton_getConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -1101,7 +1101,7 @@ int lua_RadioButton_getConsumeTouchEvents(lua_State* state)
             if (lua_type(state, 1) == LUA_TUSERDATA)
             {
                 RadioButton* instance = getInstance(state);
-                bool result = instance->getConsumeTouchEvents();
+                bool result = instance->getConsumeInputEvents();
 
                 // Push the return value onto the stack.
                 lua_pushboolean(state, result);
@@ -2796,7 +2796,7 @@ int lua_RadioButton_setBounds(lua_State* state)
     return 0;
 }
 
-int lua_RadioButton_setConsumeTouchEvents(lua_State* state)
+int lua_RadioButton_setConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -2813,7 +2813,7 @@ int lua_RadioButton_setConsumeTouchEvents(lua_State* state)
                 bool param1 = (luaL_checkint(state, 2) != 0);
 
                 RadioButton* instance = getInstance(state);
-                instance->setConsumeTouchEvents(param1);
+                instance->setConsumeInputEvents(param1);
                 
                 return 0;
             }

+ 2 - 2
gameplay/src/lua/lua_RadioButton.h

@@ -24,7 +24,7 @@ int lua_RadioButton_getBorder(lua_State* state);
 int lua_RadioButton_getBounds(lua_State* state);
 int lua_RadioButton_getClip(lua_State* state);
 int lua_RadioButton_getClipBounds(lua_State* state);
-int lua_RadioButton_getConsumeTouchEvents(lua_State* state);
+int lua_RadioButton_getConsumeInputEvents(lua_State* state);
 int lua_RadioButton_getCursorColor(lua_State* state);
 int lua_RadioButton_getCursorRegion(lua_State* state);
 int lua_RadioButton_getCursorUVs(lua_State* state);
@@ -61,7 +61,7 @@ int lua_RadioButton_setAutoHeight(lua_State* state);
 int lua_RadioButton_setAutoWidth(lua_State* state);
 int lua_RadioButton_setBorder(lua_State* state);
 int lua_RadioButton_setBounds(lua_State* state);
-int lua_RadioButton_setConsumeTouchEvents(lua_State* state);
+int lua_RadioButton_setConsumeInputEvents(lua_State* state);
 int lua_RadioButton_setCursorColor(lua_State* state);
 int lua_RadioButton_setCursorRegion(lua_State* state);
 int lua_RadioButton_setFont(lua_State* state);

+ 6 - 6
gameplay/src/lua/lua_Slider.cpp

@@ -31,7 +31,7 @@ void luaRegister_Slider()
         {"getBounds", lua_Slider_getBounds},
         {"getClip", lua_Slider_getClip},
         {"getClipBounds", lua_Slider_getClipBounds},
-        {"getConsumeTouchEvents", lua_Slider_getConsumeTouchEvents},
+        {"getConsumeInputEvents", lua_Slider_getConsumeInputEvents},
         {"getCursorColor", lua_Slider_getCursorColor},
         {"getCursorRegion", lua_Slider_getCursorRegion},
         {"getCursorUVs", lua_Slider_getCursorUVs},
@@ -70,7 +70,7 @@ void luaRegister_Slider()
         {"setAutoWidth", lua_Slider_setAutoWidth},
         {"setBorder", lua_Slider_setBorder},
         {"setBounds", lua_Slider_setBounds},
-        {"setConsumeTouchEvents", lua_Slider_setConsumeTouchEvents},
+        {"setConsumeInputEvents", lua_Slider_setConsumeInputEvents},
         {"setCursorColor", lua_Slider_setCursorColor},
         {"setCursorRegion", lua_Slider_setCursorRegion},
         {"setFont", lua_Slider_setFont},
@@ -1093,7 +1093,7 @@ int lua_Slider_getClipBounds(lua_State* state)
     return 0;
 }
 
-int lua_Slider_getConsumeTouchEvents(lua_State* state)
+int lua_Slider_getConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -1106,7 +1106,7 @@ int lua_Slider_getConsumeTouchEvents(lua_State* state)
             if (lua_type(state, 1) == LUA_TUSERDATA)
             {
                 Slider* instance = getInstance(state);
-                bool result = instance->getConsumeTouchEvents();
+                bool result = instance->getConsumeInputEvents();
 
                 // Push the return value onto the stack.
                 lua_pushboolean(state, result);
@@ -2874,7 +2874,7 @@ int lua_Slider_setBounds(lua_State* state)
     return 0;
 }
 
-int lua_Slider_setConsumeTouchEvents(lua_State* state)
+int lua_Slider_setConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -2891,7 +2891,7 @@ int lua_Slider_setConsumeTouchEvents(lua_State* state)
                 bool param1 = (luaL_checkint(state, 2) != 0);
 
                 Slider* instance = getInstance(state);
-                instance->setConsumeTouchEvents(param1);
+                instance->setConsumeInputEvents(param1);
                 
                 return 0;
             }

+ 2 - 2
gameplay/src/lua/lua_Slider.h

@@ -24,7 +24,7 @@ int lua_Slider_getBorder(lua_State* state);
 int lua_Slider_getBounds(lua_State* state);
 int lua_Slider_getClip(lua_State* state);
 int lua_Slider_getClipBounds(lua_State* state);
-int lua_Slider_getConsumeTouchEvents(lua_State* state);
+int lua_Slider_getConsumeInputEvents(lua_State* state);
 int lua_Slider_getCursorColor(lua_State* state);
 int lua_Slider_getCursorRegion(lua_State* state);
 int lua_Slider_getCursorUVs(lua_State* state);
@@ -63,7 +63,7 @@ int lua_Slider_setAutoHeight(lua_State* state);
 int lua_Slider_setAutoWidth(lua_State* state);
 int lua_Slider_setBorder(lua_State* state);
 int lua_Slider_setBounds(lua_State* state);
-int lua_Slider_setConsumeTouchEvents(lua_State* state);
+int lua_Slider_setConsumeInputEvents(lua_State* state);
 int lua_Slider_setCursorColor(lua_State* state);
 int lua_Slider_setCursorRegion(lua_State* state);
 int lua_Slider_setFont(lua_State* state);

+ 39 - 0
gameplay/src/lua/lua_SpriteBatch.cpp

@@ -17,6 +17,7 @@ void luaRegister_SpriteBatch()
         {"draw", lua_SpriteBatch_draw},
         {"end", lua_SpriteBatch_end},
         {"getMaterial", lua_SpriteBatch_getMaterial},
+        {"getProjectionMatrix", lua_SpriteBatch_getProjectionMatrix},
         {"getStateBlock", lua_SpriteBatch_getStateBlock},
         {"setProjectionMatrix", lua_SpriteBatch_setProjectionMatrix},
         {NULL, NULL}
@@ -1067,6 +1068,44 @@ int lua_SpriteBatch_getMaterial(lua_State* state)
     return 0;
 }
 
+int lua_SpriteBatch_getProjectionMatrix(lua_State* state)
+{
+    // Get the number of parameters.
+    int paramCount = lua_gettop(state);
+
+    // Attempt to match the parameters to a valid binding.
+    switch (paramCount)
+    {
+        case 1:
+        {
+            if (lua_type(state, 1) == LUA_TUSERDATA)
+            {
+                SpriteBatch* instance = getInstance(state);
+                ScriptController::LuaObject* object = (ScriptController::LuaObject*)lua_newuserdata(state, sizeof(ScriptController::LuaObject));
+                object->instance = (void*)&(instance->getProjectionMatrix());
+                object->owns = false;
+                luaL_getmetatable(state, "Matrix");
+                lua_setmetatable(state, -2);
+
+                return 1;
+            }
+            else
+            {
+                lua_pushstring(state, "Failed to match the given parameters to a valid function signature.");
+                lua_error(state);
+            }
+            break;
+        }
+        default:
+        {
+            lua_pushstring(state, "Invalid number of parameters (expected 1).");
+            lua_error(state);
+            break;
+        }
+    }
+    return 0;
+}
+
 int lua_SpriteBatch_getStateBlock(lua_State* state)
 {
     // Get the number of parameters.

+ 1 - 0
gameplay/src/lua/lua_SpriteBatch.h

@@ -10,6 +10,7 @@ int lua_SpriteBatch_begin(lua_State* state);
 int lua_SpriteBatch_draw(lua_State* state);
 int lua_SpriteBatch_end(lua_State* state);
 int lua_SpriteBatch_getMaterial(lua_State* state);
+int lua_SpriteBatch_getProjectionMatrix(lua_State* state);
 int lua_SpriteBatch_getStateBlock(lua_State* state);
 int lua_SpriteBatch_setProjectionMatrix(lua_State* state);
 int lua_SpriteBatch_static_create(lua_State* state);

+ 6 - 6
gameplay/src/lua/lua_TextBox.cpp

@@ -31,7 +31,7 @@ void luaRegister_TextBox()
         {"getBounds", lua_TextBox_getBounds},
         {"getClip", lua_TextBox_getClip},
         {"getClipBounds", lua_TextBox_getClipBounds},
-        {"getConsumeTouchEvents", lua_TextBox_getConsumeTouchEvents},
+        {"getConsumeInputEvents", lua_TextBox_getConsumeInputEvents},
         {"getCursorColor", lua_TextBox_getCursorColor},
         {"getCursorRegion", lua_TextBox_getCursorRegion},
         {"getCursorUVs", lua_TextBox_getCursorUVs},
@@ -67,7 +67,7 @@ void luaRegister_TextBox()
         {"setAutoWidth", lua_TextBox_setAutoWidth},
         {"setBorder", lua_TextBox_setBorder},
         {"setBounds", lua_TextBox_setBounds},
-        {"setConsumeTouchEvents", lua_TextBox_setConsumeTouchEvents},
+        {"setConsumeInputEvents", lua_TextBox_setConsumeInputEvents},
         {"setCursorColor", lua_TextBox_setCursorColor},
         {"setCursorRegion", lua_TextBox_setCursorRegion},
         {"setFont", lua_TextBox_setFont},
@@ -1086,7 +1086,7 @@ int lua_TextBox_getClipBounds(lua_State* state)
     return 0;
 }
 
-int lua_TextBox_getConsumeTouchEvents(lua_State* state)
+int lua_TextBox_getConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -1099,7 +1099,7 @@ int lua_TextBox_getConsumeTouchEvents(lua_State* state)
             if (lua_type(state, 1) == LUA_TUSERDATA)
             {
                 TextBox* instance = getInstance(state);
-                bool result = instance->getConsumeTouchEvents();
+                bool result = instance->getConsumeInputEvents();
 
                 // Push the return value onto the stack.
                 lua_pushboolean(state, result);
@@ -2756,7 +2756,7 @@ int lua_TextBox_setBounds(lua_State* state)
     return 0;
 }
 
-int lua_TextBox_setConsumeTouchEvents(lua_State* state)
+int lua_TextBox_setConsumeInputEvents(lua_State* state)
 {
     // Get the number of parameters.
     int paramCount = lua_gettop(state);
@@ -2773,7 +2773,7 @@ int lua_TextBox_setConsumeTouchEvents(lua_State* state)
                 bool param1 = (luaL_checkint(state, 2) != 0);
 
                 TextBox* instance = getInstance(state);
-                instance->setConsumeTouchEvents(param1);
+                instance->setConsumeInputEvents(param1);
                 
                 return 0;
             }

+ 2 - 2
gameplay/src/lua/lua_TextBox.h

@@ -24,7 +24,7 @@ int lua_TextBox_getBorder(lua_State* state);
 int lua_TextBox_getBounds(lua_State* state);
 int lua_TextBox_getClip(lua_State* state);
 int lua_TextBox_getClipBounds(lua_State* state);
-int lua_TextBox_getConsumeTouchEvents(lua_State* state);
+int lua_TextBox_getConsumeInputEvents(lua_State* state);
 int lua_TextBox_getCursorColor(lua_State* state);
 int lua_TextBox_getCursorRegion(lua_State* state);
 int lua_TextBox_getCursorUVs(lua_State* state);
@@ -60,7 +60,7 @@ int lua_TextBox_setAutoHeight(lua_State* state);
 int lua_TextBox_setAutoWidth(lua_State* state);
 int lua_TextBox_setBorder(lua_State* state);
 int lua_TextBox_setBounds(lua_State* state);
-int lua_TextBox_setConsumeTouchEvents(lua_State* state);
+int lua_TextBox_setConsumeInputEvents(lua_State* state);
 int lua_TextBox_setCursorColor(lua_State* state);
 int lua_TextBox_setCursorRegion(lua_State* state);
 int lua_TextBox_setFont(lua_State* state);

+ 38 - 0
gameplay/src/lua/lua_Texture.cpp

@@ -15,6 +15,7 @@ void luaRegister_Texture()
     {
         {"addRef", lua_Texture_addRef},
         {"generateMipmaps", lua_Texture_generateMipmaps},
+        {"getFormat", lua_Texture_getFormat},
         {"getHandle", lua_Texture_getHandle},
         {"getHeight", lua_Texture_getHeight},
         {"getRefCount", lua_Texture_getRefCount},
@@ -151,6 +152,43 @@ int lua_Texture_generateMipmaps(lua_State* state)
     return 0;
 }
 
+int lua_Texture_getFormat(lua_State* state)
+{
+    // Get the number of parameters.
+    int paramCount = lua_gettop(state);
+
+    // Attempt to match the parameters to a valid binding.
+    switch (paramCount)
+    {
+        case 1:
+        {
+            if (lua_type(state, 1) == LUA_TUSERDATA)
+            {
+                Texture* instance = getInstance(state);
+                Texture::Format result = instance->getFormat();
+
+                // Push the return value onto the stack.
+                lua_pushstring(state, lua_stringFromEnum_TextureFormat(result).c_str());
+
+                return 1;
+            }
+            else
+            {
+                lua_pushstring(state, "Failed to match the given parameters to a valid function signature.");
+                lua_error(state);
+            }
+            break;
+        }
+        default:
+        {
+            lua_pushstring(state, "Invalid number of parameters (expected 1).");
+            lua_error(state);
+            break;
+        }
+    }
+    return 0;
+}
+
 int lua_Texture_getHandle(lua_State* state)
 {
     // Get the number of parameters.

+ 1 - 0
gameplay/src/lua/lua_Texture.h

@@ -8,6 +8,7 @@ namespace gameplay
 int lua_Texture__gc(lua_State* state);
 int lua_Texture_addRef(lua_State* state);
 int lua_Texture_generateMipmaps(lua_State* state);
+int lua_Texture_getFormat(lua_State* state);
 int lua_Texture_getHandle(lua_State* state);
 int lua_Texture_getHeight(lua_State* state);
 int lua_Texture_getRefCount(lua_State* state);

+ 1 - 0
gameplay/src/lua/lua_all_bindings.cpp

@@ -67,6 +67,7 @@ void lua_RegisterAllBindings()
     luaRegister_PhysicsCollisionShapeDefinition();
     luaRegister_PhysicsConstraint();
     luaRegister_PhysicsController();
+    luaRegister_PhysicsControllerHitFilter();
     luaRegister_PhysicsControllerHitResult();
     luaRegister_PhysicsControllerListener();
     luaRegister_PhysicsFixedConstraint();

+ 1 - 0
gameplay/src/lua/lua_all_bindings.h

@@ -62,6 +62,7 @@
 #include "lua_PhysicsCollisionShapeDefinition.h"
 #include "lua_PhysicsConstraint.h"
 #include "lua_PhysicsController.h"
+#include "lua_PhysicsControllerHitFilter.h"
 #include "lua_PhysicsControllerHitResult.h"
 #include "lua_PhysicsControllerListener.h"
 #include "lua_PhysicsFixedConstraint.h"