Commit graph

1692 commits

Author SHA1 Message Date
Seth Alves
422b0bb952 don't set _dirtyFlags if polyvox is collisionless 2017-02-25 21:14:13 -08:00
Seth Alves
7a31a99e3c back out previous experiment 2017-02-25 21:13:20 -08:00
Seth Alves
1e81edbaea make a copy of volData before computing the visual mesh 2017-02-25 15:32:08 -08:00
Seth Alves
0e4b0332dd avoid a rare crash 2017-02-25 11:35:27 -08:00
Seth Alves
76c873ce81 don't compute polyvox shapes if they are collisionless 2017-02-25 11:34:48 -08:00
Bradley Austin Davis
7fb7aa87eb Working on new texture management strategy 2017-02-17 07:53:16 -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
24510ee3fe Merge branch 'master' of github.com:highfidelity/hifi into model-scripting 2017-02-01 18:42:56 -08:00
Seth Alves
bb3155ee61 obj file is now produced in /tmp 2017-01-31 14:29:42 -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
Seth Alves
5131d1edf2 Merge branch 'master' of github.com:highfidelity/hifi into model-scripting 2017-01-31 09:22:16 -08:00
Seth Alves
7c2957cfa7 merge from upstream 2017-01-31 08:57:36 -08:00
Brad Hefta-Gaub
b597f3e098 Merge pull request #9267 from AndrewMeadows/report-all-collision-events
fix for missed START collision events
2017-01-31 08:54:58 -08:00
Seth Alves
7d80679652 Merge pull request #9566 from sethalves/tablet-ui
Tablet ui
2017-01-31 05:03:51 -08:00
Seth Alves
39d195fce2 Merge branch 'master' of github.com:highfidelity/hifi into tablet-ui 2017-01-31 05:02:07 -08:00
Seth Alves
17514a5022 Merge branch 'master' of github.com:highfidelity/hifi into model-scripting 2017-01-31 04:57:16 -08:00
Seth Alves
88948fa2b4 Merge branch 'tablet-ui' of github.com:highfidelity/hifi into model-scripting 2017-01-30 19:54:50 -08:00
Atlante45
c65e884151 Don't set joint "set" flags for animation values 2017-01-30 16:04:54 -08:00
Anthony J. Thibault
0962a15a06 Fix for one-frame lag in the tablet stylus. 2017-01-30 15:39:55 -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
Anthony J. Thibault
39d68828ab Disable FXAA on tablet overlay in desktop mode.
This introduces the "isAA" property to 3d overlays. When false, the overlay is rendered after
the "Antialiasing" render pass.  Ironically, disabling FXAA makes the text more readable, which is
essential in 2D desktop mode.

Two new shaders were introduced.

simple_opaque_web_browser_overlay.slf
simple_transparent_web_browser_overlay.slf

These are tailored to write into the main framebuffer instead of the g-buffer.
2017-01-30 11:24:59 -08:00
Seth Alves
d158f6afd1 hook up a way to get mesh out of polyvox 2017-01-28 20:42:14 -08:00
Seth Alves
c317ba8054 merge from upstream 2017-01-25 15:57:53 -08:00
Atlante45
f540c94113 Merge branch 'master' of https://github.com/highfidelity/hifi into ess-pr 2017-01-25 13:06:49 -08:00
Stephen Birarda
a8118e83ff cleanup debug for safe web entity URLs 2017-01-23 13:54:43 -08:00
Seth Alves
c958314918 merge from upstream 2017-01-23 13:52:01 -08:00
Stephen Birarda
d7651e9838 move value sanitizing to WebEntityItem 2017-01-23 11:45:21 -08:00
Stephen Birarda
99e0c8c0e7 use fromUserInput in web entity URL set to avoid crashable URLs 2017-01-23 11:37:54 -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
Seth Alves
eb25e1c12d Merge branch 'master' of github.com:highfidelity/hifi into tablet-ui 2017-01-19 09:41:49 -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
samcake
69f9053e61 Merge branch 'master' of https://github.com/highfidelity/hifi into meta 2017-01-17 10:55:10 -08:00
samcake
83d1c3ad01 Adding support for the meta rendering 2017-01-16 17:47:58 -08:00
Seth Alves
f0248275ec Merge branch 'load-models-in-keyhole' of github.com:sethalves/hifi into tablet-ui 2017-01-16 06:47:15 -08:00
Seth Alves
050a7e87d2 load entity models that don't yet need to be rendered but are close enough to keep physics from being enabled. 2017-01-15 17:04:51 -08:00
Anthony J. Thibault
26a5b5ed91 Fix for rendering of tablet ModelEntity in desktop mode.
The Model pendingChanges.updateItem() lambda now directly calls into StaticallyNestable.  This is late enough
in the update loop to have the most up-to-date camera transform used for rendering.
2017-01-11 18:37:57 -08:00
Seth Alves
bacc796730 Merge branch 'master' of github.com:highfidelity/hifi into update-tablet-ui-again 2017-01-11 09:54:26 -08:00
Brad Davis
1dd2747ef9 Push some tracing into 'detail' categories for easy filtering. Add new tracing categories, add counter change tracking. 2017-01-10 10:44:04 -08:00
Anthony J. Thibault
6794ed7cc4 Merge remote-tracking branch 'upstream/master' into tablet-ui 2017-01-09 10:37:46 -08:00
Anthony J. Thibault
0860c50a49 Allow Hifi.SoundEffect to be used in all qml
Including webEntities, webOverlays and the system tablet.
We might want to add this to enable spatial sound effects for the web keyboard.
2017-01-06 14:01:13 -08:00
Anthony J. Thibault
3c2f9acd39 Hooked up EventBridge to TabletScriptingInterface. 2017-01-03 15:43:21 -08:00
Anthony J. Thibault
00980366d6 Merge branch 'master' into tablet-ui 2017-01-03 09:45:23 -08:00
Brad Davis
e5e9ab42ea Encapsulate AnimPose members for easier optimizations 2016-12-28 12:11:24 -08:00
Anthony J. Thibault
01a96347a5 Updated Web3dOverlay.cpp to work with TabletRoot.qml 2016-12-20 14:40:29 -08:00
Anthony J. Thibault
ec38c4e319 Merge remote-tracking branch 'upstream/tablet-ui' into tablet-ui 2016-12-20 13:43:06 -08:00
Anthony J. Thibault
84db58dbc6 Make tablet.qml work on Web3DOverlay 2016-12-20 12:16:11 -08:00
Brad Davis
d0d6b1f87e tracing polish 2016-12-20 07:45:35 -08:00
Andrew Meadows
e03e57a480 adding profile stats relating to avatar CPU costs 2016-12-20 07:45:35 -08:00
Ryan Huffman
21bab49f79 Add chrome tracing support 2016-12-20 07:45:35 -08:00
David Rowe
5b8a9c0bcd Add extra logging for Clara.io asset resizing 2016-12-20 07:43:48 -08:00
David Rowe
e85bc50333 Tidying 2016-12-20 07:38:25 -08:00
David Rowe
e0922cdf4d Add missing entity hover signal 2016-12-20 07:38:25 -08:00
Brad Hefta-Gaub
c65471e880 Merge branch 'master' of https://github.com/highfidelity/hifi into removeLogSpam
Conflicts:
	libraries/script-engine/src/FileScriptingInterface.cpp
2016-12-19 22:27:24 -08:00
Brad Hefta-Gaub
dbbed462b4 cleanup naked qDebug() calls 2016-12-19 22:24:25 -08:00
Chris Collins
61c60fca2d Merge pull request #8968 from ctrlaltdavid/21089
Clara.io marketplace improvements
2016-12-19 18:21:45 -08:00
Anthony J. Thibault
a791ddcc22 Tablet can switch to a web url.
Help button has been updated to switch to the help.html.  It doesn't look good because
the content was authored expecting landscape window, not portrait.

The API is by no means final.  But it exposes two methods to JS.

* Tablet.gotoHomeScreen() - Used to forcefully go back to the home tablet "springboard", eventually this will
  hooked up to the tablet button.
* Tablet.gotoWebScreen(url) - Causes the tablet to switch from the home "springboard" and load a web url.

tabletTest.js and help.js have been updated to use this functionality.
2016-12-19 17:52:19 -08:00
Anthony J. Thibault
856791c11d Made TabletRoot.qml the main tablet qml file.
This file uses a Loader node to load, Tablet.qml.
2016-12-19 15:15:16 -08:00
Brad Davis
30a9961362 tracing polish 2016-12-16 14:02:27 -08:00
Andrew Meadows
ee6a9f4506 adding profile stats relating to avatar CPU costs 2016-12-16 13:41:31 -08:00
Ryan Huffman
7bb2755913 Add chrome tracing support 2016-12-16 01:14:01 -08:00
Anthony J. Thibault
5d1ccfbccc Tablet#removeButton now works properly 2016-12-15 15:49:37 -08:00
Anthony J. Thibault
d2c4417b24 Hook up Help button to the new Tablet interface 2016-12-14 17:05:47 -08:00
Anthony J. Thibault
d4f9d21ce8 Pass tablet QQuickItem to TabletScriptingInterface
Also, moved TabletScriptingInterface to script-engine library for easy access, baby.
2016-12-14 14:04:48 -08:00
David Rowe
aefa116207 Add extra logging for Clara.io asset resizing 2016-12-13 17:55:22 +13:00
Seth Alves
819e3dc41d remove some unneeded html special-casing 2016-12-09 10:18:30 -08:00
Seth Alves
6c99b5e9ca code review 2016-12-09 06:50:10 -08:00
Seth Alves
369f61e172 bring over some previous tablet-ui work 2016-12-08 16:54:39 -08:00
Anthony J. Thibault
319bb9ce78 Prototype of Tablet.qml hacked to appear on ALL web entities. 2016-12-08 15:31:00 -08:00
David Rowe
2f42f4cfa5 Merge branch 'master' into 21089 2016-12-05 18:33:38 +13:00
David Rowe
71de106594 Tidying 2016-12-04 15:14:47 +13:00
David Rowe
c6f19b1c4e Add missing entity hover signal 2016-12-03 20:37:47 +13:00
Brad Davis
12ccbdac0b Actually render polylines 2016-12-01 19:46:08 -08:00
Brad Davis
5bade2ef9a Add locking around the code that reads polyline entity data and builds GPU structures for them 2016-12-01 14:14:17 -08:00
samcake
9478f242d8 Merge branch 'master' of https://github.com/highfidelity/hifi into hdr 2016-11-23 10:35:32 -08:00
samcake
3d0b557af6 Fix the bad binding for polyline 2016-11-22 13:01:02 -08:00
samcake
dfc0b7beac adressed reveiw comments 2016-11-22 10:15:49 -08:00
samcake
31232a1078 Merge branch 'master' of https://github.com/highfidelity/hifi into hdr 2016-11-21 11:30:26 -08:00
Seth Alves
8ee1fac367 don't try to render until mesh is ready 2016-11-18 16:33:48 -08:00
Seth Alves
b2a28147c0 more time 2016-11-18 15:36:29 -08:00
Seth Alves
47062d29f5 cleanups 2016-11-18 15:27:45 -08:00
Seth Alves
3278478a60 cleanups 2016-11-18 15:26:16 -08:00
Seth Alves
a66a1d392e hack to avoid crash 2016-11-18 15:24:19 -08:00
Seth Alves
1714d4fe06 fix build 2016-11-18 05:40:57 -08:00
samcake
a07523ca31 Merge with Upstream 2016-11-17 18:31:05 -08:00
Seth Alves
8530156227 experimenting 2016-11-17 16:06:35 -08:00
Seth Alves
028be0f830 Merge branch 'master' of github.com:highfidelity/hifi into fix-polyvox-buffer-size 2016-11-17 14:14:08 -08:00
Seth Alves
1eb17b9786 fix bug that caused polyvox rendering to mishandle its gpu buffers 2016-11-17 14:11:09 -08:00
Brad Hefta-Gaub
36d8e6d64d Merge pull request #9074 from hyperlogic/bug-fix/web-entity-limit-fix
Bug fix for blank webEntities during long sessions
2016-11-17 13:02:18 -08:00
Brad Hefta-Gaub
91f90400a9 Merge pull request #9088 from sethalves/fix-polyvox-memory-leak
fix polyvox memory leak
2016-11-17 12:23:13 -08:00
Seth Alves
1f9598f295 Merge branch 'master' of github.com:highfidelity/hifi into fix-polyvox-memory-leak 2016-11-17 08:44:52 -08:00
samcake
7c003ce865 Merge branch 'master' of https://github.com/highfidelity/hifi into hdr 2016-11-16 19:13:22 -08:00
Seth Alves
697369dece avoid crash on startup 2016-11-16 16:11:17 -08:00
Seth Alves
a14ff22df3 update render-land bounds when polyvox moves 2016-11-16 15:10:43 -08:00
Seth Alves
d097fa7982 fix polyvox memory leak 2016-11-16 14:10:50 -08:00
Anthony J. Thibault
066ddad25a Reduced MAX_CONCURRENT_WEB_VIEWS from 100 to 20. 2016-11-16 09:39:55 -08:00
Brad Davis
fda2cde006 Fix buffer leak in line entity 2016-11-15 14:16:54 -08:00
Anthony J. Thibault
eb401c125a Bug fix for blank webEntities during long sessions
In prolonged sessions _currentWebCount would reach MAX_CONCURRENT_WEB_VIEWS and prevent new webEntities from being properly created and initialized.

The _currentWebCount inside of RenderableWebEntityItem would become inflated when buildWebSurface is called without a currentContext.
The early return did not properly take this into account.  Instead we move the increment after the early return and right before the _webSurface is actually created.
2016-11-14 18:01:47 -08:00
samcake
00addcad9e Merge branch 'master' of https://github.com/highfidelity/hifi into hdr 2016-11-10 17:57:34 -08:00
samcake
e12040a98a Merge branch 'master' of https://github.com/highfidelity/hifi into hdr 2016-11-04 14:54:18 -07:00
Seth Alves
689fdfb35f implement RenderableModelEntityItem::setAbsoluteJointRotationInObjectFrame and RenderableModelEntityItem::setAbsoluteJointTranslationInObjectFrame 2016-11-04 11:44:42 -07:00
Seth Alves
e41fa94958 implement RenderableModelEntityItem::setAbsoluteJointRotationInObjectFrame and RenderableModelEntityItem::setAbsoluteJointTranslationInObjectFrame 2016-11-04 11:42:31 -07:00
Seth Alves
727fe4bc21 Merge branch 'master' of github.com:highfidelity/hifi into fix-setLocalJointRotation-name 2016-11-04 10:04:56 -07:00
Brad Hefta-Gaub
961e17bc48 Merge pull request #8989 from sethalves/fix-polyvox-bitrot
fix a couple of minor polyvox problems
2016-11-03 13:43:52 -07:00
Seth Alves
339d6a55cf getLocalJointRotation getLocalJointTranslation, started on getLocalJointTranslation getLocalJointRotation 2016-11-03 10:06:07 -07:00
Andrew Meadows
cd5826e2ce load model of new entity with unknown dimensions 2016-11-03 09:03:04 -07:00
samcake
6926cd274c Merge with upstream 2016-11-02 18:15:08 -07:00
Seth Alves
d0c0cdd82f polyvox corners stitch together reliably. surface-extractor dropdown in edit.js works again 2016-11-02 16:31:34 -07:00
Seth Alves
844cc03dcb fix names of model-entity joint setters 2016-11-02 10:24:01 -07:00
Seth Alves
3ad748cfe2 Merge branch 'master' of github.com:highfidelity/hifi into possible-fix-for-2068 2016-10-28 16:41:39 -07:00
Zach Pomerantz
be23668ca8 delete websurfaces on shutdown 2016-10-28 14:29:52 -07:00
Seth Alves
e15043754c Merge branch 'master' of github.com:highfidelity/hifi into possible-fix-for-2068 2016-10-28 11:36:09 -07:00
Anthony J. Thibault
1fc310434e Fix for crash in QtWebEngineCore when rapidly switching domains
Call stop on the QWebEngineView before destroying OffscreenQMLSurface.
2016-10-27 18:55:24 -07: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 Davis
9523660027 Fix offscreen QML texture leak, improve texture sharing for same size surfaces 2016-10-20 11:55:25 -07:00
Brad Hefta-Gaub
bf732127ca Merge pull request #8856 from jherico/geometry_ids
Remove the use of implicit ids in geometry cache
2016-10-20 08:14:49 -07:00
Brad Davis
2705ee7030 Remove the use of implicit ids in geometry cache 2016-10-19 11:18:25 -07:00
Brad Davis
61e5e2861e Rate limit QML web surfaces 2016-10-18 19:29:11 -07:00
David Rowe
e269a84d0e Add placeholder "FIXME"s for making Web entity keyboard HMD-only 2016-10-13 09:35:39 +13:00
samcake
5bb26fdb7f Merge branch 'master' of https://github.com/highfidelity/hifi into hdr 2016-10-10 15:56:37 -07:00
Brad Hefta-Gaub
798a5cfc9d Merge pull request #8768 from ZappoMan/nestedSkyboxes
fix skybox changing when going between zones
2016-10-10 15:13:33 -07:00
Anthony J. Thibault
e76a7fc577 Crash fix for RenderableWebEntityItem::buildWebSurface
Gracefully handle the absence of a gl context.  We will continue to retry every render call.
2016-10-10 13:57:54 -07:00
Brad Hefta-Gaub
db5edb530a fix skybox changing when going between zones 2016-10-09 15:22:35 -07:00
samcake
8a44140e6b cleaning up the comments from review and trying something to adress the issue that showed up on i5 2016-10-07 16:04:19 -07:00
samcake
92d71a2e37 Merge branch 'master' of https://github.com/highfidelity/hifi into hdr 2016-10-07 10:13:24 -07:00
Ryan Downe Karpf
ed2571704f Merge pull request #8735 from huffman/feat/teleport-improvements
Update teleport.js to ignore invisible or collisionless objects and disallow teleporting to  certain surfaces
2016-10-07 09:56:30 -07:00
David Rowe
1a745094e2 Merge branch 'master' into 21055
Conflicts:
	libraries/entities-renderer/src/RenderableWebEntityItem.cpp
	libraries/gl/src/gl/OffscreenQmlSurface.h
2016-10-06 09:29:09 +13:00
samcake
e6572a42e3 Merge branch 'master' of https://github.com/highfidelity/hifi into hdr 2016-10-05 09:31:55 -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 Davis
8c5028158f Fix crash on destroying web entities and overlays 2016-10-03 18:02:21 -07:00
Brad Davis
ca3572f991 Support external GL textures with proper fencing 2016-10-03 17:09:10 -07:00
David Rowe
caf1a93354 Merge branch 'master' into 21055
Conflicts:
	libraries/entities-renderer/src/RenderableWebEntityItem.cpp
2016-10-04 10:51:14 +13:00
sam
bda835361a Merge branch 'master' of https://github.com/highfidelity/hifi into hdr 2016-10-03 02:54:11 -07:00
sam
6f2452815c pass the visibility of the enitity to the LightPaylkoad correctly, clean up the ambient shader 2016-10-03 00:08:30 -07:00
Anthony Thibault
a79485f8c2 Fix for crash bug in web entities
Guard against nullptrs in RenderableWebEntitItem and WebEntityAPIHelper.
These pointers can go null if the webEntity is deleted on the main thread.
Also, the backing offscreen qml surface can be destroyed if the webEntity has not been rendered for 30 seconds
due to frustum culling.
2016-10-01 13:43:49 -07:00
samcake
9b94a025fc Refining the voxelization of the sphere in the view frustum grid 2016-09-26 18:41:53 -07:00