Commit graph

81 commits

Author SHA1 Message Date
Brad Davis
8a703d0363 Instanced rendering, first pass 2015-09-18 16:29:29 -07:00
Ryan Huffman
269d5bb6da Resolve bugs with *Cache changes 2015-08-26 14:04:55 -07:00
Brad Davis
78a08ed7c7 Merge pull request #5641 from thoys/20660
CR for Job #20660 - Render the world Axis markers into negative space, add view option
2015-08-24 10:16:56 -07:00
Nex Pro
3f4323e084 Added overload for renderDashedLine 2015-08-24 16:07:07 +01:00
Nex Pro
ad315cf68a Merge branch '20660' of github.com:thoys/hifi into 20660
Conflicts:
	interface/src/Util.cpp
2015-08-23 16:30:46 +01:00
Nex Pro
1f08444369 Modified the world box to render axes in negative space
Also Modified renderDashedLine to accept params for dash len and gap len so we can display negative axes as dashed lines with 500mm dashes and gaps.
2015-08-23 16:21:20 +01:00
Anthony J. Thibault
b7009b4631 Fix for animation resources
The problem was that the invokeMethod between the AnimationReader thread
and the main thread was failing, because FBXGeometry* wasn't a registered meta type.

So, I ended up normalizing the AnimationReader class to be more like GeometryReader,
in that it uses singles and slots to communicate success and failure, rather then
invokeMethod.
2015-08-21 16:09:06 -07:00
Anthony J. Thibault
1b3d7fabc8 ResourceCache, NetworkGeometry and Model refactoring and optimizations.
* Removed validation logic from Resource class, Qt does this internally and is more
  standards compliant.  This should result in more accurate caching and faster resource
  fetching when cache is stale and validation fails.
* Added loaded and failed slots to Resource class, so it does not have to be polled.

* NetworkGeometry now uses multiple Resource objects to download
  the fst/mapping file and the fbx/obj models.
* NetworkGeometry is no longer a subclass of Resource
* NetworkGeometry now has signals for success and failure, you no longer
  have to poll it to determine when loading is complete (except for textures *sigh*)

Some functionality was removed

* NetworkGeometry no longer has a fallback
* NetworkGeometry no longer loads LODs or has lod logic.
* The number of FBXGeometry copies is greatly reduced.

* Model::setURL no supports fallback URL, delayLoad or retainCurrent option.
  This can result in a pop when switching avatars, and there's no longer a default
  if avatar loading fails.
2015-08-20 18:59:51 -07:00
Sam Gateau
f0f141a2b4 SImple fix to the case of multiple material in a mesh with different opacity 2015-08-06 18:51:44 -07:00
Sam Gateau
dc10f30d3d Merged 2015-07-23 15:10:42 -07:00
Sam Gateau
a561874ce3 Render the rear view mirror in a separate target and then display it during overlay pass 2015-07-23 14:56:14 -07:00
ZappoMan
c2113ea96b remove non-batch versions of GeometryCache renderXYZ() methods 2015-07-23 07:42:58 -07:00
Brad Davis
d68618e206 Removing GL headers from most files, and some naked GL from application.cpp 2015-07-18 00:46:09 -07:00
David Rowe
c46533d9a6 Make renderGrid handle changing position and dimensions
So that audio scope grid moves when Interface window is resized.
2015-07-16 21:05:14 -07:00
ZappoMan
d19c7125da remove naked gl calls 2015-07-14 16:49:43 -07:00
Sam Gateau
c41ebcae78 Covering all the case for rendering the light passes 2015-06-26 15:40:08 -07:00
Brad Davis
1b44c220a7 Prep work for procedural stars & stuff 2015-06-22 09:43:12 -07:00
Brad Davis
00d8fe75ab Breaking up overlay into rendering and compositing classes 2015-06-13 17:36:08 -07:00
Brad Davis
737e418878 Revert "Revert "Merge pull request #5106 from jherico/render_cursor""
This reverts commit 0cdc2b53fe.
2015-06-13 10:02:54 -07:00
ZappoMan
0cdc2b53fe Revert "Merge pull request #5106 from jherico/render_cursor"
This reverts commit 4d18bd7cec, reversing
changes made to 24fda9a733.
2015-06-12 12:57:24 -07:00
Brad Davis
94c414e4e8 Add unit quad, commonly used in compositing the overlays 2015-06-10 08:12:58 -07:00
Atlante45
c0725813b6 typo 2015-05-25 12:11:24 +02:00
Ryan Huffman
776955b040 Move GeometryCache gl* calls to non-batch methods 2015-05-15 15:21:02 -07:00
Ryan Huffman
5abd4bb08e Update GeometryCache to accept gpu::Batch 2015-05-15 15:20:50 -07:00
Anthony J. Thibault
ede42285b1 Improvements to particle entity.
* Changed particle geometry to billboarded quads
* Added texture support
* Added ajt-test.js particle test script.
* GeometryCache support for batched quads with texCoords.
* Bug fix for infinite loop if _lifetime was very large.
* Don't reset the simulation on animation loop.
* stop emitting particles on animation stop, but keep simulating until there are no more living particles.
* Removed some trailing whitespace
2015-05-10 17:13:46 -07:00
Atlante45
ab9d81b5e2 Correct comments 2015-04-28 18:09:09 +02:00
Seth Alves
7da87d6e15 set up a way to request ResourceCache downloads from a non-networking thread. 2015-03-26 18:37:55 -07:00
Seth Alves
069c358aa3 Work around a deadlock:
thread 15 locks Octree
thread 1 blocks waiting for Octree lock
thread 15 tries to pass a message to thread 1 with QMetaObject::invokeMethod, and hangs

thread 15 is blocked on qt message passing to thread 1
  ResourceCache::getResource                       libraries/networking/src/ResourceCache.cpp:57
  GeometryCache::getGeometry                       libraries/render-utils/src/GeometryCache.cpp:1774
  ModelEntityItem::isReadyToComputeShape           libraries/entities/src/ModelEntityItem.cpp:431
  PhysicsEngine::addEntityInternal                 libraries/physics/src/PhysicsEngine.cpp:67
  EntitySimulation::addEntity                      libraries/entities/src/EntitySimulation.cpp:129
  EntityTree::postAddEntity                        libraries/entities/src/EntityTree.cpp:91
        ^ locks simulation
  EntityTreeElement::readElementDataFromBuffer     libraries/entities/src/EntityTreeElement.cpp:773
  Octree::readElementData                          libraries/octree/src/Octree.cpp:301
  Octree::readElementData                          libraries/octree/src/Octree.cpp:354
  ...
  Octree::readBitstreamToTree                      libraries/octree/src/Octree.cpp:439
  OctreeRenderer::processDatagram                  libraries/octree/src/OctreeRenderer.cpp:136
        ^ lockForWrite Octree::_lock
  OctreePacketProcessor::processPacket             interface/src/octree/OctreePacketProcessor.cpp:91
  ReceivedPacketProcessor::process                 libraries/networking/src/ReceivedPacketProcessor.cpp:51

thread 1 is blocked on lockForWrite of Octree::_lock
  Octree::lockForWrite                             libraries/octree/src/Octree.h:292
  EntityTree::update                               libraries/entities/src/EntityTree.cpp:668
        ^ lockForWrite on Octree:_lock
  EntityTreeRenderer::update                       libraries/entities-renderer/src/EntityTreeRenderer.cpp:258
  Application::update                              interface/src/Application.cpp:2189
        ^ calls _physicsEngine.stepSimulation() before this
  Application::idle                                interface/src/Application.cpp:1535
  timer
2015-03-17 11:38:42 -07:00
Seth Alves
3a3e723f4e trying to figureo out where to download hull models 2015-03-11 14:26:30 -07:00
Seth Alves
858d15d0ba obj reader sort-of works 2015-03-06 13:15:53 -08:00
David Rowe
21f12c1d6c Use cache ID when rendering talk bubble sphere 2015-02-26 13:50:43 -08:00
Brad Hefta-Gaub
9a7ed8055f Merge pull request #4267 from samcake/master
Fix performance bug for NetworkGeometry::isLoadedWithTextures() and glTransform removal
2015-02-11 09:45:29 -08:00
Sam Gateau
b9fd116dbf Introduce a cache bit in networkGemometry to capture the status of texture LOaded and avoid requiring everything once everything is loaded and get rid of the Transform stack calls on gl from gpu 2015-02-10 18:38:48 -08:00
ZappoMan
8016fb5e0d fix color issues with quads 2015-02-10 17:35:27 -08:00
ZappoMan
418b97a648 attempt to get color working for 3d textured quads 2015-01-29 12:04:34 -08:00
ZappoMan
87e91a5a94 Revert "attempt to get color working for 3d textured quads"
This reverts commit 0f390a98b8.
2015-01-29 11:44:36 -08:00
ZappoMan
0f390a98b8 attempt to get color working for 3d textured quads 2015-01-29 10:50:13 -08:00
ZappoMan
5d2df7b03f implement color for dashed lines 2015-01-28 18:51:23 -08:00
ZappoMan
efb044ea5e change renderDashedLine() to take a color paramter 2015-01-28 15:08:59 -08:00
ZappoMan
7bd45ba0ca change removing more glColor calls 2015-01-28 14:52:33 -08:00
ZappoMan
e7742351b7 get sizing for spheres to work properly 2015-01-27 20:30:58 -08:00
ZappoMan
9152865116 first cut at supporting streamized spheres 2015-01-21 16:56:41 -08:00
ZappoMan
4c9b7f46a2 cleanup 2015-01-21 10:03:25 -08:00
ZappoMan
44b48bab5e remove some dead code we don't use 2015-01-19 18:15:47 -08:00
ZappoMan
2b2bd3cb47 more work on renderGrid with color 2015-01-19 18:08:34 -08:00
ZappoMan
0ae695ecf3 first cut at renderGrid with color 2015-01-19 16:54:43 -08:00
ZappoMan
bddb7856af more work 2015-01-19 13:34:09 -08:00
ZappoMan
439a1c0495 solid cube now streamizing 2015-01-15 18:46:44 -08:00
ZappoMan
daafa20ec6 first cut at moving wire cube to support gpu streams 2015-01-15 17:00:08 -08:00
ZappoMan
149f365410 fix colors for renderBevelCornersRect() 2015-01-15 11:55:45 -08:00