fix vr controller pointer direction, remove vr rendering wait

This commit is contained in:
2020-11-07 23:50:49 +01:00
parent ce6805f261
commit ee027984b7
2 changed files with 3 additions and 3 deletions

View File

@@ -66,7 +66,7 @@ void App::vr_update(float dt)
auto n = glm::normalize(glm::vec3(glm::vec4(0, 0, 1, 0) * mm)); auto n = glm::normalize(glm::vec3(glm::vec4(0, 0, 1, 0) * mm));
auto u = glm::normalize(glm::vec3(glm::vec4(0, 1, 0, 0) * mm)); auto u = glm::normalize(glm::vec3(glm::vec4(0, 1, 0, 0) * mm));
auto co = vr_controllers[0].get_pos(); auto co = vr_controllers[0].get_pos();
auto cd = glm::mat3(vr_controllers[0].m_mat) * glm::vec3(0, 0, -1); auto cd = glm::mat3(vr_controllers[0].m_mat) * glm::mat3(glm::eulerAngleX(glm::radians(-30.f))) * glm::vec3(0, 0, -1);
ui_inside = false; ui_inside = false;
glm::vec3 hit; glm::vec3 hit;
float t; float t;
@@ -426,7 +426,7 @@ void App::vr_draw(const glm::mat4& proj, const glm::mat4& camera, const glm::mat
// draw the motion controller sphere // draw the motion controller sphere
if (vr_controllers_enabled && ui_visible && ui_inside) if (vr_controllers_enabled && ui_visible && ui_inside)
{ {
auto mvp = proj * camera * vr_controllers[0].m_mat; auto mvp = proj * camera * vr_controllers[0].m_mat * glm::eulerAngleX(glm::radians(-30.f));
ShaderManager::use(kShader::Color); ShaderManager::use(kShader::Color);
ShaderManager::u_vec4(kShaderUniform::Col, { 1, 0, 1, 1 }); ShaderManager::u_vec4(kShaderUniform::Col, { 1, 0, 1, 1 });
ShaderManager::u_mat4(kShaderUniform::MVP, mvp * glm::scale(glm::vec3(.0125, .0125, .07))); ShaderManager::u_mat4(kShaderUniform::MVP, mvp * glm::scale(glm::vec3(.0125, .0125, .07)));

View File

@@ -685,7 +685,7 @@ bool win32_vr_start()
const int framerate = (1.f / target_tick_rate) * 1000; const int framerate = (1.f / target_tick_rate) * 1000;
const int diff = framerate - (t1 - t0); const int diff = framerate - (t1 - t0);
hmd_render_cv.wait_for(lock, std::chrono::milliseconds(diff)); //hmd_render_cv.wait_for(lock, std::chrono::milliseconds(diff));
t0 = t1; t0 = t1;
} }
App::I->vr_active = false; App::I->vr_active = false;