Parcourir la source

Merge pull request #1643 from seanpaultaylor/next

Visual Studio changes for 2D Sprite, TileSet and Text support
Sean Taylor il y a 11 ans
Parent
commit
008e16d12d

+ 6 - 2
gameplay/gameplay.vcxproj

@@ -97,7 +97,6 @@
     <ClCompile Include="src\lua\lua_FileSystem.cpp" />
     <ClCompile Include="src\lua\lua_FlowLayout.cpp" />
     <ClCompile Include="src\lua\lua_Font.cpp" />
-    <ClCompile Include="src\lua\lua_FontText.cpp" />
     <ClCompile Include="src\lua\lua_Form.cpp" />
     <ClCompile Include="src\lua\lua_FrameBuffer.cpp" />
     <ClCompile Include="src\lua\lua_Frustum.cpp" />
@@ -239,14 +238,17 @@
     <ClCompile Include="src\ScriptController.cpp" />
     <ClCompile Include="src\ScriptTarget.cpp" />
     <ClCompile Include="src\Slider.cpp" />
+    <ClCompile Include="src\Sprite.cpp" />
     <ClCompile Include="src\SpriteBatch.cpp" />
     <ClCompile Include="src\Technique.cpp" />
     <ClCompile Include="src\Terrain.cpp" />
     <ClCompile Include="src\TerrainPatch.cpp" />
+    <ClCompile Include="src\Text.cpp" />
     <ClCompile Include="src\TextBox.cpp" />
     <ClCompile Include="src\Texture.cpp" />
     <ClCompile Include="src\Theme.cpp" />
     <ClCompile Include="src\ThemeStyle.cpp" />
+    <ClCompile Include="src\TileSet.cpp" />
     <ClCompile Include="src\Transform.cpp" />
     <ClCompile Include="src\Vector2.cpp" />
     <ClCompile Include="src\Vector3.cpp" />
@@ -339,7 +341,6 @@
     <ClInclude Include="src\lua\lua_FileSystem.h" />
     <ClInclude Include="src\lua\lua_FlowLayout.h" />
     <ClInclude Include="src\lua\lua_Font.h" />
-    <ClInclude Include="src\lua\lua_FontText.h" />
     <ClInclude Include="src\lua\lua_Form.h" />
     <ClInclude Include="src\lua\lua_FrameBuffer.h" />
     <ClInclude Include="src\lua\lua_Frustum.h" />
@@ -479,15 +480,18 @@
     <ClInclude Include="src\ScriptController.h" />
     <ClInclude Include="src\ScriptTarget.h" />
     <ClInclude Include="src\Slider.h" />
+    <ClInclude Include="src\Sprite.h" />
     <ClInclude Include="src\SpriteBatch.h" />
     <ClInclude Include="src\Stream.h" />
     <ClInclude Include="src\Technique.h" />
     <ClInclude Include="src\Terrain.h" />
     <ClInclude Include="src\TerrainPatch.h" />
+    <ClInclude Include="src\Text.h" />
     <ClInclude Include="src\TextBox.h" />
     <ClInclude Include="src\Texture.h" />
     <ClInclude Include="src\Theme.h" />
     <ClInclude Include="src\ThemeStyle.h" />
+    <ClInclude Include="src\TileSet.h" />
     <ClInclude Include="src\TimeListener.h" />
     <ClInclude Include="src\Touch.h" />
     <ClInclude Include="src\Transform.h" />

+ 14 - 14
gameplay/gameplay.vcxproj.filters

@@ -444,9 +444,6 @@
     <ClCompile Include="src\lua\lua_Font.cpp">
       <Filter>src\lua</Filter>
     </ClCompile>
-    <ClCompile Include="src\lua\lua_FontText.cpp">
-      <Filter>src\lua</Filter>
-    </ClCompile>
     <ClCompile Include="src\lua\lua_Form.cpp">
       <Filter>src\lua</Filter>
     </ClCompile>
@@ -738,11 +735,14 @@
     <ClCompile Include="src\lua\lua_ScriptTargetEventRegistry.cpp">
       <Filter>src\lua</Filter>
     </ClCompile>
-    <ClCompile Include="src\lua\lua_TextureCubeFace.cpp">
-      <Filter>src\lua</Filter>
+    <ClCompile Include="src\Sprite.cpp">
+      <Filter>src</Filter>
     </ClCompile>
-    <ClCompile Include="src\lua\lua_TextureType.cpp">
-      <Filter>src\lua</Filter>
+    <ClCompile Include="src\Text.cpp">
+      <Filter>src</Filter>
+    </ClCompile>
+    <ClCompile Include="src\TileSet.cpp">
+      <Filter>src</Filter>
     </ClCompile>
   </ItemGroup>
   <ItemGroup>
@@ -1175,9 +1175,6 @@
     <ClInclude Include="src\lua\lua_Font.h">
       <Filter>src\lua</Filter>
     </ClInclude>
-    <ClInclude Include="src\lua\lua_FontText.h">
-      <Filter>src\lua</Filter>
-    </ClInclude>
     <ClInclude Include="src\lua\lua_Form.h">
       <Filter>src\lua</Filter>
     </ClInclude>
@@ -1469,11 +1466,14 @@
     <ClInclude Include="src\lua\lua_ScriptTargetEventRegistry.h">
       <Filter>src\lua</Filter>
     </ClInclude>
-    <ClInclude Include="src\lua\lua_TextureCubeFace.h">
-      <Filter>src\lua</Filter>
+    <ClInclude Include="src\Sprite.h">
+      <Filter>src</Filter>
     </ClInclude>
-    <ClInclude Include="src\lua\lua_TextureType.h">
-      <Filter>src\lua</Filter>
+    <ClInclude Include="src\Text.h">
+      <Filter>src</Filter>
+    </ClInclude>
+    <ClInclude Include="src\TileSet.h">
+      <Filter>src</Filter>
     </ClInclude>
   </ItemGroup>
   <ItemGroup>

+ 1 - 1
gameplay/src/Sprite.cpp

@@ -35,7 +35,7 @@ Sprite* Sprite::create(const char* imagePath, float width, float height,
 {
     GP_ASSERT(imagePath != NULL);
     GP_ASSERT(width >= -1 && height >= -1);
-    GP_ASSERT(source.width >= -1 && source.heigh >= -1);
+    GP_ASSERT(source.width >= -1 && source.height >= -1);
     GP_ASSERT(frameCount > 0);
     
     SpriteBatch* batch = SpriteBatch::create(imagePath, effect);

+ 0 - 155
gameplay/src/lua/lua_FontText.cpp

@@ -1,155 +0,0 @@
-// Autogenerated by gameplay-luagen
-#include "Base.h"
-#include "ScriptController.h"
-#include "lua_FontText.h"
-#include "Base.h"
-#include "Bundle.h"
-#include "FileSystem.h"
-#include "Font.h"
-#include "Game.h"
-#include "Ref.h"
-
-namespace gameplay
-{
-
-void luaRegister_FontText()
-{
-    const luaL_Reg lua_members[] = 
-    {
-        {"getText", lua_FontText_getText},
-        {NULL, NULL}
-    };
-    const luaL_Reg* lua_statics = NULL;
-    std::vector<std::string> scopePath;
-    scopePath.push_back("Font");
-
-    gameplay::ScriptUtil::registerClass("FontText", lua_members, lua_FontText__init, lua_FontText__gc, lua_statics, scopePath);
-}
-
-static Font::Text* getInstance(lua_State* state)
-{
-    void* userdata = luaL_checkudata(state, 1, "FontText");
-    luaL_argcheck(state, userdata != NULL, 1, "'FontText' expected.");
-    return (Font::Text*)((gameplay::ScriptUtil::LuaObject*)userdata)->instance;
-}
-
-int lua_FontText__gc(lua_State* state)
-{
-    // Get the number of parameters.
-    int paramCount = lua_gettop(state);
-
-    // Attempt to match the parameters to a valid binding.
-    switch (paramCount)
-    {
-        case 1:
-        {
-            if ((lua_type(state, 1) == LUA_TUSERDATA))
-            {
-                void* userdata = luaL_checkudata(state, 1, "FontText");
-                luaL_argcheck(state, userdata != NULL, 1, "'FontText' expected.");
-                gameplay::ScriptUtil::LuaObject* object = (gameplay::ScriptUtil::LuaObject*)userdata;
-                if (object->owns)
-                {
-                    Font::Text* instance = (Font::Text*)object->instance;
-                    SAFE_DELETE(instance);
-                }
-                
-                return 0;
-            }
-
-            lua_pushstring(state, "lua_FontText__gc - Failed to match the given parameters to a valid function signature.");
-            lua_error(state);
-            break;
-        }
-        default:
-        {
-            lua_pushstring(state, "Invalid number of parameters (expected 1).");
-            lua_error(state);
-            break;
-        }
-    }
-    return 0;
-}
-
-int lua_FontText__init(lua_State* state)
-{
-    // Get the number of parameters.
-    int paramCount = lua_gettop(state);
-
-    // Attempt to match the parameters to a valid binding.
-    switch (paramCount)
-    {
-        case 1:
-        {
-            if ((lua_type(state, 1) == LUA_TSTRING || lua_type(state, 1) == LUA_TNIL))
-            {
-                // Get parameter 1 off the stack.
-                const char* param1 = gameplay::ScriptUtil::getString(1, false);
-
-                void* returnPtr = ((void*)new Font::Text(param1));
-                if (returnPtr)
-                {
-                    gameplay::ScriptUtil::LuaObject* object = (gameplay::ScriptUtil::LuaObject*)lua_newuserdata(state, sizeof(gameplay::ScriptUtil::LuaObject));
-                    object->instance = returnPtr;
-                    object->owns = true;
-                    luaL_getmetatable(state, "FontText");
-                    lua_setmetatable(state, -2);
-                }
-                else
-                {
-                    lua_pushnil(state);
-                }
-
-                return 1;
-            }
-
-            lua_pushstring(state, "lua_FontText__init - Failed to match the given parameters to a valid function signature.");
-            lua_error(state);
-            break;
-        }
-        default:
-        {
-            lua_pushstring(state, "Invalid number of parameters (expected 1).");
-            lua_error(state);
-            break;
-        }
-    }
-    return 0;
-}
-
-int lua_FontText_getText(lua_State* state)
-{
-    // Get the number of parameters.
-    int paramCount = lua_gettop(state);
-
-    // Attempt to match the parameters to a valid binding.
-    switch (paramCount)
-    {
-        case 1:
-        {
-            if ((lua_type(state, 1) == LUA_TUSERDATA))
-            {
-                Font::Text* instance = getInstance(state);
-                const char* result = instance->getText();
-
-                // Push the return value onto the stack.
-                lua_pushstring(state, result);
-
-                return 1;
-            }
-
-            lua_pushstring(state, "lua_FontText_getText - Failed to match the given parameters to a valid function signature.");
-            lua_error(state);
-            break;
-        }
-        default:
-        {
-            lua_pushstring(state, "Invalid number of parameters (expected 1).");
-            lua_error(state);
-            break;
-        }
-    }
-    return 0;
-}
-
-}

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

@@ -1,17 +0,0 @@
-// Autogenerated by gameplay-luagen
-#ifndef LUA_FONTTEXT_H_
-#define LUA_FONTTEXT_H_
-
-namespace gameplay
-{
-
-// Lua bindings for Font::Text.
-int lua_FontText__gc(lua_State* state);
-int lua_FontText__init(lua_State* state);
-int lua_FontText_getText(lua_State* state);
-
-void luaRegister_FontText();
-
-}
-
-#endif

+ 8 - 6
samples/browser/sample-browser.vcxproj

@@ -264,25 +264,26 @@ copy ..\..\gameplay\res\logo_powered_white.png res</Command>
   <ItemGroup>
     <ClCompile Include="src\Audio3DSample.cpp" />
     <ClCompile Include="src\BillboardSample.cpp" />
-    <ClCompile Include="src\CreateSceneSample.cpp" />
+    <ClCompile Include="src\FontSample.cpp" />
     <ClCompile Include="src\FormsSample.cpp" />
     <ClCompile Include="src\GamepadSample.cpp" />
     <ClCompile Include="src\GestureSample.cpp" />
     <ClCompile Include="src\LightSample.cpp" />
     <ClCompile Include="src\ParticlesSample.cpp" />
     <ClCompile Include="src\PostProcessSample.cpp" />
+    <ClCompile Include="src\SceneCreateSample.cpp" />
+    <ClCompile Include="src\SceneLoadSample.cpp" />
+    <ClCompile Include="src\SpriteSample.cpp" />
     <ClCompile Include="src\TerrainSample.cpp" />
     <ClCompile Include="src\TriangleSample.cpp" />
     <ClCompile Include="src\FirstPersonCamera.cpp" />
     <ClCompile Include="src\Grid.cpp" />
     <ClCompile Include="src\InputSample.cpp" />
-    <ClCompile Include="src\LoadSceneSample.cpp" />
     <ClCompile Include="src\MeshPrimitiveSample.cpp" />
     <ClCompile Include="src\PhysicsCollisionObjectSample.cpp" />
     <ClCompile Include="src\SpriteBatchSample.cpp" />
     <ClCompile Include="src\Sample.cpp" />
     <ClCompile Include="src\SamplesGame.cpp" />
-    <ClCompile Include="src\TextSample.cpp" />
     <ClCompile Include="src\TextureSample.cpp" />
     <ClCompile Include="src\MeshBatchSample.cpp" />
     <ClCompile Include="src\WaterSample.cpp" />
@@ -290,25 +291,26 @@ copy ..\..\gameplay\res\logo_powered_white.png res</Command>
   <ItemGroup>
     <ClInclude Include="src\Audio3DSample.h" />
     <ClInclude Include="src\BillboardSample.h" />
-    <ClInclude Include="src\CreateSceneSample.h" />
+    <ClInclude Include="src\FontSample.h" />
     <ClInclude Include="src\FormsSample.h" />
     <ClInclude Include="src\GamepadSample.h" />
     <ClInclude Include="src\GestureSample.h" />
     <ClInclude Include="src\LightSample.h" />
     <ClInclude Include="src\ParticlesSample.h" />
     <ClInclude Include="src\PostProcessSample.h" />
+    <ClInclude Include="src\SceneCreateSample.h" />
+    <ClInclude Include="src\SceneLoadSample.h" />
+    <ClInclude Include="src\SpriteSample.h" />
     <ClInclude Include="src\TerrainSample.h" />
     <ClInclude Include="src\TriangleSample.h" />
     <ClInclude Include="src\FirstPersonCamera.h" />
     <ClInclude Include="src\Grid.h" />
     <ClInclude Include="src\InputSample.h" />
-    <ClInclude Include="src\LoadSceneSample.h" />
     <ClInclude Include="src\MeshPrimitiveSample.h" />
     <ClInclude Include="src\PhysicsCollisionObjectSample.h" />
     <ClInclude Include="src\SpriteBatchSample.h" />
     <ClInclude Include="src\Sample.h" />
     <ClInclude Include="src\SamplesGame.h" />
-    <ClInclude Include="src\TextSample.h" />
     <ClInclude Include="src\TextureSample.h" />
     <ClInclude Include="src\MeshBatchSample.h" />
     <ClInclude Include="src\WaterSample.h" />

+ 35 - 18
samples/browser/sample-browser.vcxproj.filters

@@ -251,26 +251,28 @@
     <None Include="res\common\fonts\neuropol.gpb">
       <Filter>res\common\fonts</Filter>
     </None>
+    <None Include="res\common\particles\editor.form" />
+    <None Include="res\common\particles\editor.theme" />
+    <None Include="res\common\particles\explosion.particle" />
+    <None Include="res\common\particles\fire.particle" />
+    <None Include="res\common\particles\grid.material" />
+    <None Include="res\common\particles\smoke.particle" />
+    <None Include="res\common\water\pond.gpb" />
+    <None Include="res\common\water\watersample.frag" />
+    <None Include="res\common\water\watersample.material" />
+    <None Include="res\common\water\watersample.scene" />
+    <None Include="res\common\water\watersample.vert" />
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="src\MeshPrimitiveSample.h">
       <Filter>src</Filter>
     </ClInclude>
-    <ClInclude Include="src\CreateSceneSample.h">
-      <Filter>src</Filter>
-    </ClInclude>
     <ClInclude Include="src\Audio3DSample.h">
       <Filter>src</Filter>
     </ClInclude>
     <ClInclude Include="src\InputSample.h">
       <Filter>src</Filter>
     </ClInclude>
-    <ClInclude Include="src\LoadSceneSample.h">
-      <Filter>src</Filter>
-    </ClInclude>
-    <ClInclude Include="src\TextSample.h">
-      <Filter>src</Filter>
-    </ClInclude>
     <ClInclude Include="src\TextureSample.h">
       <Filter>src</Filter>
     </ClInclude>
@@ -322,26 +324,26 @@
     <ClInclude Include="src\WaterSample.h">
       <Filter>src</Filter>
     </ClInclude>
+    <ClInclude Include="src\ParticlesSample.h" />
+    <ClInclude Include="src\FontSample.h" />
+    <ClInclude Include="src\SpriteSample.h" />
+    <ClInclude Include="src\SceneCreateSample.h">
+      <Filter>src</Filter>
+    </ClInclude>
+    <ClInclude Include="src\SceneLoadSample.h">
+      <Filter>src</Filter>
+    </ClInclude>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="src\MeshPrimitiveSample.cpp">
       <Filter>src</Filter>
     </ClCompile>
-    <ClCompile Include="src\CreateSceneSample.cpp">
-      <Filter>src</Filter>
-    </ClCompile>
     <ClCompile Include="src\Audio3DSample.cpp">
       <Filter>src</Filter>
     </ClCompile>
     <ClCompile Include="src\InputSample.cpp">
       <Filter>src</Filter>
     </ClCompile>
-    <ClCompile Include="src\LoadSceneSample.cpp">
-      <Filter>src</Filter>
-    </ClCompile>
-    <ClCompile Include="src\TextSample.cpp">
-      <Filter>src</Filter>
-    </ClCompile>
     <ClCompile Include="src\TextureSample.cpp">
       <Filter>src</Filter>
     </ClCompile>
@@ -393,6 +395,15 @@
     <ClCompile Include="src\WaterSample.cpp">
       <Filter>src</Filter>
     </ClCompile>
+    <ClCompile Include="src\ParticlesSample.cpp" />
+    <ClCompile Include="src\FontSample.cpp" />
+    <ClCompile Include="src\SpriteSample.cpp" />
+    <ClCompile Include="src\SceneCreateSample.cpp">
+      <Filter>src</Filter>
+    </ClCompile>
+    <ClCompile Include="src\SceneLoadSample.cpp">
+      <Filter>src</Filter>
+    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <Image Include="res\common\terrain\dirt.dds">
@@ -452,6 +463,12 @@
     <Image Include="res\png\logo.png">
       <Filter>res\png</Filter>
     </Image>
+    <Image Include="res\common\particles\editor.png" />
+    <Image Include="res\common\particles\explosion.png" />
+    <Image Include="res\common\particles\fire.png" />
+    <Image Include="res\common\particles\smoke.png" />
+    <Image Include="res\common\water\water_normal.png" />
+    <Image Include="res\common\water\water_sample.png" />
   </ItemGroup>
   <ItemGroup>
     <Media Include="res\common\footsteps.wav">