From c48652c2c38905491e5cf953e7d5de233df330cf Mon Sep 17 00:00:00 2001 From: atlante45 Date: Wed, 7 Aug 2013 14:28:21 -0700 Subject: [PATCH 1/2] Display leap hand and rave glove in first person mode --- interface/src/Application.cpp | 16 +++++++--------- interface/src/avatar/Avatar.cpp | 4 +++- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/interface/src/Application.cpp b/interface/src/Application.cpp index 61317cc4dd..7dda72bc51 100644 --- a/interface/src/Application.cpp +++ b/interface/src/Application.cpp @@ -3110,16 +3110,14 @@ void Application::displaySide(Camera& whichCamera) { } // Render my own Avatar - if (_myCamera.getMode() != CAMERA_MODE_FIRST_PERSON) { - if (_myCamera.getMode() == CAMERA_MODE_MIRROR) { - _myAvatar.getHead().setLookAtPosition(_myCamera.getPosition()); - } - _myAvatar.render(_lookingInMirror->isChecked(), _renderAvatarBalls->isChecked()); - _myAvatar.setDisplayingLookatVectors(_renderLookatOn->isChecked()); + if (_myCamera.getMode() == CAMERA_MODE_MIRROR) { + _myAvatar.getHead().setLookAtPosition(_myCamera.getPosition()); + } + _myAvatar.render(_lookingInMirror->isChecked(), _renderAvatarBalls->isChecked()); + _myAvatar.setDisplayingLookatVectors(_renderLookatOn->isChecked()); - if (_renderLookatIndicatorOn->isChecked() && _isLookingAtOtherAvatar) { - renderLookatIndicator(_lookatOtherPosition, whichCamera); - } + if (_renderLookatIndicatorOn->isChecked() && _isLookingAtOtherAvatar) { + renderLookatIndicator(_lookatOtherPosition, whichCamera); } } diff --git a/interface/src/avatar/Avatar.cpp b/interface/src/avatar/Avatar.cpp index f425ffefbc..e05d015ff5 100755 --- a/interface/src/avatar/Avatar.cpp +++ b/interface/src/avatar/Avatar.cpp @@ -1422,7 +1422,9 @@ float Avatar::getBallRenderAlpha(int ball, bool lookingInMirror) const { void Avatar::renderBody(bool lookingInMirror, bool renderAvatarBalls) { - if (_head.getFace().isFullFrame()) { + if (Application::getInstance()->getCamera()->getMode() == CAMERA_MODE_FIRST_PERSON) { + // Dont display body + } else if (_head.getFace().isFullFrame()) { // Render the full-frame video float alpha = getBallRenderAlpha(BODY_BALL_HEAD_BASE, lookingInMirror); if (alpha > 0.0f) { From 20fea6b0ad3e37da4094546fe6c3944d58394a6c Mon Sep 17 00:00:00 2001 From: atlante45 Date: Wed, 7 Aug 2013 14:50:35 -0700 Subject: [PATCH 2/2] Height relative collision rdius when not in first person --- interface/src/avatar/Avatar.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/interface/src/avatar/Avatar.cpp b/interface/src/avatar/Avatar.cpp index e05d015ff5..13e4dc2416 100755 --- a/interface/src/avatar/Avatar.cpp +++ b/interface/src/avatar/Avatar.cpp @@ -637,8 +637,13 @@ void Avatar::simulate(float deltaTime, Transmitter* transmitter, float gyroCamer if (_isCollisionsOn) { Camera* myCamera = Application::getInstance()->getCamera(); - _collisionRadius = myCamera->getAspectRatio() * (myCamera->getNearClip() / cos(myCamera->getFieldOfView() / 2.f)); - _collisionRadius *= COLLISION_RADIUS_SCALAR; + + if (myCamera->getMode() == CAMERA_MODE_FIRST_PERSON) { + _collisionRadius = myCamera->getAspectRatio() * (myCamera->getNearClip() / cos(myCamera->getFieldOfView() / 2.f)); + _collisionRadius *= COLLISION_RADIUS_SCALAR; + } else { + _collisionRadius = _height * .125f; + } updateCollisionWithEnvironment(deltaTime); updateCollisionWithVoxels(deltaTime);