Bladeren bron

More code cleanup, documentation, polycode build tool fixes and player fixes

Ivan Safrin 14 jaren geleden
bovenliggende
commit
ea513e36b8
100 gewijzigde bestanden met toevoegingen van 3365 en 1002 verwijderingen
  1. 1 0
      .gitignore
  2. 693 434
      Bindings/Build/Mac OS X/Bindings.xcodeproj/project.xcworkspace/xcuserdata/ivansafrin.xcuserdatad/UserInterfaceState.xcuserstate
  3. 6 0
      Bindings/Contents/LUA/API/Polycode/BezierCurve.lua
  4. 12 0
      Bindings/Contents/LUA/API/Polycode/BezierPathTween.lua
  5. 12 0
      Bindings/Contents/LUA/API/Polycode/Bone.lua
  6. 6 0
      Bindings/Contents/LUA/API/Polycode/BoneTrack.lua
  7. 12 0
      Bindings/Contents/LUA/API/Polycode/Camera.lua
  8. 6 0
      Bindings/Contents/LUA/API/Polycode/Color.lua
  9. 6 0
      Bindings/Contents/LUA/API/Polycode/Config.lua
  10. 6 0
      Bindings/Contents/LUA/API/Polycode/Core.lua
  11. 12 0
      Bindings/Contents/LUA/API/Polycode/CoreInput.lua
  12. 6 0
      Bindings/Contents/LUA/API/Polycode/CoreServices.lua
  13. 12 0
      Bindings/Contents/LUA/API/Polycode/Cubemap.lua
  14. 6 0
      Bindings/Contents/LUA/API/Polycode/Data.lua
  15. 6 0
      Bindings/Contents/LUA/API/Polycode/Entity.lua
  16. 6 0
      Bindings/Contents/LUA/API/Polycode/Event.lua
  17. 12 0
      Bindings/Contents/LUA/API/Polycode/EventDispatcher.lua
  18. 6 0
      Bindings/Contents/LUA/API/Polycode/EventHandler.lua
  19. 12 0
      Bindings/Contents/LUA/API/Polycode/FixedShader.lua
  20. 12 0
      Bindings/Contents/LUA/API/Polycode/FixedShaderBinding.lua
  21. 6 0
      Bindings/Contents/LUA/API/Polycode/Font.lua
  22. 6 0
      Bindings/Contents/LUA/API/Polycode/FontManager.lua
  23. 6 0
      Bindings/Contents/LUA/API/Polycode/Image.lua
  24. 39 0
      Bindings/Contents/LUA/API/Polycode/InputEvent.lua
  25. 12 0
      Bindings/Contents/LUA/API/Polycode/Label.lua
  26. 6 0
      Bindings/Contents/LUA/API/Polycode/Logger.lua
  27. 12 0
      Bindings/Contents/LUA/API/Polycode/Material.lua
  28. 6 0
      Bindings/Contents/LUA/API/Polycode/MaterialManager.lua
  29. 6 0
      Bindings/Contents/LUA/API/Polycode/Matrix4.lua
  30. 6 0
      Bindings/Contents/LUA/API/Polycode/Mesh.lua
  31. 6 0
      Bindings/Contents/LUA/API/Polycode/OSBasics.lua
  32. 6 0
      Bindings/Contents/LUA/API/Polycode/OSFILE.lua
  33. 6 0
      Bindings/Contents/LUA/API/Polycode/OSFileEntry.lua
  34. 6 0
      Bindings/Contents/LUA/API/Polycode/ObjectEntry.lua
  35. 12 0
      Bindings/Contents/LUA/API/Polycode/OpenGLCubemap.lua
  36. 6 0
      Bindings/Contents/LUA/API/Polycode/Particle.lua
  37. 6 0
      Bindings/Contents/LUA/API/Polycode/ParticleEmitter.lua
  38. 6 0
      Bindings/Contents/LUA/API/Polycode/Perlin.lua
  39. 6 0
      Bindings/Contents/LUA/API/Polycode/PolycodeModule.lua
  40. 6 0
      Bindings/Contents/LUA/API/Polycode/Polygon.lua
  41. 6 0
      Bindings/Contents/LUA/API/Polycode/Quaternion.lua
  42. 6 0
      Bindings/Contents/LUA/API/Polycode/QuaternionCurve.lua
  43. 12 0
      Bindings/Contents/LUA/API/Polycode/QuaternionTween.lua
  44. 6 0
      Bindings/Contents/LUA/API/Polycode/Rectangle.lua
  45. 6 0
      Bindings/Contents/LUA/API/Polycode/Renderer.lua
  46. 6 0
      Bindings/Contents/LUA/API/Polycode/Resource.lua
  47. 6 0
      Bindings/Contents/LUA/API/Polycode/ResourceManager.lua
  48. 12 0
      Bindings/Contents/LUA/API/Polycode/Scene.lua
  49. 12 0
      Bindings/Contents/LUA/API/Polycode/SceneEntity.lua
  50. 12 0
      Bindings/Contents/LUA/API/Polycode/SceneLabel.lua
  51. 12 0
      Bindings/Contents/LUA/API/Polycode/SceneLight.lua
  52. 12 0
      Bindings/Contents/LUA/API/Polycode/SceneLine.lua
  53. 6 0
      Bindings/Contents/LUA/API/Polycode/SceneManager.lua
  54. 12 0
      Bindings/Contents/LUA/API/Polycode/SceneMesh.lua
  55. 12 0
      Bindings/Contents/LUA/API/Polycode/SceneParticleEmitter.lua
  56. 12 0
      Bindings/Contents/LUA/API/Polycode/ScenePrimitive.lua
  57. 6 0
      Bindings/Contents/LUA/API/Polycode/SceneRenderTexture.lua
  58. 12 0
      Bindings/Contents/LUA/API/Polycode/Screen.lua
  59. 12 0
      Bindings/Contents/LUA/API/Polycode/ScreenCurve.lua
  60. 12 0
      Bindings/Contents/LUA/API/Polycode/ScreenEntity.lua
  61. 12 0
      Bindings/Contents/LUA/API/Polycode/ScreenEvent.lua
  62. 12 0
      Bindings/Contents/LUA/API/Polycode/ScreenImage.lua
  63. 12 0
      Bindings/Contents/LUA/API/Polycode/ScreenLabel.lua
  64. 12 0
      Bindings/Contents/LUA/API/Polycode/ScreenLine.lua
  65. 12 0
      Bindings/Contents/LUA/API/Polycode/ScreenManager.lua
  66. 12 0
      Bindings/Contents/LUA/API/Polycode/ScreenMesh.lua
  67. 12 0
      Bindings/Contents/LUA/API/Polycode/ScreenParticleEmitter.lua
  68. 12 0
      Bindings/Contents/LUA/API/Polycode/ScreenShape.lua
  69. 12 0
      Bindings/Contents/LUA/API/Polycode/ScreenSprite.lua
  70. 6 0
      Bindings/Contents/LUA/API/Polycode/Shader.lua
  71. 6 0
      Bindings/Contents/LUA/API/Polycode/ShaderBinding.lua
  72. 12 0
      Bindings/Contents/LUA/API/Polycode/Skeleton.lua
  73. 6 0
      Bindings/Contents/LUA/API/Polycode/SkeletonAnimation.lua
  74. 6 0
      Bindings/Contents/LUA/API/Polycode/Sound.lua
  75. 6 0
      Bindings/Contents/LUA/API/Polycode/SoundManager.lua
  76. 6 0
      Bindings/Contents/LUA/API/Polycode/String.lua
  77. 6 0
      Bindings/Contents/LUA/API/Polycode/Texture.lua
  78. 12 0
      Bindings/Contents/LUA/API/Polycode/Timer.lua
  79. 6 0
      Bindings/Contents/LUA/API/Polycode/TimerManager.lua
  80. 12 0
      Bindings/Contents/LUA/API/Polycode/Tween.lua
  81. 6 0
      Bindings/Contents/LUA/API/Polycode/TweenManager.lua
  82. 12 0
      Bindings/Contents/LUA/API/Polycode/Vector2.lua
  83. 6 0
      Bindings/Contents/LUA/API/Polycode/Vector3.lua
  84. 12 0
      Bindings/Contents/LUA/API/Polycode/Vertex.lua
  85. 6 0
      Bindings/Contents/LUA/API/Polycode/VertexBuffer.lua
  86. 238 1
      Bindings/Contents/LUA/API/defaults.lua
  87. 367 62
      Bindings/Contents/LUA/Include/PolycodeLUAWrappers.h
  88. 86 0
      Bindings/Contents/LUA/Source/PolycodeLUA.cpp
  89. BIN
      Bindings/Scripts/create_lua_library/.create_lua_library.py.swp
  90. 26 1
      Bindings/Scripts/create_lua_library/create_lua_library.py
  91. 635 291
      Core/Build/Mac OS X/PolyCore.xcodeproj/project.xcworkspace/xcuserdata/ivansafrin.xcuserdatad/UserInterfaceState.xcuserstate
  92. 4 0
      Core/Contents/Include/PolyInputEvent.h
  93. 162 0
      Modules/Build/Mac OS X/Modules.xcodeproj/project.pbxproj
  94. 204 188
      Modules/Build/Mac OS X/Modules.xcodeproj/project.xcworkspace/xcuserdata/ivansafrin.xcuserdatad/UserInterfaceState.xcuserstate
  95. 58 0
      Modules/Build/Mac OS X/Modules.xcodeproj/xcuserdata/ivansafrin.xcuserdatad/xcschemes/Polycode2DPhysicsModule.xcscheme
  96. 58 0
      Modules/Build/Mac OS X/Modules.xcodeproj/xcuserdata/ivansafrin.xcuserdatad/xcschemes/PolycodeGLSLModule.xcscheme
  97. 20 0
      Modules/Build/Mac OS X/Modules.xcodeproj/xcuserdata/ivansafrin.xcuserdatad/xcschemes/xcschememanagement.plist
  98. 20 9
      Modules/Contents/2DPhysics/Include/PolyPhysicsScreen.h
  99. 20 9
      Modules/Contents/2DPhysics/Include/PolyPhysicsScreenEntity.h
  100. 20 7
      Modules/Contents/2DPhysics/Source/PolyPhysicsScreen.cpp

+ 1 - 0
.gitignore

@@ -8,6 +8,7 @@
 *.so
 *.so
 *.pbxuser
 *.pbxuser
 *.mode1v3
 *.mode1v3
+*.swp
 
 
 Core/Build/Mac\ OS\ X/build
 Core/Build/Mac\ OS\ X/build
 IDE/Build/Mac\ OS\ X/build
 IDE/Build/Mac\ OS\ X/build

File diff suppressed because it is too large
+ 693 - 434
Bindings/Build/Mac OS X/Bindings.xcodeproj/project.xcworkspace/xcuserdata/ivansafrin.xcuserdatad/UserInterfaceState.xcuserstate


+ 6 - 0
Bindings/Contents/LUA/API/Polycode/BezierCurve.lua

@@ -87,3 +87,9 @@ function BezierCurve:rebuildBuffers()
 	local retVal =  Polycore.BezierCurve_rebuildBuffers(self.__ptr)
 	local retVal =  Polycore.BezierCurve_rebuildBuffers(self.__ptr)
 end
 end
 
 
+
+
+function BezierCurve:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_BezierCurve(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/BezierPathTween.lua

@@ -9,6 +9,12 @@ class "BezierPathTween" (Tween)
 
 
 
 
 function BezierPathTween:BezierPathTween(...)
 function BezierPathTween:BezierPathTween(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "Tween" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -26,3 +32,9 @@ function BezierPathTween:updateCustomTween()
 	local retVal =  Polycore.BezierPathTween_updateCustomTween(self.__ptr)
 	local retVal =  Polycore.BezierPathTween_updateCustomTween(self.__ptr)
 end
 end
 
 
+
+
+function BezierPathTween:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_BezierPathTween(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/Bone.lua

@@ -21,6 +21,12 @@ end
 
 
 
 
 function Bone:Bone(...)
 function Bone:Bone(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "SceneEntity" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -171,3 +177,9 @@ function Bone:getFullBaseMatrix()
 	end
 	end
 end
 end
 
 
+
+
+function Bone:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Bone(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/BoneTrack.lua

@@ -36,3 +36,9 @@ function BoneTrack:setSpeed(speed)
 	local retVal = Polycore.BoneTrack_setSpeed(self.__ptr, speed)
 	local retVal = Polycore.BoneTrack_setSpeed(self.__ptr, speed)
 end
 end
 
 
+
+
+function BoneTrack:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_BoneTrack(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/Camera.lua

@@ -9,6 +9,12 @@ class "Camera" (SceneEntity)
 
 
 
 
 function Camera:Camera(...)
 function Camera:Camera(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "SceneEntity" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -92,3 +98,9 @@ function Camera:setPostFilter(shaderName)
 	local retVal = Polycore.Camera_setPostFilter(self.__ptr, shaderName)
 	local retVal = Polycore.Camera_setPostFilter(self.__ptr, shaderName)
 end
 end
 
 
+
+
+function Camera:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Camera(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Color.lua

@@ -85,3 +85,9 @@ function Color:getUint()
 	return retVal
 	return retVal
 end
 end
 
 
+
+
+function Color:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Color(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Config.lua

@@ -57,3 +57,9 @@ function Config:getStringValue(configNamespace, key)
 	return retVal
 	return retVal
 end
 end
 
 
+
+
+function Config:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Config(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Core.lua

@@ -195,3 +195,9 @@ function Core:getUserPointer()
 	end
 	end
 end
 end
 
 
+
+
+function Core:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Core(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/CoreInput.lua

@@ -12,6 +12,12 @@ MOUSE_BUTTON3 = 2
 
 
 
 
 function CoreInput:CoreInput(...)
 function CoreInput:CoreInput(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "EventDispatcher" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -92,3 +98,9 @@ function CoreInput:createEvent(event)
 	end
 	end
 end
 end
 
 
+
+
+function CoreInput:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_CoreInput(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/CoreServices.lua

@@ -167,3 +167,9 @@ function CoreServices:getConfig()
 	end
 	end
 end
 end
 
 
+
+
+function CoreServices:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_CoreServices(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/Cubemap.lua

@@ -9,6 +9,12 @@ class "Cubemap" (Resource)
 
 
 
 
 function Cubemap:Cubemap(...)
 function Cubemap:Cubemap(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "Resource" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -22,3 +28,9 @@ function Cubemap:Cubemap(...)
 	end
 	end
 end
 end
 
 
+
+
+function Cubemap:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Cubemap(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Data.lua

@@ -49,3 +49,9 @@ function Data:getData()
 	end
 	end
 end
 end
 
 
+
+
+function Data:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Data(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Entity.lua

@@ -462,3 +462,9 @@ function Entity:setRenderer(r_enderer)
 	local retVal = Polycore.Entity_setRenderer(self.__ptr, r_enderer.__ptr)
 	local retVal = Polycore.Entity_setRenderer(self.__ptr, r_enderer.__ptr)
 end
 end
 
 
+
+
+function Entity:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Entity(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Event.lua

@@ -51,3 +51,9 @@ function Event:getEventType()
 	return retVal
 	return retVal
 end
 end
 
 
+
+
+function Event:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Event(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/EventDispatcher.lua

@@ -9,6 +9,12 @@ class "EventDispatcher" (EventHandler)
 
 
 
 
 function EventDispatcher:EventDispatcher(...)
 function EventDispatcher:EventDispatcher(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "EventHandler" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -50,3 +56,9 @@ function EventDispatcher:dispatchEventNoDelete(event, eventCode)
 	local retVal = Polycore.EventDispatcher_dispatchEventNoDelete(self.__ptr, event.__ptr, eventCode)
 	local retVal = Polycore.EventDispatcher_dispatchEventNoDelete(self.__ptr, event.__ptr, eventCode)
 end
 end
 
 
+
+
+function EventDispatcher:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_EventDispatcher(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/EventHandler.lua

@@ -22,6 +22,12 @@ end
 
 
 
 
 
 
+function EventHandler:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_EventHandler(self.__ptr)
+end
+
+
 function EventHandler:__handleEvent(event)
 function EventHandler:__handleEvent(event)
 	evt = Event("__skip_ptr__")
 	evt = Event("__skip_ptr__")
 	evt.__ptr = event
 	evt.__ptr = event

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/FixedShader.lua

@@ -9,6 +9,12 @@ class "FixedShader" (Shader)
 
 
 
 
 function FixedShader:FixedShader(...)
 function FixedShader:FixedShader(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "Shader" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -33,3 +39,9 @@ function FixedShader:createBinding()
 	end
 	end
 end
 end
 
 
+
+
+function FixedShader:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_FixedShader(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/FixedShaderBinding.lua

@@ -9,6 +9,12 @@ class "FixedShaderBinding" (ShaderBinding)
 
 
 
 
 function FixedShaderBinding:FixedShaderBinding(...)
 function FixedShaderBinding:FixedShaderBinding(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "ShaderBinding" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -45,3 +51,9 @@ function FixedShaderBinding:getDiffuseTexture()
 	end
 	end
 end
 end
 
 
+
+
+function FixedShaderBinding:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_FixedShaderBinding(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Font.lua

@@ -36,3 +36,9 @@ function Font:isValid()
 	return retVal
 	return retVal
 end
 end
 
 
+
+
+function Font:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Font(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/FontManager.lua

@@ -35,3 +35,9 @@ function FontManager:getFontByName(fontName)
 	end
 	end
 end
 end
 
 
+
+
+function FontManager:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_FontManager(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Image.lua

@@ -152,3 +152,9 @@ function Image:getPixels()
 	end
 	end
 end
 end
 
 
+
+
+function Image:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Image(self.__ptr)
+end

+ 39 - 0
Bindings/Contents/LUA/API/Polycode/InputEvent.lua

@@ -37,6 +37,12 @@ end
 
 
 
 
 function InputEvent:InputEvent(...)
 function InputEvent:InputEvent(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "Event" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -50,8 +56,41 @@ function InputEvent:InputEvent(...)
 	end
 	end
 end
 end
 
 
+function InputEvent:getMousePosition()
+	local retVal =  Polycore.InputEvent_getMousePosition(self.__ptr)
+	if Polycore.__ptr_lookup[retVal] ~= nil then
+		return Polycore.__ptr_lookup[retVal]
+	else
+		Polycore.__ptr_lookup[retVal] = Vector2("__skip_ptr__")
+		Polycore.__ptr_lookup[retVal].__ptr = retVal
+		return Polycore.__ptr_lookup[retVal]
+	end
+end
+
+function InputEvent:getKey()
+	local retVal =  Polycore.InputEvent_getKey(self.__ptr)
+	if Polycore.__ptr_lookup[retVal] ~= nil then
+		return Polycore.__ptr_lookup[retVal]
+	else
+		Polycore.__ptr_lookup[retVal] = PolyKEY("__skip_ptr__")
+		Polycore.__ptr_lookup[retVal].__ptr = retVal
+		return Polycore.__ptr_lookup[retVal]
+	end
+end
+
+function InputEvent:getMouseButton()
+	local retVal =  Polycore.InputEvent_getMouseButton(self.__ptr)
+	return retVal
+end
+
 function InputEvent:keyCode()
 function InputEvent:keyCode()
 	local retVal =  Polycore.InputEvent_keyCode(self.__ptr)
 	local retVal =  Polycore.InputEvent_keyCode(self.__ptr)
 	return retVal
 	return retVal
 end
 end
 
 
+
+
+function InputEvent:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_InputEvent(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/Label.lua

@@ -11,6 +11,12 @@ ANTIALIAS_NONE = 1
 
 
 
 
 function Label:Label(...)
 function Label:Label(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "Image" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -54,3 +60,9 @@ function Label:getFont()
 	end
 	end
 end
 end
 
 
+
+
+function Label:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Label(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Logger.lua

@@ -28,3 +28,9 @@ function Logger:logw(str)
 	local retVal = Polycore.Logger_logw(str.__ptr)
 	local retVal = Polycore.Logger_logw(str.__ptr)
 end
 end
 
 
+
+
+function Logger:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Logger(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/Material.lua

@@ -9,6 +9,12 @@ class "Material" (Resource)
 
 
 
 
 function Material:Material(...)
 function Material:Material(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "Resource" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -82,3 +88,9 @@ function Material:loadMaterial(fileName)
 	local retVal = Polycore.Material_loadMaterial(self.__ptr, fileName)
 	local retVal = Polycore.Material_loadMaterial(self.__ptr, fileName)
 end
 end
 
 
+
+
+function Material:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Material(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/MaterialManager.lua

@@ -158,3 +158,9 @@ function MaterialManager:createShaderFromXMLNode(node)
 	end
 	end
 end
 end
 
 
+
+
+function MaterialManager:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_MaterialManager(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Matrix4.lua

@@ -80,3 +80,9 @@ function Matrix4:inverseAffine()
 	end
 	end
 end
 end
 
 
+
+
+function Matrix4:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Matrix4(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Mesh.lua

@@ -146,3 +146,9 @@ function Mesh:hasVertexBuffer()
 	return retVal
 	return retVal
 end
 end
 
 
+
+
+function Mesh:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Mesh(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/OSBasics.lua

@@ -55,3 +55,9 @@ function OSBasics:removeItem(pathString)
 	local retVal = Polycore.OSBasics_removeItem(pathString)
 	local retVal = Polycore.OSBasics_removeItem(pathString)
 end
 end
 
 
+
+
+function OSBasics:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_OSBasics(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/OSFILE.lua

@@ -38,3 +38,9 @@ function OSFILE:debugDump()
 	local retVal =  Polycore.OSFILE_debugDump(self.__ptr)
 	local retVal =  Polycore.OSFILE_debugDump(self.__ptr)
 end
 end
 
 
+
+
+function OSFILE:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_OSFILE(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/OSFileEntry.lua

@@ -59,3 +59,9 @@ function OSFileEntry:OSFileEntry(...)
 	end
 	end
 end
 end
 
 
+
+
+function OSFileEntry:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_OSFileEntry(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/ObjectEntry.lua

@@ -79,3 +79,9 @@ function ObjectEntry:addChild(name)
 	end
 	end
 end
 end
 
 
+
+
+function ObjectEntry:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_ObjectEntry(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/OpenGLCubemap.lua

@@ -9,6 +9,12 @@ class "OpenGLCubemap" (Cubemap)
 
 
 
 
 function OpenGLCubemap:OpenGLCubemap(...)
 function OpenGLCubemap:OpenGLCubemap(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "Cubemap" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -33,3 +39,9 @@ function OpenGLCubemap:getTextureID()
 	end
 	end
 end
 end
 
 
+
+
+function OpenGLCubemap:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_OpenGLCubemap(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Particle.lua

@@ -71,3 +71,9 @@ function Particle:createScreenParticle(particleType, texture, particleMesh)
 	local retVal = Polycore.Particle_createScreenParticle(self.__ptr, particleType, texture.__ptr, particleMesh.__ptr)
 	local retVal = Polycore.Particle_createScreenParticle(self.__ptr, particleType, texture.__ptr, particleMesh.__ptr)
 end
 end
 
 
+
+
+function Particle:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Particle(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/ParticleEmitter.lua

@@ -144,3 +144,9 @@ function ParticleEmitter:updateEmitter()
 	local retVal =  Polycore.ParticleEmitter_updateEmitter(self.__ptr)
 	local retVal =  Polycore.ParticleEmitter_updateEmitter(self.__ptr)
 end
 end
 
 
+
+
+function ParticleEmitter:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_ParticleEmitter(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Perlin.lua

@@ -25,3 +25,9 @@ function Perlin:Get(x, y)
 	return retVal
 	return retVal
 end
 end
 
 
+
+
+function Perlin:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Perlin(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/PolycodeModule.lua

@@ -27,3 +27,9 @@ function PolycodeModule:getType()
 	return retVal
 	return retVal
 end
 end
 
 
+
+
+function PolycodeModule:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_PolycodeModule(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Polygon.lua

@@ -97,3 +97,9 @@ function Polygon:flipUVY()
 	local retVal =  Polycore.Polygon_flipUVY(self.__ptr)
 	local retVal =  Polycore.Polygon_flipUVY(self.__ptr)
 end
 end
 
 
+
+
+function Polygon:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Polygon(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Quaternion.lua

@@ -176,3 +176,9 @@ function Quaternion:createMatrix()
 	end
 	end
 end
 end
 
 
+
+
+function Quaternion:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Quaternion(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/QuaternionCurve.lua

@@ -39,3 +39,9 @@ function QuaternionCurve:recalcTangents()
 	local retVal =  Polycore.QuaternionCurve_recalcTangents(self.__ptr)
 	local retVal =  Polycore.QuaternionCurve_recalcTangents(self.__ptr)
 end
 end
 
 
+
+
+function QuaternionCurve:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_QuaternionCurve(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/QuaternionTween.lua

@@ -9,6 +9,12 @@ class "QuaternionTween" (Tween)
 
 
 
 
 function QuaternionTween:QuaternionTween(...)
 function QuaternionTween:QuaternionTween(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "Tween" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -26,3 +32,9 @@ function QuaternionTween:updateCustomTween()
 	local retVal =  Polycore.QuaternionTween_updateCustomTween(self.__ptr)
 	local retVal =  Polycore.QuaternionTween_updateCustomTween(self.__ptr)
 end
 end
 
 
+
+
+function QuaternionTween:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_QuaternionTween(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Rectangle.lua

@@ -51,3 +51,9 @@ function Rectangle:setRect(x, y, w, h)
 	local retVal = Polycore.Rectangle_setRect(self.__ptr, x, y, w, h)
 	local retVal = Polycore.Rectangle_setRect(self.__ptr, x, y, w, h)
 end
 end
 
 
+
+
+function Rectangle:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Rectangle(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Renderer.lua

@@ -417,3 +417,9 @@ function Renderer:getNumLights()
 	return retVal
 	return retVal
 end
 end
 
 
+
+
+function Renderer:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Renderer(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Resource.lua

@@ -49,3 +49,9 @@ function Resource:getResourcePath()
 	return retVal
 	return retVal
 end
 end
 
 
+
+
+function Resource:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Resource(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/ResourceManager.lua

@@ -76,3 +76,9 @@ function ResourceManager:addShaderModule(module)
 	local retVal = Polycore.ResourceManager_addShaderModule(self.__ptr, module.__ptr)
 	local retVal = Polycore.ResourceManager_addShaderModule(self.__ptr, module.__ptr)
 end
 end
 
 
+
+
+function ResourceManager:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_ResourceManager(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/Scene.lua

@@ -31,6 +31,12 @@ end
 
 
 
 
 function Scene:Scene(...)
 function Scene:Scene(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "EventDispatcher" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -219,3 +225,9 @@ function Scene:getCustomEntityByType(type)
 	end
 	end
 end
 end
 
 
+
+
+function Scene:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Scene(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/SceneEntity.lua

@@ -9,6 +9,12 @@ class "SceneEntity" (Entity)
 
 
 
 
 function SceneEntity:SceneEntity(...)
 function SceneEntity:SceneEntity(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "Entity" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -27,3 +33,9 @@ function SceneEntity:testMouseCollision(x, y)
 	return retVal
 	return retVal
 end
 end
 
 
+
+
+function SceneEntity:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_SceneEntity(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/SceneLabel.lua

@@ -9,6 +9,12 @@ class "SceneLabel" (SceneEntity)
 
 
 
 
 function SceneLabel:SceneLabel(...)
 function SceneLabel:SceneLabel(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "SceneEntity" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -46,3 +52,9 @@ function SceneLabel:Render()
 	local retVal =  Polycore.SceneLabel_Render(self.__ptr)
 	local retVal =  Polycore.SceneLabel_Render(self.__ptr)
 end
 end
 
 
+
+
+function SceneLabel:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_SceneLabel(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/SceneLight.lua

@@ -11,6 +11,12 @@ SPOT_LIGHT = 1
 
 
 
 
 function SceneLight:SceneLight(...)
 function SceneLight:SceneLight(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "SceneEntity" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -91,3 +97,9 @@ function SceneLight:getLightType()
 	return retVal
 	return retVal
 end
 end
 
 
+
+
+function SceneLight:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_SceneLight(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/SceneLine.lua

@@ -9,6 +9,12 @@ class "SceneLine" (SceneEntity)
 
 
 
 
 function SceneLine:SceneLine(...)
 function SceneLine:SceneLine(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "SceneEntity" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -26,3 +32,9 @@ function SceneLine:Render()
 	local retVal =  Polycore.SceneLine_Render(self.__ptr)
 	local retVal =  Polycore.SceneLine_Render(self.__ptr)
 end
 end
 
 
+
+
+function SceneLine:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_SceneLine(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/SceneManager.lua

@@ -40,3 +40,9 @@ function SceneManager:registerRenderTexture(r_enderTexture)
 	local retVal = Polycore.SceneManager_registerRenderTexture(self.__ptr, r_enderTexture.__ptr)
 	local retVal = Polycore.SceneManager_registerRenderTexture(self.__ptr, r_enderTexture.__ptr)
 end
 end
 
 
+
+
+function SceneManager:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_SceneManager(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/SceneMesh.lua

@@ -21,6 +21,12 @@ end
 
 
 
 
 function SceneMesh:SceneMesh(...)
 function SceneMesh:SceneMesh(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "SceneEntity" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -129,3 +135,9 @@ function SceneMesh:cacheToVertexBuffer(cache)
 	local retVal = Polycore.SceneMesh_cacheToVertexBuffer(self.__ptr, cache)
 	local retVal = Polycore.SceneMesh_cacheToVertexBuffer(self.__ptr, cache)
 end
 end
 
 
+
+
+function SceneMesh:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_SceneMesh(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/SceneParticleEmitter.lua

@@ -9,6 +9,12 @@ class "SceneParticleEmitter" (SceneEntity)
 
 
 
 
 function SceneParticleEmitter:SceneParticleEmitter(...)
 function SceneParticleEmitter:SceneParticleEmitter(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "SceneEntity" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -41,3 +47,9 @@ function SceneParticleEmitter:Update()
 	local retVal =  Polycore.SceneParticleEmitter_Update(self.__ptr)
 	local retVal =  Polycore.SceneParticleEmitter_Update(self.__ptr)
 end
 end
 
 
+
+
+function SceneParticleEmitter:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_SceneParticleEmitter(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/ScenePrimitive.lua

@@ -12,6 +12,12 @@ TYPE_SPHERE = 2
 
 
 
 
 function ScenePrimitive:ScenePrimitive(...)
 function ScenePrimitive:ScenePrimitive(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "SceneMesh" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -25,3 +31,9 @@ function ScenePrimitive:ScenePrimitive(...)
 	end
 	end
 end
 end
 
 
+
+
+function ScenePrimitive:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_ScenePrimitive(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/SceneRenderTexture.lua

@@ -57,3 +57,9 @@ function SceneRenderTexture:getTargetCamera()
 	end
 	end
 end
 end
 
 
+
+
+function SceneRenderTexture:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_SceneRenderTexture(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/Screen.lua

@@ -21,6 +21,12 @@ end
 
 
 
 
 function Screen:Screen(...)
 function Screen:Screen(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "EventDispatcher" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -154,3 +160,9 @@ function Screen:getRootEntity()
 	end
 	end
 end
 end
 
 
+
+
+function Screen:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Screen(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/ScreenCurve.lua

@@ -9,6 +9,12 @@ class "ScreenCurve" (ScreenShape)
 
 
 
 
 function ScreenCurve:ScreenCurve(...)
 function ScreenCurve:ScreenCurve(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "ScreenShape" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -22,3 +28,9 @@ function ScreenCurve:ScreenCurve(...)
 	end
 	end
 end
 end
 
 
+
+
+function ScreenCurve:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_ScreenCurve(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/ScreenEntity.lua

@@ -38,6 +38,12 @@ end
 
 
 
 
 function ScreenEntity:ScreenEntity(...)
 function ScreenEntity:ScreenEntity(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "Entity" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -220,3 +226,9 @@ function ScreenEntity:isFocusable()
 	return retVal
 	return retVal
 end
 end
 
 
+
+
+function ScreenEntity:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_ScreenEntity(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/ScreenEvent.lua

@@ -13,6 +13,12 @@ ENTITY_MOVE_DOWN = 3
 
 
 
 
 function ScreenEvent:ScreenEvent(...)
 function ScreenEvent:ScreenEvent(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "Event" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -26,3 +32,9 @@ function ScreenEvent:ScreenEvent(...)
 	end
 	end
 end
 end
 
 
+
+
+function ScreenEvent:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_ScreenEvent(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/ScreenImage.lua

@@ -9,6 +9,12 @@ class "ScreenImage" (ScreenShape)
 
 
 
 
 function ScreenImage:ScreenImage(...)
 function ScreenImage:ScreenImage(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "ScreenShape" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -36,3 +42,9 @@ function ScreenImage:getImageHeight()
 	return retVal
 	return retVal
 end
 end
 
 
+
+
+function ScreenImage:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_ScreenImage(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/ScreenLabel.lua

@@ -9,6 +9,12 @@ class "ScreenLabel" (ScreenShape)
 
 
 
 
 function ScreenLabel:ScreenLabel(...)
 function ScreenLabel:ScreenLabel(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "ScreenShape" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -46,3 +52,9 @@ function ScreenLabel:getLabel()
 	end
 	end
 end
 end
 
 
+
+
+function ScreenLabel:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_ScreenLabel(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/ScreenLine.lua

@@ -9,6 +9,12 @@ class "ScreenLine" (ScreenEntity)
 
 
 
 
 function ScreenLine:ScreenLine(...)
 function ScreenLine:ScreenLine(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "ScreenEntity" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -34,3 +40,9 @@ function ScreenLine:setLineWidth(width)
 	local retVal = Polycore.ScreenLine_setLineWidth(self.__ptr, width)
 	local retVal = Polycore.ScreenLine_setLineWidth(self.__ptr, width)
 end
 end
 
 
+
+
+function ScreenLine:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_ScreenLine(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/ScreenManager.lua

@@ -9,6 +9,12 @@ class "ScreenManager" (EventDispatcher)
 
 
 
 
 function ScreenManager:ScreenManager(...)
 function ScreenManager:ScreenManager(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "EventDispatcher" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -34,3 +40,9 @@ function ScreenManager:Update()
 	local retVal =  Polycore.ScreenManager_Update(self.__ptr)
 	local retVal =  Polycore.ScreenManager_Update(self.__ptr)
 end
 end
 
 
+
+
+function ScreenManager:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_ScreenManager(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/ScreenMesh.lua

@@ -9,6 +9,12 @@ class "ScreenMesh" (ScreenEntity)
 
 
 
 
 function ScreenMesh:ScreenMesh(...)
 function ScreenMesh:ScreenMesh(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "ScreenEntity" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -56,3 +62,9 @@ function ScreenMesh:setTexture(texture)
 	local retVal = Polycore.ScreenMesh_setTexture(self.__ptr, texture.__ptr)
 	local retVal = Polycore.ScreenMesh_setTexture(self.__ptr, texture.__ptr)
 end
 end
 
 
+
+
+function ScreenMesh:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_ScreenMesh(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/ScreenParticleEmitter.lua

@@ -9,6 +9,12 @@ class "ScreenParticleEmitter" (ScreenEntity)
 
 
 
 
 function ScreenParticleEmitter:ScreenParticleEmitter(...)
 function ScreenParticleEmitter:ScreenParticleEmitter(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "ScreenEntity" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -41,3 +47,9 @@ function ScreenParticleEmitter:Update()
 	local retVal =  Polycore.ScreenParticleEmitter_Update(self.__ptr)
 	local retVal =  Polycore.ScreenParticleEmitter_Update(self.__ptr)
 end
 end
 
 
+
+
+function ScreenParticleEmitter:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_ScreenParticleEmitter(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/ScreenShape.lua

@@ -29,6 +29,12 @@ end
 
 
 
 
 function ScreenShape:ScreenShape(...)
 function ScreenShape:ScreenShape(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "ScreenMesh" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -70,3 +76,9 @@ function ScreenShape:addShapePoint(x, y)
 	local retVal = Polycore.ScreenShape_addShapePoint(self.__ptr, x, y)
 	local retVal = Polycore.ScreenShape_addShapePoint(self.__ptr, x, y)
 end
 end
 
 
+
+
+function ScreenShape:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_ScreenShape(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/ScreenSprite.lua

@@ -9,6 +9,12 @@ class "ScreenSprite" (ScreenShape)
 
 
 
 
 function ScreenSprite:ScreenSprite(...)
 function ScreenSprite:ScreenSprite(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "ScreenShape" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -34,3 +40,9 @@ function ScreenSprite:Update()
 	local retVal =  Polycore.ScreenSprite_Update(self.__ptr)
 	local retVal =  Polycore.ScreenSprite_Update(self.__ptr)
 end
 end
 
 
+
+
+function ScreenSprite:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_ScreenSprite(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Shader.lua

@@ -35,3 +35,9 @@ function Shader:createBinding()
 	end
 	end
 end
 end
 
 
+
+
+function Shader:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Shader(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/ShaderBinding.lua

@@ -115,3 +115,9 @@ function ShaderBinding:getOutTargetBinding(index)
 	end
 	end
 end
 end
 
 
+
+
+function ShaderBinding:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_ShaderBinding(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/Skeleton.lua

@@ -9,6 +9,12 @@ class "Skeleton" (SceneEntity)
 
 
 
 
 function Skeleton:Skeleton(...)
 function Skeleton:Skeleton(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "SceneEntity" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -99,3 +105,9 @@ function Skeleton:getCurrentAnimation()
 	end
 	end
 end
 end
 
 
+
+
+function Skeleton:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Skeleton(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/SkeletonAnimation.lua

@@ -45,3 +45,9 @@ function SkeletonAnimation:setSpeed(speed)
 	local retVal = Polycore.SkeletonAnimation_setSpeed(self.__ptr, speed)
 	local retVal = Polycore.SkeletonAnimation_setSpeed(self.__ptr, speed)
 end
 end
 
 
+
+
+function SkeletonAnimation:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_SkeletonAnimation(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Sound.lua

@@ -73,3 +73,9 @@ function Sound:soundCheck(result, err)
 	local retVal = Polycore.Sound_soundCheck(self.__ptr, result, err)
 	local retVal = Polycore.Sound_soundCheck(self.__ptr, result, err)
 end
 end
 
 
+
+
+function Sound:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Sound(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/SoundManager.lua

@@ -24,3 +24,9 @@ function SoundManager:initAL()
 	local retVal =  Polycore.SoundManager_initAL(self.__ptr)
 	local retVal =  Polycore.SoundManager_initAL(self.__ptr)
 end
 end
 
 
+
+
+function SoundManager:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_SoundManager(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/String.lua

@@ -146,3 +146,9 @@ function String:setDataWithEncoding(data, encoding)
 	local retVal = Polycore.String_setDataWithEncoding(self.__ptr, data.__ptr, encoding)
 	local retVal = Polycore.String_setDataWithEncoding(self.__ptr, data.__ptr, encoding)
 end
 end
 
 
+
+
+function String:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_String(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Texture.lua

@@ -86,3 +86,9 @@ function Texture:getHeight()
 	return retVal
 	return retVal
 end
 end
 
 
+
+
+function Texture:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Texture(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/Timer.lua

@@ -10,6 +10,12 @@ EVENT_TRIGGER = 0
 
 
 
 
 function Timer:Timer(...)
 function Timer:Timer(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "EventDispatcher" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -55,3 +61,9 @@ function Timer:getElapsedf()
 	return retVal
 	return retVal
 end
 end
 
 
+
+
+function Timer:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Timer(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/TimerManager.lua

@@ -32,3 +32,9 @@ function TimerManager:Update()
 	local retVal =  Polycore.TimerManager_Update(self.__ptr)
 	local retVal =  Polycore.TimerManager_Update(self.__ptr)
 end
 end
 
 
+
+
+function TimerManager:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_TimerManager(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/Tween.lua

@@ -46,6 +46,12 @@ end
 
 
 
 
 function Tween:Tween(...)
 function Tween:Tween(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "EventDispatcher" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -89,3 +95,9 @@ function Tween:setSpeed(speed)
 	local retVal = Polycore.Tween_setSpeed(self.__ptr, speed)
 	local retVal = Polycore.Tween_setSpeed(self.__ptr, speed)
 end
 end
 
 
+
+
+function Tween:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Tween(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/TweenManager.lua

@@ -28,3 +28,9 @@ function TweenManager:Update()
 	local retVal =  Polycore.TweenManager_Update(self.__ptr)
 	local retVal =  Polycore.TweenManager_Update(self.__ptr)
 end
 end
 
 
+
+
+function TweenManager:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_TweenManager(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/Vector2.lua

@@ -9,6 +9,12 @@ class "Vector2" (Vector3)
 
 
 
 
 function Vector2:Vector2(...)
 function Vector2:Vector2(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "Vector3" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -22,3 +28,9 @@ function Vector2:Vector2(...)
 	end
 	end
 end
 end
 
 
+
+
+function Vector2:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Vector2(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/Vector3.lua

@@ -76,3 +76,9 @@ function Vector3:Normalize()
 	local retVal =  Polycore.Vector3_Normalize(self.__ptr)
 	local retVal =  Polycore.Vector3_Normalize(self.__ptr)
 end
 end
 
 
+
+
+function Vector3:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Vector3(self.__ptr)
+end

+ 12 - 0
Bindings/Contents/LUA/API/Polycode/Vertex.lua

@@ -21,6 +21,12 @@ end
 
 
 
 
 function Vertex:Vertex(...)
 function Vertex:Vertex(...)
+	if type(arg[1]) == "table" and count(arg) == 1 then
+		if ""..arg[1]:class() == "Vector3" then
+			self.__ptr = arg[1].__ptr
+			return
+		end
+	end
 	for k,v in pairs(arg) do
 	for k,v in pairs(arg) do
 		if type(v) == "table" then
 		if type(v) == "table" then
 			if v.__ptr ~= nil then
 			if v.__ptr ~= nil then
@@ -77,3 +83,9 @@ function Vertex:setNormal(x, y, z)
 	local retVal = Polycore.Vertex_setNormal(self.__ptr, x, y, z)
 	local retVal = Polycore.Vertex_setNormal(self.__ptr, x, y, z)
 end
 end
 
 
+
+
+function Vertex:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_Vertex(self.__ptr)
+end

+ 6 - 0
Bindings/Contents/LUA/API/Polycode/VertexBuffer.lua

@@ -42,3 +42,9 @@ function VertexBuffer:getVertexCount()
 	return retVal
 	return retVal
 end
 end
 
 
+
+
+function VertexBuffer:__delete()
+	Polycore.__ptr_lookup[self.__ptr] = nil
+	Polycore.delete_VertexBuffer(self.__ptr)
+end

+ 238 - 1
Bindings/Contents/LUA/API/defaults.lua

@@ -2,6 +2,8 @@
 for k,v in pairs(math) do _G[k]=v end for k,v in pairs(table) do _G[k]=v end
 for k,v in pairs(math) do _G[k]=v end for k,v in pairs(table) do _G[k]=v end
 _G["count"]=_G["getn"]
 _G["count"]=_G["getn"]
 
 
+_G["print"] = _G["debugPrint"]
+
 Polycore.__ptr_lookup = {}
 Polycore.__ptr_lookup = {}
 
 
 Services = {}
 Services = {}
@@ -36,9 +38,244 @@ Services.SoundManager.__ptr = Polycore.CoreServices_getSoundManager(Polycore.Cor
 Services.FontManager = FontManager("__skip_ptr__")
 Services.FontManager = FontManager("__skip_ptr__")
 Services.FontManager.__ptr = Polycore.CoreServices_getFontManager(Polycore.CoreServices_getInstance())
 Services.FontManager.__ptr = Polycore.CoreServices_getFontManager(Polycore.CoreServices_getInstance())
 
 
-
+function delete(c)
+	c:__delete()
+end
 
 
 
 
 function Update(e)
 function Update(e)
 end
 end
 
 
+KEY_UNKNOWN= 0
+KEY_FIRST= 0
+KEY_BACKSPACE= 8
+KEY_TAB= 9
+KEY_CLEAR= 12
+KEY_RETURN= 13
+KEY_PAUSE= 19
+KEY_ESCAPE= 27
+KEY_SPACE= 32
+KEY_EXCLAIM= 33
+KEY_QUOTEDBL= 34
+KEY_HASH= 35
+KEY_DOLLAR= 36
+KEY_AMPERSAND= 38
+KEY_QUOTE= 39
+KEY_LEFTPAREN= 40
+KEY_RIGHTPAREN= 41
+KEY_ASTERISK= 42
+KEY_PLUS= 43
+KEY_COMMA= 44
+KEY_MINUS= 45
+KEY_PERIOD= 46
+KEY_SLASH= 47
+KEY_0= 48
+KEY_1= 49
+KEY_2= 50
+KEY_3= 51
+KEY_4= 52
+KEY_5= 53
+KEY_6= 54
+KEY_7= 55
+KEY_8= 56
+KEY_9= 57
+KEY_COLON= 58
+KEY_SEMICOLON= 59
+KEY_LESS= 60
+KEY_EQUALS= 61
+KEY_GREATER= 62
+KEY_QUESTION= 63
+KEY_AT= 64
+KEY_LEFTBRACKET= 91
+KEY_BACKSLASH= 92
+KEY_RIGHTBRACKET= 93
+KEY_CARET= 94
+KEY_UNDERSCORE= 95
+KEY_BACKQUOTE= 96
+KEY_a= 97
+KEY_b= 98
+KEY_c= 99
+KEY_d= 100
+KEY_e= 101
+KEY_f= 102
+KEY_g= 103
+KEY_h= 104
+KEY_i= 105
+KEY_j= 106
+KEY_k= 107
+KEY_l= 108
+KEY_m= 109
+KEY_n= 110
+KEY_o= 111
+KEY_p= 112
+KEY_q= 113
+KEY_r= 114
+KEY_s= 115
+KEY_t= 116
+KEY_u= 117
+KEY_v= 118
+KEY_w= 119
+KEY_x= 120
+KEY_y= 121
+KEY_z= 122
+KEY_DELETE= 127
+KEY_WORLD_0= 160
+KEY_WORLD_1= 161
+KEY_WORLD_2= 162
+KEY_WORLD_3= 163
+KEY_WORLD_4= 164
+KEY_WORLD_5= 165
+KEY_WORLD_6= 166
+KEY_WORLD_7= 167
+KEY_WORLD_8= 168
+KEY_WORLD_9= 169
+KEY_WORLD_10= 170
+KEY_WORLD_11= 171
+KEY_WORLD_12= 172
+KEY_WORLD_13= 173
+KEY_WORLD_14= 174
+KEY_WORLD_15= 175
+KEY_WORLD_16= 176
+KEY_WORLD_17= 177
+KEY_WORLD_18= 178
+KEY_WORLD_19= 179
+KEY_WORLD_20= 180
+KEY_WORLD_21= 181
+KEY_WORLD_22= 182
+KEY_WORLD_23= 183
+KEY_WORLD_24= 184
+KEY_WORLD_25= 185
+KEY_WORLD_26= 186
+KEY_WORLD_27= 187
+KEY_WORLD_28= 188
+KEY_WORLD_29= 189
+KEY_WORLD_30= 190
+KEY_WORLD_31= 191
+KEY_WORLD_32= 192
+KEY_WORLD_33= 193
+KEY_WORLD_34= 194
+KEY_WORLD_35= 195
+KEY_WORLD_36= 196
+KEY_WORLD_37= 197
+KEY_WORLD_38= 198
+KEY_WORLD_39= 199
+KEY_WORLD_40= 200
+KEY_WORLD_41= 201
+KEY_WORLD_42= 202
+KEY_WORLD_43= 203
+KEY_WORLD_44= 204
+KEY_WORLD_45= 205
+KEY_WORLD_46= 206
+KEY_WORLD_47= 207
+KEY_WORLD_48= 208
+KEY_WORLD_49= 209
+KEY_WORLD_50= 210
+KEY_WORLD_51= 211
+KEY_WORLD_52= 212
+KEY_WORLD_53= 213
+KEY_WORLD_54= 214
+KEY_WORLD_55= 215
+KEY_WORLD_56= 216
+KEY_WORLD_57= 217
+KEY_WORLD_58= 218
+KEY_WORLD_59= 219
+KEY_WORLD_60= 220
+KEY_WORLD_61= 221
+KEY_WORLD_62= 222
+KEY_WORLD_63= 223
+KEY_WORLD_64= 224
+KEY_WORLD_65= 225
+KEY_WORLD_66= 226
+KEY_WORLD_67= 227
+KEY_WORLD_68= 228
+KEY_WORLD_69= 229
+KEY_WORLD_70= 230
+KEY_WORLD_71= 231
+KEY_WORLD_72= 232
+KEY_WORLD_73= 233
+KEY_WORLD_74= 234
+KEY_WORLD_75= 235
+KEY_WORLD_76= 236
+KEY_WORLD_77= 237
+KEY_WORLD_78= 238
+KEY_WORLD_79= 239
+KEY_WORLD_80= 240
+KEY_WORLD_81= 241
+KEY_WORLD_82= 242
+KEY_WORLD_83= 243
+KEY_WORLD_84= 244
+KEY_WORLD_85= 245
+KEY_WORLD_86= 246
+KEY_WORLD_87= 247
+KEY_WORLD_88= 248
+KEY_WORLD_89= 249
+KEY_WORLD_90= 250
+KEY_WORLD_91= 251
+KEY_WORLD_92= 252
+KEY_WORLD_93= 253
+KEY_WORLD_94= 254
+KEY_WORLD_95= 255
+KEY_KP0= 256
+KEY_KP1= 257
+KEY_KP2= 258
+KEY_KP3= 259
+KEY_KP4= 260
+KEY_KP5= 261
+KEY_KP6= 262
+KEY_KP7= 263
+KEY_KP8= 264
+KEY_KP9= 265
+KEY_KP_PERIOD= 266
+KEY_KP_DIVIDE= 267
+KEY_KP_MULTIPLY= 268
+KEY_KP_MINUS= 269
+KEY_KP_PLUS= 270
+KEY_KP_ENTER= 271
+KEY_KP_EQUALS= 272
+KEY_UP= 273
+KEY_DOWN= 274
+KEY_RIGHT= 275
+KEY_LEFT= 276
+KEY_INSERT= 277
+KEY_HOME= 278
+KEY_END= 279
+KEY_PAGEUP= 280
+KEY_PAGEDOWN= 281
+KEY_F1= 282
+KEY_F2= 283
+KEY_F3= 284
+KEY_F4= 285
+KEY_F5= 286
+KEY_F6= 287
+KEY_F7= 288
+KEY_F8= 289
+KEY_F9= 290
+KEY_F10= 291
+KEY_F11= 292
+KEY_F12= 293
+KEY_F13= 294
+KEY_F14= 295
+KEY_F15= 296
+KEY_NUMLOCK= 300
+KEY_CAPSLOCK= 301
+KEY_SCROLLOCK= 302
+KEY_RSHIFT= 303
+KEY_LSHIFT= 304
+KEY_RCTRL= 305
+KEY_LCTRL= 306
+KEY_RALT= 307
+KEY_LALT= 308
+KEY_RMETA= 309
+KEY_LMETA= 310
+KEY_LSUPER= 311
+KEY_RSUPER= 312
+KEY_MODE= 313
+KEY_COMPOSE= 314
+KEY_HELP= 315
+KEY_PRINT= 316
+KEY_SYSREQ= 317
+KEY_BREAK= 318
+KEY_MENU= 319
+KEY_POWER= 320
+KEY_EURO= 321
+KEY_UNDO= 322

File diff suppressed because it is too large
+ 367 - 62
Bindings/Contents/LUA/Include/PolycodeLUAWrappers.h


+ 86 - 0
Bindings/Contents/LUA/Source/PolycodeLUA.cpp

@@ -6,6 +6,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"OSFILE_set_fileType", Polycore_OSFILE_set_fileType},
 		{"OSFILE_set_fileType", Polycore_OSFILE_set_fileType},
 		{"OSFILE", Polycore_OSFILE},
 		{"OSFILE", Polycore_OSFILE},
 		{"OSFILE_debugDump", Polycore_OSFILE_debugDump},
 		{"OSFILE_debugDump", Polycore_OSFILE_debugDump},
+		{"delete_OSFILE", Polycore_delete_OSFILE},
 		{"OSFileEntry_get_name", Polycore_OSFileEntry_get_name},
 		{"OSFileEntry_get_name", Polycore_OSFileEntry_get_name},
 		{"OSFileEntry_get_extension", Polycore_OSFileEntry_get_extension},
 		{"OSFileEntry_get_extension", Polycore_OSFileEntry_get_extension},
 		{"OSFileEntry_get_nameWithoutExtension", Polycore_OSFileEntry_get_nameWithoutExtension},
 		{"OSFileEntry_get_nameWithoutExtension", Polycore_OSFileEntry_get_nameWithoutExtension},
@@ -19,6 +20,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"OSFileEntry_set_fullPath", Polycore_OSFileEntry_set_fullPath},
 		{"OSFileEntry_set_fullPath", Polycore_OSFileEntry_set_fullPath},
 		{"OSFileEntry_set_type", Polycore_OSFileEntry_set_type},
 		{"OSFileEntry_set_type", Polycore_OSFileEntry_set_type},
 		{"OSFileEntry", Polycore_OSFileEntry},
 		{"OSFileEntry", Polycore_OSFileEntry},
+		{"delete_OSFileEntry", Polycore_delete_OSFileEntry},
 		{"OSBasics_open", Polycore_OSBasics_open},
 		{"OSBasics_open", Polycore_OSBasics_open},
 		{"OSBasics_close", Polycore_OSBasics_close},
 		{"OSBasics_close", Polycore_OSBasics_close},
 		{"OSBasics_read", Polycore_OSBasics_read},
 		{"OSBasics_read", Polycore_OSBasics_read},
@@ -28,6 +30,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"OSBasics_isFolder", Polycore_OSBasics_isFolder},
 		{"OSBasics_isFolder", Polycore_OSBasics_isFolder},
 		{"OSBasics_createFolder", Polycore_OSBasics_createFolder},
 		{"OSBasics_createFolder", Polycore_OSBasics_createFolder},
 		{"OSBasics_removeItem", Polycore_OSBasics_removeItem},
 		{"OSBasics_removeItem", Polycore_OSBasics_removeItem},
+		{"delete_OSBasics", Polycore_delete_OSBasics},
 		{"BezierCurve", Polycore_BezierCurve},
 		{"BezierCurve", Polycore_BezierCurve},
 		{"BezierCurve_getControlPoint", Polycore_BezierCurve_getControlPoint},
 		{"BezierCurve_getControlPoint", Polycore_BezierCurve_getControlPoint},
 		{"BezierCurve_getNumControlPoints", Polycore_BezierCurve_getNumControlPoints},
 		{"BezierCurve_getNumControlPoints", Polycore_BezierCurve_getNumControlPoints},
@@ -40,6 +43,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"BezierCurve_getPointAt", Polycore_BezierCurve_getPointAt},
 		{"BezierCurve_getPointAt", Polycore_BezierCurve_getPointAt},
 		{"BezierCurve_getPointBetween", Polycore_BezierCurve_getPointBetween},
 		{"BezierCurve_getPointBetween", Polycore_BezierCurve_getPointBetween},
 		{"BezierCurve_rebuildBuffers", Polycore_BezierCurve_rebuildBuffers},
 		{"BezierCurve_rebuildBuffers", Polycore_BezierCurve_rebuildBuffers},
+		{"delete_BezierCurve", Polycore_delete_BezierCurve},
 		{"Bone_get_parentBoneId", Polycore_Bone_get_parentBoneId},
 		{"Bone_get_parentBoneId", Polycore_Bone_get_parentBoneId},
 		{"Bone_set_parentBoneId", Polycore_Bone_set_parentBoneId},
 		{"Bone_set_parentBoneId", Polycore_Bone_set_parentBoneId},
 		{"Bone", Polycore_Bone},
 		{"Bone", Polycore_Bone},
@@ -61,6 +65,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"Bone_setBaseMatrix", Polycore_Bone_setBaseMatrix},
 		{"Bone_setBaseMatrix", Polycore_Bone_setBaseMatrix},
 		{"Bone_getBaseMatrix", Polycore_Bone_getBaseMatrix},
 		{"Bone_getBaseMatrix", Polycore_Bone_getBaseMatrix},
 		{"Bone_getFullBaseMatrix", Polycore_Bone_getFullBaseMatrix},
 		{"Bone_getFullBaseMatrix", Polycore_Bone_getFullBaseMatrix},
+		{"delete_Bone", Polycore_delete_Bone},
 		{"Camera", Polycore_Camera},
 		{"Camera", Polycore_Camera},
 		{"Camera_buildFrustrumPlanes", Polycore_Camera_buildFrustrumPlanes},
 		{"Camera_buildFrustrumPlanes", Polycore_Camera_buildFrustrumPlanes},
 		{"Camera_isSphereInFrustrum", Polycore_Camera_isSphereInFrustrum},
 		{"Camera_isSphereInFrustrum", Polycore_Camera_isSphereInFrustrum},
@@ -78,6 +83,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"Camera_getExposureLevel", Polycore_Camera_getExposureLevel},
 		{"Camera_getExposureLevel", Polycore_Camera_getExposureLevel},
 		{"Camera_createPostFilter", Polycore_Camera_createPostFilter},
 		{"Camera_createPostFilter", Polycore_Camera_createPostFilter},
 		{"Camera_setPostFilter", Polycore_Camera_setPostFilter},
 		{"Camera_setPostFilter", Polycore_Camera_setPostFilter},
+		{"delete_Camera", Polycore_delete_Camera},
 		{"Color_get_r", Polycore_Color_get_r},
 		{"Color_get_r", Polycore_Color_get_r},
 		{"Color_get_g", Polycore_Color_get_g},
 		{"Color_get_g", Polycore_Color_get_g},
 		{"Color_get_b", Polycore_Color_get_b},
 		{"Color_get_b", Polycore_Color_get_b},
@@ -96,6 +102,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"Color_Random", Polycore_Color_Random},
 		{"Color_Random", Polycore_Color_Random},
 		{"Color_getBrightness", Polycore_Color_getBrightness},
 		{"Color_getBrightness", Polycore_Color_getBrightness},
 		{"Color_getUint", Polycore_Color_getUint},
 		{"Color_getUint", Polycore_Color_getUint},
+		{"delete_Color", Polycore_delete_Color},
 		{"Config", Polycore_Config},
 		{"Config", Polycore_Config},
 		{"Config_loadConfig", Polycore_Config_loadConfig},
 		{"Config_loadConfig", Polycore_Config_loadConfig},
 		{"Config_saveConfig", Polycore_Config_saveConfig},
 		{"Config_saveConfig", Polycore_Config_saveConfig},
@@ -104,6 +111,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"Config_setNumericValue", Polycore_Config_setNumericValue},
 		{"Config_setNumericValue", Polycore_Config_setNumericValue},
 		{"Config_getNumericValue", Polycore_Config_getNumericValue},
 		{"Config_getNumericValue", Polycore_Config_getNumericValue},
 		{"Config_getStringValue", Polycore_Config_getStringValue},
 		{"Config_getStringValue", Polycore_Config_getStringValue},
+		{"delete_Config", Polycore_delete_Config},
 		{"Core_Update", Polycore_Core_Update},
 		{"Core_Update", Polycore_Core_Update},
 		{"Core_enableMouse", Polycore_Core_enableMouse},
 		{"Core_enableMouse", Polycore_Core_enableMouse},
 		{"Core_setCursor", Polycore_Core_setCursor},
 		{"Core_setCursor", Polycore_Core_setCursor},
@@ -136,6 +144,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"Core_getTicksFloat", Polycore_Core_getTicksFloat},
 		{"Core_getTicksFloat", Polycore_Core_getTicksFloat},
 		{"Core_setUserPointer", Polycore_Core_setUserPointer},
 		{"Core_setUserPointer", Polycore_Core_setUserPointer},
 		{"Core_getUserPointer", Polycore_Core_getUserPointer},
 		{"Core_getUserPointer", Polycore_Core_getUserPointer},
+		{"delete_Core", Polycore_delete_Core},
 		{"CoreInput", Polycore_CoreInput},
 		{"CoreInput", Polycore_CoreInput},
 		{"CoreInput_getMousePosition", Polycore_CoreInput_getMousePosition},
 		{"CoreInput_getMousePosition", Polycore_CoreInput_getMousePosition},
 		{"CoreInput_getKeyState", Polycore_CoreInput_getKeyState},
 		{"CoreInput_getKeyState", Polycore_CoreInput_getKeyState},
@@ -148,6 +157,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"CoreInput_setKeyState", Polycore_CoreInput_setKeyState},
 		{"CoreInput_setKeyState", Polycore_CoreInput_setKeyState},
 		{"CoreInput_setDeltaPosition", Polycore_CoreInput_setDeltaPosition},
 		{"CoreInput_setDeltaPosition", Polycore_CoreInput_setDeltaPosition},
 		{"CoreInput_createEvent", Polycore_CoreInput_createEvent},
 		{"CoreInput_createEvent", Polycore_CoreInput_createEvent},
+		{"delete_CoreInput", Polycore_delete_CoreInput},
 		{"CoreServices_getInstance", Polycore_CoreServices_getInstance},
 		{"CoreServices_getInstance", Polycore_CoreServices_getInstance},
 		{"CoreServices_getRenderMutex", Polycore_CoreServices_getRenderMutex},
 		{"CoreServices_getRenderMutex", Polycore_CoreServices_getRenderMutex},
 		{"CoreServices_setRenderer", Polycore_CoreServices_setRenderer},
 		{"CoreServices_setRenderer", Polycore_CoreServices_setRenderer},
@@ -165,13 +175,16 @@ int luaopen_Polycode(lua_State *L) {
 		{"CoreServices_getSoundManager", Polycore_CoreServices_getSoundManager},
 		{"CoreServices_getSoundManager", Polycore_CoreServices_getSoundManager},
 		{"CoreServices_getFontManager", Polycore_CoreServices_getFontManager},
 		{"CoreServices_getFontManager", Polycore_CoreServices_getFontManager},
 		{"CoreServices_getConfig", Polycore_CoreServices_getConfig},
 		{"CoreServices_getConfig", Polycore_CoreServices_getConfig},
+		{"delete_CoreServices", Polycore_delete_CoreServices},
 		{"Cubemap", Polycore_Cubemap},
 		{"Cubemap", Polycore_Cubemap},
+		{"delete_Cubemap", Polycore_delete_Cubemap},
 		{"Data", Polycore_Data},
 		{"Data", Polycore_Data},
 		{"Data_loadFromFile", Polycore_Data_loadFromFile},
 		{"Data_loadFromFile", Polycore_Data_loadFromFile},
 		{"Data_getAsString", Polycore_Data_getAsString},
 		{"Data_getAsString", Polycore_Data_getAsString},
 		{"Data_setFromString", Polycore_Data_setFromString},
 		{"Data_setFromString", Polycore_Data_setFromString},
 		{"Data_saveToFile", Polycore_Data_saveToFile},
 		{"Data_saveToFile", Polycore_Data_saveToFile},
 		{"Data_getData", Polycore_Data_getData},
 		{"Data_getData", Polycore_Data_getData},
+		{"delete_Data", Polycore_delete_Data},
 		{"Entity_get_custEntityType", Polycore_Entity_get_custEntityType},
 		{"Entity_get_custEntityType", Polycore_Entity_get_custEntityType},
 		{"Entity_get_billboardMode", Polycore_Entity_get_billboardMode},
 		{"Entity_get_billboardMode", Polycore_Entity_get_billboardMode},
 		{"Entity_get_billboardRoll", Polycore_Entity_get_billboardRoll},
 		{"Entity_get_billboardRoll", Polycore_Entity_get_billboardRoll},
@@ -268,12 +281,14 @@ int luaopen_Polycode(lua_State *L) {
 		{"Entity_buildPositionMatrix", Polycore_Entity_buildPositionMatrix},
 		{"Entity_buildPositionMatrix", Polycore_Entity_buildPositionMatrix},
 		{"Entity_adjustMatrixForChildren", Polycore_Entity_adjustMatrixForChildren},
 		{"Entity_adjustMatrixForChildren", Polycore_Entity_adjustMatrixForChildren},
 		{"Entity_setRenderer", Polycore_Entity_setRenderer},
 		{"Entity_setRenderer", Polycore_Entity_setRenderer},
+		{"delete_Entity", Polycore_delete_Entity},
 		{"Event", Polycore_Event},
 		{"Event", Polycore_Event},
 		{"Event_getEventCode", Polycore_Event_getEventCode},
 		{"Event_getEventCode", Polycore_Event_getEventCode},
 		{"Event_getDispatcher", Polycore_Event_getDispatcher},
 		{"Event_getDispatcher", Polycore_Event_getDispatcher},
 		{"Event_setEventCode", Polycore_Event_setEventCode},
 		{"Event_setEventCode", Polycore_Event_setEventCode},
 		{"Event_setDispatcher", Polycore_Event_setDispatcher},
 		{"Event_setDispatcher", Polycore_Event_setDispatcher},
 		{"Event_getEventType", Polycore_Event_getEventType},
 		{"Event_getEventType", Polycore_Event_getEventType},
+		{"delete_Event", Polycore_delete_Event},
 		{"EventDispatcher", Polycore_EventDispatcher},
 		{"EventDispatcher", Polycore_EventDispatcher},
 		{"EventDispatcher_removeAllHandlers", Polycore_EventDispatcher_removeAllHandlers},
 		{"EventDispatcher_removeAllHandlers", Polycore_EventDispatcher_removeAllHandlers},
 		{"EventDispatcher_removeAllHandlersForListener", Polycore_EventDispatcher_removeAllHandlersForListener},
 		{"EventDispatcher_removeAllHandlersForListener", Polycore_EventDispatcher_removeAllHandlersForListener},
@@ -282,22 +297,29 @@ int luaopen_Polycode(lua_State *L) {
 		{"EventDispatcher___dispatchEvent", Polycore_EventDispatcher___dispatchEvent},
 		{"EventDispatcher___dispatchEvent", Polycore_EventDispatcher___dispatchEvent},
 		{"EventDispatcher_dispatchEvent", Polycore_EventDispatcher_dispatchEvent},
 		{"EventDispatcher_dispatchEvent", Polycore_EventDispatcher_dispatchEvent},
 		{"EventDispatcher_dispatchEventNoDelete", Polycore_EventDispatcher_dispatchEventNoDelete},
 		{"EventDispatcher_dispatchEventNoDelete", Polycore_EventDispatcher_dispatchEventNoDelete},
+		{"delete_EventDispatcher", Polycore_delete_EventDispatcher},
 		{"EventHandler", Polycore_EventHandler},
 		{"EventHandler", Polycore_EventHandler},
+		{"delete_EventHandler", Polycore_delete_EventHandler},
 		{"FixedShader", Polycore_FixedShader},
 		{"FixedShader", Polycore_FixedShader},
 		{"FixedShader_createBinding", Polycore_FixedShader_createBinding},
 		{"FixedShader_createBinding", Polycore_FixedShader_createBinding},
+		{"delete_FixedShader", Polycore_delete_FixedShader},
 		{"FixedShaderBinding", Polycore_FixedShaderBinding},
 		{"FixedShaderBinding", Polycore_FixedShaderBinding},
 		{"FixedShaderBinding_addTexture", Polycore_FixedShaderBinding_addTexture},
 		{"FixedShaderBinding_addTexture", Polycore_FixedShaderBinding_addTexture},
 		{"FixedShaderBinding_addCubemap", Polycore_FixedShaderBinding_addCubemap},
 		{"FixedShaderBinding_addCubemap", Polycore_FixedShaderBinding_addCubemap},
 		{"FixedShaderBinding_addParam", Polycore_FixedShaderBinding_addParam},
 		{"FixedShaderBinding_addParam", Polycore_FixedShaderBinding_addParam},
 		{"FixedShaderBinding_getDiffuseTexture", Polycore_FixedShaderBinding_getDiffuseTexture},
 		{"FixedShaderBinding_getDiffuseTexture", Polycore_FixedShaderBinding_getDiffuseTexture},
+		{"delete_FixedShaderBinding", Polycore_delete_FixedShaderBinding},
 		{"Font", Polycore_Font},
 		{"Font", Polycore_Font},
 		{"Font_getFace", Polycore_Font_getFace},
 		{"Font_getFace", Polycore_Font_getFace},
 		{"Font_isValid", Polycore_Font_isValid},
 		{"Font_isValid", Polycore_Font_isValid},
+		{"delete_Font", Polycore_delete_Font},
 		{"FontManager", Polycore_FontManager},
 		{"FontManager", Polycore_FontManager},
 		{"FontManager_registerFont", Polycore_FontManager_registerFont},
 		{"FontManager_registerFont", Polycore_FontManager_registerFont},
 		{"FontManager_getFontByName", Polycore_FontManager_getFontByName},
 		{"FontManager_getFontByName", Polycore_FontManager_getFontByName},
+		{"delete_FontManager", Polycore_delete_FontManager},
 		{"OpenGLCubemap", Polycore_OpenGLCubemap},
 		{"OpenGLCubemap", Polycore_OpenGLCubemap},
 		{"OpenGLCubemap_getTextureID", Polycore_OpenGLCubemap_getTextureID},
 		{"OpenGLCubemap_getTextureID", Polycore_OpenGLCubemap_getTextureID},
+		{"delete_OpenGLCubemap", Polycore_delete_OpenGLCubemap},
 		{"Image", Polycore_Image},
 		{"Image", Polycore_Image},
 		{"Image_loadImage", Polycore_Image_loadImage},
 		{"Image_loadImage", Polycore_Image_loadImage},
 		{"Image_loadPNG", Polycore_Image_loadPNG},
 		{"Image_loadPNG", Polycore_Image_loadPNG},
@@ -326,21 +348,28 @@ int luaopen_Polycode(lua_State *L) {
 		{"Image_getWidth", Polycore_Image_getWidth},
 		{"Image_getWidth", Polycore_Image_getWidth},
 		{"Image_getHeight", Polycore_Image_getHeight},
 		{"Image_getHeight", Polycore_Image_getHeight},
 		{"Image_getPixels", Polycore_Image_getPixels},
 		{"Image_getPixels", Polycore_Image_getPixels},
+		{"delete_Image", Polycore_delete_Image},
 		{"InputEvent_get_mouseButton", Polycore_InputEvent_get_mouseButton},
 		{"InputEvent_get_mouseButton", Polycore_InputEvent_get_mouseButton},
 		{"InputEvent_get_timestamp", Polycore_InputEvent_get_timestamp},
 		{"InputEvent_get_timestamp", Polycore_InputEvent_get_timestamp},
 		{"InputEvent_set_mouseButton", Polycore_InputEvent_set_mouseButton},
 		{"InputEvent_set_mouseButton", Polycore_InputEvent_set_mouseButton},
 		{"InputEvent_set_timestamp", Polycore_InputEvent_set_timestamp},
 		{"InputEvent_set_timestamp", Polycore_InputEvent_set_timestamp},
 		{"InputEvent", Polycore_InputEvent},
 		{"InputEvent", Polycore_InputEvent},
+		{"InputEvent_getMousePosition", Polycore_InputEvent_getMousePosition},
+		{"InputEvent_getKey", Polycore_InputEvent_getKey},
+		{"InputEvent_getMouseButton", Polycore_InputEvent_getMouseButton},
 		{"InputEvent_keyCode", Polycore_InputEvent_keyCode},
 		{"InputEvent_keyCode", Polycore_InputEvent_keyCode},
+		{"delete_InputEvent", Polycore_delete_InputEvent},
 		{"Label", Polycore_Label},
 		{"Label", Polycore_Label},
 		{"Label_setText", Polycore_Label_setText},
 		{"Label_setText", Polycore_Label_setText},
 		{"Label_getText", Polycore_Label_getText},
 		{"Label_getText", Polycore_Label_getText},
 		{"Label_getTextWidth", Polycore_Label_getTextWidth},
 		{"Label_getTextWidth", Polycore_Label_getTextWidth},
 		{"Label_getTextHeight", Polycore_Label_getTextHeight},
 		{"Label_getTextHeight", Polycore_Label_getTextHeight},
 		{"Label_getFont", Polycore_Label_getFont},
 		{"Label_getFont", Polycore_Label_getFont},
+		{"delete_Label", Polycore_delete_Label},
 		{"Logger", Polycore_Logger},
 		{"Logger", Polycore_Logger},
 		{"Logger_log", Polycore_Logger_log},
 		{"Logger_log", Polycore_Logger_log},
 		{"Logger_logw", Polycore_Logger_logw},
 		{"Logger_logw", Polycore_Logger_logw},
+		{"delete_Logger", Polycore_delete_Logger},
 		{"Material", Polycore_Material},
 		{"Material", Polycore_Material},
 		{"Material_addShader", Polycore_Material_addShader},
 		{"Material_addShader", Polycore_Material_addShader},
 		{"Material_getNumShaders", Polycore_Material_getNumShaders},
 		{"Material_getNumShaders", Polycore_Material_getNumShaders},
@@ -351,6 +380,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"Material_getShader", Polycore_Material_getShader},
 		{"Material_getShader", Polycore_Material_getShader},
 		{"Material_getShaderBinding", Polycore_Material_getShaderBinding},
 		{"Material_getShaderBinding", Polycore_Material_getShaderBinding},
 		{"Material_loadMaterial", Polycore_Material_loadMaterial},
 		{"Material_loadMaterial", Polycore_Material_loadMaterial},
+		{"delete_Material", Polycore_delete_Material},
 		{"MaterialManager", Polycore_MaterialManager},
 		{"MaterialManager", Polycore_MaterialManager},
 		{"MaterialManager_Update", Polycore_MaterialManager_Update},
 		{"MaterialManager_Update", Polycore_MaterialManager_Update},
 		{"MaterialManager_createFramebufferTexture", Polycore_MaterialManager_createFramebufferTexture},
 		{"MaterialManager_createFramebufferTexture", Polycore_MaterialManager_createFramebufferTexture},
@@ -369,6 +399,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"MaterialManager_materialFromXMLNode", Polycore_MaterialManager_materialFromXMLNode},
 		{"MaterialManager_materialFromXMLNode", Polycore_MaterialManager_materialFromXMLNode},
 		{"MaterialManager_setShaderFromXMLNode", Polycore_MaterialManager_setShaderFromXMLNode},
 		{"MaterialManager_setShaderFromXMLNode", Polycore_MaterialManager_setShaderFromXMLNode},
 		{"MaterialManager_createShaderFromXMLNode", Polycore_MaterialManager_createShaderFromXMLNode},
 		{"MaterialManager_createShaderFromXMLNode", Polycore_MaterialManager_createShaderFromXMLNode},
+		{"delete_MaterialManager", Polycore_delete_MaterialManager},
 		{"Matrix4", Polycore_Matrix4},
 		{"Matrix4", Polycore_Matrix4},
 		{"Matrix4_identity", Polycore_Matrix4_identity},
 		{"Matrix4_identity", Polycore_Matrix4_identity},
 		{"Matrix4_rotateVector", Polycore_Matrix4_rotateVector},
 		{"Matrix4_rotateVector", Polycore_Matrix4_rotateVector},
@@ -378,6 +409,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"Matrix4_getEulerAngles", Polycore_Matrix4_getEulerAngles},
 		{"Matrix4_getEulerAngles", Polycore_Matrix4_getEulerAngles},
 		{"Matrix4_inverse", Polycore_Matrix4_inverse},
 		{"Matrix4_inverse", Polycore_Matrix4_inverse},
 		{"Matrix4_inverseAffine", Polycore_Matrix4_inverseAffine},
 		{"Matrix4_inverseAffine", Polycore_Matrix4_inverseAffine},
+		{"delete_Matrix4", Polycore_delete_Matrix4},
 		{"Mesh_get_useVertexColors", Polycore_Mesh_get_useVertexColors},
 		{"Mesh_get_useVertexColors", Polycore_Mesh_get_useVertexColors},
 		{"Mesh_set_useVertexColors", Polycore_Mesh_set_useVertexColors},
 		{"Mesh_set_useVertexColors", Polycore_Mesh_set_useVertexColors},
 		{"Mesh", Polycore_Mesh},
 		{"Mesh", Polycore_Mesh},
@@ -400,14 +432,17 @@ int luaopen_Polycode(lua_State *L) {
 		{"Mesh_setMeshType", Polycore_Mesh_setMeshType},
 		{"Mesh_setMeshType", Polycore_Mesh_setMeshType},
 		{"Mesh_calculateBBox", Polycore_Mesh_calculateBBox},
 		{"Mesh_calculateBBox", Polycore_Mesh_calculateBBox},
 		{"Mesh_hasVertexBuffer", Polycore_Mesh_hasVertexBuffer},
 		{"Mesh_hasVertexBuffer", Polycore_Mesh_hasVertexBuffer},
+		{"delete_Mesh", Polycore_delete_Mesh},
 		{"VertexBuffer_get_verticesPerFace", Polycore_VertexBuffer_get_verticesPerFace},
 		{"VertexBuffer_get_verticesPerFace", Polycore_VertexBuffer_get_verticesPerFace},
 		{"VertexBuffer_get_meshType", Polycore_VertexBuffer_get_meshType},
 		{"VertexBuffer_get_meshType", Polycore_VertexBuffer_get_meshType},
 		{"VertexBuffer_set_verticesPerFace", Polycore_VertexBuffer_set_verticesPerFace},
 		{"VertexBuffer_set_verticesPerFace", Polycore_VertexBuffer_set_verticesPerFace},
 		{"VertexBuffer_set_meshType", Polycore_VertexBuffer_set_meshType},
 		{"VertexBuffer_set_meshType", Polycore_VertexBuffer_set_meshType},
 		{"VertexBuffer", Polycore_VertexBuffer},
 		{"VertexBuffer", Polycore_VertexBuffer},
 		{"VertexBuffer_getVertexCount", Polycore_VertexBuffer_getVertexCount},
 		{"VertexBuffer_getVertexCount", Polycore_VertexBuffer_getVertexCount},
+		{"delete_VertexBuffer", Polycore_delete_VertexBuffer},
 		{"PolycodeModule", Polycore_PolycodeModule},
 		{"PolycodeModule", Polycore_PolycodeModule},
 		{"PolycodeModule_getType", Polycore_PolycodeModule_getType},
 		{"PolycodeModule_getType", Polycore_PolycodeModule_getType},
+		{"delete_PolycodeModule", Polycore_delete_PolycodeModule},
 		{"ObjectEntry_get_type", Polycore_ObjectEntry_get_type},
 		{"ObjectEntry_get_type", Polycore_ObjectEntry_get_type},
 		{"ObjectEntry_get_name", Polycore_ObjectEntry_get_name},
 		{"ObjectEntry_get_name", Polycore_ObjectEntry_get_name},
 		{"ObjectEntry_get_NumberVal", Polycore_ObjectEntry_get_NumberVal},
 		{"ObjectEntry_get_NumberVal", Polycore_ObjectEntry_get_NumberVal},
@@ -424,6 +459,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"ObjectEntry_set_length", Polycore_ObjectEntry_set_length},
 		{"ObjectEntry_set_length", Polycore_ObjectEntry_set_length},
 		{"ObjectEntry", Polycore_ObjectEntry},
 		{"ObjectEntry", Polycore_ObjectEntry},
 		{"ObjectEntry_addChild", Polycore_ObjectEntry_addChild},
 		{"ObjectEntry_addChild", Polycore_ObjectEntry_addChild},
+		{"delete_ObjectEntry", Polycore_delete_ObjectEntry},
 		{"Particle_get_life", Polycore_Particle_get_life},
 		{"Particle_get_life", Polycore_Particle_get_life},
 		{"Particle_get_lifespan", Polycore_Particle_get_lifespan},
 		{"Particle_get_lifespan", Polycore_Particle_get_lifespan},
 		{"Particle_get_brightnessDeviation", Polycore_Particle_get_brightnessDeviation},
 		{"Particle_get_brightnessDeviation", Polycore_Particle_get_brightnessDeviation},
@@ -440,14 +476,17 @@ int luaopen_Polycode(lua_State *L) {
 		{"Particle_Reset", Polycore_Particle_Reset},
 		{"Particle_Reset", Polycore_Particle_Reset},
 		{"Particle_createSceneParticle", Polycore_Particle_createSceneParticle},
 		{"Particle_createSceneParticle", Polycore_Particle_createSceneParticle},
 		{"Particle_createScreenParticle", Polycore_Particle_createScreenParticle},
 		{"Particle_createScreenParticle", Polycore_Particle_createScreenParticle},
+		{"delete_Particle", Polycore_delete_Particle},
 		{"ScreenParticleEmitter", Polycore_ScreenParticleEmitter},
 		{"ScreenParticleEmitter", Polycore_ScreenParticleEmitter},
 		{"ScreenParticleEmitter_addParticleBody", Polycore_ScreenParticleEmitter_addParticleBody},
 		{"ScreenParticleEmitter_addParticleBody", Polycore_ScreenParticleEmitter_addParticleBody},
 		{"ScreenParticleEmitter_getBaseMatrix", Polycore_ScreenParticleEmitter_getBaseMatrix},
 		{"ScreenParticleEmitter_getBaseMatrix", Polycore_ScreenParticleEmitter_getBaseMatrix},
 		{"ScreenParticleEmitter_Update", Polycore_ScreenParticleEmitter_Update},
 		{"ScreenParticleEmitter_Update", Polycore_ScreenParticleEmitter_Update},
+		{"delete_ScreenParticleEmitter", Polycore_delete_ScreenParticleEmitter},
 		{"SceneParticleEmitter", Polycore_SceneParticleEmitter},
 		{"SceneParticleEmitter", Polycore_SceneParticleEmitter},
 		{"SceneParticleEmitter_addParticleBody", Polycore_SceneParticleEmitter_addParticleBody},
 		{"SceneParticleEmitter_addParticleBody", Polycore_SceneParticleEmitter_addParticleBody},
 		{"SceneParticleEmitter_getBaseMatrix", Polycore_SceneParticleEmitter_getBaseMatrix},
 		{"SceneParticleEmitter_getBaseMatrix", Polycore_SceneParticleEmitter_getBaseMatrix},
 		{"SceneParticleEmitter_Update", Polycore_SceneParticleEmitter_Update},
 		{"SceneParticleEmitter_Update", Polycore_SceneParticleEmitter_Update},
+		{"delete_SceneParticleEmitter", Polycore_delete_SceneParticleEmitter},
 		{"ParticleEmitter_get_particleSpeedMod", Polycore_ParticleEmitter_get_particleSpeedMod},
 		{"ParticleEmitter_get_particleSpeedMod", Polycore_ParticleEmitter_get_particleSpeedMod},
 		{"ParticleEmitter_get_brightnessDeviation", Polycore_ParticleEmitter_get_brightnessDeviation},
 		{"ParticleEmitter_get_brightnessDeviation", Polycore_ParticleEmitter_get_brightnessDeviation},
 		{"ParticleEmitter_get_lifespan", Polycore_ParticleEmitter_get_lifespan},
 		{"ParticleEmitter_get_lifespan", Polycore_ParticleEmitter_get_lifespan},
@@ -481,8 +520,10 @@ int luaopen_Polycode(lua_State *L) {
 		{"ParticleEmitter_addParticleBody", Polycore_ParticleEmitter_addParticleBody},
 		{"ParticleEmitter_addParticleBody", Polycore_ParticleEmitter_addParticleBody},
 		{"ParticleEmitter_getBaseMatrix", Polycore_ParticleEmitter_getBaseMatrix},
 		{"ParticleEmitter_getBaseMatrix", Polycore_ParticleEmitter_getBaseMatrix},
 		{"ParticleEmitter_updateEmitter", Polycore_ParticleEmitter_updateEmitter},
 		{"ParticleEmitter_updateEmitter", Polycore_ParticleEmitter_updateEmitter},
+		{"delete_ParticleEmitter", Polycore_delete_ParticleEmitter},
 		{"Perlin", Polycore_Perlin},
 		{"Perlin", Polycore_Perlin},
 		{"Perlin_Get", Polycore_Perlin_Get},
 		{"Perlin_Get", Polycore_Perlin_Get},
+		{"delete_Perlin", Polycore_delete_Perlin},
 		{"Polygon_get_useVertexNormals", Polycore_Polygon_get_useVertexNormals},
 		{"Polygon_get_useVertexNormals", Polycore_Polygon_get_useVertexNormals},
 		{"Polygon_set_useVertexNormals", Polycore_Polygon_set_useVertexNormals},
 		{"Polygon_set_useVertexNormals", Polycore_Polygon_set_useVertexNormals},
 		{"Polygon", Polycore_Polygon},
 		{"Polygon", Polycore_Polygon},
@@ -495,6 +536,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"Polygon_getBounds2D", Polycore_Polygon_getBounds2D},
 		{"Polygon_getBounds2D", Polycore_Polygon_getBounds2D},
 		{"Polygon_setNormal", Polycore_Polygon_setNormal},
 		{"Polygon_setNormal", Polycore_Polygon_setNormal},
 		{"Polygon_flipUVY", Polycore_Polygon_flipUVY},
 		{"Polygon_flipUVY", Polycore_Polygon_flipUVY},
+		{"delete_Polygon", Polycore_delete_Polygon},
 		{"Quaternion_get_x", Polycore_Quaternion_get_x},
 		{"Quaternion_get_x", Polycore_Quaternion_get_x},
 		{"Quaternion_get_y", Polycore_Quaternion_get_y},
 		{"Quaternion_get_y", Polycore_Quaternion_get_y},
 		{"Quaternion_get_z", Polycore_Quaternion_get_z},
 		{"Quaternion_get_z", Polycore_Quaternion_get_z},
@@ -523,10 +565,12 @@ int luaopen_Polycode(lua_State *L) {
 		{"Quaternion_ToAngleAxis", Polycore_Quaternion_ToAngleAxis},
 		{"Quaternion_ToAngleAxis", Polycore_Quaternion_ToAngleAxis},
 		{"Quaternion_createFromAxisAngle", Polycore_Quaternion_createFromAxisAngle},
 		{"Quaternion_createFromAxisAngle", Polycore_Quaternion_createFromAxisAngle},
 		{"Quaternion_createMatrix", Polycore_Quaternion_createMatrix},
 		{"Quaternion_createMatrix", Polycore_Quaternion_createMatrix},
+		{"delete_Quaternion", Polycore_delete_Quaternion},
 		{"QuaternionCurve", Polycore_QuaternionCurve},
 		{"QuaternionCurve", Polycore_QuaternionCurve},
 		{"QuaternionCurve_interpolate", Polycore_QuaternionCurve_interpolate},
 		{"QuaternionCurve_interpolate", Polycore_QuaternionCurve_interpolate},
 		{"QuaternionCurve_generatePointsFromCurves", Polycore_QuaternionCurve_generatePointsFromCurves},
 		{"QuaternionCurve_generatePointsFromCurves", Polycore_QuaternionCurve_generatePointsFromCurves},
 		{"QuaternionCurve_recalcTangents", Polycore_QuaternionCurve_recalcTangents},
 		{"QuaternionCurve_recalcTangents", Polycore_QuaternionCurve_recalcTangents},
+		{"delete_QuaternionCurve", Polycore_delete_QuaternionCurve},
 		{"Rectangle_get_x", Polycore_Rectangle_get_x},
 		{"Rectangle_get_x", Polycore_Rectangle_get_x},
 		{"Rectangle_get_y", Polycore_Rectangle_get_y},
 		{"Rectangle_get_y", Polycore_Rectangle_get_y},
 		{"Rectangle_get_w", Polycore_Rectangle_get_w},
 		{"Rectangle_get_w", Polycore_Rectangle_get_w},
@@ -537,6 +581,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"Rectangle_set_h", Polycore_Rectangle_set_h},
 		{"Rectangle_set_h", Polycore_Rectangle_set_h},
 		{"Rectangle", Polycore_Rectangle},
 		{"Rectangle", Polycore_Rectangle},
 		{"Rectangle_setRect", Polycore_Rectangle_setRect},
 		{"Rectangle_setRect", Polycore_Rectangle_setRect},
+		{"delete_Rectangle", Polycore_delete_Rectangle},
 		{"Renderer_get_exposureLevel", Polycore_Renderer_get_exposureLevel},
 		{"Renderer_get_exposureLevel", Polycore_Renderer_get_exposureLevel},
 		{"Renderer_set_exposureLevel", Polycore_Renderer_set_exposureLevel},
 		{"Renderer_set_exposureLevel", Polycore_Renderer_set_exposureLevel},
 		{"Renderer_Resize", Polycore_Renderer_Resize},
 		{"Renderer_Resize", Polycore_Renderer_Resize},
@@ -618,12 +663,14 @@ int luaopen_Polycode(lua_State *L) {
 		{"Renderer_getNumAreaLights", Polycore_Renderer_getNumAreaLights},
 		{"Renderer_getNumAreaLights", Polycore_Renderer_getNumAreaLights},
 		{"Renderer_getNumSpotLights", Polycore_Renderer_getNumSpotLights},
 		{"Renderer_getNumSpotLights", Polycore_Renderer_getNumSpotLights},
 		{"Renderer_getNumLights", Polycore_Renderer_getNumLights},
 		{"Renderer_getNumLights", Polycore_Renderer_getNumLights},
+		{"delete_Renderer", Polycore_delete_Renderer},
 		{"Resource", Polycore_Resource},
 		{"Resource", Polycore_Resource},
 		{"Resource_getResourceName", Polycore_Resource_getResourceName},
 		{"Resource_getResourceName", Polycore_Resource_getResourceName},
 		{"Resource_getResourceType", Polycore_Resource_getResourceType},
 		{"Resource_getResourceType", Polycore_Resource_getResourceType},
 		{"Resource_setResourceName", Polycore_Resource_setResourceName},
 		{"Resource_setResourceName", Polycore_Resource_setResourceName},
 		{"Resource_setResourcePath", Polycore_Resource_setResourcePath},
 		{"Resource_setResourcePath", Polycore_Resource_setResourcePath},
 		{"Resource_getResourcePath", Polycore_Resource_getResourcePath},
 		{"Resource_getResourcePath", Polycore_Resource_getResourcePath},
+		{"delete_Resource", Polycore_delete_Resource},
 		{"ResourceManager", Polycore_ResourceManager},
 		{"ResourceManager", Polycore_ResourceManager},
 		{"ResourceManager_addResource", Polycore_ResourceManager_addResource},
 		{"ResourceManager_addResource", Polycore_ResourceManager_addResource},
 		{"ResourceManager_addDirResource", Polycore_ResourceManager_addDirResource},
 		{"ResourceManager_addDirResource", Polycore_ResourceManager_addDirResource},
@@ -637,6 +684,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"ResourceManager_parseOthers", Polycore_ResourceManager_parseOthers},
 		{"ResourceManager_parseOthers", Polycore_ResourceManager_parseOthers},
 		{"ResourceManager_getResource", Polycore_ResourceManager_getResource},
 		{"ResourceManager_getResource", Polycore_ResourceManager_getResource},
 		{"ResourceManager_addShaderModule", Polycore_ResourceManager_addShaderModule},
 		{"ResourceManager_addShaderModule", Polycore_ResourceManager_addShaderModule},
+		{"delete_ResourceManager", Polycore_delete_ResourceManager},
 		{"Scene_get_useClearColor", Polycore_Scene_get_useClearColor},
 		{"Scene_get_useClearColor", Polycore_Scene_get_useClearColor},
 		{"Scene_get_enabled", Polycore_Scene_get_enabled},
 		{"Scene_get_enabled", Polycore_Scene_get_enabled},
 		{"Scene_set_useClearColor", Polycore_Scene_set_useClearColor},
 		{"Scene_set_useClearColor", Polycore_Scene_set_useClearColor},
@@ -672,13 +720,16 @@ int luaopen_Polycode(lua_State *L) {
 		{"Scene_getNumLights", Polycore_Scene_getNumLights},
 		{"Scene_getNumLights", Polycore_Scene_getNumLights},
 		{"Scene_getLight", Polycore_Scene_getLight},
 		{"Scene_getLight", Polycore_Scene_getLight},
 		{"Scene_getCustomEntityByType", Polycore_Scene_getCustomEntityByType},
 		{"Scene_getCustomEntityByType", Polycore_Scene_getCustomEntityByType},
+		{"delete_Scene", Polycore_delete_Scene},
 		{"SceneEntity", Polycore_SceneEntity},
 		{"SceneEntity", Polycore_SceneEntity},
 		{"SceneEntity_testMouseCollision", Polycore_SceneEntity_testMouseCollision},
 		{"SceneEntity_testMouseCollision", Polycore_SceneEntity_testMouseCollision},
+		{"delete_SceneEntity", Polycore_delete_SceneEntity},
 		{"SceneLabel", Polycore_SceneLabel},
 		{"SceneLabel", Polycore_SceneLabel},
 		{"SceneLabel_testMouseCollision", Polycore_SceneLabel_testMouseCollision},
 		{"SceneLabel_testMouseCollision", Polycore_SceneLabel_testMouseCollision},
 		{"SceneLabel_setText", Polycore_SceneLabel_setText},
 		{"SceneLabel_setText", Polycore_SceneLabel_setText},
 		{"SceneLabel_getLabel", Polycore_SceneLabel_getLabel},
 		{"SceneLabel_getLabel", Polycore_SceneLabel_getLabel},
 		{"SceneLabel_Render", Polycore_SceneLabel_Render},
 		{"SceneLabel_Render", Polycore_SceneLabel_Render},
+		{"delete_SceneLabel", Polycore_delete_SceneLabel},
 		{"SceneLight", Polycore_SceneLight},
 		{"SceneLight", Polycore_SceneLight},
 		{"SceneLight_getIntensity", Polycore_SceneLight_getIntensity},
 		{"SceneLight_getIntensity", Polycore_SceneLight_getIntensity},
 		{"SceneLight_getDistance", Polycore_SceneLight_getDistance},
 		{"SceneLight_getDistance", Polycore_SceneLight_getDistance},
@@ -692,14 +743,17 @@ int luaopen_Polycode(lua_State *L) {
 		{"SceneLight_setShadowMapFOV", Polycore_SceneLight_setShadowMapFOV},
 		{"SceneLight_setShadowMapFOV", Polycore_SceneLight_setShadowMapFOV},
 		{"SceneLight_areShadowsEnabled", Polycore_SceneLight_areShadowsEnabled},
 		{"SceneLight_areShadowsEnabled", Polycore_SceneLight_areShadowsEnabled},
 		{"SceneLight_getLightType", Polycore_SceneLight_getLightType},
 		{"SceneLight_getLightType", Polycore_SceneLight_getLightType},
+		{"delete_SceneLight", Polycore_delete_SceneLight},
 		{"SceneLine", Polycore_SceneLine},
 		{"SceneLine", Polycore_SceneLine},
 		{"SceneLine_Render", Polycore_SceneLine_Render},
 		{"SceneLine_Render", Polycore_SceneLine_Render},
+		{"delete_SceneLine", Polycore_delete_SceneLine},
 		{"SceneManager", Polycore_SceneManager},
 		{"SceneManager", Polycore_SceneManager},
 		{"SceneManager_addScene", Polycore_SceneManager_addScene},
 		{"SceneManager_addScene", Polycore_SceneManager_addScene},
 		{"SceneManager_Update", Polycore_SceneManager_Update},
 		{"SceneManager_Update", Polycore_SceneManager_Update},
 		{"SceneManager_UpdateVirtual", Polycore_SceneManager_UpdateVirtual},
 		{"SceneManager_UpdateVirtual", Polycore_SceneManager_UpdateVirtual},
 		{"SceneManager_removeScene", Polycore_SceneManager_removeScene},
 		{"SceneManager_removeScene", Polycore_SceneManager_removeScene},
 		{"SceneManager_registerRenderTexture", Polycore_SceneManager_registerRenderTexture},
 		{"SceneManager_registerRenderTexture", Polycore_SceneManager_registerRenderTexture},
+		{"delete_SceneManager", Polycore_delete_SceneManager},
 		{"SceneMesh_get_showVertexNormals", Polycore_SceneMesh_get_showVertexNormals},
 		{"SceneMesh_get_showVertexNormals", Polycore_SceneMesh_get_showVertexNormals},
 		{"SceneMesh_set_showVertexNormals", Polycore_SceneMesh_set_showVertexNormals},
 		{"SceneMesh_set_showVertexNormals", Polycore_SceneMesh_set_showVertexNormals},
 		{"SceneMesh", Polycore_SceneMesh},
 		{"SceneMesh", Polycore_SceneMesh},
@@ -718,12 +772,15 @@ int luaopen_Polycode(lua_State *L) {
 		{"SceneMesh_getSkeleton", Polycore_SceneMesh_getSkeleton},
 		{"SceneMesh_getSkeleton", Polycore_SceneMesh_getSkeleton},
 		{"SceneMesh_renderMeshLocally", Polycore_SceneMesh_renderMeshLocally},
 		{"SceneMesh_renderMeshLocally", Polycore_SceneMesh_renderMeshLocally},
 		{"SceneMesh_cacheToVertexBuffer", Polycore_SceneMesh_cacheToVertexBuffer},
 		{"SceneMesh_cacheToVertexBuffer", Polycore_SceneMesh_cacheToVertexBuffer},
+		{"delete_SceneMesh", Polycore_delete_SceneMesh},
 		{"ScenePrimitive", Polycore_ScenePrimitive},
 		{"ScenePrimitive", Polycore_ScenePrimitive},
+		{"delete_ScenePrimitive", Polycore_delete_ScenePrimitive},
 		{"SceneRenderTexture", Polycore_SceneRenderTexture},
 		{"SceneRenderTexture", Polycore_SceneRenderTexture},
 		{"SceneRenderTexture_drawScreen", Polycore_SceneRenderTexture_drawScreen},
 		{"SceneRenderTexture_drawScreen", Polycore_SceneRenderTexture_drawScreen},
 		{"SceneRenderTexture_getTargetTexture", Polycore_SceneRenderTexture_getTargetTexture},
 		{"SceneRenderTexture_getTargetTexture", Polycore_SceneRenderTexture_getTargetTexture},
 		{"SceneRenderTexture_getTargetScene", Polycore_SceneRenderTexture_getTargetScene},
 		{"SceneRenderTexture_getTargetScene", Polycore_SceneRenderTexture_getTargetScene},
 		{"SceneRenderTexture_getTargetCamera", Polycore_SceneRenderTexture_getTargetCamera},
 		{"SceneRenderTexture_getTargetCamera", Polycore_SceneRenderTexture_getTargetCamera},
+		{"delete_SceneRenderTexture", Polycore_delete_SceneRenderTexture},
 		{"Screen_get_enabled", Polycore_Screen_get_enabled},
 		{"Screen_get_enabled", Polycore_Screen_get_enabled},
 		{"Screen_set_enabled", Polycore_Screen_set_enabled},
 		{"Screen_set_enabled", Polycore_Screen_set_enabled},
 		{"Screen", Polycore_Screen},
 		{"Screen", Polycore_Screen},
@@ -747,7 +804,9 @@ int luaopen_Polycode(lua_State *L) {
 		{"Screen_usesNormalizedCoordinates", Polycore_Screen_usesNormalizedCoordinates},
 		{"Screen_usesNormalizedCoordinates", Polycore_Screen_usesNormalizedCoordinates},
 		{"Screen_getYCoordinateSize", Polycore_Screen_getYCoordinateSize},
 		{"Screen_getYCoordinateSize", Polycore_Screen_getYCoordinateSize},
 		{"Screen_getRootEntity", Polycore_Screen_getRootEntity},
 		{"Screen_getRootEntity", Polycore_Screen_getRootEntity},
+		{"delete_Screen", Polycore_delete_Screen},
 		{"ScreenCurve", Polycore_ScreenCurve},
 		{"ScreenCurve", Polycore_ScreenCurve},
+		{"delete_ScreenCurve", Polycore_delete_ScreenCurve},
 		{"ScreenEntity_get_hasFocus", Polycore_ScreenEntity_get_hasFocus},
 		{"ScreenEntity_get_hasFocus", Polycore_ScreenEntity_get_hasFocus},
 		{"ScreenEntity_get_blockMouseInput", Polycore_ScreenEntity_get_blockMouseInput},
 		{"ScreenEntity_get_blockMouseInput", Polycore_ScreenEntity_get_blockMouseInput},
 		{"ScreenEntity_get_zindex", Polycore_ScreenEntity_get_zindex},
 		{"ScreenEntity_get_zindex", Polycore_ScreenEntity_get_zindex},
@@ -794,30 +853,37 @@ int luaopen_Polycode(lua_State *L) {
 		{"ScreenEntity_focusNextChild", Polycore_ScreenEntity_focusNextChild},
 		{"ScreenEntity_focusNextChild", Polycore_ScreenEntity_focusNextChild},
 		{"ScreenEntity_getPosition2D", Polycore_ScreenEntity_getPosition2D},
 		{"ScreenEntity_getPosition2D", Polycore_ScreenEntity_getPosition2D},
 		{"ScreenEntity_isFocusable", Polycore_ScreenEntity_isFocusable},
 		{"ScreenEntity_isFocusable", Polycore_ScreenEntity_isFocusable},
+		{"delete_ScreenEntity", Polycore_delete_ScreenEntity},
 		{"ScreenEvent", Polycore_ScreenEvent},
 		{"ScreenEvent", Polycore_ScreenEvent},
+		{"delete_ScreenEvent", Polycore_delete_ScreenEvent},
 		{"ScreenImage", Polycore_ScreenImage},
 		{"ScreenImage", Polycore_ScreenImage},
 		{"ScreenImage_setImageCoordinates", Polycore_ScreenImage_setImageCoordinates},
 		{"ScreenImage_setImageCoordinates", Polycore_ScreenImage_setImageCoordinates},
 		{"ScreenImage_getImageWidth", Polycore_ScreenImage_getImageWidth},
 		{"ScreenImage_getImageWidth", Polycore_ScreenImage_getImageWidth},
 		{"ScreenImage_getImageHeight", Polycore_ScreenImage_getImageHeight},
 		{"ScreenImage_getImageHeight", Polycore_ScreenImage_getImageHeight},
+		{"delete_ScreenImage", Polycore_delete_ScreenImage},
 		{"ScreenLabel", Polycore_ScreenLabel},
 		{"ScreenLabel", Polycore_ScreenLabel},
 		{"ScreenLabel_addDropShadow", Polycore_ScreenLabel_addDropShadow},
 		{"ScreenLabel_addDropShadow", Polycore_ScreenLabel_addDropShadow},
 		{"ScreenLabel_setText", Polycore_ScreenLabel_setText},
 		{"ScreenLabel_setText", Polycore_ScreenLabel_setText},
 		{"ScreenLabel_getText", Polycore_ScreenLabel_getText},
 		{"ScreenLabel_getText", Polycore_ScreenLabel_getText},
 		{"ScreenLabel_getLabel", Polycore_ScreenLabel_getLabel},
 		{"ScreenLabel_getLabel", Polycore_ScreenLabel_getLabel},
+		{"delete_ScreenLabel", Polycore_delete_ScreenLabel},
 		{"ScreenLine", Polycore_ScreenLine},
 		{"ScreenLine", Polycore_ScreenLine},
 		{"ScreenLine_Update", Polycore_ScreenLine_Update},
 		{"ScreenLine_Update", Polycore_ScreenLine_Update},
 		{"ScreenLine_Render", Polycore_ScreenLine_Render},
 		{"ScreenLine_Render", Polycore_ScreenLine_Render},
 		{"ScreenLine_setLineWidth", Polycore_ScreenLine_setLineWidth},
 		{"ScreenLine_setLineWidth", Polycore_ScreenLine_setLineWidth},
+		{"delete_ScreenLine", Polycore_delete_ScreenLine},
 		{"ScreenManager", Polycore_ScreenManager},
 		{"ScreenManager", Polycore_ScreenManager},
 		{"ScreenManager_removeScreen", Polycore_ScreenManager_removeScreen},
 		{"ScreenManager_removeScreen", Polycore_ScreenManager_removeScreen},
 		{"ScreenManager_addScreen", Polycore_ScreenManager_addScreen},
 		{"ScreenManager_addScreen", Polycore_ScreenManager_addScreen},
 		{"ScreenManager_Update", Polycore_ScreenManager_Update},
 		{"ScreenManager_Update", Polycore_ScreenManager_Update},
+		{"delete_ScreenManager", Polycore_delete_ScreenManager},
 		{"ScreenMesh", Polycore_ScreenMesh},
 		{"ScreenMesh", Polycore_ScreenMesh},
 		{"ScreenMesh_Render", Polycore_ScreenMesh_Render},
 		{"ScreenMesh_Render", Polycore_ScreenMesh_Render},
 		{"ScreenMesh_getMesh", Polycore_ScreenMesh_getMesh},
 		{"ScreenMesh_getMesh", Polycore_ScreenMesh_getMesh},
 		{"ScreenMesh_getTexture", Polycore_ScreenMesh_getTexture},
 		{"ScreenMesh_getTexture", Polycore_ScreenMesh_getTexture},
 		{"ScreenMesh_loadTexture", Polycore_ScreenMesh_loadTexture},
 		{"ScreenMesh_loadTexture", Polycore_ScreenMesh_loadTexture},
 		{"ScreenMesh_setTexture", Polycore_ScreenMesh_setTexture},
 		{"ScreenMesh_setTexture", Polycore_ScreenMesh_setTexture},
+		{"delete_ScreenMesh", Polycore_delete_ScreenMesh},
 		{"ScreenShape_get_strokeEnabled", Polycore_ScreenShape_get_strokeEnabled},
 		{"ScreenShape_get_strokeEnabled", Polycore_ScreenShape_get_strokeEnabled},
 		{"ScreenShape_get_lineSmooth", Polycore_ScreenShape_get_lineSmooth},
 		{"ScreenShape_get_lineSmooth", Polycore_ScreenShape_get_lineSmooth},
 		{"ScreenShape_set_strokeEnabled", Polycore_ScreenShape_set_strokeEnabled},
 		{"ScreenShape_set_strokeEnabled", Polycore_ScreenShape_set_strokeEnabled},
@@ -830,14 +896,17 @@ int luaopen_Polycode(lua_State *L) {
 		{"ScreenShape_clearGradient", Polycore_ScreenShape_clearGradient},
 		{"ScreenShape_clearGradient", Polycore_ScreenShape_clearGradient},
 		{"ScreenShape_setShapeSize", Polycore_ScreenShape_setShapeSize},
 		{"ScreenShape_setShapeSize", Polycore_ScreenShape_setShapeSize},
 		{"ScreenShape_addShapePoint", Polycore_ScreenShape_addShapePoint},
 		{"ScreenShape_addShapePoint", Polycore_ScreenShape_addShapePoint},
+		{"delete_ScreenShape", Polycore_delete_ScreenShape},
 		{"ScreenSprite", Polycore_ScreenSprite},
 		{"ScreenSprite", Polycore_ScreenSprite},
 		{"ScreenSprite_addAnimation", Polycore_ScreenSprite_addAnimation},
 		{"ScreenSprite_addAnimation", Polycore_ScreenSprite_addAnimation},
 		{"ScreenSprite_playAnimation", Polycore_ScreenSprite_playAnimation},
 		{"ScreenSprite_playAnimation", Polycore_ScreenSprite_playAnimation},
 		{"ScreenSprite_Update", Polycore_ScreenSprite_Update},
 		{"ScreenSprite_Update", Polycore_ScreenSprite_Update},
+		{"delete_ScreenSprite", Polycore_delete_ScreenSprite},
 		{"Shader_getType", Polycore_Shader_getType},
 		{"Shader_getType", Polycore_Shader_getType},
 		{"Shader_setName", Polycore_Shader_setName},
 		{"Shader_setName", Polycore_Shader_setName},
 		{"Shader_getName", Polycore_Shader_getName},
 		{"Shader_getName", Polycore_Shader_getName},
 		{"Shader_createBinding", Polycore_Shader_createBinding},
 		{"Shader_createBinding", Polycore_Shader_createBinding},
+		{"delete_Shader", Polycore_delete_Shader},
 		{"ShaderBinding", Polycore_ShaderBinding},
 		{"ShaderBinding", Polycore_ShaderBinding},
 		{"ShaderBinding_clearTexture", Polycore_ShaderBinding_clearTexture},
 		{"ShaderBinding_clearTexture", Polycore_ShaderBinding_clearTexture},
 		{"ShaderBinding_addTexture", Polycore_ShaderBinding_addTexture},
 		{"ShaderBinding_addTexture", Polycore_ShaderBinding_addTexture},
@@ -853,6 +922,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"ShaderBinding_getInTargetBinding", Polycore_ShaderBinding_getInTargetBinding},
 		{"ShaderBinding_getInTargetBinding", Polycore_ShaderBinding_getInTargetBinding},
 		{"ShaderBinding_getNumOutTargetBindings", Polycore_ShaderBinding_getNumOutTargetBindings},
 		{"ShaderBinding_getNumOutTargetBindings", Polycore_ShaderBinding_getNumOutTargetBindings},
 		{"ShaderBinding_getOutTargetBinding", Polycore_ShaderBinding_getOutTargetBinding},
 		{"ShaderBinding_getOutTargetBinding", Polycore_ShaderBinding_getOutTargetBinding},
+		{"delete_ShaderBinding", Polycore_delete_ShaderBinding},
 		{"SkeletonAnimation", Polycore_SkeletonAnimation},
 		{"SkeletonAnimation", Polycore_SkeletonAnimation},
 		{"SkeletonAnimation_addBoneTrack", Polycore_SkeletonAnimation_addBoneTrack},
 		{"SkeletonAnimation_addBoneTrack", Polycore_SkeletonAnimation_addBoneTrack},
 		{"SkeletonAnimation_getName", Polycore_SkeletonAnimation_getName},
 		{"SkeletonAnimation_getName", Polycore_SkeletonAnimation_getName},
@@ -860,11 +930,13 @@ int luaopen_Polycode(lua_State *L) {
 		{"SkeletonAnimation_Stop", Polycore_SkeletonAnimation_Stop},
 		{"SkeletonAnimation_Stop", Polycore_SkeletonAnimation_Stop},
 		{"SkeletonAnimation_Update", Polycore_SkeletonAnimation_Update},
 		{"SkeletonAnimation_Update", Polycore_SkeletonAnimation_Update},
 		{"SkeletonAnimation_setSpeed", Polycore_SkeletonAnimation_setSpeed},
 		{"SkeletonAnimation_setSpeed", Polycore_SkeletonAnimation_setSpeed},
+		{"delete_SkeletonAnimation", Polycore_delete_SkeletonAnimation},
 		{"BoneTrack", Polycore_BoneTrack},
 		{"BoneTrack", Polycore_BoneTrack},
 		{"BoneTrack_Play", Polycore_BoneTrack_Play},
 		{"BoneTrack_Play", Polycore_BoneTrack_Play},
 		{"BoneTrack_Stop", Polycore_BoneTrack_Stop},
 		{"BoneTrack_Stop", Polycore_BoneTrack_Stop},
 		{"BoneTrack_Update", Polycore_BoneTrack_Update},
 		{"BoneTrack_Update", Polycore_BoneTrack_Update},
 		{"BoneTrack_setSpeed", Polycore_BoneTrack_setSpeed},
 		{"BoneTrack_setSpeed", Polycore_BoneTrack_setSpeed},
+		{"delete_BoneTrack", Polycore_delete_BoneTrack},
 		{"Skeleton", Polycore_Skeleton},
 		{"Skeleton", Polycore_Skeleton},
 		{"Skeleton_loadSkeleton", Polycore_Skeleton_loadSkeleton},
 		{"Skeleton_loadSkeleton", Polycore_Skeleton_loadSkeleton},
 		{"Skeleton_playAnimation", Polycore_Skeleton_playAnimation},
 		{"Skeleton_playAnimation", Polycore_Skeleton_playAnimation},
@@ -878,6 +950,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"Skeleton_getNumBones", Polycore_Skeleton_getNumBones},
 		{"Skeleton_getNumBones", Polycore_Skeleton_getNumBones},
 		{"Skeleton_getBone", Polycore_Skeleton_getBone},
 		{"Skeleton_getBone", Polycore_Skeleton_getBone},
 		{"Skeleton_getCurrentAnimation", Polycore_Skeleton_getCurrentAnimation},
 		{"Skeleton_getCurrentAnimation", Polycore_Skeleton_getCurrentAnimation},
+		{"delete_Skeleton", Polycore_delete_Skeleton},
 		{"Sound", Polycore_Sound},
 		{"Sound", Polycore_Sound},
 		{"Sound_Play", Polycore_Sound_Play},
 		{"Sound_Play", Polycore_Sound_Play},
 		{"Sound_Stop", Polycore_Sound_Stop},
 		{"Sound_Stop", Polycore_Sound_Stop},
@@ -887,8 +960,10 @@ int luaopen_Polycode(lua_State *L) {
 		{"Sound_checkALError", Polycore_Sound_checkALError},
 		{"Sound_checkALError", Polycore_Sound_checkALError},
 		{"Sound_soundError", Polycore_Sound_soundError},
 		{"Sound_soundError", Polycore_Sound_soundError},
 		{"Sound_soundCheck", Polycore_Sound_soundCheck},
 		{"Sound_soundCheck", Polycore_Sound_soundCheck},
+		{"delete_Sound", Polycore_delete_Sound},
 		{"SoundManager", Polycore_SoundManager},
 		{"SoundManager", Polycore_SoundManager},
 		{"SoundManager_initAL", Polycore_SoundManager_initAL},
 		{"SoundManager_initAL", Polycore_SoundManager_initAL},
+		{"delete_SoundManager", Polycore_delete_SoundManager},
 		{"String", Polycore_String},
 		{"String", Polycore_String},
 		{"String_size", Polycore_String_size},
 		{"String_size", Polycore_String_size},
 		{"String_length", Polycore_String_length},
 		{"String_length", Polycore_String_length},
@@ -908,6 +983,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"String_getDataWithEncoding", Polycore_String_getDataWithEncoding},
 		{"String_getDataWithEncoding", Polycore_String_getDataWithEncoding},
 		{"String_getDataSizeWithEncoding", Polycore_String_getDataSizeWithEncoding},
 		{"String_getDataSizeWithEncoding", Polycore_String_getDataSizeWithEncoding},
 		{"String_setDataWithEncoding", Polycore_String_setDataWithEncoding},
 		{"String_setDataWithEncoding", Polycore_String_setDataWithEncoding},
+		{"delete_String", Polycore_delete_String},
 		{"Texture_get_scrollSpeedX", Polycore_Texture_get_scrollSpeedX},
 		{"Texture_get_scrollSpeedX", Polycore_Texture_get_scrollSpeedX},
 		{"Texture_get_scrollSpeedY", Polycore_Texture_get_scrollSpeedY},
 		{"Texture_get_scrollSpeedY", Polycore_Texture_get_scrollSpeedY},
 		{"Texture_get_clamp", Polycore_Texture_get_clamp},
 		{"Texture_get_clamp", Polycore_Texture_get_clamp},
@@ -925,6 +1001,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"Texture_getTextureData", Polycore_Texture_getTextureData},
 		{"Texture_getTextureData", Polycore_Texture_getTextureData},
 		{"Texture_getWidth", Polycore_Texture_getWidth},
 		{"Texture_getWidth", Polycore_Texture_getWidth},
 		{"Texture_getHeight", Polycore_Texture_getHeight},
 		{"Texture_getHeight", Polycore_Texture_getHeight},
+		{"delete_Texture", Polycore_delete_Texture},
 		{"Timer", Polycore_Timer},
 		{"Timer", Polycore_Timer},
 		{"Timer_Pause", Polycore_Timer_Pause},
 		{"Timer_Pause", Polycore_Timer_Pause},
 		{"Timer_isPaused", Polycore_Timer_isPaused},
 		{"Timer_isPaused", Polycore_Timer_isPaused},
@@ -933,10 +1010,12 @@ int luaopen_Polycode(lua_State *L) {
 		{"Timer_Reset", Polycore_Timer_Reset},
 		{"Timer_Reset", Polycore_Timer_Reset},
 		{"Timer_hasElapsed", Polycore_Timer_hasElapsed},
 		{"Timer_hasElapsed", Polycore_Timer_hasElapsed},
 		{"Timer_getElapsedf", Polycore_Timer_getElapsedf},
 		{"Timer_getElapsedf", Polycore_Timer_getElapsedf},
+		{"delete_Timer", Polycore_delete_Timer},
 		{"TimerManager", Polycore_TimerManager},
 		{"TimerManager", Polycore_TimerManager},
 		{"TimerManager_removeTimer", Polycore_TimerManager_removeTimer},
 		{"TimerManager_removeTimer", Polycore_TimerManager_removeTimer},
 		{"TimerManager_addTimer", Polycore_TimerManager_addTimer},
 		{"TimerManager_addTimer", Polycore_TimerManager_addTimer},
 		{"TimerManager_Update", Polycore_TimerManager_Update},
 		{"TimerManager_Update", Polycore_TimerManager_Update},
+		{"delete_TimerManager", Polycore_delete_TimerManager},
 		{"Tween_get_repeat", Polycore_Tween_get_repeat},
 		{"Tween_get_repeat", Polycore_Tween_get_repeat},
 		{"Tween_set_repeat", Polycore_Tween_set_repeat},
 		{"Tween_set_repeat", Polycore_Tween_set_repeat},
 		{"Tween", Polycore_Tween},
 		{"Tween", Polycore_Tween},
@@ -947,14 +1026,19 @@ int luaopen_Polycode(lua_State *L) {
 		{"Tween_Reset", Polycore_Tween_Reset},
 		{"Tween_Reset", Polycore_Tween_Reset},
 		{"Tween_isComplete", Polycore_Tween_isComplete},
 		{"Tween_isComplete", Polycore_Tween_isComplete},
 		{"Tween_setSpeed", Polycore_Tween_setSpeed},
 		{"Tween_setSpeed", Polycore_Tween_setSpeed},
+		{"delete_Tween", Polycore_delete_Tween},
 		{"BezierPathTween", Polycore_BezierPathTween},
 		{"BezierPathTween", Polycore_BezierPathTween},
 		{"BezierPathTween_updateCustomTween", Polycore_BezierPathTween_updateCustomTween},
 		{"BezierPathTween_updateCustomTween", Polycore_BezierPathTween_updateCustomTween},
+		{"delete_BezierPathTween", Polycore_delete_BezierPathTween},
 		{"QuaternionTween", Polycore_QuaternionTween},
 		{"QuaternionTween", Polycore_QuaternionTween},
 		{"QuaternionTween_updateCustomTween", Polycore_QuaternionTween_updateCustomTween},
 		{"QuaternionTween_updateCustomTween", Polycore_QuaternionTween_updateCustomTween},
+		{"delete_QuaternionTween", Polycore_delete_QuaternionTween},
 		{"TweenManager", Polycore_TweenManager},
 		{"TweenManager", Polycore_TweenManager},
 		{"TweenManager_addTween", Polycore_TweenManager_addTween},
 		{"TweenManager_addTween", Polycore_TweenManager_addTween},
 		{"TweenManager_Update", Polycore_TweenManager_Update},
 		{"TweenManager_Update", Polycore_TweenManager_Update},
+		{"delete_TweenManager", Polycore_delete_TweenManager},
 		{"Vector2", Polycore_Vector2},
 		{"Vector2", Polycore_Vector2},
+		{"delete_Vector2", Polycore_delete_Vector2},
 		{"Vector3_get_x", Polycore_Vector3_get_x},
 		{"Vector3_get_x", Polycore_Vector3_get_x},
 		{"Vector3_get_y", Polycore_Vector3_get_y},
 		{"Vector3_get_y", Polycore_Vector3_get_y},
 		{"Vector3_get_z", Polycore_Vector3_get_z},
 		{"Vector3_get_z", Polycore_Vector3_get_z},
@@ -968,6 +1052,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"Vector3_dot", Polycore_Vector3_dot},
 		{"Vector3_dot", Polycore_Vector3_dot},
 		{"Vector3_crossProduct", Polycore_Vector3_crossProduct},
 		{"Vector3_crossProduct", Polycore_Vector3_crossProduct},
 		{"Vector3_Normalize", Polycore_Vector3_Normalize},
 		{"Vector3_Normalize", Polycore_Vector3_Normalize},
+		{"delete_Vector3", Polycore_delete_Vector3},
 		{"Vertex_get_useVertexColor", Polycore_Vertex_get_useVertexColor},
 		{"Vertex_get_useVertexColor", Polycore_Vertex_get_useVertexColor},
 		{"Vertex_set_useVertexColor", Polycore_Vertex_set_useVertexColor},
 		{"Vertex_set_useVertexColor", Polycore_Vertex_set_useVertexColor},
 		{"Vertex", Polycore_Vertex},
 		{"Vertex", Polycore_Vertex},
@@ -978,6 +1063,7 @@ int luaopen_Polycode(lua_State *L) {
 		{"Vertex_getTexCoord", Polycore_Vertex_getTexCoord},
 		{"Vertex_getTexCoord", Polycore_Vertex_getTexCoord},
 		{"Vertex_setTexCoord", Polycore_Vertex_setTexCoord},
 		{"Vertex_setTexCoord", Polycore_Vertex_setTexCoord},
 		{"Vertex_setNormal", Polycore_Vertex_setNormal},
 		{"Vertex_setNormal", Polycore_Vertex_setNormal},
+		{"delete_Vertex", Polycore_delete_Vertex},
 		{NULL, NULL}
 		{NULL, NULL}
 	};
 	};
 	luaL_openlib(L, "Polycore", polycodeLib, 0);
 	luaL_openlib(L, "Polycore", polycodeLib, 0);

BIN
Bindings/Scripts/create_lua_library/.create_lua_library.py.swp


+ 26 - 1
Bindings/Scripts/create_lua_library/create_lua_library.py

@@ -232,7 +232,10 @@ for fileName in files:
 									out += "\t}\n"
 									out += "\t}\n"
 								else:
 								else:
 									out += "\tluaL_checktype(L, %d, %s);\n" % (idx, luatype);
 									out += "\tluaL_checktype(L, %d, %s);\n" % (idx, luatype);
-									out += "\t%s %s = %s(L, %d);\n" % (param["type"], param["name"], luafunc, idx)
+									if param["type"] == "String":
+										out += "\t%s %s = String(%s(L, %d));\n" % (param["type"], param["name"], luafunc, idx)
+									else:
+										out += "\t%s %s = %s(L, %d);\n" % (param["type"], param["name"], luafunc, idx)
 								paramlist.append(param["name"])
 								paramlist.append(param["name"])
 							
 							
 								lparamlist.append(param["name"]+lend)
 								lparamlist.append(param["name"]+lend)
@@ -291,6 +294,13 @@ for fileName in files:
 						
 						
 						if pm["name"] == ckey:
 						if pm["name"] == ckey:
 							lout += "function %s:%s(...)\n" % (ckey, ckey)
 							lout += "function %s:%s(...)\n" % (ckey, ckey)
+							if inherits:
+								lout += "\tif type(arg[1]) == \"table\" and count(arg) == 1 then\n"
+								lout += "\t\tif \"\"..arg[1]:class() == \"%s\" then\n" % (c["inherits"][0]["class"])
+								lout += "\t\t\tself.__ptr = arg[1].__ptr\n"
+								lout += "\t\t\treturn\n"
+								lout += "\t\tend\n"
+								lout += "\tend\n"
 							lout += "\tfor k,v in pairs(arg) do\n"
 							lout += "\tfor k,v in pairs(arg) do\n"
 							lout += "\t\tif type(v) == \"table\" then\n"
 							lout += "\t\tif type(v) == \"table\" then\n"
 							lout += "\t\t\tif v.__ptr ~= nil then\n"
 							lout += "\t\t\tif v.__ptr ~= nil then\n"
@@ -334,6 +344,21 @@ for fileName in files:
 							lout += "end\n\n"
 							lout += "end\n\n"
 
 
 					parsed_methods.append(pm["name"])
 					parsed_methods.append(pm["name"])
+	
+				#cleanup
+				sout += "\t\t{\"delete_%s\", Polycore_delete_%s},\n" % (ckey, ckey)
+				out += "static int Polycore_delete_%s(lua_State *L) {\n" % (ckey)
+				out += "\tluaL_checktype(L, 1, LUA_TLIGHTUSERDATA);\n"
+				out += "\t%s *inst = (%s*)lua_topointer(L, 1);\n" % (ckey.replace("Polygon", "Polycode::Polygon"), ckey.replace("Polygon", "Polycode::Polygon"))
+				out += "\tdelete inst;\n"
+				out += "\treturn 0;\n"
+				out += "}\n\n"
+
+				lout += "\n\n"
+				lout += "function %s:__delete()\n" % (ckey)
+				lout += "\tPolycore.__ptr_lookup[self.__ptr] = nil\n"
+				lout += "\tPolycore.delete_%s(self.__ptr)\n" % (ckey)
+				lout += "end\n"
 				if ckey == "EventHandler":
 				if ckey == "EventHandler":
 					lout += "\n\n"
 					lout += "\n\n"
 					lout += "function EventHandler:__handleEvent(event)\n"
 					lout += "function EventHandler:__handleEvent(event)\n"

File diff suppressed because it is too large
+ 635 - 291
Core/Build/Mac OS X/PolyCore.xcodeproj/project.xcworkspace/xcuserdata/ivansafrin.xcuserdatad/UserInterfaceState.xcuserstate


+ 4 - 0
Core/Contents/Include/PolyInputEvent.h

@@ -70,6 +70,10 @@ namespace Polycode {
 		*/
 		*/
 		Vector2 mousePosition;
 		Vector2 mousePosition;
 		
 		
+		Vector2 getMousePosition() { return mousePosition; }
+		PolyKEY getKey() { return key; }
+		int getMouseButton() { return mouseButton; }
+						
 		/**
 		/**
 		* If this is a key event, the key code that's coming down or up.
 		* If this is a key event, the key code that's coming down or up.
 		*/		
 		*/		

+ 162 - 0
Modules/Build/Mac OS X/Modules.xcodeproj/project.pbxproj

@@ -16,6 +16,21 @@
 		6D1B705612C29AFE0076D5C4 /* PolyCollisionSceneEntity.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D1B704D12C29AFE0076D5C4 /* PolyCollisionSceneEntity.cpp */; };
 		6D1B705612C29AFE0076D5C4 /* PolyCollisionSceneEntity.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D1B704D12C29AFE0076D5C4 /* PolyCollisionSceneEntity.cpp */; };
 		6D1B705712C29AFE0076D5C4 /* PolyPhysicsScene.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D1B704E12C29AFE0076D5C4 /* PolyPhysicsScene.cpp */; };
 		6D1B705712C29AFE0076D5C4 /* PolyPhysicsScene.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D1B704E12C29AFE0076D5C4 /* PolyPhysicsScene.cpp */; };
 		6D1B705812C29AFE0076D5C4 /* PolyPhysicsSceneEntity.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D1B704F12C29AFE0076D5C4 /* PolyPhysicsSceneEntity.cpp */; };
 		6D1B705812C29AFE0076D5C4 /* PolyPhysicsSceneEntity.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D1B704F12C29AFE0076D5C4 /* PolyPhysicsSceneEntity.cpp */; };
+		6D26112C13766DC300745E74 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D26112B13766DC300745E74 /* Cocoa.framework */; };
+		6D26112F13766DC900745E74 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D26112E13766DC900745E74 /* IOKit.framework */; };
+		6D26113113766DD500745E74 /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D26113013766DD500745E74 /* OpenGL.framework */; };
+		6D26113313766DDC00745E74 /* OpenAL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D26113213766DDC00745E74 /* OpenAL.framework */; };
+		6D28012F13766D1200BD8D0D /* PolyPhysicsScreen.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D580E0812D29FB5006FB999 /* PolyPhysicsScreen.cpp */; };
+		6D28013013766D1200BD8D0D /* PolyPhysicsScreenEntity.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D580E0912D29FB5006FB999 /* PolyPhysicsScreenEntity.cpp */; };
+		6D28013413766D7100BD8D0D /* libBox2D.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D28013313766D7000BD8D0D /* libBox2D.a */; };
+		6D28013613766D9000BD8D0D /* libPolyCore.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D28013513766D9000BD8D0D /* libPolyCore.a */; };
+		6D28013E13766D9F00BD8D0D /* libfreetype.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D28013713766D9C00BD8D0D /* libfreetype.a */; };
+		6D28013F13766D9F00BD8D0D /* libogg.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D28013813766D9C00BD8D0D /* libogg.a */; };
+		6D28014013766D9F00BD8D0D /* libphysfs.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D28013913766D9C00BD8D0D /* libphysfs.a */; };
+		6D28014113766D9F00BD8D0D /* libpng.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D28013A13766D9D00BD8D0D /* libpng.a */; };
+		6D28014213766D9F00BD8D0D /* libvorbis.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D28013B13766D9E00BD8D0D /* libvorbis.a */; };
+		6D28014313766D9F00BD8D0D /* libvorbisfile.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D28013C13766D9E00BD8D0D /* libvorbisfile.a */; };
+		6D28014413766D9F00BD8D0D /* libz.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D28013D13766D9F00BD8D0D /* libz.a */; };
 		6D4B04801312472200C62698 /* PolyGLSLProgram.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D4B047D1312472200C62698 /* PolyGLSLProgram.h */; };
 		6D4B04801312472200C62698 /* PolyGLSLProgram.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D4B047D1312472200C62698 /* PolyGLSLProgram.h */; };
 		6D4B04811312472200C62698 /* PolyGLSLShader.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D4B047E1312472200C62698 /* PolyGLSLShader.h */; };
 		6D4B04811312472200C62698 /* PolyGLSLShader.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D4B047E1312472200C62698 /* PolyGLSLShader.h */; };
 		6D4B04821312472200C62698 /* PolyGLSLShaderModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D4B047F1312472200C62698 /* PolyGLSLShaderModule.h */; };
 		6D4B04821312472200C62698 /* PolyGLSLShaderModule.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D4B047F1312472200C62698 /* PolyGLSLShaderModule.h */; };
@@ -75,6 +90,21 @@
 		6D1B704D12C29AFE0076D5C4 /* PolyCollisionSceneEntity.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PolyCollisionSceneEntity.cpp; sourceTree = "<group>"; };
 		6D1B704D12C29AFE0076D5C4 /* PolyCollisionSceneEntity.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PolyCollisionSceneEntity.cpp; sourceTree = "<group>"; };
 		6D1B704E12C29AFE0076D5C4 /* PolyPhysicsScene.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PolyPhysicsScene.cpp; sourceTree = "<group>"; };
 		6D1B704E12C29AFE0076D5C4 /* PolyPhysicsScene.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PolyPhysicsScene.cpp; sourceTree = "<group>"; };
 		6D1B704F12C29AFE0076D5C4 /* PolyPhysicsSceneEntity.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PolyPhysicsSceneEntity.cpp; sourceTree = "<group>"; };
 		6D1B704F12C29AFE0076D5C4 /* PolyPhysicsSceneEntity.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PolyPhysicsSceneEntity.cpp; sourceTree = "<group>"; };
+		6D26112B13766DC300745E74 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; };
+		6D26112E13766DC900745E74 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; };
+		6D26113013766DD500745E74 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = System/Library/Frameworks/OpenGL.framework; sourceTree = SDKROOT; };
+		6D26113213766DDC00745E74 /* OpenAL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenAL.framework; path = System/Library/Frameworks/OpenAL.framework; sourceTree = SDKROOT; };
+		6D28012A13766CE200BD8D0D /* libPolycode2DPhysicsModule.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = libPolycode2DPhysicsModule.dylib; sourceTree = BUILT_PRODUCTS_DIR; };
+		6D28013113766D4E00BD8D0D /* libPolyCore.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libPolyCore.a; path = "../../../Release/Mac OS X/Framework/Core/Lib/libPolyCore.a"; sourceTree = "<group>"; };
+		6D28013313766D7000BD8D0D /* libBox2D.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libBox2D.a; path = ../../../Core/Dependencies/box2d/Box2D/Box2D/Debug/libBox2D.a; sourceTree = "<group>"; };
+		6D28013513766D9000BD8D0D /* libPolyCore.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libPolyCore.a; path = "../../../Release/Mac OS X/Framework/Core/Lib/libPolyCore.a"; sourceTree = "<group>"; };
+		6D28013713766D9C00BD8D0D /* libfreetype.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libfreetype.a; path = "../../../Release/Mac OS X/Framework/Dependencies/Lib/libfreetype.a"; sourceTree = "<group>"; };
+		6D28013813766D9C00BD8D0D /* libogg.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libogg.a; path = "../../../Release/Mac OS X/Framework/Dependencies/Lib/libogg.a"; sourceTree = "<group>"; };
+		6D28013913766D9C00BD8D0D /* libphysfs.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libphysfs.a; path = "../../../Release/Mac OS X/Framework/Dependencies/Lib/libphysfs.a"; sourceTree = "<group>"; };
+		6D28013A13766D9D00BD8D0D /* libpng.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libpng.a; path = "../../../Release/Mac OS X/Framework/Dependencies/Lib/libpng.a"; sourceTree = "<group>"; };
+		6D28013B13766D9E00BD8D0D /* libvorbis.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvorbis.a; path = "../../../Release/Mac OS X/Framework/Dependencies/Lib/libvorbis.a"; sourceTree = "<group>"; };
+		6D28013C13766D9E00BD8D0D /* libvorbisfile.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvorbisfile.a; path = "../../../Release/Mac OS X/Framework/Dependencies/Lib/libvorbisfile.a"; sourceTree = "<group>"; };
+		6D28013D13766D9F00BD8D0D /* libz.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libz.a; path = "../../../Release/Mac OS X/Framework/Dependencies/Lib/libz.a"; sourceTree = "<group>"; };
 		6D4B04211312428500C62698 /* libPolycodeGLSL.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPolycodeGLSL.a; sourceTree = BUILT_PRODUCTS_DIR; };
 		6D4B04211312428500C62698 /* libPolycodeGLSL.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPolycodeGLSL.a; sourceTree = BUILT_PRODUCTS_DIR; };
 		6D4B047D1312472200C62698 /* PolyGLSLProgram.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PolyGLSLProgram.h; path = ../../Contents/GLSL/Include/PolyGLSLProgram.h; sourceTree = "<group>"; };
 		6D4B047D1312472200C62698 /* PolyGLSLProgram.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PolyGLSLProgram.h; path = ../../Contents/GLSL/Include/PolyGLSLProgram.h; sourceTree = "<group>"; };
 		6D4B047E1312472200C62698 /* PolyGLSLShader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PolyGLSLShader.h; path = ../../Contents/GLSL/Include/PolyGLSLShader.h; sourceTree = "<group>"; };
 		6D4B047E1312472200C62698 /* PolyGLSLShader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PolyGLSLShader.h; path = ../../Contents/GLSL/Include/PolyGLSLShader.h; sourceTree = "<group>"; };
@@ -143,6 +173,26 @@
 /* End PBXFileReference section */
 /* End PBXFileReference section */
 
 
 /* Begin PBXFrameworksBuildPhase section */
 /* Begin PBXFrameworksBuildPhase section */
+		6D28012713766CE200BD8D0D /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				6D26113313766DDC00745E74 /* OpenAL.framework in Frameworks */,
+				6D26113113766DD500745E74 /* OpenGL.framework in Frameworks */,
+				6D26112F13766DC900745E74 /* IOKit.framework in Frameworks */,
+				6D26112C13766DC300745E74 /* Cocoa.framework in Frameworks */,
+				6D28013413766D7100BD8D0D /* libBox2D.a in Frameworks */,
+				6D28013613766D9000BD8D0D /* libPolyCore.a in Frameworks */,
+				6D28013E13766D9F00BD8D0D /* libfreetype.a in Frameworks */,
+				6D28013F13766D9F00BD8D0D /* libogg.a in Frameworks */,
+				6D28014013766D9F00BD8D0D /* libphysfs.a in Frameworks */,
+				6D28014113766D9F00BD8D0D /* libpng.a in Frameworks */,
+				6D28014213766D9F00BD8D0D /* libvorbis.a in Frameworks */,
+				6D28014313766D9F00BD8D0D /* libvorbisfile.a in Frameworks */,
+				6D28014413766D9F00BD8D0D /* libz.a in Frameworks */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
 		6D4B041F1312428500C62698 /* Frameworks */ = {
 		6D4B041F1312428500C62698 /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			buildActionMask = 2147483647;
@@ -199,6 +249,20 @@
 		08FB7794FE84155DC02AAC07 /* Modules */ = {
 		08FB7794FE84155DC02AAC07 /* Modules */ = {
 			isa = PBXGroup;
 			isa = PBXGroup;
 			children = (
 			children = (
+				6D26113213766DDC00745E74 /* OpenAL.framework */,
+				6D26113013766DD500745E74 /* OpenGL.framework */,
+				6D26112E13766DC900745E74 /* IOKit.framework */,
+				6D26112B13766DC300745E74 /* Cocoa.framework */,
+				6D28013113766D4E00BD8D0D /* libPolyCore.a */,
+				6D28013513766D9000BD8D0D /* libPolyCore.a */,
+				6D28013713766D9C00BD8D0D /* libfreetype.a */,
+				6D28013813766D9C00BD8D0D /* libogg.a */,
+				6D28013913766D9C00BD8D0D /* libphysfs.a */,
+				6D28013A13766D9D00BD8D0D /* libpng.a */,
+				6D28013B13766D9E00BD8D0D /* libvorbis.a */,
+				6D28013C13766D9E00BD8D0D /* libvorbisfile.a */,
+				6D28013D13766D9F00BD8D0D /* libz.a */,
+				6D28013313766D7000BD8D0D /* libBox2D.a */,
 				6D994C9E134D8FAA0044DD0B /* Frameworks */,
 				6D994C9E134D8FAA0044DD0B /* Frameworks */,
 				08FB7795FE84155DC02AAC07 /* Source */,
 				08FB7795FE84155DC02AAC07 /* Source */,
 				C6A0FF2B0290797F04C91782 /* Documentation */,
 				C6A0FF2B0290797F04C91782 /* Documentation */,
@@ -231,6 +295,7 @@
 				6DFD116912DEA9C60080A2BE /* libPolycodeKinect.a */,
 				6DFD116912DEA9C60080A2BE /* libPolycodeKinect.a */,
 				6D4B04211312428500C62698 /* libPolycodeGLSL.a */,
 				6D4B04211312428500C62698 /* libPolycodeGLSL.a */,
 				6D994C7E134D8EEA0044DD0B /* libPolycodeGLSLModule.dylib */,
 				6D994C7E134D8EEA0044DD0B /* libPolycodeGLSLModule.dylib */,
+				6D28012A13766CE200BD8D0D /* libPolycode2DPhysicsModule.dylib */,
 			);
 			);
 			name = Products;
 			name = Products;
 			sourceTree = "<group>";
 			sourceTree = "<group>";
@@ -268,6 +333,13 @@
 			path = Source;
 			path = Source;
 			sourceTree = "<group>";
 			sourceTree = "<group>";
 		};
 		};
+		6D26113413766E6200745E74 /* Module */ = {
+			isa = PBXGroup;
+			children = (
+			);
+			name = Module;
+			sourceTree = "<group>";
+		};
 		6D4B047C1312470E00C62698 /* PolycodeGLSL */ = {
 		6D4B047C1312470E00C62698 /* PolycodeGLSL */ = {
 			isa = PBXGroup;
 			isa = PBXGroup;
 			children = (
 			children = (
@@ -284,6 +356,7 @@
 		6D580E0312D29FB5006FB999 /* 2DPhysics */ = {
 		6D580E0312D29FB5006FB999 /* 2DPhysics */ = {
 			isa = PBXGroup;
 			isa = PBXGroup;
 			children = (
 			children = (
+				6D26113413766E6200745E74 /* Module */,
 				6D580E0412D29FB5006FB999 /* Include */,
 				6D580E0412D29FB5006FB999 /* Include */,
 				6D580E0712D29FB5006FB999 /* Source */,
 				6D580E0712D29FB5006FB999 /* Source */,
 			);
 			);
@@ -427,6 +500,13 @@
 /* End PBXGroup section */
 /* End PBXGroup section */
 
 
 /* Begin PBXHeadersBuildPhase section */
 /* Begin PBXHeadersBuildPhase section */
+		6D28012813766CE200BD8D0D /* Headers */ = {
+			isa = PBXHeadersBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
 		6D4B041D1312428500C62698 /* Headers */ = {
 		6D4B041D1312428500C62698 /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			buildActionMask = 2147483647;
@@ -507,6 +587,23 @@
 /* End PBXHeadersBuildPhase section */
 /* End PBXHeadersBuildPhase section */
 
 
 /* Begin PBXNativeTarget section */
 /* Begin PBXNativeTarget section */
+		6D28012913766CE200BD8D0D /* Polycode2DPhysicsModule */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = 6D28012D13766CE200BD8D0D /* Build configuration list for PBXNativeTarget "Polycode2DPhysicsModule" */;
+			buildPhases = (
+				6D28012613766CE200BD8D0D /* Sources */,
+				6D28012713766CE200BD8D0D /* Frameworks */,
+				6D28012813766CE200BD8D0D /* Headers */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = Polycode2DPhysicsModule;
+			productName = Polycode2DPhysicsModule;
+			productReference = 6D28012A13766CE200BD8D0D /* libPolycode2DPhysicsModule.dylib */;
+			productType = "com.apple.product-type.library.dynamic";
+		};
 		6D4B04201312428500C62698 /* PolycodeGLSL */ = {
 		6D4B04201312428500C62698 /* PolycodeGLSL */ = {
 			isa = PBXNativeTarget;
 			isa = PBXNativeTarget;
 			buildConfigurationList = 6D4B04341312429E00C62698 /* Build configuration list for PBXNativeTarget "PolycodeGLSL" */;
 			buildConfigurationList = 6D4B04341312429E00C62698 /* Build configuration list for PBXNativeTarget "PolycodeGLSL" */;
@@ -652,11 +749,21 @@
 				6DFD116812DEA9C60080A2BE /* PolycodeKinect */,
 				6DFD116812DEA9C60080A2BE /* PolycodeKinect */,
 				6D4B04201312428500C62698 /* PolycodeGLSL */,
 				6D4B04201312428500C62698 /* PolycodeGLSL */,
 				6D994C7D134D8EEA0044DD0B /* PolycodeGLSLModule */,
 				6D994C7D134D8EEA0044DD0B /* PolycodeGLSLModule */,
+				6D28012913766CE200BD8D0D /* Polycode2DPhysicsModule */,
 			);
 			);
 		};
 		};
 /* End PBXProject section */
 /* End PBXProject section */
 
 
 /* Begin PBXSourcesBuildPhase section */
 /* Begin PBXSourcesBuildPhase section */
+		6D28012613766CE200BD8D0D /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				6D28012F13766D1200BD8D0D /* PolyPhysicsScreen.cpp in Sources */,
+				6D28013013766D1200BD8D0D /* PolyPhysicsScreenEntity.cpp in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
 		6D4B041E1312428500C62698 /* Sources */ = {
 		6D4B041E1312428500C62698 /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			buildActionMask = 2147483647;
@@ -776,6 +883,52 @@
 			};
 			};
 			name = Release;
 			name = Release;
 		};
 		};
+		6D28012B13766CE200BD8D0D /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				COPY_PHASE_STRIP = NO;
+				EXECUTABLE_PREFIX = lib;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_ENABLE_OBJC_EXCEPTIONS = YES;
+				GCC_PREPROCESSOR_DEFINITIONS = DEBUG;
+				GCC_SYMBOLS_PRIVATE_EXTERN = NO;
+				GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				LIBRARY_SEARCH_PATHS = (
+					"$(inherited)",
+					"\"$(SRCROOT)/../../../Release/Mac OS X/Framework/Core/Lib\"",
+					"\"$(SRCROOT)/../../../Core/Dependencies/box2d/Box2D/Box2D/Debug\"",
+					"\"$(SRCROOT)/../../../Release/Mac OS X/Framework/Dependencies/Lib\"",
+				);
+				MACOSX_DEPLOYMENT_TARGET = 10.6;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx;
+			};
+			name = Debug;
+		};
+		6D28012C13766CE200BD8D0D /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				COPY_PHASE_STRIP = YES;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				EXECUTABLE_PREFIX = lib;
+				GCC_ENABLE_OBJC_EXCEPTIONS = YES;
+				GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				LIBRARY_SEARCH_PATHS = (
+					"$(inherited)",
+					"\"$(SRCROOT)/../../../Release/Mac OS X/Framework/Core/Lib\"",
+					"\"$(SRCROOT)/../../../Core/Dependencies/box2d/Box2D/Box2D/Debug\"",
+					"\"$(SRCROOT)/../../../Release/Mac OS X/Framework/Dependencies/Lib\"",
+				);
+				MACOSX_DEPLOYMENT_TARGET = 10.6;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx;
+			};
+			name = Release;
+		};
 		6D4B04221312428500C62698 /* Debug */ = {
 		6D4B04221312428500C62698 /* Debug */ = {
 			isa = XCBuildConfiguration;
 			isa = XCBuildConfiguration;
 			buildSettings = {
 			buildSettings = {
@@ -1055,6 +1208,15 @@
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 			defaultConfigurationName = Release;
 		};
 		};
+		6D28012D13766CE200BD8D0D /* Build configuration list for PBXNativeTarget "Polycode2DPhysicsModule" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				6D28012B13766CE200BD8D0D /* Debug */,
+				6D28012C13766CE200BD8D0D /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
 		6D4B04341312429E00C62698 /* Build configuration list for PBXNativeTarget "PolycodeGLSL" */ = {
 		6D4B04341312429E00C62698 /* Build configuration list for PBXNativeTarget "PolycodeGLSL" */ = {
 			isa = XCConfigurationList;
 			isa = XCConfigurationList;
 			buildConfigurations = (
 			buildConfigurations = (

File diff suppressed because it is too large
+ 204 - 188
Modules/Build/Mac OS X/Modules.xcodeproj/project.xcworkspace/xcuserdata/ivansafrin.xcuserdatad/UserInterfaceState.xcuserstate


+ 58 - 0
Modules/Build/Mac OS X/Modules.xcodeproj/xcuserdata/ivansafrin.xcuserdatad/xcschemes/Polycode2DPhysicsModule.xcscheme

@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+   version = "1.3">
+   <BuildAction
+      parallelizeBuildables = "YES"
+      buildImplicitDependencies = "YES">
+      <BuildActionEntries>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "6D28012913766CE200BD8D0D"
+               BuildableName = "libPolycode2DPhysicsModule.dylib"
+               BlueprintName = "Polycode2DPhysicsModule"
+               ReferencedContainer = "container:Modules.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+      </BuildActionEntries>
+   </BuildAction>
+   <TestAction
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      buildConfiguration = "Debug">
+      <Testables>
+      </Testables>
+   </TestAction>
+   <LaunchAction
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
+      displayScaleIsEnabled = "NO"
+      displayScale = "1.00"
+      launchStyle = "0"
+      useCustomWorkingDirectory = "NO"
+      buildConfiguration = "Debug">
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </LaunchAction>
+   <ProfileAction
+      displayScaleIsEnabled = "NO"
+      displayScale = "1.00"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      savedToolIdentifier = ""
+      useCustomWorkingDirectory = "NO"
+      buildConfiguration = "Release">
+   </ProfileAction>
+   <AnalyzeAction
+      buildConfiguration = "Debug">
+   </AnalyzeAction>
+   <ArchiveAction
+      buildConfiguration = "Release"
+      revealArchiveInOrganizer = "YES">
+   </ArchiveAction>
+</Scheme>

+ 58 - 0
Modules/Build/Mac OS X/Modules.xcodeproj/xcuserdata/ivansafrin.xcuserdatad/xcschemes/PolycodeGLSLModule.xcscheme

@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+   version = "1.3">
+   <BuildAction
+      parallelizeBuildables = "YES"
+      buildImplicitDependencies = "YES">
+      <BuildActionEntries>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "6D994C7D134D8EEA0044DD0B"
+               BuildableName = "libPolycodeGLSLModule.dylib"
+               BlueprintName = "PolycodeGLSLModule"
+               ReferencedContainer = "container:Modules.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+      </BuildActionEntries>
+   </BuildAction>
+   <TestAction
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      buildConfiguration = "Debug">
+      <Testables>
+      </Testables>
+   </TestAction>
+   <LaunchAction
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
+      displayScaleIsEnabled = "NO"
+      displayScale = "1.00"
+      launchStyle = "0"
+      useCustomWorkingDirectory = "NO"
+      buildConfiguration = "Debug">
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </LaunchAction>
+   <ProfileAction
+      displayScaleIsEnabled = "NO"
+      displayScale = "1.00"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      savedToolIdentifier = ""
+      useCustomWorkingDirectory = "NO"
+      buildConfiguration = "Release">
+   </ProfileAction>
+   <AnalyzeAction
+      buildConfiguration = "Debug">
+   </AnalyzeAction>
+   <ArchiveAction
+      buildConfiguration = "Release"
+      revealArchiveInOrganizer = "YES">
+   </ArchiveAction>
+</Scheme>

+ 20 - 0
Modules/Build/Mac OS X/Modules.xcodeproj/xcuserdata/ivansafrin.xcuserdatad/xcschemes/xcschememanagement.plist

@@ -9,6 +9,11 @@
 			<key>orderHint</key>
 			<key>orderHint</key>
 			<integer>5</integer>
 			<integer>5</integer>
 		</dict>
 		</dict>
+		<key>Polycode2DPhysicsModule.xcscheme</key>
+		<dict>
+			<key>orderHint</key>
+			<integer>7</integer>
+		</dict>
 		<key>Polycode3DPhysics.xcscheme</key>
 		<key>Polycode3DPhysics.xcscheme</key>
 		<dict>
 		<dict>
 			<key>orderHint</key>
 			<key>orderHint</key>
@@ -24,6 +29,11 @@
 			<key>orderHint</key>
 			<key>orderHint</key>
 			<integer>2</integer>
 			<integer>2</integer>
 		</dict>
 		</dict>
+		<key>PolycodeGLSLModule.xcscheme</key>
+		<dict>
+			<key>orderHint</key>
+			<integer>6</integer>
+		</dict>
 		<key>PolycodeKinect.xcscheme</key>
 		<key>PolycodeKinect.xcscheme</key>
 		<dict>
 		<dict>
 			<key>orderHint</key>
 			<key>orderHint</key>
@@ -37,6 +47,11 @@
 	</dict>
 	</dict>
 	<key>SuppressBuildableAutocreation</key>
 	<key>SuppressBuildableAutocreation</key>
 	<dict>
 	<dict>
+		<key>6D28012913766CE200BD8D0D</key>
+		<dict>
+			<key>primary</key>
+			<true/>
+		</dict>
 		<key>6D4B04201312428500C62698</key>
 		<key>6D4B04201312428500C62698</key>
 		<dict>
 		<dict>
 			<key>primary</key>
 			<key>primary</key>
@@ -52,6 +67,11 @@
 			<key>primary</key>
 			<key>primary</key>
 			<true/>
 			<true/>
 		</dict>
 		</dict>
+		<key>6D994C7D134D8EEA0044DD0B</key>
+		<dict>
+			<key>primary</key>
+			<true/>
+		</dict>
 		<key>6DFB00FB12A736A900C43A7D</key>
 		<key>6DFB00FB12A736A900C43A7D</key>
 		<dict>
 		<dict>
 			<key>primary</key>
 			<key>primary</key>

+ 20 - 9
Modules/Contents/2DPhysics/Include/PolyPhysicsScreen.h

@@ -1,13 +1,24 @@
 /*
 /*
- *  PolyPhysicsScreen.h
- *  Poly
- *
- *  Created by Ivan Safrin on 5/8/08.
- *  Copyright 2008 __MyCompanyName__. All rights reserved.
- *
- */
-
-// @package ScreenPhysics
+Copyright (C) 2011 by Ivan Safrin
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+*/
 
 
 #pragma once
 #pragma once
 #include "PolyGlobals.h"
 #include "PolyGlobals.h"

+ 20 - 9
Modules/Contents/2DPhysics/Include/PolyPhysicsScreenEntity.h

@@ -1,13 +1,24 @@
 /*
 /*
- *  PolyPhysicsScreenEntity.h
- *  Poly
- *
- *  Created by Ivan Safrin on 5/8/08.
- *  Copyright 2008 __MyCompanyName__. All rights reserved.
- *
- */
- 
-// @package ScreenPhysics
+Copyright (C) 2011 by Ivan Safrin
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+*/
 
 
 #pragma once
 #pragma once
 #include "PolyGlobals.h"
 #include "PolyGlobals.h"

+ 20 - 7
Modules/Contents/2DPhysics/Source/PolyPhysicsScreen.cpp

@@ -1,11 +1,24 @@
 /*
 /*
- *  PolyPhysicsScreen.cpp
- *  Poly
- *
- *  Created by Ivan Safrin on 5/8/08.
- *  Copyright 2008 __MyCompanyName__. All rights reserved.
- *
- */
+Copyright (C) 2011 by Ivan Safrin
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+*/
 
 
 
 
 #include "PolyPhysicsScreen.h"
 #include "PolyPhysicsScreen.h"

Some files were not shown because too many files changed in this diff