From 6ab67e8f869f06a04bbfb0ca0726c800c982220c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20=E2=80=98Touky=E2=80=99=20Huet?= Date: Fri, 1 May 2015 04:10:26 +0000 Subject: [PATCH] btPhysTest is working again, but it still has 7 Ticker::Unref(Shader) that should be there ...... --- doc/samples/btphystest.cpp | 162 +++++++++++++--------- doc/samples/btphystest.h | 50 +++++-- doc/samples/physicobject.h | 210 ++++++++++++++++++++--------- src/easymesh/easymesh.h | 10 +- src/easymesh/easymeshtransform.cpp | 12 +- src/gpu/shader.cpp | 2 +- src/lol/base/string.h | 6 +- src/scene.h | 2 +- 8 files changed, 298 insertions(+), 156 deletions(-) diff --git a/doc/samples/btphystest.cpp b/doc/samples/btphystest.cpp index 0c8c5505..48a1eef2 100644 --- a/doc/samples/btphystest.cpp +++ b/doc/samples/btphystest.cpp @@ -17,7 +17,7 @@ using namespace lol; #include "physics/lolphysics.h" #include "physics/easyphysics.h" -#define CAT_MODE 1 +#define CAT_MODE 0 #define OBJ_SIZE 2.f #define NB_SPRITE 4 #define PARTICLE_SIZE 4 @@ -36,17 +36,17 @@ using namespace lol::phys; #define JUMP_STRAFE .5f #define TARGET_TIMER 10.f + (rand(4.f) - 2.f) -int gNumObjects = 64; +int gNumObjects = 16; #if CAT_MODE #define USE_WALL 1 #define USE_BODIES 1 #else #define USE_WALL 1 -#define USE_PLATFORM 1 +#define USE_PLATFORM 0 #define USE_ROPE 0 #define USE_BODIES 1 -#define USE_ROTATION 0 +#define USE_ROTATION 1 #define USE_CHARACTER 0 #define USE_STAIRS 0 #endif @@ -71,6 +71,14 @@ void BtPhysTest::InitApp() m_loc_dp = .0f; #endif //CAT_MODE +#if 1 //HAS_INPUT + InputProfile& ip = m_profile; + ip.AddBindings(InputProfileType::Keyboard); + + m_controller = new Controller("Default"); + m_controller->Init(m_profile); + Ticker::Ref(m_controller); +#else /* Register an input controller for the keyboard */ m_controller = new Controller("Default"); m_controller->SetInputCount(KEY_MAX, 0); @@ -82,6 +90,7 @@ void BtPhysTest::InitApp() m_controller->GetKey(KEY_MOVE_UP).Bind("Keyboard", "PageUp"); m_controller->GetKey(KEY_MOVE_DOWN).Bind("Keyboard", "PageDown"); m_controller->GetKey(KEY_QUIT).Bind("Keyboard", "Escape"); +#endif /* Create a camera that matches the settings of XNA BtPhysTest */ m_camera = new Camera(); @@ -301,6 +310,88 @@ void BtPhysTest::InitApp() #endif //USE_ROPE } +BtPhysTest::~BtPhysTest() +{ + Scene& scene = Scene::GetScene(); + scene.PopCamera(m_camera); + Ticker::Unref(m_controller); + Ticker::Unref(m_light1); + Ticker::Unref(m_light2); + +#if CAT_MODE + /* cat datas setup */ + Shader::Destroy(m_cat_shader); + Tiler::Deregister(m_cat_texture); +#endif //CAT_MODE + + while (m_constraint_list.count()) + { + EasyConstraint* CurPop = m_constraint_list.last(); + m_constraint_list.pop(); + CurPop->RemoveFromSimulation(m_simulation); + delete CurPop; + } + array objects + = m_ground_list + + m_stairs_list + + m_character_list + + m_platform_list; + while (m_physobj_list.count()) + { + objects << m_physobj_list.last().m1; + m_physobj_list.pop(); + } + m_ground_list.empty(); + m_stairs_list.empty(); + m_character_list.empty(); + m_platform_list.empty(); + + while (objects.count()) + { + PhysicsObject* CurPop = objects.pop(); + CurPop->GetPhysic()->RemoveFromSimulation(m_simulation); + Ticker::Unref(CurPop); + } + + //while (m_ground_list.count()) + //{ + // PhysicsObject* CurPop = m_ground_list.last(); + // m_ground_list.pop(); + // CurPop->GetPhysic()->RemoveFromSimulation(m_simulation); + // Ticker::Unref(CurPop); + //} + //while (m_stairs_list.count()) + //{ + // PhysicsObject* CurPop = m_stairs_list.last(); + // m_stairs_list.pop(); + // CurPop->GetPhysic()->RemoveFromSimulation(m_simulation); + // Ticker::Unref(CurPop); + //} + //while (m_character_list.count()) + //{ + // PhysicsObject* CurPop = m_character_list.last(); + // m_character_list.pop(); + // CurPop->GetCharacter()->RemoveFromSimulation(m_simulation); + // Ticker::Unref(CurPop); + //} + //while (m_platform_list.count()) + //{ + // PhysicsObject* CurPop = m_platform_list.last(); + // m_platform_list.pop(); + // CurPop->GetPhysic()->RemoveFromSimulation(m_simulation); + // Ticker::Unref(CurPop); + //} + //while (m_physobj_list.count()) + //{ + // PhysicsObject* CurPop = m_physobj_list.last().m1; + // m_physobj_list.pop(); + // CurPop->GetPhysic()->RemoveFromSimulation(m_simulation); + // Ticker::Unref(CurPop); + //} + Ticker::Unref(m_simulation); + +} + void BtPhysTest::TickGame(float seconds) { WorldEntity::TickGame(seconds); @@ -317,8 +408,10 @@ void BtPhysTest::TickGame(float seconds) return; } + Debug::DrawSetupSegment(1.f); + Debug::DrawGrid(vec3::zero, vec3::axis_x, vec3::axis_y, vec3::axis_z, 10.f); - if (m_controller->WasKeyReleasedThisFrame(KEY_QUIT)) + if (m_controller->WasKeyReleasedThisFrame(BtPhysTestKeyInput::KEY_QUIT)) Ticker::Shutdown(); m_loop_value += seconds; @@ -619,65 +712,6 @@ void BtPhysTest::TickDraw(float seconds, Scene &scene) } -BtPhysTest::~BtPhysTest() -{ - Scene& scene = Scene::GetScene(); - scene.PopCamera(m_camera); - Ticker::Unref(m_light1); - Ticker::Unref(m_light2); - -#if CAT_MODE - /* cat datas setup */ - Shader::Destroy(m_cat_shader); - Tiler::Deregister(m_cat_texture); -#endif //CAT_MODE - - while (m_constraint_list.count()) - { - EasyConstraint* CurPop = m_constraint_list.last(); - m_constraint_list.pop(); - CurPop->RemoveFromSimulation(m_simulation); - delete CurPop; - } - while (m_ground_list.count()) - { - PhysicsObject* CurPop = m_ground_list.last(); - m_ground_list.pop(); - CurPop->GetPhysic()->RemoveFromSimulation(m_simulation); - Ticker::Unref(CurPop); - } - while (m_stairs_list.count()) - { - PhysicsObject* CurPop = m_stairs_list.last(); - m_stairs_list.pop(); - CurPop->GetPhysic()->RemoveFromSimulation(m_simulation); - Ticker::Unref(CurPop); - } - while (m_character_list.count()) - { - PhysicsObject* CurPop = m_character_list.last(); - m_character_list.pop(); - CurPop->GetCharacter()->RemoveFromSimulation(m_simulation); - Ticker::Unref(CurPop); - } - while (m_platform_list.count()) - { - PhysicsObject* CurPop = m_platform_list.last(); - m_platform_list.pop(); - CurPop->GetPhysic()->RemoveFromSimulation(m_simulation); - Ticker::Unref(CurPop); - } - while (m_physobj_list.count()) - { - PhysicsObject* CurPop = m_physobj_list.last().m1; - m_physobj_list.pop(); - CurPop->GetPhysic()->RemoveFromSimulation(m_simulation); - Ticker::Unref(CurPop); - } - Ticker::Unref(m_simulation); - -} - //----------------------------------------------------------------------------- // CShaderData //----------------------------------------------------------------------------- diff --git a/doc/samples/btphystest.h b/doc/samples/btphystest.h index 75b16a29..cc11751c 100644 --- a/doc/samples/btphystest.h +++ b/doc/samples/btphystest.h @@ -43,26 +43,50 @@ protected: void InitApp(); private: - enum + //MeshViewerInput --------------------------------------------------------- + struct BtPhysTestKeyInputBase : public StructSafeEnum { - KEY_MOVE_FORWARD, - KEY_MOVE_BACK, - KEY_MOVE_LEFT, - KEY_MOVE_RIGHT, - KEY_MOVE_UP, - KEY_MOVE_DOWN, - KEY_MOVE_JUMP, - KEY_QUIT, - KEY_MAX, + enum Type + { + KEY_START = 0, + + KEY_MOVE_FORWARD = KEY_START, + KEY_MOVE_BACK, + KEY_MOVE_LEFT, + KEY_MOVE_RIGHT, + KEY_MOVE_UP, + KEY_MOVE_DOWN, + KEY_MOVE_JUMP, + KEY_QUIT, + + KEY_MAX + }; + protected: + virtual bool BuildEnumMap(map& enum_map) + { + enum_map[KEY_MOVE_FORWARD] = g_name_key_Up; + enum_map[KEY_MOVE_BACK] = g_name_key_Down; + enum_map[KEY_MOVE_LEFT] = g_name_key_Left; + enum_map[KEY_MOVE_RIGHT] = g_name_key_Right; + enum_map[KEY_MOVE_UP] = g_name_key_PageUp; + enum_map[KEY_MOVE_DOWN] = g_name_key_PageDown; + enum_map[KEY_MOVE_JUMP] = g_name_key_Space; + enum_map[KEY_QUIT] = g_name_key_Escape; + + return true; + } }; + typedef SafeEnum BtPhysTestKeyInput; + TileSet* m_cat_texture; Shader* m_cat_shader; CatShaderData* m_cat_sdata; Camera* m_camera; - Controller * m_controller; - Light * m_light1; - Light * m_light2; + Controller* m_controller; + InputProfile m_profile; + Light* m_light1; + Light* m_light2; int m_init_status; bool m_ready; diff --git a/doc/samples/physicobject.h b/doc/samples/physicobject.h index 893657ca..a7236d25 100644 --- a/doc/samples/physicobject.h +++ b/doc/samples/physicobject.h @@ -42,7 +42,10 @@ public: { m_physics = new EasyPhysic(this); - m_mesh.Compile("[sc#ddd afcb 60 1 60 -.1]"); + //m_mesh.Compile("[sc#ddd afcb 60 1 60 -.1]"); + m_mesh.SetCurColor(Color::white); + m_mesh.AppendFlatChamfBox(vec3(60.f, 1.f, 60.f), -.1f); + vec3 BoxSize = vec3(60.f, 1.f, 60.f); m_physics->SetCollisionChannel(0, 0xFF); m_physics->SetShapeToBox(BoxSize); @@ -130,88 +133,168 @@ public: m_is_character(false), m_is_phys(false) { - array MeshRand; - array MeshLimit; - array MeshType; + static array MeshRand; + static array MeshLimit; + static array MeshType; + + if (!MeshRand.count()) + { + array colors_base = { "#add", "#dad", "#dda", "#daa", "#ada", "#aad" }; - MeshLimit << 0; + MeshLimit << 0; #if USE_BOX - MeshRand << "[sc#add afcb1.7 1.7 1.7 0.4][sc#000 tsw afcb1.9 1.9 1.9 0.4 sx-1 sy-1 sz-1]"; - MeshRand << "[sc#dad afcb1.7 1.7 1.7 0.4][sc#000 tsw afcb1.9 1.9 1.9 0.4 sx-1 sy-1 sz-1]"; - MeshRand << "[sc#dda afcb1.7 1.7 1.7 0.4][sc#000 tsw afcb1.9 1.9 1.9 0.4 sx-1 sy-1 sz-1]"; - MeshRand << "[sc#daa afcb1.7 1.7 1.7 0.4][sc#000 tsw afcb1.9 1.9 1.9 0.4 sx-1 sy-1 sz-1]"; - MeshRand << "[sc#ada afcb1.7 1.7 1.7 0.4][sc#000 tsw afcb1.9 1.9 1.9 0.4 sx-1 sy-1 sz-1]"; - MeshRand << "[sc#aad afcb1.7 1.7 1.7 0.4][sc#000 tsw afcb1.9 1.9 1.9 0.4 sx-1 sy-1 sz-1]"; - - MeshLimit << MeshRand.count(); - MeshType << 0; + { + array colors = colors_base; + while (colors.count()) + { + EasyMesh m; + vec4 color = Color::C8BppHexString(colors.pop()); + m.SetCurColor(color); + m.AppendFlatChamfBox(vec3(1.7f), .4f); + m.OpenBrace(); + { + m.SetCurColor(Color::black); + m.ToggleScaleWinding(); + m.AppendFlatChamfBox(vec3(1.9f), .4f); + m.ScaleX(-1.f); + m.ScaleY(-1.f); + m.ScaleZ(-1.f); + } + m.CloseBrace(); + MeshRand << m; + } + } + //MeshRand << "[sc#add afcb1.7 1.7 1.7 0.4][sc#000 tsw afcb1.9 1.9 1.9 0.4 sx-1 sy-1 sz-1]"; + //MeshRand << "[sc#dad afcb1.7 1.7 1.7 0.4][sc#000 tsw afcb1.9 1.9 1.9 0.4 sx-1 sy-1 sz-1]"; + //MeshRand << "[sc#dda afcb1.7 1.7 1.7 0.4][sc#000 tsw afcb1.9 1.9 1.9 0.4 sx-1 sy-1 sz-1]"; + //MeshRand << "[sc#daa afcb1.7 1.7 1.7 0.4][sc#000 tsw afcb1.9 1.9 1.9 0.4 sx-1 sy-1 sz-1]"; + //MeshRand << "[sc#ada afcb1.7 1.7 1.7 0.4][sc#000 tsw afcb1.9 1.9 1.9 0.4 sx-1 sy-1 sz-1]"; + //MeshRand << "[sc#aad afcb1.7 1.7 1.7 0.4][sc#000 tsw afcb1.9 1.9 1.9 0.4 sx-1 sy-1 sz-1]"; + + MeshLimit << MeshRand.count(); + MeshType << 0; #endif //USE_BOX #if USE_SPHERE #if CAT_MODE - int nb_sprite = NB_SPRITE; - //SPRITE - vec2 start_point = vec2((float)rand(nb_sprite), (float)rand(nb_sprite)) / vec2((float)nb_sprite); - //vec2(0.f, .0f) / vec2((float)nb_sprite); - vec2 size = vec2(1.f) / vec2((float)nb_sprite); - m_mesh.BD()->SetTexCoordCustomBuild(MeshType::Quad, MeshFaceType::QuadDefault, - start_point, start_point + size); - m_mesh.BD()->SetTexCoordCustomBuild2(MeshType::Quad, MeshFaceType::QuadDefault, - vec2(-PARTICLE_SIZE), vec2(PARTICLE_SIZE)); - MeshRand << "[tpbn tvnc sc#ffff aq 0 0]"; - MeshRand << "[tpbn tvnc sc#faaf aq 0 0]"; - MeshRand << "[tpbn tvnc sc#afaf aq 0 0]"; - MeshRand << "[tpbn tvnc sc#aaff aq 0 0]"; + int nb_sprite = NB_SPRITE; + //SPRITE + vec2 start_point = vec2((float)rand(nb_sprite), (float)rand(nb_sprite)) / vec2((float)nb_sprite); + //vec2(0.f, .0f) / vec2((float)nb_sprite); + vec2 size = vec2(1.f) / vec2((float)nb_sprite); + m_mesh.BD()->SetTexCoordCustomBuild(MeshType::Quad, MeshFaceType::QuadDefault, + start_point, start_point + size); + m_mesh.BD()->SetTexCoordCustomBuild2(MeshType::Quad, MeshFaceType::QuadDefault, + vec2(-PARTICLE_SIZE), vec2(PARTICLE_SIZE)); + MeshRand << "[tpbn tvnc sc#ffff aq 0 0]"; + MeshRand << "[tpbn tvnc sc#faaf aq 0 0]"; + MeshRand << "[tpbn tvnc sc#afaf aq 0 0]"; + MeshRand << "[tpbn tvnc sc#aaff aq 0 0]"; #else - MeshRand << "[sc#add asph1 2]"; - MeshRand << "[sc#dad asph1 2]"; - MeshRand << "[sc#dda asph1 2]"; - MeshRand << "[sc#daa asph1 2]"; - MeshRand << "[sc#ada asph1 2]"; - MeshRand << "[sc#aad asph1 2]"; + { + array colors = colors_base; + while (colors.count()) + { + EasyMesh m; + vec4 color = Color::C8BppHexString(colors.pop()); + m.SetCurColor(color); + m.AppendSphere(1, 2.f); + MeshRand << m; + } + } + //MeshRand << "[sc#add asph1 2]"; + //MeshRand << "[sc#dad asph1 2]"; + //MeshRand << "[sc#dda asph1 2]"; + //MeshRand << "[sc#daa asph1 2]"; + //MeshRand << "[sc#ada asph1 2]"; + //MeshRand << "[sc#aad asph1 2]"; #endif - MeshLimit << MeshRand.count(); - MeshType << 1; + MeshLimit << MeshRand.count(); + MeshType << 1; #endif //USE_SPHERE #if USE_CONE - MeshRand << "[sc#add scb#add ad8 2 0 rx180 ty-1 ac8 2 2 0 0 0]"; - MeshRand << "[sc#dad scb#dad ad8 2 0 rx180 ty-1 ac8 2 2 0 0 0]"; - MeshRand << "[sc#dda scb#dda ad8 2 0 rx180 ty-1 ac8 2 2 0 0 0]"; - MeshRand << "[sc#daa scb#daa ad8 2 0 rx180 ty-1 ac8 2 2 0 0 0]"; - MeshRand << "[sc#ada scb#ada ad8 2 0 rx180 ty-1 ac8 2 2 0 0 0]"; - MeshRand << "[sc#aad scb#aad ad8 2 0 rx180 ty-1 ac8 2 2 0 0 0]"; - - MeshLimit << MeshRand.count(); - MeshType << 2; + { + array colors = colors_base; + while (colors.count()) + { + EasyMesh m; + vec4 color = Color::C8BppHexString(colors.pop()); + m.SetCurColor(color); + m.SetCurColorB(color); + m.AppendDisc(8, 2.f); + m.RotateX(180.f); + m.TranslateY(-1.f); + m.AppendCylinder(8, 2.f, 2.f, 0.f); + MeshRand << m; + } + } + //MeshRand << "[sc#add scb#add ad8 2 0 rx180 ty-1 ac8 2 2 0 0 0]"; + //MeshRand << "[sc#dad scb#dad ad8 2 0 rx180 ty-1 ac8 2 2 0 0 0]"; + //MeshRand << "[sc#dda scb#dda ad8 2 0 rx180 ty-1 ac8 2 2 0 0 0]"; + //MeshRand << "[sc#daa scb#daa ad8 2 0 rx180 ty-1 ac8 2 2 0 0 0]"; + //MeshRand << "[sc#ada scb#ada ad8 2 0 rx180 ty-1 ac8 2 2 0 0 0]"; + //MeshRand << "[sc#aad scb#aad ad8 2 0 rx180 ty-1 ac8 2 2 0 0 0]"; + + MeshLimit << MeshRand.count(); + MeshType << 2; #endif //USE_CONE #if USE_CYLINDER - MeshRand << "[sc#add scb#add ad8 2 0 rx180 ty-1 my ac8 2 2 2 0 0]"; - MeshRand << "[sc#dad scb#dad ad8 2 0 rx180 ty-1 my ac8 2 2 2 0 0]"; - MeshRand << "[sc#dda scb#dda ad8 2 0 rx180 ty-1 my ac8 2 2 2 0 0]"; - MeshRand << "[sc#daa scb#daa ad8 2 0 rx180 ty-1 my ac8 2 2 2 0 0]"; - MeshRand << "[sc#ada scb#ada ad8 2 0 rx180 ty-1 my ac8 2 2 2 0 0]"; - MeshRand << "[sc#aad scb#aad ad8 2 0 rx180 ty-1 my ac8 2 2 2 0 0]"; - - MeshLimit << MeshRand.count(); - MeshType << 3; + { + array colors = colors_base; + while (colors.count()) + { + EasyMesh m; + vec4 color = Color::C8BppHexString(colors.pop()); + m.SetCurColor(color); + m.SetCurColorB(color); + m.AppendDisc(8, 2.f); + m.RotateX(180.f); + m.TranslateY(-1.f); + m.MirrorY(); + m.AppendCylinder(8.f, 2.f, 2.f, 2.f); + MeshRand << m; + } + } + //MeshRand << "[sc#add scb#add ad8 2 0 rx180 ty-1 my ac8 2 2 2 0 0]"; + //MeshRand << "[sc#dad scb#dad ad8 2 0 rx180 ty-1 my ac8 2 2 2 0 0]"; + //MeshRand << "[sc#dda scb#dda ad8 2 0 rx180 ty-1 my ac8 2 2 2 0 0]"; + //MeshRand << "[sc#daa scb#daa ad8 2 0 rx180 ty-1 my ac8 2 2 2 0 0]"; + //MeshRand << "[sc#ada scb#ada ad8 2 0 rx180 ty-1 my ac8 2 2 2 0 0]"; + //MeshRand << "[sc#aad scb#aad ad8 2 0 rx180 ty-1 my ac8 2 2 2 0 0]"; + + MeshLimit << MeshRand.count(); + MeshType << 3; #endif //USE_CYLINDER #if USE_CAPSULE - MeshRand << "[sc#add scb#add acap1 2 1]"; - MeshRand << "[sc#dad scb#dad acap1 2 1]"; - MeshRand << "[sc#dda scb#dda acap1 2 1]"; - MeshRand << "[sc#daa scb#daa acap1 2 1]"; - MeshRand << "[sc#ada scb#ada acap1 2 1]"; - MeshRand << "[sc#aad scb#aad acap1 2 1]"; - - MeshLimit << MeshRand.count(); - MeshType << 4; + { + array colors = colors_base; + while (colors.count()) + { + EasyMesh m; + vec4 color = Color::C8BppHexString(colors.pop()); + m.SetCurColor(color); + m.SetCurColorB(color); + m.AppendCapsule(1, 2.f, 1.f); + MeshRand << m; + } + } + //MeshRand << "[sc#add scb#add acap1 2 1]"; + //MeshRand << "[sc#dad scb#dad acap1 2 1]"; + //MeshRand << "[sc#dda scb#dda acap1 2 1]"; + //MeshRand << "[sc#daa scb#daa acap1 2 1]"; + //MeshRand << "[sc#ada scb#ada acap1 2 1]"; + //MeshRand << "[sc#aad scb#aad acap1 2 1]"; + + MeshLimit << MeshRand.count(); + MeshType << 4; #endif //USE_CAPSULE + } int RandLimit = RandValue; if (MeshLimit.count() <= RandValue || RandValue < 0) @@ -220,7 +303,8 @@ public: m_physics = new EasyPhysic(this); - m_mesh.Compile(MeshRand[RandValue]); + //m_mesh.Compile(MeshRand[RandValue]); + m_mesh = MeshRand[RandValue]; m_mesh.Scale(vec3(OBJ_SIZE)); vec3 BoxSize = vec3(2.0f) * OBJ_SIZE; int ColGroup = 1; diff --git a/src/easymesh/easymesh.h b/src/easymesh/easymesh.h index d3437259..8f93def3 100644 --- a/src/easymesh/easymesh.h +++ b/src/easymesh/easymesh.h @@ -191,16 +191,16 @@ public: */ void Translate(vec3 const &v); /* See Rotate */ - void RotateX(float angle); + void RotateX(float degrees); /* See Rotate */ - void RotateY(float angle); + void RotateY(float degrees); /* See Rotate */ - void RotateZ(float angle); + void RotateZ(float degrees); /* [cmd:r/rx/ry/rz] Rotate vertices - - angle : rotation quantity. + - degrees : rotation quantity. - axis : rotation axis. */ - void Rotate(float angle, vec3 const &axis); + void Rotate(float degrees, vec3 const &axis); /* [cmd:rj] Randomly move vertices along Origin-to-vertex as f(vtx) = vtx + o2v * (1.0 + rand(r)) - r : jitter maximum value. */ diff --git a/src/easymesh/easymeshtransform.cpp b/src/easymesh/easymeshtransform.cpp index 65aa5401..b1f3f055 100644 --- a/src/easymesh/easymeshtransform.cpp +++ b/src/easymesh/easymeshtransform.cpp @@ -35,21 +35,21 @@ void EasyMesh::Translate(vec3 const &v) } //----------------------------------------------------------------------------- -void EasyMesh::RotateX(float angle) { Rotate(angle, vec3(1, 0, 0)); } -void EasyMesh::RotateY(float angle) { Rotate(angle, vec3(0, 1, 0)); } -void EasyMesh::RotateZ(float angle) { Rotate(angle, vec3(0, 0, 1)); } +void EasyMesh::RotateX(float degrees) { Rotate(degrees, vec3(1, 0, 0)); } +void EasyMesh::RotateY(float degrees) { Rotate(degrees, vec3(0, 1, 0)); } +void EasyMesh::RotateZ(float degrees) { Rotate(degrees, vec3(0, 0, 1)); } //----------------------------------------------------------------------------- -void EasyMesh::Rotate(float angle, vec3 const &axis) +void EasyMesh::Rotate(float degrees, vec3 const &axis) { if (BD()->IsEnabled(MeshBuildOperation::CommandRecording)) { BD()->CmdStack().AddCmd(EasyMeshCmdType::Rotate); - BD()->CmdStack() << angle << axis; + BD()->CmdStack() << degrees << axis; return; } - mat3 m = mat3::rotate(angle, axis); + mat3 m = mat3::rotate(degrees, axis); for (int i = m_cursors.last().m1; i < m_vert.count(); i++) { m_vert[i].m_coord = m * m_vert[i].m_coord; diff --git a/src/gpu/shader.cpp b/src/gpu/shader.cpp index b57adbf9..fae8f209 100644 --- a/src/gpu/shader.cpp +++ b/src/gpu/shader.cpp @@ -932,7 +932,7 @@ String ShaderData::Patch(String const &code, ShaderType type) } } - patched_code.resize(strlen(patched_code.C())); + patched_code.resize((int)strlen(patched_code.C())); return patched_code; } diff --git a/src/lol/base/string.h b/src/lol/base/string.h index 50836209..b635893d 100644 --- a/src/lol/base/string.h +++ b/src/lol/base/string.h @@ -45,7 +45,7 @@ public: { using namespace std; ASSERT(str); - resize(strlen(str)); + resize((int)strlen(str)); memcpy(&(*this)[0], str, count() + 1); } @@ -162,7 +162,7 @@ public: { using namespace std; - int token_len = strlen(token); + int token_len = (int)strlen(token); for (int i = count() - token_len; i >= 0; --i) if (strstr(C() + i, token)) return i; @@ -281,7 +281,7 @@ public: /* We parse the C string twice because of strlen + memcmp * but it's probably still faster than doing it by hand. */ using namespace std; - int sz_len = strlen(sz); + int sz_len = (int)strlen(sz); return count() == sz_len && memcmp(C(), sz, sz_len) == 0; } diff --git a/src/scene.h b/src/scene.h index e94cb5ef..affa2240 100644 --- a/src/scene.h +++ b/src/scene.h @@ -231,7 +231,7 @@ public: public: void SetLineTime(float new_time = -1.f); void SetLineMask(int new_mask = 0xFFFFFFFF); - void SetLineSegmentSize(float new_segment_size = 100000.f); + void SetLineSegmentSize(float new_segment_size = 1.f); void SetLineColor(vec4 new_color = vec4(1.f)); float GetLineSegmentSize();