History

Fix picking in the HMD

Brad Davis committed 11 years ago

Commit 67971741 parent 3471c0a3 files · +42 −27Browse files

Showing the changes to interface/src/Application.cpp (1 of 3 files). Show all

Unified · Split

interface/src/Application.cpp+11−14
@@ -3077,13 +3077,10 @@ PickRay Application::computePickRay(float x, float y) const { · 3076 unmodified lines
3077 y /= size.y;3077 y /= size.y;
3078 PickRay result;3078 PickRay result;
3079 if (isHMDMode()) {3079 if (isHMDMode()) {
3080 ApplicationOverlay::computeHmdPickRay(glm::vec2(x, y), result.origin, result.direction);3080 getApplicationOverlay().computeHmdPickRay(glm::vec2(x, y), result.origin, result.direction);
3081 } else {3081 } else {
3082 if (activeRenderingThread) {3082 auto frustum = activeRenderingThread ? getDisplayViewFrustum() : getViewFrustum();
3083 getDisplayViewFrustum()->computePickRay(x, y, result.origin, result.direction);3083 frustum->computePickRay(x, y, result.origin, result.direction);
3084 } else {
3085 getViewFrustum()->computePickRay(x, y, result.origin, result.direction);
3086 }
3087 }3084 }
3088 return result;3085 return result;
3089}3086}
@@ -3111,8 +3108,8 @@ QImage Application::renderAvatarBillboard() { · 21 unmodified lines
3111ViewFrustum* Application::getViewFrustum() {3108ViewFrustum* Application::getViewFrustum() {
3112#ifdef DEBUG3109#ifdef DEBUG
3113 if (QThread::currentThread() == activeRenderingThread) {3110 if (QThread::currentThread() == activeRenderingThread) {
3114 // FIXME, should this be an assert?3111 // FIXME, figure out a better way to do this
3115 qWarning() << "Calling Application::getViewFrustum() from the active rendering thread, did you mean Application::getDisplayViewFrustum()?";3112 //qWarning() << "Calling Application::getViewFrustum() from the active rendering thread, did you mean Application::getDisplayViewFrustum()?";
3116 }3113 }
3117#endif3114#endif
3118 return &_viewFrustum;3115 return &_viewFrustum;
@@ -3121,8 +3118,8 @@ ViewFrustum* Application::getViewFrustum() { · 2 unmodified lines
3121const ViewFrustum* Application::getViewFrustum() const {3118const ViewFrustum* Application::getViewFrustum() const {
3122#ifdef DEBUG3119#ifdef DEBUG
3123 if (QThread::currentThread() == activeRenderingThread) {3120 if (QThread::currentThread() == activeRenderingThread) {
3124 // FIXME, should this be an assert?3121 // FIXME, figure out a better way to do this
3125 qWarning() << "Calling Application::getViewFrustum() from the active rendering thread, did you mean Application::getDisplayViewFrustum()?";3122 //qWarning() << "Calling Application::getViewFrustum() from the active rendering thread, did you mean Application::getDisplayViewFrustum()?";
3126 }3123 }
3127#endif3124#endif
3128 return &_viewFrustum;3125 return &_viewFrustum;
@@ -3131,8 +3128,8 @@ const ViewFrustum* Application::getViewFrustum() const { · 2 unmodified lines
3131ViewFrustum* Application::getDisplayViewFrustum() {3128ViewFrustum* Application::getDisplayViewFrustum() {
3132#ifdef DEBUG3129#ifdef DEBUG
3133 if (QThread::currentThread() != activeRenderingThread) {3130 if (QThread::currentThread() != activeRenderingThread) {
3134 // FIXME, should this be an assert?3131 // FIXME, figure out a better way to do this
3135 qWarning() << "Calling Application::getDisplayViewFrustum() from outside the active rendering thread or outside rendering, did you mean Application::getViewFrustum()?";3132 // qWarning() << "Calling Application::getDisplayViewFrustum() from outside the active rendering thread or outside rendering, did you mean Application::getViewFrustum()?";
3136 }3133 }
3137#endif3134#endif
3138 return &_displayViewFrustum;3135 return &_displayViewFrustum;
@@ -3141,8 +3138,8 @@ ViewFrustum* Application::getDisplayViewFrustum() { · 2 unmodified lines
3141const ViewFrustum* Application::getDisplayViewFrustum() const {3138const ViewFrustum* Application::getDisplayViewFrustum() const {
3142#ifdef DEBUG3139#ifdef DEBUG
3143 if (QThread::currentThread() != activeRenderingThread) {3140 if (QThread::currentThread() != activeRenderingThread) {
3144 // FIXME, should this be an assert?3141 // FIXME, figure out a better way to do this
3145 qWarning() << "Calling Application::getDisplayViewFrustum() from outside the active rendering thread or outside rendering, did you mean Application::getViewFrustum()?";3142 // qWarning() << "Calling Application::getDisplayViewFrustum() from outside the active rendering thread or outside rendering, did you mean Application::getViewFrustum()?";
3146 }3143 }
3147#endif3144#endif
3148 return &_displayViewFrustum;3145 return &_displayViewFrustum;

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t