Browse Source

meshviewer small tweak.

undefined
Benjamin ‘Touky’ Huet Sam Hocevar <sam@hocevar.net> 11 years ago
parent
commit
653c5fc3fb
1 changed files with 24 additions and 19 deletions
  1. +24
    -19
      test/meshviewer.cpp

+ 24
- 19
test/meshviewer.cpp View File

@@ -23,7 +23,7 @@ using namespace lol;

static int const TEXTURE_WIDTH = 256;

#define R_M 2.f
#define R_M 1.f
#define DEFAULT_WIDTH (770.f * R_M)
#define DEFAULT_HEIGHT (200.f * R_M)
#define WIDTH ((float)Video::GetSize().x)
@@ -46,6 +46,9 @@ static int const TEXTURE_WIDTH = 256;

#define WITH_TEXTURE 0

#define NO_NACL_EM (!__native_client__ && !EMSCRIPTEN)
#define NACL_EM (__native_client__ || EMSCRIPTEN)

LOLFX_RESOURCE_DECLARE(shinyfur);
LOLFX_RESOURCE_DECLARE(shinymvtexture);

@@ -94,7 +97,7 @@ public:
{
m_init = true;

#if !__native_client__
#if NO_NACL_EM
/* Register an input controller for the keyboard */
m_controller = new Controller("Default", KEY_MAX, 0);

@@ -122,7 +125,7 @@ public:
m_controller->GetKey(KEY_F4).Bind("Keyboard", "F4");
m_controller->GetKey(KEY_F5).Bind("Keyboard", "F5");
m_controller->GetKey(KEY_ESC).Bind("Keyboard", "Escape");
#endif //!__native_client__
#endif //NO_NACL_EM

// Message Service
MessageService::Setup(MSG_MAX);
@@ -196,18 +199,18 @@ public:
return;

//TODO : This should probably be "standard LoL behaviour"
#if !__native_client__
#if NO_NACL_EM
{
//Shutdown logic
if (m_controller->GetKey(KEY_ESC).IsReleased())
Ticker::Shutdown();
}
#endif //!__native_client__
#endif //NO_NACL_EM

//Mesh Change
#if !__native_client__
#if NO_NACL_EM
m_mesh_id = clamp(m_mesh_id + ((int)m_controller->GetKey(KEY_MESH_PREV).IsPressed() - (int)m_controller->GetKey(KEY_MESH_NEXT).IsPressed()), 0, m_meshes.Count() - 1);
#endif //!__native_client__
#endif //NO_NACL_EM
m_mesh_id1 = damp(m_mesh_id1, (float)m_mesh_id, .2f, seconds);

//Camera update
@@ -216,13 +219,13 @@ public:
bool is_hsc = false;
vec2 tmp = vec2::zero;

#if !__native_client__
#if NO_NACL_EM
is_pos = m_controller->GetKey(KEY_CAM_POS).IsDown();
is_fov = m_controller->GetKey(KEY_CAM_FOV).IsDown();

tmp = vec2((float)m_controller->GetKey(KEY_CAM_UP ).IsDown() - (float)m_controller->GetKey(KEY_CAM_DOWN).IsDown(),
(float)m_controller->GetKey(KEY_CAM_RIGHT ).IsDown() - (float)m_controller->GetKey(KEY_CAM_LEFT).IsDown());
#endif //!__native_client__
#endif //NO_NACL_EM

//Base data
vec2 rot = (!is_pos && !is_fov)?(tmp):(vec2(.0f)); rot = vec2(rot.x, rot.y);
@@ -242,7 +245,7 @@ public:

m_rot += m_rot_speed * seconds;

#if !__native_client__
#if NO_NACL_EM
//Transform update
if (!m_controller->GetKey(KEY_CAM_RESET).IsDown())
{
@@ -251,7 +254,7 @@ public:
m_zoom += m_zoom_speed * seconds;
m_hist_scale += m_hist_scale_speed * seconds;
}
#endif //!__native_client__
#endif //NO_NACL_EM

//clamp
vec2 rot_mesh = vec2(SmoothClamp(m_rot.x, -ROT_CLAMP, ROT_CLAMP, ROT_CLAMP * .1f), m_rot.y);
@@ -262,13 +265,13 @@ public:
vec2 hist_scale_mesh = vec2(SmoothClamp(m_hist_scale.x, 0.f, HST_CLAMP, HST_CLAMP * .1f),
SmoothClamp(m_hist_scale.y, 0.f, HST_CLAMP, HST_CLAMP * .1f));

#if !__native_client__
#if NO_NACL_EM
if (m_controller->GetKey(KEY_CAM_RESET).IsDown())
{
pos_mesh = vec2::zero;
zoom_mesh = 0.f;
}
#endif //!__native_client__
#endif //NO_NACL_EM

m_rot_mesh = vec2(damp(m_rot_mesh.x, rot_mesh.x, .2f, seconds), damp(m_rot_mesh.y, rot_mesh.y, .2f, seconds));
m_pos_mesh = vec2(damp(m_pos_mesh.x, pos_mesh.x, .2f, seconds), damp(m_pos_mesh.y, pos_mesh.y, .2f, seconds));
@@ -359,11 +362,11 @@ public:
}
}

#if __native_client__
#if NACL_EM
if (m_stream_update_time > .0f)
{
m_stream_update_time = -1.f;
MessageService::Send(MSG_IN, "[sc#f8f afcb 1]");
MessageService::Send(MSG_IN, "[sc#f8f ab 1]");
// MessageService::Send(MSG_IN, "[sc#f8f ab 1 splt 4 twy 90]");
// MessageService::Send(MSG_IN, "[sc#8ff afcb 1 1 1 0]");
// MessageService::Send(MSG_IN, "[sc#ff8 afcb 1 1 1 0]");
@@ -420,7 +423,7 @@ public:
return;

//TODO : This should probably be "standard LoL behaviour"
#if !__native_client__
#if NO_NACL_EM
{
if (m_controller->GetKey(KEY_F1).IsReleased())
Video::SetDebugRenderMode(DebugRenderMode::Default);
@@ -433,9 +436,9 @@ public:
if (m_controller->GetKey(KEY_F5).IsReleased())
Video::SetDebugRenderMode(DebugRenderMode::UV);
}
#endif //!__native_client__
#endif //NO_NACL_EM

#if !__native_client__
#if NO_NACL_EM
if (!m_default_texture)
{
m_texture_shader = Shader::Create(LOLFX_RESOURCE_NAME(shinymvtexture));
@@ -444,7 +447,7 @@ public:
}
else if (m_texture && m_default_texture)
m_texture_shader->SetUniform(m_texture_uni, m_default_texture->GetTexture(), 0);
#endif //!__native_client__
#endif //NO_NACL_EM

g_renderer->SetClearColor(vec4(0.0f, 0.0f, 0.0f, 1.0f));

@@ -486,7 +489,9 @@ public:
//Camera projection
save_proj;
m_camera->SetProjection(new_proj);
//#if NO_NACL_EM
m_meshes[i]->Render(m_mat);
//#endif //NO_NACL_EM
g_renderer->Clear(ClearMask::Depth);
}
m_camera->SetProjection(save_proj);


Loading…
Cancel
Save