Commit graph

549 commits

Author SHA1 Message Date
SamGondelman
be27376c52 add comment about bottleneck 2017-09-22 10:21:32 -07:00
SamGondelman
9f12d3a365 fix missing models 2017-09-21 17:57:25 -07:00
samcake
9a9d13e519 Merge branch 'master' of https://github.com/highfidelity/hifi into game-render-interface 2017-09-21 09:05:46 -07:00
Brad Davis
27350bd7de Don't add items to the scene graph until they have a valid parent chain 2017-09-20 16:52:23 -07:00
samcake
fd8868f609 Moving the render transform evaualtion in game loop for Models 2017-09-19 17:30:20 -07:00
Seth Alves
d89f2b77da rework ScriptEngine lifetimes using 'smart' pointers 2017-09-14 10:42:21 -07:00
Bradley Austin Davis
eb8b892571 Various Mac fixes 2017-09-07 14:45:35 -07:00
Seth Alves
7220a6998a remove unneeded bind-by-ref thing from lambdas 2017-08-28 17:08:59 -07:00
Seth Alves
b9c68f9156 give MouseRayPickResultOperator and SetPrecisionPickingOperator default values to avoid crash on startup 2017-08-28 17:01:01 -07:00
Brad Davis
e817d3ced4 Threaded rendering & entity rendering refactor 2017-08-24 13:34:34 -07:00
SamGondelman
a904ae1a8a can set precision picking on lasers/raypicks, EntityTreeRender uses ray pick API 2017-08-22 11:41:20 -07:00
Zach Fox
b8c45b0c30 Don't always do precision picking inside mouseMoveEvent 2017-08-09 14:23:43 -07:00
Zach Fox
62f6c10b2b Renaming things; bugfixes; improvements 2017-07-26 12:45:10 -07:00
Zach Fox
96f52a9812 First pass at getting overlays to show up on hover 2017-07-17 17:05:16 -07:00
Zach Fox
147474e19a Logging category and filter 2017-07-17 11:17:59 -07:00
Zach Fox
e602d3610e Initial commit for HoverOverlayInterface 2017-07-14 17:26:53 -07:00
Brad Davis
6fc82bb351 Switch to preprocessor macro for blocking invokes to capture function information 2017-06-30 11:36:24 -07:00
Brad Davis
b52dd7b822 Don't use blocking connections on the main thread 2017-06-29 20:45:17 -07:00
Seth Alves
794495c197 make ResourceManager be owned by DependencyManager 2017-06-28 14:18:14 -07:00
Brad Davis
8130a91b8c Cleanup entity dependencies 2017-06-27 19:15:49 -07:00
Atlante45
49623fefd8 Fix Skyboxes sometimes not showing 2017-06-21 11:40:32 -07:00
Brad Davis
fece438602 Cleanup and refactoring 2017-06-15 18:58:56 -07:00
Sam Cake
d19956f93c Fixing warnings 2017-05-31 22:02:47 -07:00
samcake
882df7391b Merge branch 'master' of https://github.com/highfidelity/hifi into brown 2017-05-26 16:47:49 -07:00
Zach Fox
f2fab57187 Update conditional to handle 'other unowned' case 2017-05-25 13:01:40 -07:00
Zach Fox
be39874999 Changes after discussion with Brad 2017-05-25 13:01:40 -07:00
Zach Fox
f6195cdb1e Committing checkpoint changes, then testing 2017-05-25 13:01:40 -07:00
Zach Fox
4d791211ee Make the changes - big thanks to Andrew! 2017-05-25 13:01:40 -07:00
Sam Cake
3eb95d2d19 cleaning the commented code 2017-05-25 01:16:45 -07:00
samcake
e7b808cbc1 Merging with upstream 2017-05-23 12:12:31 -07:00
Sam Gateau
589bcc19ce Refining the shader for key and testing removing completely the code dealing with Zone lighting in the ENtityTreeREnderer 2017-05-19 17:50:19 -07:00
Andrew Meadows
7b879a7964 Model has a Rig rather than a RigPointer 2017-05-19 13:24:16 -07:00
Andrew Meadows
ac6d4969d6 Merge pull request #10270 from Atlante45/fix/unload
Fix entity script unloads
2017-04-26 11:42:14 -07:00
Atlante45
33f58f99d1 CR 2017-04-25 16:09:31 -07:00
Atlante45
a450f52427 Start to setup image library 2017-04-25 15:56:22 -07:00
Atlante45
24f4107c92 Unload script when replaced with empty URL 2017-04-24 15:56:37 -07:00
Atlante45
d292451f91 Remove unnecessary const 2017-04-24 15:43:36 -07:00
Sam Cake
b65448bcbe Trying to improve the Job/Task classes and testing it with the ZoneRenderer 2017-04-09 11:08:35 -07:00
samcake
6fc965072c Adding the Selection, and not the Tag concept fro real, and beeing able to reset it from the Transaction and simply communicating the ranked zones to the engine through a selection, ready to be used by the ZOneREnderer 2017-04-06 15:19:55 -07:00
samcake
6122155880 Renaming the PendingCHanges class to Transaction 2017-04-05 13:10:31 -07:00
Seth Alves
6df4dda746 Merge branch 'master' of github.com:highfidelity/hifi into tablet-ui 2017-03-28 11:42:14 -07:00
Seth Alves
b50a02ea19 Merge branch 'master' of github.com:highfidelity/hifi into tablet-ui 2017-03-28 08:16:59 -07:00
Andrew Meadows
18544581e6 remove warnings about implicit float cast 2017-03-27 14:40:31 -07:00
ZappoMan
ddd0645453 fix merge issue 2017-03-24 09:59:11 -07:00
ZappoMan
bc331af6a0 Merge branch 'master' of https://github.com/highfidelity/hifi into removePropertiesFromRayPick 2017-03-24 08:46:43 -07:00
Seth Alves
902e3d41d6 merge from upstream 2017-03-24 08:20:35 -07:00
ZappoMan
246f377a07 Merge branch 'master' of https://github.com/highfidelity/hifi into removePropertiesFromRayPick 2017-03-23 10:40:37 -07:00
Brad Davis
944255a37b Fix crash in render-perf-test 2017-03-22 22:44:05 -07:00
Seth Alves
424af2255b Merge branch 'master' of github.com:highfidelity/hifi into tablet-ui 2017-03-19 21:17:30 -08:00
Seth Alves
a5d19439f9 Merge branch 'master' of github.com:highfidelity/hifi into tablet-ui 2017-03-16 16:32:07 -07:00
humbletim
87d62ad1eb Merge branch 'master' into 21114-part3 2017-03-16 16:39:37 -04:00
humbletim
758c07c7d4 Merge branch 'master' into 21114-part3 2017-03-16 14:29:17 -04:00
Stephen Birarda
0c657a1d55 add parameter to unload to remove entityID from map 2017-03-15 10:57:12 -07:00
Seth Alves
816b0b5cfd unmangle merge 2017-03-15 09:02:32 -08:00
Seth Alves
b5919d89a5 Merge branch 'master' of github.com:highfidelity/hifi into tablet-ui 2017-03-15 08:26:10 -08:00
Seth Alves
509ce3f2d2 Merge branch 'master' of github.com:highfidelity/hifi into tablet-ui-edit-js 2017-03-07 18:41:36 -08:00
Brad Hefta-Gaub
8ae6f2727d add support for double click messages to overlays and entities 2017-03-07 17:52:55 -08:00
humbletim
40ba8185a0 * Update per 21114-part2 changes.
* Add explicit thread safety guards.
* Add Entities.queryPropertyMetdata for unit testing Entity script module support.
* Cleanup / commenting pass.
2017-03-07 16:36:07 -05:00
Ryan Huffman
a744e0d11c Merge pull request #9685 from humbletim/21114-part2
CR-2 21114 -- BaseScriptEngine.cpp, order-of-operations fixes, reworked JS Exceptions
2017-03-07 13:25:25 -08:00
Seth Alves
cf37845f9e Merge branch 'master' of github.com:highfidelity/hifi into tablet-ui-edit-js 2017-03-02 10:06:38 -08:00
ZappoMan
9e71801ae1 remove properties from RayToEntityIntersectionResult 2017-03-01 18:21:04 -08:00
Seth Alves
0e4b0332dd avoid a rare crash 2017-02-25 11:35:27 -08:00
humbletim
b15956278c separate out supporting changes into 21114-part2 branch 2017-02-16 07:40:19 -05:00
Seth Alves
792c7ff51f PointerEvent will now relay keyboard modifiers 2017-02-15 10:41:56 -08:00
Ryan Huffman
d0cddd01d7 Fix entity scripts not loading in certain cases
This fixes a bug where an entity script would be loaded but immediately
unloaded. This happens when the script property of the entity is changed shortly
after it is added.

Flow of events:

  Entity added
  => Entity added event emitted
  Entity edited
  => Script changing event emitted
  <= Entity added event received
  Script loaded
  <= Script changing event received
  Script stopped
  Tries to load script again, but because the script hasn't changed
    since it was last loaded, it is not loaded again.

The change here is to modify the behavior when receiving a script
changing event. Instead of always unloading and then conditionally
loading the script, it will either do both (unload + load) or neither.
2017-02-13 14:59:31 -08:00
Seth Alves
645aad7bb0 Merge pull request #9557 from hyperlogic/tablet-ui
Fix for one-frame lag in the tablet stylus.
2017-01-31 13:37:56 -08:00
Anthony J. Thibault
0f75668923 Moved Model setting of _spatiallyNestableOverride to constructor 2017-01-31 09:36:21 -08:00
Andrew Meadows
6ef4420f37 remove commented out cruft 2017-01-30 13:21:23 -08:00
Andrew Meadows
31861d3192 use inverted collision for B-A event 2017-01-30 13:21:23 -08:00
Andrew Meadows
aa8e7d27db move depth filtering closer to source 2017-01-30 13:21:23 -08:00
Andrew Meadows
2541bfb1a8 only create collision events for owned entities 2017-01-30 13:21:23 -08:00
Andrew Meadows
8cf7aee009 fix bug: second collision event with bad data 2017-01-30 13:21:23 -08:00
Andrew Meadows
b7cd8827f9 collision events for owned objects only
also: fewer entityID lookups for scripted collision sounds and events
2017-01-30 13:21:23 -08:00
Andrew Meadows
ed17c4fa16 fix an old typo about when to send collision event 2017-01-30 13:19:38 -08:00
Ryan Huffman
9b1cd52fb4 Add the ability to get the context that a script is running in 2017-01-23 08:58:01 -08:00
Atlante45
29b5daba3a Revert input events script callbacks 2017-01-20 15:30:25 -08:00
Atlante45
ff3f175fb7 Fix typos 2017-01-17 15:39:54 -08:00
Ryan Huffman
340eeb94fa Add return type to lambdas in EntityTreeRenderer 2017-01-17 15:24:14 -08:00
Atlante45
8d199ded15 Check collision against the right owner 2017-01-17 13:47:45 -08:00
Atlante45
5db37fff95 More entity script server work 2017-01-17 13:47:45 -08:00
David Rowe
c6f19b1c4e Add missing entity hover signal 2016-12-03 20:37:47 +13:00
Seth Alves
f47aeae2a7 stop passing bare pointers to EntityTreeRenderer all around 2016-10-27 10:10:22 -07:00
Anthony Thibault
23aa626755 Destroy render scene & engine before Application is destroyed
Many render items/payloads contain smart pointers back to the
objects that added them to the scene, including entity and avatar
objects. Currently, those render items are destroyed when the
scene is destroyed very late in the application life-cycle.

There are rare crashes that can occur when these render items are
destroyed. Possibly, due to them referencing objects that have
already been destroyed via raw pointers. In an effort to
eliminate these crashes, we now destroy the scene earlier, within
Application::aboutToQuit() which is connected to the
QCoreApplication::aboutToQuit signal.  Also, we guard against null
scene pointer dereferences.  Any location that accesses the scene
off the main thread, now checks the validity of the scene pointer.
2016-10-25 15:28:37 -07:00
Brad Hefta-Gaub
db5edb530a fix skybox changing when going between zones 2016-10-09 15:22:35 -07:00
Ryan Huffman
ee50469213 Add collidableOnly arg to findRayIntersection 2016-10-04 20:19:54 -07:00
Ryan Huffman
17c63eb722 Add the ability to ignore invisible entities in findRayIntersection 2016-10-04 20:19:32 -07:00
Brad Hefta-Gaub
667137f951 Merge pull request #8552 from AndrewMeadows/invoke-updateModel
eliminate log warning about invokeMethod of EntityTreeRenderer::updateModel()
2016-09-02 09:17:57 -07:00
Andrew Meadows
e5b63aa18f remove cruft from updateModel() arguments 2016-08-31 10:54:02 -07:00
Zach Pomerantz
0e9ff04c4c fix layered zone applications 2016-08-30 17:00:02 -07:00
Zach Pomerantz
bb39cdafda fix applyPartial for last zone 2016-08-30 17:00:02 -07:00
Zach Pomerantz
abde84b068 fix async skybox tex loading 2016-08-30 17:00:02 -07:00
Zach Pomerantz
f30308b68c add deeply nested skyboxes 2016-08-29 13:57:14 -07:00
Brad Hefta-Gaub
3d6691f3d1 Merge pull request #8527 from zzmp/fix/skybox-default-color
fix skybox default
2016-08-26 15:14:44 -07:00
Zach Pomerantz
996346980d clear the skybox between scenes 2016-08-25 18:08:22 -07:00
Andrew Meadows
2f16aca114 remove cruft and fix typo in rebase 2016-08-24 22:26:56 -07:00
Andrew Meadows
eb65be5478 remove cruft argument from allocateModel() 2016-08-24 22:26:56 -07:00
Andrew Meadows
b0a0293e6e move compoundResource out of Model class 2016-08-24 22:26:56 -07:00
Anthony J. Thibault
d015c5cfb5 Merge branch 'master' into feature/hand-controller-web-entity-integration 2016-08-22 14:13:17 -07:00
Anthony J. Thibault
7de8cc6422 Merge branch 'master' into feature/hand-controller-web-entity-integration 2016-08-16 16:49:57 -07:00
Zach Pomerantz
d6d9871a96 unused var nits 2016-08-16 14:36:54 -07:00
Zach Pomerantz
8c559bc65d use lights from nontextured skyboxes 2016-08-16 13:27:22 -07:00
Brad Davis
d548da02d9 Expose whether nsight is running to the app, disable some stuff under nsight 2016-08-12 22:28:50 -07:00
Anthony J. Thibault
1be434342b Work In Progress snapshot
* Added new PointerEvent type.
* Mouse events are still sent from Application to EntityTreeRenderer, however, EntityTreeRenderer converts them to PointerEvents
* All outgoing signals from EntityTreeRenderer use PointerEvents instead of MouseEvents
* Associated JavaScript entity methods will receive PointerEvents instead of MouseEvents
* Events from handControllerGrab.js to entities are currently broken.
2016-08-12 17:11:59 -07:00
Ryan Huffman
35ea9908cd Add default skybox 2016-08-08 16:00:58 -07:00
Ryan Huffman
77e993510e Cleanup implementation of angular loading 2016-08-08 08:53:05 -07:00
Ryan Huffman
c594dcdf9f Add priority loading for model entities 2016-08-08 08:52:29 -07:00
Brad Davis
5220b52cd9 Don't trigger entity scripts without scripting interface 2016-07-06 18:13:15 -07:00
Brad Davis
cd1e910844 Add a generic shape primitive 2016-05-21 23:46:44 -07:00
Zach Pomerantz
61fbb7022c Mv entities script engine deleter to fn 2016-05-16 10:40:11 -07:00
Zach Pomerantz
2140dc77b3 Rename wait and unload in best thread 2016-05-13 16:14:22 -07:00
Zach Pomerantz
806d06b552 Wait on old entity script engines in threadpool 2016-05-12 17:51:40 -07:00
Zach Pomerantz
7e82494a66 Add cap on entities scripting thread stop time 2016-05-12 17:51:37 -07:00
Zach Pomerantz
f40fe88ee7 Clean up entity script engine deletion 2016-05-12 17:51:36 -07:00
Atlante45
07adef9465 Fix entities collision sounds 2016-05-05 14:55:28 -07:00
Zach Pomerantz
bc8a171fde Merge branch 'master' of github.com:highfidelity/hifi into feat/resource-prefetch 2016-04-27 11:55:24 -07:00
Seth Alves
e2025b0d1f lock entity-tree before accessing entities 2016-04-21 15:27:15 -07:00
Zach Pomerantz
c096b0dfa1 Add TextureType to NetworkTexture for reflection 2016-04-20 20:18:22 -07:00
Brad Hefta-Gaub
55010cebb7 remove unhelpful comment 2016-04-18 12:43:32 -07:00
Brad Hefta-Gaub
374ba10524 more CR feedback 2016-04-18 12:23:36 -07:00
Brad Hefta-Gaub
0d20f2468e CR feedback 2016-04-18 12:13:21 -07:00
Brad Hefta-Gaub
c26115cf2e one small tweak 2016-04-18 11:40:17 -07:00
Brad Hefta-Gaub
f6c75d0530 cleanup 2016-04-18 10:41:54 -07:00
Brad Hefta-Gaub
d1f6b371c9 cleanup 2016-04-18 10:27:12 -07:00
Brad Hefta-Gaub
a4f562672a cleanup 2016-04-18 10:08:33 -07:00
Brad Hefta-Gaub
9db0fe0d11 switch to using QSharedPointer for _entitiesScriptEngine 2016-04-18 09:46:04 -07:00
Brad Hefta-Gaub
87078b1ea2 first cut at resetting entities script engine on domain change 2016-04-16 11:09:23 -07:00
Zach Pomerantz
1e710712cc Check entities scripting thread before signaling it 2016-04-06 11:19:07 -07:00
Zach Pomerantz
0e9b783ca3 Release skybox texs when not rendering 2016-04-01 14:46:50 -07:00
Brad Hefta-Gaub
03f9a2b46f more optimization in find best zone 2016-03-31 09:36:51 -07:00
Brad Hefta-Gaub
28978c8adb optimize checkEnterLeaveEntities() to do distance check and stationary checks less frequently 2016-03-30 17:49:30 -07:00
Zach Pomerantz
29dedd5524 Update model URL on render thread 2016-03-29 10:42:40 -07:00
Zach Pomerantz
3e9e083df5 Update users of NetworkGeometry 2016-03-24 11:35:41 -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
Seth Alves
f8b8877369 coding standard 2016-03-20 17:37:06 -07:00
Seth Alves
d4ed9993b2 don't spam log when a zone is invisible 2016-03-20 15:06:17 -07:00
Brad Hefta-Gaub
7483b8546b remove FaceModel, make Model support shared_from_this() so we can ave shared and weak pointers to it 2016-03-17 17:05:35 -07:00
Chris Collins
307a0cf05a Merge pull request #7349 from zzmp/fix/guard-skybox-tex
Guard against failure to load skybox tex
2016-03-16 15:06:52 -07:00
Howard Stearns
010aaa55c0 const ref 2016-03-14 22:13:26 -07:00
Howard Stearns
d7e3699bc8 Merge branch 'master' of https://github.com/highfidelity/hifi into zone-visibility 2016-03-14 17:45:52 -07:00
Zach Pomerantz
b6322164cf Guard against failure to load skybox tex 2016-03-14 11:15:06 -07:00
Seth Alves
dbd548a8c7 fix a crash 2016-03-13 11:01:11 -07:00
howard-stearns
8799bf2d55 Alternative implementation, which only selects visible bestZone. 2016-03-11 16:36:13 -08:00
howard-stearns
e538edba0a Merge branch 'master' of https://github.com/highfidelity/hifi into zone-visibility 2016-03-11 10:22:01 -08:00
howard-stearns
9cdd0ac6d0 Respect zone visibility property. 2016-03-11 10:19:44 -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
Zach Pomerantz
d7d351fc63 Guard against unloaded env cubemaps 2016-03-10 12:50:52 -08:00
Zach Pomerantz
d615e2e83b Avoid redundant zone updates 2016-03-10 12:27:45 -08:00
Zach Pomerantz
1640314076 Use one procedural for skybox (avoid copies) 2016-03-10 10:12:22 -08:00