Commit graph

4911 commits

Author SHA1 Message Date
Zach Pomerantz
9c11474dd7 Expose qApp->updateHeartbeat 2016-03-22 17:17:36 -07:00
Anthony Thibault
50ac101d56 Avatar and Rig NSIGHT instrumentation 2016-03-22 10:36:32 -07:00
Anthony Thibault
9faccabf0d Merge branch 'master' of https://github.com/highfidelity/hifi into tony/vive-rendering-work 2016-03-21 21:55:53 -07:00
Anthony Thibault
225c462685 Improved NSIGHT instrumentation
* Application::idle, physics and avatar processing are tracked
* Application::paintGL frameNumber payload is tracked
* OpenGLDisplayPlugin::present is profiled with corresponding frameNumber payload
* Added color and payload support to Nsight ProfileRange class.
2016-03-21 21:47:59 -07:00
Anthony J. Thibault
7cab8f63fb Merge branch 'master' of github.com:highfidelity/hifi into tony/no-locks-no-problem 2016-03-21 16:03:33 -07:00
Anthony J. Thibault
0f31c3da10 Application: guard idle from being called within paintGL() 2016-03-21 15:21:16 -07:00
Anthony J. Thibault
ce47f83288 Prevent deadlock if idle is called during rendering
This extraordinary event can occur if a MessageBox is popped up by the opengl driver.

* removed AvatarData::avatarLock
* removed AvatarUpdate

This code was left over from an earlier avatar threading experiment.

Removed AvatarData avatarLock and AvatarUpdate class
2016-03-21 15:11:15 -07:00
Andrew Meadows
0a00436700 Merge pull request #7411 from ZappoMan/fixBlenderCrashRedux
Fix blender crash redux
2016-03-21 15:04:22 -07:00
Andrew Meadows
47c4b226ea Merge pull request #7395 from hyperlogic/tony/openvr-crash-on-exit
openvr crash on exit fix
2016-03-21 13:04:45 -07:00
Brad Hefta-Gaub
492e71345a Revert "Revert "Fix ModelBlender crash""
This reverts commit f274cdcc7f.
2016-03-21 11:42:25 -07:00
Brad Hefta-Gaub
f274cdcc7f Revert "Fix ModelBlender crash" 2016-03-21 10:47:31 -07:00
Andrew Meadows
d7d428d1b2 Merge pull request #7387 from ZappoMan/fixBlenderCrash
Fix ModelBlender crash
2016-03-21 09:14:11 -07:00
Anthony Thibault
5b2a050df7 display-plugins: Pulled getHeadPose into common base class.
* Moved getHeadPose and _headPoseCache out of each derived class and into HmdDisplayPlugin.
* updated comment in application.
2016-03-20 14:08:35 -07:00
Anthony Thibault
b71a56de38 Application: disable deadlock watchdog for debug builds
Cause it will cause a crash if you sit on a breakpoint for too long.
2016-03-20 12:18:33 -07:00
Anthony J. Thibault
960ffd9c9e DisplayPlugins: updateHeadPose() no longer returns a value.
Also, moved updateHeadPose so that the overlay and the main rendering use the same headPose.
Which should also be the same place the latencyMarker for the ovr_GetTrackingState is set.
2016-03-18 15:16:58 -07:00
Brad Hefta-Gaub
2ef5b3727e Merge branch 'master' of https://github.com/highfidelity/hifi into fixBlenderCrash 2016-03-18 14:04:45 -07:00
Anthony J. Thibault
d218ca4960 openvr: fix for crash on exit
Before this fix, a script could call into HMD.getHUDLookAtPosition2D() while the app was shutting down, which in turn would call
getHeadPose() on the currently active display plugin.  This call could cause a crash within the openvr plugin, because the SDK was either shutdown, or in the process of shutting down on the main thread.

This fixes this by spliting the previous DisplayPlugin::getHeadPose(int) into two parts:

* updateHeadPose(int) which is only called once a frame and only by the main thread.
* getHeadPose() which is thread-safe and will return a cached copy of the hmd pose sampled by the last updateHeadPose.
2016-03-18 12:26:11 -07:00
Brad Hefta-Gaub
917c4644a5 make SkeletonModel be shared_ptr friendly as well 2016-03-17 18:03:49 -07:00
Brad Hefta-Gaub
edcf642410 Merge pull request #7374 from jherico/plugin_switch_crash
Reduce crashes on switching display plugins
2016-03-17 15:51:39 -07:00
Brad Hefta-Gaub
6f8f5ed15c Merge pull request #7382 from hyperlogic/tony/crash-fix-focus-out-event
Application: prevent crash on startup when "Crashed" dialog is shown
2016-03-17 15:51:15 -07:00
Bradley Austin Davis
d6d7e67ca3 Fix OpenVR shutdown crash 2016-03-17 14:37:43 -07:00
Anthony J. Thibault
a8bc8a7843 Application: prevent crash on startup when "Interface Crashed" dialog is shown.
If the application "Interface Crashed" dialog is shown at startup, it can cause Application to receive events before it has been fully constructed.
In this case the QMainWindow _window pointer is uninitialized, causing Menu::getInstance() to de-reference an invalid pointer.

The fix for this is three fold.

1. Construct the QMainWindow before calling setupEssentials (which in turn spawns the "Interface Crashed" dialog).
2. Change Menu::getInstance() from a static_cast to a dynamic_cast.  This will cause it to return a nullptr if [QMainWindow::menuBar()](http://doc.qt.io/qt-4.8/qmainwindow.html#menuBar) returns an instance of QMenuBar and not a ui::Menu instance.
3. In Application::event return false if Menu::getInstance() returns a nullptr.  This should prevent any code that relies on having a valid ui::Menu instance from running.
2016-03-17 12:13:01 -07:00
Bradley Austin Davis
1cf89f046c Fix off by one error 2016-03-17 10:13:52 -07:00
Bradley Austin Davis
7045680bc7 Reduce crashes on switching display plugins 2016-03-17 10:13:52 -07:00
Bradley Austin Davis
80e2025ebf Allow display plugin switching by keyboard 2016-03-16 18:28:48 -07:00
Andrew Meadows
6028c3e841 Merge pull request #7318 from birarda/atp
Asset Transfer Protocol Mappings
2016-03-15 16:52:36 -07:00
Stephen Birarda
0012967734 use curly braced initialization for consts 2016-03-15 14:38:41 -07:00
Atlante45
03efde5b3c Change text in case of drag and drop. 2016-03-15 13:53:13 -07:00
Atlante45
4265ddbd0e Can't drop fbx if you can't rez 2016-03-15 11:42:48 -07:00
Atlante45
4a90ec303c Fix drag&drop 2016-03-15 11:22:42 -07:00
Anthony J. Thibault
7539eec134 Application: fix third-person and fullscreen-mirror toggle 2016-03-15 10:11:56 -07:00
Stephen Birarda
72c64532f5 Merge branch 'master' of https://github.com/highfidelity/hifi into atp 2016-03-15 09:12:49 -07:00
Anthony Thibault
9fb897476e Application: fix for mouse control in third-person camera
Process the keyboard & mouse input plugin after the userInputMapper()->update().
2016-03-11 17:29:18 -08:00
Stephen Birarda
66e572f226 Merge branch 'master' of https://github.com/highfidelity/hifi into atp 2016-03-11 14:44:49 -08:00
Anthony Thibault
ab390f7d2e Merge branch 'master' into tony/smooth-hands 2016-03-11 10:06:31 -08:00
Anthony J. Thibault
5eeb4ca594 Fix one frame lag controller lag/jitter
Move userInputMapper->update() after inputPlugin->pluginUpdate().
2016-03-11 09:28:25 -08:00
Zach Pomerantz
40378920b1 Merge branch 'master' of github.com:highfidelity/hifi into fix/skybox-tex 2016-03-10 21:44:31 -08:00
Anthony J. Thibault
ab19d3e5a2 Moved animation after physics, hand poses are in world frame.
There are still some debug hacks enabled so I can test in the vive room.
2016-03-10 20:44:35 -08:00
Anthony J. Thibault
807d31743c Removed Hand, HandData & PalmData
Instead, we just store two controller::Poses in MyAvatar.
Existing behavior and scripting APIs have been preserved.

The hand controller debug drawing is slightly different, but still works.
2016-03-10 19:33:31 -08:00
Philip Rosedale
e87ef52a4c Merge pull request #7302 from hyperlogic/tony/wrong-way-overlay
More reliable and usable UI sphere overlay location
2016-03-10 17:43:50 -08:00
Atlante45
548d826a4e Couple bug fixes 2016-03-10 14:59:20 -08:00
Atlante45
7d7a683b18 Add uploadFile method that prompts the user 2016-03-10 14:59:20 -08:00
Stephen Birarda
5ad4645b47 Merge branch 'master' of https://github.com/highfidelity/hifi into atp 2016-03-10 13:28:59 -08:00
Anthony J. Thibault
6d11dd465c Application: reset avatar on displayMode change
but not HMD sensor.
2016-03-10 13:12:09 -08:00
Zach Pomerantz
b627a17ce9 Allow px/color skybox without tex 2016-03-10 12:58:49 -08:00
Anthony J. Thibault
5f1b8805cf Removed unnecessary include 2016-03-09 17:37:51 -08:00
Brad Davis
9645ed9120 Update the watchdog heartbeat manually during startup 2016-03-09 17:00:45 -08:00
Anthony J. Thibault
886457939d Merge branch 'master' into tony/wrong-way-overlay 2016-03-09 16:50:18 -08:00
Howard Stearns
2b576e86f0 Merge pull request #7259 from jherico/crashes
Crash fixes
2016-03-09 16:42:36 -08:00
Ryan Huffman
0d2ae4f3a4 Merge branch 'atp' of github.com:birarda/hifi into atp-model 2016-03-09 16:33:53 -08:00
Anthony Thibault
5df616be37 OpenVR: More usable UI Sphere overlay location
Also, added a debug option to display SensorToWorld matrix in Developer > Avatar menu.
2016-03-09 16:24:08 -08:00
Ryan Huffman
f5497aa1e7 Add new AssetMappingsScriptingInterface and add mappings model 2016-03-09 14:53:04 -08:00
Brad Davis
23a89a63d8 Set deadlock thread name 2016-03-09 14:51:19 -08:00
Anthony J. Thibault
4af3766804 Don't reset sensors when initializing or changing display plugins.
This should fix the issue with the Oculus starting up with the UI aligned
to the HMD on your desk, rather then the configured default sitting pose.
2016-03-09 14:28:26 -08:00
Stephen Birarda
57ea51d244 Merge pull request #84 from Atlante45/feat/atp
Replace old drag&drop with new UI
2016-03-09 14:26:49 -08:00
Zach Pomerantz
21719b3980 Wait 10m for DEBUG deadlocks 2016-03-09 14:07:36 -08:00
Ryan Huffman
fd5a5dd8f4 Add QJSEngine compatible AssetMappingScriptInterface 2016-03-09 14:03:25 -08:00
Brad Davis
d428f3b96f Working on crash bugs 2016-03-09 14:00:05 -08:00
Brad Davis
cac31761c0 Safer shutdown code in deadlock thread 2016-03-09 13:45:01 -08:00
Stephen Birarda
9a2b2b4c16 Merge branch 'master' of https://github.com/highfidelity/hifi into atp 2016-03-09 12:16:46 -08:00
Atlante45
5a0beec1f5 Replace old drag&drop with new UI 2016-03-09 11:47:31 -08:00
Brad Davis
80fdef4348 Ensure the heartbeat has a valid value before the thread starts 2016-03-09 10:53:01 -08:00
Brad Davis
95f5d82d37 Add a watchdog thread to trigger a crash on detecting a deadlock 2016-03-09 00:32:46 -08:00
Atlante45
ded449072f Rename window 2016-03-08 13:13:45 -08:00
Atlante45
784f669998 First draft Assets Manager 2016-03-08 13:13:45 -08:00
Stephen Birarda
969244927b use extension for entity add for drag and drop upload 2016-03-08 13:09:20 -08:00
Stephen Birarda
28af9c51e6 add a missing parenthesis 2016-03-08 12:22:13 -08:00
Stephen Birarda
8fa32e75b2 client side fixes for upload with no extension 2016-03-08 12:19:15 -08:00
Brad Davis
8988dd9771 Fix mouse drag turning 2016-03-07 17:14:44 -08:00
Brad Davis
28103cf5ef Migrate composition of the overlay and pointer to the present thread 2016-03-07 17:14:41 -08:00
Chris Collins
7850ca3576 Merge pull request #7227 from hyperlogic/tony/eye-look-at-fixes
Avatar eye look at fixes for HMD and desktop
2016-03-07 11:50:16 -08:00
Brad Hefta-Gaub
cfce5af8d4 Merge pull request #7191 from samcake/orange
Better Shading Model and support fr Stingray material
2016-03-01 18:24:09 -08:00
samcake
16ac69315f Imroving the roughness/specular highlight nd fixing a bug with the CUbemap texture 2016-03-01 16:38:02 -08:00
Zach Pomerantz
5c64115b26 Use keyLight in DLE instead of _skyboxTexture 2016-03-01 14:44:34 -08:00
Stephen Birarda
f44cf3903c re-instate verified domain ownership for full automatic networking
This reverts commit 34408c8144.
2016-03-01 13:04:37 -08:00
Stephen Birarda
b0c11e6562 Merge pull request #7217 from huffman/udt-random-seq
Randomize initial send sequence number in UDT
2016-03-01 12:59:10 -08:00
Atlante45
4944d0a8d0 Handle threading inside AssetServer 2016-03-01 12:00:43 -08:00
Atlante45
6a4b93a4e7 Proper fix for DiskCacheInfo 2016-03-01 12:00:43 -08:00
Atlante45
40d307a37b Temporary fix to disk cache editor crash 2016-03-01 12:00:43 -08:00
Atlante45
2c1762526d Move all resource requests to the same thread 2016-03-01 12:00:43 -08:00
Ryan Huffman
cc9c87d281 Fix packet version mismatch not showing for domain packets 2016-03-01 11:36:49 -08:00
Brad Hefta-Gaub
2c3fdc995f Away improvements 2016-02-29 20:23:06 -08:00
Anthony J. Thibault
460582239a Avatar eye look at fixes for HMDs
There were three things that were causing issues with eye look at vectors while wearing an HMD.

1) The matrix returned by AvatarUpdate->getHeadPose() was in the wrong space, it should be in avatar space.
   it was actually returning a matrix in sensor/room space.
2) The lookAtPosition was incorrect while wearing an HMD and with no avatars to look at.
3) The eye rotation limits in Rig::updateEyeJoint were relative to the model's zero orientation, NOT relative to the head.
   this was causing the eyes to hit limits when the avatar head turned.
2016-02-29 18:02:50 -08:00
Zach Pomerantz
3c53078178 Merge pull request #7194 from ZappoMan/toggleOverlay
add toggleOverlays menu item and action
2016-02-26 10:17:24 -08:00
Philip Rosedale
783892ac2e Merge pull request #7206 from hyperlogic/tony/simrate-fix
Application: don't simulate until we are ready to render
2016-02-26 07:27:35 -08:00
Brad Hefta-Gaub
bf0fb7258a CR feedback 2016-02-25 22:01:10 -08:00
Anthony J. Thibault
e5c81f66a5 Application: removed threadID and milliseconds from logging. 2016-02-25 18:20:43 -08:00
Anthony J. Thibault
08c16beff2 Application: re-worded presentCount comments 2016-02-25 18:17:42 -08:00
Andrew Meadows
5d1e283508 namechange TouchesKeyhole to IntersectsKeyhole 2016-02-25 18:09:35 -08:00
Andrew Meadows
2591c5ee3e cleanup names that use "keyhole" 2016-02-25 18:09:35 -08:00
Andrew Meadows
9558258f64 use cubeInKeyhole() where appropriate 2016-02-25 18:09:35 -08:00
Andrew Meadows
dfdf375853 use shapeInFrustum() names again
but at the same time make the code more redable
also: add some more efficient shape-touches-view methods
and cleanup some whitespace
2016-02-25 18:09:35 -08:00
Anthony J. Thibault
11cd8e03b9 Merge branch 'master' into tony/simrate-fix 2016-02-25 17:50:23 -08:00
Anthony J. Thibault
1fdae13de1 Application: don't simulate until we are ready to render. 2016-02-25 17:48:55 -08:00
Stephen Birarda
34408c8144 Revert "verified domain ownership for full automatic networking" 2016-02-25 17:02:08 -08:00
Brad Hefta-Gaub
b0c286bc3b Merge branch 'master' of https://github.com/highfidelity/hifi into toggleOverlay
Conflicts:
	interface/src/Application.cpp
2016-02-25 16:21:38 -08:00
Brad Hefta-Gaub
202a456e1a Merge pull request #7126 from AndrewMeadows/cleanup
cleanup ViewFrustum method names
2016-02-25 16:12:25 -08:00
Brad Hefta-Gaub
519a90f2bd fix the overlays visible on startup case 2016-02-25 16:02:05 -08:00
Clément Brisset
2e7c7eace5 Merge pull request #7179 from birarda/domain-security
verified domain ownership for full automatic networking
2016-02-25 15:24:09 -08:00
Brad Hefta-Gaub
366aa39be8 handle startup overlay visibility correctly 2016-02-25 14:46:08 -08:00