Commit graph

1264 commits

Author SHA1 Message Date
Ryan Huffman
70eaac8d6c Add persisting of ktx min mips available to ktx cache file 2017-04-26 10:48:24 -07:00
Ryan Huffman
5594e81fe4 Improve gl backend handling of unavailable mips 2017-04-26 10:48:24 -07:00
Ryan Huffman
11751611e1 Update NetworkTexture to track current KTX download state 2017-04-26 10:48:23 -07:00
Ryan Huffman
20f4d14e07 Add compressed KTX size evaluation 2017-04-26 10:48:23 -07:00
Ryan Huffman
b21dc12cc6 Cleanup NetworkTexture ktx handling 2017-04-26 10:47:32 -07:00
Ryan Huffman
ab7099b3eb Add loading of lower mips to NetworkTexture 2017-04-26 10:47:32 -07:00
Ryan Huffman
39c3fee838 Add caching of imageOffset to ktx ImageDescriptor 2017-04-26 10:47:32 -07:00
Ryan Huffman
e9bb895bff Implement KTXStorage::assignMipData and add writing of mips to
TextureCache
2017-04-26 10:47:32 -07:00
Ryan Huffman
cf3dc12542 Add object labels to GL objects and add ktx min mip kv 2017-04-26 10:47:32 -07:00
Ryan Huffman
aca7ad27c6 Fix ktx dependencies 2017-04-26 10:47:32 -07:00
Ryan Huffman
b20fcbfcdb Add a way to write data to a storage object 2017-04-26 10:45:50 -07:00
Ryan Huffman
ccd9c4697b Add extended ktx header/high-mip request handling to NetworkTexture 2017-04-26 10:45:50 -07:00
Ryan Huffman
1fec531c68 Add basic mip writing to gpu::Texture 2017-04-26 10:45:50 -07:00
Ryan Huffman
00cbfa0f70 Add start of progressive ktx-loading 2017-04-26 10:45:50 -07:00
Atlante45
33f58f99d1 CR 2017-04-25 16:09:31 -07:00
Atlante45
9dbae4b54e CR 2017-04-25 15:56:23 -07:00
Atlante45
b98cd7355e Code cleanup 2017-04-25 15:56:23 -07:00
Atlante45
ad16a935e9 Texture::create returns shared pointer 2017-04-25 15:56:23 -07:00
Atlante45
63e564c178 Add source hash to KTX metadata 2017-04-25 15:56:23 -07:00
Atlante45
d9a7615cc8 Add compression support for skyboxes 2017-04-25 15:56:23 -07:00
Atlante45
ae73cf4038 Add support for Grayscale and NormalMap textures 2017-04-25 15:56:23 -07:00
Atlante45
69a27d516f Fix roughness 2017-04-25 15:56:22 -07:00
Atlante45
5ceb30b69c Make sure mips are copied to memory 2017-04-25 15:56:22 -07:00
Atlante45
a450f52427 Start to setup image library 2017-04-25 15:56:22 -07:00
sam gateau
733e268391 FIx the SSBO usage on amd, needed a bit more explanation on the glsl side 2017-04-21 16:17:18 -07:00
sam gateau
0a615f35a7 Merge branch 'master' of https://github.com/highfidelity/hifi into brown 2017-04-21 14:31:15 -07:00
Sam Cake
96960a505d COmpleted the Resource Buffer, compilation and binding works. Now need to help on the shader side 2017-04-14 23:22:45 -07:00
Sam Cake
29545f0918 FInally bringing all the shader compilation related fuinctions in the Backend in the same cpp, making specialized version based on the Backend 2017-04-13 23:53:56 -07:00
samcake
d41f34ce8d Adding support for the resource buffer 2017-04-12 19:07:27 -07:00
Brad Davis
b2aa3271f7 Adding support for variable allocated textures to the GL 4.1 backend 2017-04-12 15:09:20 -07:00
Brad Davis
057a9feaf1 Don't crash if KTX file is invalid 2017-04-06 10:09:57 -07:00
samcake
467ea787c6 Adress Seth's review 2017-03-31 14:54:00 -07:00
samcake
6a0c07a692 Fixing a bad counter for numFaces 2017-03-31 10:39:13 -07:00
Sam Cake
dd73cb7b8e Use a magic number gpu::Texture::SINGLE_MIP instead of 1 2017-03-30 23:46:37 -07:00
Sam Cake
61d78bc931 BRinging the cool texture management of the gl45 backend to gl41, which fixes the broken ao on 41 among other things 2017-03-30 23:29:37 -07:00
samcake
25edb44b75 Fix the problem with the cursor and scattering, 2017-03-30 15:15:14 -07:00
samcake
5584853340 Keep on cleaning 2017-03-29 18:22:21 -07:00
samcake
b6504bba56 Moving the num mips per texture to the creator so it s immutable and simpler 2017-03-29 17:58:56 -07:00
samcake
a2b2e3e169 Revert "Revert "Don't hold KTX files open for longer than transfers require"" 2017-03-28 14:45:04 -07:00
samcake
08e1a2ba4c Revert "Don't hold KTX files open for longer than transfers require" 2017-03-28 14:06:09 -07:00
samcake
e42cb52bd1 Merge pull request #10020 from jherico/ktx_refactor
Don't hold KTX files open for longer than transfers require
2017-03-28 14:06:02 -07:00
Bradley Austin Davis
638364497d Trying a different tactic to avoid multiple concurrent file access 2017-03-27 16:18:04 -07:00
Andrew Meadows
ff2f4da4b2 final changes as per samcake 2017-03-27 15:19:28 -07:00
Andrew Meadows
fcf18cba91 render pipeline support for normalized intergers 2017-03-27 14:40:31 -07:00
Bradley Austin Davis
f764cd614b Don't hold KTX files open for longer than transfers require 2017-03-27 13:33:00 -07:00
samcake
618344fe98 Fixing the bug regarding the numMIps allocated by GLBackend and breaking the HalfRezDepthTexture 2017-03-23 18:10:09 -07:00
Brad Davis
4868a1618a Add initialization to sampler stamp 2017-03-22 18:10:54 -07:00
Brad Davis
9a3686fc1a Fixing merge conflict 2017-03-22 14:55:11 -07:00
Brad Davis
85c80f3be8 Merge remote-tracking branch 'upstream/master' into smarter_textures
Conflicts:
	libraries/gpu/src/gpu/Texture.cpp
2017-03-22 14:25:23 -07:00
Andrew Meadows
a463013d90 Merge pull request #9960 from samcake/blue
Fix Ambient Lighting equation
2017-03-22 14:13:31 -07:00
Brad Davis
e60108cc8c PR comments 2017-03-21 17:26:24 -07:00
samcake
e05abf2a2f Fixing the spherical harmonics gneration 2017-03-20 16:41:21 -07:00
Seth Alves
200550aba9 ModelScriptingInterface::appendMeshes 2017-03-16 15:22:34 -07:00
Brad Davis
399270d243 Still trying to fix OSX build 2017-03-08 09:03:59 -08:00
Bradley Austin Davis
62fcd238ae Fix shared pointer usage in storage abstraction 2017-03-08 09:03:58 -08:00
sam
1b036b7225 Implement the ktx keyvalue feature for read and write and use it with gpu::Texture to store meat data required for full serialization 2017-03-07 00:58:22 -08:00
Bradley Austin Davis
9051c84b6d Fix warnings 2017-03-03 14:16:27 -08:00
Bradley Austin Davis
47087add15 Add support for fallback textures, throttling texture creation 2017-03-03 09:00:12 -08:00
Brad Davis
cd8bba47cf Add pending texture transfer size to tracked stats 2017-02-24 12:39:38 -08:00
Brad Davis
cd8f3e1b01 Prevent name collisions in KTX from causing crashes 2017-02-23 13:04:04 -08:00
samcake
48c7d17140 make sure to assign the proper mipFOrmat to the KTXStorage, and fix the glTypeSize again 2017-02-23 12:43:52 -08:00
Brad Davis
f32817beac Fix number of mips calculation 2017-02-23 10:19:20 -08:00
sam
fbb0a24c4f FIxing the bug preventing to deserialize normals, clean up the ktx usage of the storage::Storage class and cleaning up somewhat the Qt pixel formats used 2017-02-23 02:08:46 -08:00
samcake
262d7c3b79 Merging with upstream smarter_textures and Austin's pr 2017-02-22 17:54:38 -08:00
samcake
ad40e2d7d9 Trying to address the ktx serialization problem with normal, still have a bug 2017-02-22 17:16:37 -08:00
Brad Davis
62422690d0 More KTX testing, functionality 2017-02-22 15:44:06 -08:00
samcake
c2831a513b Adjusting the representation of the format in the KTX for sRGB, unfortunately not working with PicoPixel 2017-02-22 14:41:43 -08:00
samcake
9ca4926c1d Fixing the bad assignment for the srgb textures 2017-02-22 13:43:23 -08:00
Brad Davis
a2269f488f Add some testing / validation for KTX 2017-02-22 13:29:09 -08:00
samcake
5e307f247e Add support for the R8 textures 2017-02-21 10:46:49 -08:00
samcake
ba54b5ce11 Rebasing with current upstream 2017-02-21 10:07:42 -08:00
sam
e5c2f6f651 enabled the usage and cube map with KTX correctly 2017-02-21 01:28:13 -08:00
Brad Davis
27e8750b9b Adding new storage backing for gpu::Texture, moving mip format into Storage abstraction 2017-02-19 18:11:56 -08:00
sam
b6f778633e Merge branch 'smarter_textures' of https://github.com/highfidelity/hifi into texmex 2017-02-17 18:05:27 -08:00
samcake
43d805c1c8 Merging 2017-02-17 16:09:53 -08:00
Brad Davis
6c03927b97 Additional fix to new storage 2017-02-17 13:53:27 -08:00
Brad Davis
61ce66a039 Switching texture backing to opaque storage type 2017-02-17 13:03:03 -08:00
samcake
2d7ba45667 FIx creationg issue , need a usageType at creation 2017-02-17 12:01:33 -08:00
sam
b4745657e0 progressing on io with ktx 2017-02-17 07:58:10 -08:00
sam
0d2e764bfd CLeaning the read case 2017-02-17 07:55:19 -08:00
sam
6771cc31e1 Adding the reading path 2017-02-17 07:55:18 -08:00
samcake
3f0ea1c889 Address review comments 2017-02-17 07:55:16 -08:00
sam
d56f982dec Maybe saving the first ktx textures, testing the save pipeline 2017-02-17 07:54:17 -08:00
sam
115251542d Adding the ktx library 2017-02-17 07:54:12 -08:00
Bradley Austin Davis
7fb7aa87eb Working on new texture management strategy 2017-02-17 07:53:16 -08:00
sam
56d1120654 progressing on io with ktx 2017-02-17 01:15:27 -08:00
sam
2ee3f05713 CLeaning the read case 2017-02-16 17:28:02 -08:00
sam
8ee5defc60 Adding the reading path 2017-02-16 16:03:55 -08:00
samcake
2f7181fb32 Address review comments 2017-02-16 13:27:16 -08:00
sam
0d28d17e40 Maybe saving the first ktx textures, testing the save pipeline 2017-02-16 02:45:53 -08:00
sam
7d5d6823cd Adding the ktx library 2017-02-15 00:54:16 -08:00
samcake
8c7ec8b0c5 Add profiling in COntext batch execution and shortcuts for trace names 2017-01-09 18:05:02 -08:00
Brad Hefta-Gaub
dbbed462b4 cleanup naked qDebug() calls 2016-12-19 22:24:25 -08:00
Brad Davis
30a9961362 tracing polish 2016-12-16 14:02:27 -08:00
Ryan Huffman
7bb2755913 Add chrome tracing support 2016-12-16 01:14:01 -08:00
Brad Davis
a98e49c892 Fix build errors 2016-11-29 14:02:15 -08:00
Brad Davis
3b07e31eab Working on OpenGL debuggability 2016-11-29 13:15:56 -08:00
samcake
a07523ca31 Merge with Upstream 2016-11-17 18:31:05 -08:00
samcake
9031e65aa5 Merge and fix the bug!!! 2016-11-16 19:12:56 -08:00
Seth Alves
d097fa7982 fix polyvox memory leak 2016-11-16 14:10:50 -08:00
samcake
982664dac5 Merging with upstream 2016-11-15 18:14:25 -08:00
samcake
9267f4eaaf Fix the merge with upstream and the new stereo drawcall, fix the timer reporting on mac and fix the openGLChecker quicking on mac 2016-11-15 00:40:39 -08:00
Brad Hefta-Gaub
86430e4121 Merge pull request #8960 from samcake/red-backup-many-stereo-paths
Introduce Instanced Stereo Drawcall
2016-11-14 18:30:42 -08:00
samcake
b888af15e4 Fix merge 2016-11-14 11:15:27 -08:00
samcake
00addcad9e Merge branch 'master' of https://github.com/highfidelity/hifi into hdr 2016-11-10 17:57:34 -08:00
samcake
784a0540ed Merge branch 'master' of https://github.com/highfidelity/hifi into hdr 2016-11-10 10:05:03 -08:00
Brad Davis
db98a742b6 Remove incremental transfers 2016-11-10 08:35:35 -08:00
Brad Davis
192c72ff99 Update menu, initial state for texture management 2016-11-09 12:09:25 -08:00
Bradley Austin Davis
9e929ca629 Re-enable downsampling for non-sparse textures 2016-11-09 12:09:24 -08:00
samcake
af438ae31b Fix the buid 2016-11-07 17:56:54 -08:00
samcake
cab699464e Merge branch 'master' of https://github.com/highfidelity/hifi into hdr 2016-11-07 17:31:06 -08:00
sam
bcef138545 FIx the context stats 2016-11-04 18:59:30 -07:00
samcake
f274ef1a59 Merging back with upstream and trying to fix counter for them to be more stable 2016-11-04 16:56:03 -07:00
samcake
e12040a98a Merge branch 'master' of https://github.com/highfidelity/hifi into hdr 2016-11-04 14:54:18 -07:00
samcake
76aa541d4a Adding the frame gpu and batch timer 2016-11-04 11:49:52 -07:00
samcake
3db1831841 Merge branch 'master' of https://github.com/highfidelity/hifi into punk 2016-11-04 09:59:28 -07:00
samcake
7655f906f1 Starting adding a timer for the frame 2016-11-03 19:26:30 -07:00
samcake
1086585559 fixing the test to actually capture ati correctly and add the report to the ui 2016-11-03 15:15:05 -07:00
samcake
6a39ad3b5a Prevent sparse texture on AMD gpus for now 2016-11-03 13:01:41 -07:00
samcake
6926cd274c Merge with upstream 2016-11-02 18:15:08 -07:00
samcake
9adbb42a6c Fixing the skybox, still issues with the lights 2016-10-28 18:12:39 -07:00
samcake
9e91926426 fixing most of the rendering in 3D 2016-10-28 16:22:46 -07:00
samcake
9d2043cc3c Porting and potentially fixing the stereo drawcall, still not perfrect ork in progress 2016-10-27 17:49:10 -07:00
samcake
5bdfceebc5 BRingin back the stereo code path 2016-10-26 18:35:47 -07:00
samcake
58b81e3b0c Adding counter for the amount of memory used in texture for Framebuffers 2016-10-24 18:34:16 -07:00
Brad Davis
861b69aa94 Add free GPU memory to the displayed stats 2016-10-23 13:07:38 -07:00
Brad Davis
62de2af944 Add more GPU stats, make stats easier to read 2016-10-22 14:38:46 -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
0e1b377227 Merge pull request #8785 from jherico/oculus_crash
Additional plugin debugging, better plugin resource cleanup
2016-10-13 13:54:34 -07:00
samcake
5f9c713d44 Merging with upstream after resolving some conflicts 2016-10-12 09:22:12 -07:00
Brad Davis
28771cbda9 Additional plugin debugging, better plugin resource cleanup 2016-10-11 19:40:02 -07:00
samcake
77062ac1b3 Cleaning up a missing constructor and adjusting the stride for the StrucBuffer by default + merging with upstream 2016-10-11 17:13:08 -07:00
Gabriel Calero
834d9c0710 Adapt shader for GL ES support which requires operators of the same datatype 2016-10-11 12:15:49 -03:00
samcake
297907688c Fixing reveiw comments 2016-10-10 12:43:33 -07:00
samcake
621d62cdf8 Merge and fix the linux warning 2016-10-06 09:53:12 -07:00
samcake
ba88db1b14 Tried many different things to narrow down the issue of the corrupted memory, it seems to be linked to the grid dimendsions somehow, i m now forcing to reassign the frustum grid dimension on the 10th iteration which seems to fix the issue.... 2016-10-05 18:28:19 -07:00
Brad Davis
48092978e9 Fix page size usage in gpu buffers 2016-10-05 17:05:01 -07:00
samcake
e6572a42e3 Merge branch 'master' of https://github.com/highfidelity/hifi into hdr 2016-10-05 09:31:55 -07:00
samcake
6aa39ec95a Polish the debugging of the light volumes 2016-10-04 11:03:12 -07:00
Brad Davis
ca3572f991 Support external GL textures with proper fencing 2016-10-03 17:09:10 -07:00
samcake
337fe155b7 clean up warning and merge with upstream 2016-09-30 11:01:25 -07:00
Brad Hefta-Gaub
38eccd32a8 add developer menu support to enable/disable dynamic texture management 2016-09-29 10:18:54 -07:00
samcake
9b94a025fc Refining the voxelization of the sphere in the view frustum grid 2016-09-26 18:41:53 -07:00
Brad Davis
ab8a67e84d Code review comments 2016-09-23 12:05:11 -07:00
Brad Davis
d382305174 Add fence tracking and max values tracking to gpu::Context 2016-09-23 12:05:00 -07:00
Brad Davis
82db3d5d55 Disable support for framebuffer resizing 2016-09-23 12:04:57 -07:00
Brad Davis
0953027ef3 Identify pre-generated textures 2016-09-23 12:04:56 -07:00
Brad Davis
1ff91219a8 Fix strange artifacts in skybox 2016-09-23 12:04:52 -07:00
samcake
e8c2dc10f1 best state for now 2016-09-13 14:59:23 -07:00
samcake
efc4406b47 Debugging the grid content 2016-09-12 19:46:18 -07:00
samcake
61de063b29 Developping the Light Clusters, adding visualization 2016-09-08 18:02:35 -07:00
samcake
e2a9751cf5 REmove warnings 2016-09-06 16:35:28 -07:00
samcake
1165c54f67 cleaning up the IndexedContainer in its own file and removing warnings 2016-09-06 16:24:03 -07:00
samcake
d2a15ca82c Trying to migrate to a light array instead of each individual lights 2016-09-02 17:51:35 -07:00
Brad Hefta-Gaub
8ec5798b7a Merge pull request #8548 from samcake/blue
Exposing GPU & Batch running time to Engine gpu jobs
2016-09-02 09:31:09 -07:00
samcake
0c0109e427 Merge branch 'master' of https://github.com/highfidelity/hifi into hdr 2016-09-01 15:20:34 -07:00
samcake
354cbbc927 Investigate why the disable depth Bclamp doesn't work 2016-08-31 19:14:35 -07:00
Stephen Birarda
c9e18e8d90 spacing repairs in autoscribe_shader_lib 2016-08-31 11:59:51 -07:00
samcake
47aaed491d Merging with Blue 2016-08-30 17:06:29 -07:00
samcake
faef8a9930 Adding the timing for GPU support with a simpelr JobConfig 2016-08-30 12:22:21 -07:00
samcake
3755a3fc32 Add batch timing information vs gpu 2016-08-29 17:54:17 -07:00
samcake
9669234f9c Merge branch 'master' of https://github.com/highfidelity/hifi into hdr 2016-08-25 12:36:01 -07:00
Brad Hefta-Gaub
99ea180f09 Merge pull request #8495 from AndrewMeadows/faster-spherical-harmonics
speed up spherical harmonics calculation with minimal error
2016-08-24 15:57:42 -07:00
Brad Hefta-Gaub
0397c6b6ca Merge pull request #8471 from AndrewMeadows/dont-assert-on-bad-data
workaround bad FBXMesh data rather than assert
2016-08-22 14:21:48 -07:00
samcake
44c6637160 Merge branch 'master' of https://github.com/highfidelity/hifi into hdr 2016-08-22 10:32:06 -07:00
Andrew Meadows
d2d905fc86 speed up SH calculation with minimal error 2016-08-22 10:21:22 -07:00
Seth Alves
9bcda1bb45 merge from upstream 2016-08-20 15:25:04 -07:00
samcake
6a076bcee4 PRoviding a fix for the macOS build 2016-08-19 11:09:12 -07:00
Andrew Meadows
5b5ed220bc add BufferView::Iterator operator<() and friend 2016-08-19 10:26:47 -07:00
Zach Pomerantz
813fefd599 reimplement buffer get for (c)end 2016-08-18 11:26:25 -07:00
Seth Alves
87dbfa7e47 add -Wsuggest-override to compile flags and deal with fallout 2016-08-18 09:51:41 -07:00
Brad Davis
574737fbb5 More GPU api fixes, protect Buffer::flush 2016-08-12 22:29:04 -07:00
Brad Davis
58c7df115f Reduce API surface area, make render batches const correct 2016-08-12 22:29:01 -07:00
Brad Davis
6d7edd38cc Rename clearViewTransform 2016-08-12 22:28:59 -07:00
Brad Davis
82081d7d57 Address vsync weirdness 2016-08-12 22:28:58 -07:00
Brad Davis
719e555381 Restoring reprojection to OpenVR 2016-08-12 22:28:55 -07:00
Bradley Austin Davis
f1fd8ac6e4 Fix OSX Oculus issues 2016-08-12 22:28:51 -07:00
Brad Davis
7fb1315945 Properly track the max mip 2016-08-12 22:28:48 -07:00
Brad Davis
c66ed3e009 Use weak pointers instead of references for deallocation safety 2016-08-12 22:28:44 -07:00
Brad Davis
5210dee155 Cleanup of GPU lib, breaking up Resource.h 2016-08-12 22:28:43 -07:00
Brad Davis
c6848a1b55 Remove static allocation debugger 2016-08-12 22:28:37 -07:00
Brad Davis
02b4873ab0 Use move constructor for building buffer shadow updates 2016-08-12 22:28:28 -07:00
Brad Davis
c2509e9492 Working on draw crash bug, adding render thread trash handling 2016-08-12 22:28:27 -07:00
Brad Davis
09ddad0fe0 HMD compositing and buffer debugging 2016-08-12 22:28:26 -07:00
Brad Davis
2340afc48e Updating object transform code 2016-08-12 22:28:25 -07:00
Brad Davis
894d29bb29 Fixing flicking in instance based objects 2016-08-12 22:28:24 -07:00
Brad Davis
adcfd55cc0 Batch replay reprojection 2016-08-12 22:28:23 -07:00
Bradley Austin Davis
66cc9136eb Working on build 2016-08-12 22:18:48 -07:00
Bradley Austin Davis
a0cc6f8817 Better buffer updating 2016-08-12 22:18:37 -07:00
Bradley Austin Davis
274321de8a First pass at threaded rendering 2016-08-12 22:18:36 -07:00
Brad Hefta-Gaub
a714f325fe Merge pull request #8333 from SamGondelman/miscFixes
Miscellaneous cmake and render engine improvements
2016-08-10 11:06:50 -07:00
SamGondelman
e35d453b37 ...missing space 2016-08-10 10:36:37 -07:00
SamGondelman
9e20d92241 CR changes 2016-08-10 10:35:18 -07:00
SamGondelman
5a4d15dd5b fix warning 2016-08-09 14:02:42 -07:00
Andrew Meadows
85d87fe13f Merge pull request #8218 from huffman/feat/load-improvements
Speed up gamma correction in cube map processing
2016-08-09 11:10:36 -07:00
Ryan Huffman
b800aa793d Fix gamma correction adjusting uchar to float when unnecessary 2016-08-08 15:45:05 -07:00
SamGondelman
676f4bdfcf misc fixes from particles branch 2016-07-29 15:36:32 -07:00
Bradley Austin Davis
54a7265be8 Removing empty file, because jenkins 2016-07-26 16:32:56 -07:00
Bradley Austin Davis
a9740b803f Defer batch execution to the end of the frame generation 2016-07-26 16:13:48 -07:00
Bradley Austin Davis
a455f3a435 Add frame concept to gpu library 2016-07-26 15:25:36 -07:00
samcake
3a7c33165b add missing include ? 2016-07-23 20:20:50 -07:00
samcake
2618741505 Merging with upstream master and updating my old PR 2016-07-21 17:59:00 -07:00
samcake
4742f40128 Separating the normal packing into it s own file and make sure to sclae the filter radius correctly dpeending on the resolution of diffusion 2016-07-19 12:23:57 -07:00
samcake
22ac95d463 REvisiting the RangeTimer to measure the real gpu duration 2016-07-15 09:12:16 -07:00
samcake
89ec547161 Trying to get the gpu timer to work correctly 2016-07-14 18:20:20 -07:00
samcake
f6671b34fa Fix the transformation problem for rendering the mini mirror (scattering is still screwed though) 2016-07-13 18:26:53 -07:00
samcake
219b41e813 Fix the mini mirror perf issue and improve the debugDeferredLighting script 2016-07-13 17:37:35 -07:00
samcake
cde17ecaab Clenaing the rendering and the framebuffer allocations 2016-07-12 14:34:54 -07:00
samcake
0e99a4ac97 Merge branch 'master' of https://github.com/highfidelity/hifi into skin 2016-07-11 10:49:28 -07:00
Ryan Huffman
611779b58b Improve gamma correction implementation in cube map processing 2016-07-08 16:25:50 -07:00
samcake
ed67fe4051 Merge branch 'master' of https://github.com/highfidelity/hifi into skin 2016-07-08 09:04:40 -07:00
Brad Davis
790f74da1d Support geometry shaders 2016-07-07 13:36:47 -07:00
Brad Davis
b73fe24848 PR feedback 2016-07-07 11:12:55 -07:00
Brad Davis
eff1c65388 Reduce the number of temporary objects in batch commands 2016-07-07 11:12:55 -07:00
Brad Davis
721cd79b57 Aggressive batch pre-allocation 2016-07-07 11:12:54 -07:00
samcake
b37df393e2 Merging with the new GL45Backend 2016-06-29 10:40:28 -07:00
Brad Davis
b16812aa4d Adding GL 4.5 backend 2016-06-28 18:55:24 -07:00
samcake
90e5697940 Merge branch 'master' of https://github.com/highfidelity/hifi into skin 2016-06-22 09:06:47 -07:00
SamGondelman
34d18da4e4 remove mutable 2016-06-20 11:11:54 -07:00
SamGondelman
c30c2b64b2 first pass at preventing repeated compileShader error prints 2016-06-17 17:49:27 -07:00
samcake
37a6d29406 Finally clean the lighting pass for global and local lights, split it into global and locals and make it work with the stereo single drawcall 2016-06-17 17:19:49 -07:00
SamGondelman
f32e29ac2d small changes 2016-06-10 13:46:02 -07:00
SamGondelman
da98ee0916 reorganized procedural shader code, added getWorldEyeWorldPos(), removed iWorldEyePosition 2016-06-10 13:42:19 -07:00
SamGondelman
8cccd5416a try to fix mac errors 2016-06-09 16:10:27 -07:00
SamGondelman
24e5000aeb exposed orientation and eye position to procedural entity shaders 2016-06-08 18:26:54 -07:00
samcake
3fe9b67e45 FIxing the reflection jittering by moving the normal into world space 2016-05-27 19:24:56 -07:00
Seth Alves
40e862cf9e quiet gcc 5 warnings 2016-05-21 16:53:01 -07:00
Brad Davis
7efcad38d2 PR feedback 2016-05-18 23:11:36 -07:00
samcake
2cc425e256 Merge branch 'master' of https://github.com/highfidelity/hifi into orange 2016-05-18 15:34:05 -07:00
Zach Pomerantz
a55179101e Fix invalidFormat check 2016-05-18 15:11:29 -07:00
Zach Pomerantz
ca364c2227 Fix vao usage 2016-05-18 14:58:12 -07:00
Brad Davis
3cc08cdcfc Breaking up GL agnostic code from 4.1 specific code 2016-05-18 14:35:53 -07:00
Zach Pomerantz
854c6d839c Style nit 2016-05-18 14:01:02 -07:00
Zach Pomerantz
804e6a805e Simplify sync 2016-05-18 14:01:02 -07:00
Zach Pomerantz
e6664d9441 Initialize buffers 2016-05-18 14:01:02 -07:00
Zach Pomerantz
92e26169f6 Move define for vao to one header 2016-05-18 14:01:02 -07:00
Zach Pomerantz
df3fb2a0e8 Guard buffer copy on size 2016-05-18 10:56:48 -07:00
Zach Pomerantz
e8c86a3fe4 Fix warnings in updateInput 2016-05-18 10:53:12 -07:00
Zach Pomerantz
281c6dc82b Always return input from sync 2016-05-18 10:52:58 -07:00
samcake
c627a555bf Merge branch 'master' of https://github.com/highfidelity/hifi into orange 2016-05-16 16:27:51 -07:00
Brad Davis
0d6b0eef59 PR feedback 2016-05-16 15:27:14 -07:00
Brad Davis
5ba8372c21 Moving GL backend out of GPU 2016-05-16 12:54:17 -07:00
Brad Davis
84f4945840 Fix sampler mode lookup 2016-05-15 13:05:50 -07:00
Brad Davis
e8bd97c761 Fix GPU buffer memory statistics 2016-05-14 08:28:51 -07:00
Brad Davis
9509e32928 PR feedback 2016-05-14 08:28:51 -07:00
Brad Davis
eb84459f03 Support partial CPU->GPU buffer transfers 2016-05-14 08:28:50 -07:00
samcake
d5a9d39edf Defaulting the color formats used in the rendering pipeline to sRGB 2016-05-11 18:01:19 -07:00
samcake
c6a081fb46 Merge branch 'master' of https://github.com/highfidelity/hifi into orange 2016-05-11 16:56:37 -07:00
Geenz
043fe3508a Add SRGBA color format. 2016-04-30 15:47:42 -04:00
samcake
fa28286274 Merge with master and include fix to debus eception, still crashing on particular drawcalls when in stereo? 2016-04-26 15:26:56 -07:00
Geenz
d6ee569963 Add sRGB conversions to shaders. 2016-04-25 23:52:33 -04:00
Geenz
97931d96b8 Move sRGB calcs to ColorUtils
And start consolidating any conversions with calls into ColorUtils.
2016-04-25 12:59:16 -04:00
Geenz
ed9c0dd74d Apply the correct sRGB conversions.
sRGB does not use a gamma curve of 2.2 - instead it uses a piece-wise
gamma curve that 2.2 is approximate of.  This will cause very subtle
color differences between proper sRGB and "approximate" sRGB -
differences that are noticeable nonetheless.
2016-04-25 02:35:26 -04:00
Brad Hefta-Gaub
f1f9c6740d Merge pull request #7745 from jherico/mac_texture_fix
Fixing texture storage allocation on OSX/GL 4.1
2016-04-22 17:07:12 -07:00
Bradley Austin Davis
472d3dc45f Still working on mac breakage 2016-04-22 16:25:23 -07:00
Bradley Austin Davis
407e0c0dd7 Fixing texture storage allocation on OSX/GL 4.1 2016-04-22 15:48:18 -07:00
Chris Collins
9bd9de5710 Merge pull request #7636 from samcake/red
Stereo drawcall amplification
2016-04-22 15:46:18 -07:00
Brad Davis
33ec73bfd8 PR comments 2016-04-21 15:11:11 -07:00
Brad Davis
ef466a64bf Add GPUIdent logic for determining video memory 2016-04-21 14:46:13 -07:00
Brad Davis
6c30194916 Support lowering the minimum mip of a texture at runtime 2016-04-21 14:46:12 -07:00
samcake
018196a070 One more review comment 2016-04-21 09:58:36 -07:00
howard-stearns
904e87313e Match the gpu adapter names gainst the vendor and renderer names used by
the ogl we're using, so that we pick the right GPU to get info from.
2016-04-20 22:57:32 -07:00
samcake
d727e3b493 Trying to explore the bug with separate vertex format 2016-04-20 19:09:31 -07:00
samcake
2bc8191fa6 one more comment from review 2016-04-20 18:04:11 -07:00
samcake
f2f092e9c8 Cleanup thanks to review 2016-04-20 15:42:30 -07:00
Zach Pomerantz
948af75f8a Transfer loaded resources with smart ptrs to avoid shutdown deadlock 2016-04-20 13:00:35 -07:00
samcake
8eb89b394c Trying to use separate vertex attribute format 2016-04-20 12:30:50 -07:00
samcake
d471cc4ec5 Merge branch 'master' of https://github.com/highfidelity/hifi into orange 2016-04-20 09:37:54 -07:00
Andrew Meadows
a9cfb5bf16 fix linux build 2016-04-19 18:12:35 -07:00
samcake
c62b5a5e58 First pass 2016-04-19 17:13:00 -07:00
samcake
4c2cdc8704 A bit more clean up 2016-04-19 12:46:56 -07:00
samcake
71edae6d76 Removing the different versions of stereo drawcall to make a simple PR 2016-04-19 12:38:33 -07:00
samcake
33835ba6a1 Introducing the INput FOrmat gpu Object to optimize the changes 2016-04-19 12:04:42 -07:00
samcake
fb363180c8 Starting to expose the number of changes to the input format 2016-04-19 12:03:57 -07:00
samcake
3dad4f576e Merging with master 2016-04-19 11:59:44 -07:00
Brad Davis
882267e08f Merge pull request #7709 from samcake/blue
Introduce Shader Compilation versions
2016-04-19 11:14:22 -07:00
samcake
1a154bb3be Revert the changes to use SSAO AND 2 buffers 2016-04-19 10:47:54 -07:00
samcake
265f6f1275 Updating & Merging with master 2016-04-19 10:05:44 -07:00
Brad Hefta-Gaub
5d550197bd Merge pull request #7697 from samcake/orange
Introduce a simple state sort for drawing opaque items
2016-04-19 08:41:49 -07:00
Brad Hefta-Gaub
2780ade3bd Merge pull request #7686 from zzmp/clean/bufferview
Consolidate BufferView ctors to cpp
2016-04-19 07:21:57 -07:00
samcake
7c7cd6e9e5 Go simple with a a true map for the unifrom mappings 2016-04-18 19:05:49 -07:00
samcake
4bbe0ddc6d Go simple with a a true map for the unifrom mappings 2016-04-18 19:01:15 -07:00
samcake
cadb53b703 Adding shader versioning and defines from GLBackendShader allowing for runtime defines injection to shaders and more 2016-04-18 18:24:27 -07:00
samcake
c6deff16d6 Resoving to master... 2016-04-18 17:24:55 -07:00
samcake
d25a366962 Resoving to master... 2016-04-18 17:23:57 -07:00
samcake
7951284e9c Merge branch 'master' of https://github.com/highfidelity/hifi into yellow 2016-04-18 16:54:17 -07:00
samcake
dccf549118 Merge pull request #7676 from jherico/perf_testing
Manually generate mipmaps for textures while loading
2016-04-18 15:09:12 -07:00
samcake
d746fba142 Cleaning up the stats.qml 2016-04-18 11:18:28 -07:00
Seth Alves
dea748d132 Merge pull request #7683 from zzmp/clean/texture
Remove unused static method gpu::Texture
2016-04-18 10:25:53 -07:00
Brad Davis
0d3bf366c1 Support loading multiple mips in texture transfer 2016-04-17 10:22:24 -07:00
Brad Davis
ac3d6c77b9 Add default parameter to mip loaded notifications 2016-04-17 10:20:02 -07:00
Brad Davis
f3e5306f90 Working on an automated performance test 2016-04-17 10:20:00 -07:00
samcake
c1ed0e2e14 Enabling sbo 2016-04-15 20:02:15 -07:00
samcake
554247193c Trying SSBO for the object matrices 2016-04-15 19:55:52 -07:00
Zach Pomerantz
f2b9acd84d Rm Texture::createFromStorage 2016-04-15 16:40:05 -07:00
Zach Pomerantz
5c004e2a5c Add comment on storage texture ptr 2016-04-15 16:40:04 -07:00
Zach Pomerantz
263dcbb535 Consolidate BufferView ctors to cpp 2016-04-15 16:40:00 -07:00
samcake
fc29397d91 Clening up from review comments 2016-04-15 10:10:04 -07:00
samcake
30d0bfcfd3 FIxing the bump map loading which got broken in the past PR, fixed a double call to the glTexSUbIMage function and fixed a texel.Format 2016-04-15 00:41:37 -07:00
samcake
a9fefcc802 Trying ti debug the bad normal maps 2016-04-14 18:16:14 -07:00
samcake
c6414208e8 Use the dumber version of the stereo technique and fix a warning 2016-04-14 03:25:32 -07:00
samcake
6c3e011b89 Expose cleanely the 3 different techniques 2016-04-14 02:43:28 -07:00
samcake
41d4d3b2d7 Providing a cleaner way to try different paths and exploring a simpler way 2016-04-13 19:21:17 -07:00
samcake
7653fa2c37 Fixing the resize of framebuffer to avoid reassigning the render buffer every frame 2016-04-13 10:56:29 -07:00
samcake
e4d3e848f6 Merge branch 'master' of https://github.com/highfidelity/hifi into red 2016-04-13 10:05:06 -07:00
Brad Hefta-Gaub
0f8842f582 Merge pull request #7637 from zzmp/fix/tex-transfer-free
Cleanly shutdown the texture transfer thread on quit
2016-04-12 19:28:51 -07:00
samcake
0477f89b1b Justing exposing the timer correctly 2016-04-12 17:05:23 -07:00
samcake
ff1df0d45e Merge branch 'master' of https://github.com/highfidelity/hifi into red 2016-04-12 15:29:58 -07:00
samcake
ab9f41f5eb Trying something a bit more radical for timing 2016-04-12 15:29:31 -07:00
Zach Pomerantz
c72a5f3605 Exit cleanly in debug with GL logger 2016-04-11 16:32:55 -07:00
Zach Pomerantz
666bf8d42b Reset GL tex canvas while still running 2016-04-11 14:04:34 -07:00
Zach Pomerantz
1b7256d344 Clean shutdown for Texture Transfer thread 2016-04-11 12:59:53 -07:00
samcake
8a233ec9a1 the stereo rendering is working correctly, will now look for more performances 2016-04-11 12:32:59 -07:00
samcake
1138af9765 FIrst real stereo version 2016-04-11 01:19:46 -07:00
samcake
8964c2427d adding support for the 2 versions of the shaders nad solving the mapping of uniforms that arise with it 2016-04-08 18:47:21 -07:00
samcake
ef70d41cf4 Merge branch 'master' of https://github.com/highfidelity/hifi into orange 2016-04-08 09:41:35 -07:00
samcake
2f8d30e7ce Merge branch 'master' of https://github.com/highfidelity/hifi into red 2016-04-08 09:34:55 -07:00
samcake
be178e9e09 fixing warnings 2016-04-07 23:44:28 -07:00
samcake
04e71df3bc fixing a stupid code and a warning 2016-04-07 23:05:50 -07:00
samcake
76dd740578 Cleaning up to test before merge, not solved the stuttering happening when using compressed textures. cleaned up a bit of the TextureMap doanload callbacks 2016-04-07 20:05:05 -07:00
samcake
cf983e627d fixing the warnings 2016-04-06 19:36:52 -07:00
samcake
a6bac7ad92 Experimenting with a hidden gltexture object while beeing transfered 2016-04-06 18:30:18 -07:00
samcake
16174df0f3 POlishing the size evaluation and trying to debug the compression scheme 2016-04-06 16:33:45 -07:00
Brad Davis
e194fc39f4 Move the texture transfer context back to the main thread for shutdown 2016-04-06 11:29:03 -07:00
samcake
d9bc06d92d Trying to ge5t the proper behavior for the Compression texture and textures in genral... 2016-04-05 19:13:24 -07:00
samcake
710c4a1b8f TRying to merge and expose counters for in flights transfers 2016-04-05 12:18:30 -07:00
samcake
71fa898654 Merge branch 'master' of https://github.com/highfidelity/hifi into red 2016-04-05 09:45:45 -07:00
samcake
d3a87f8db2 need to merge, commiting at a broken state 2016-04-04 18:25:23 -07:00
Brad Davis
c168e2cc58 PR feedback 2016-04-04 16:53:30 -07:00
samcake
f3e6c490a4 merging with master, moving the TexelFOrmat function to a cpp 2016-04-04 12:03:37 -07:00
samcake
8732090073 Merge branch 'master' of https://github.com/highfidelity/hifi into red 2016-04-04 11:22:21 -07:00
Brad Davis
d98abbc7df First pass at threaded texture transfers 2016-04-04 10:23:01 -07:00
Brad Davis
667c27866e Pushing texel format translation into header 2016-04-03 20:41:35 -07:00
samcake
0ba6c89c6e WOrk in progress, generating several versions of the shader 2016-04-03 18:25:38 -07:00
samcake
9aface432d Steping into 2 version tshaders 2016-04-01 19:10:14 -07:00
samcake
5baaad9b6e Merge branch 'master' of https://github.com/highfidelity/hifi into red 2016-04-01 17:20:05 -07:00
samcake
64fef2cfe2 Updating counters correctly 2016-04-01 17:19:41 -07:00
samcake
be38de3239 Cleaning up the TextureMap loaders and cleaning for pr 2016-04-01 17:16:22 -07:00
samcake
582a6b7db3 Adding the correct mip evaluation 2016-04-01 01:34:33 -07:00
samcake
9404846ca4 Merge branch 'master' of https://github.com/highfidelity/hifi into orange 2016-03-31 22:58:36 -07:00
samcake
9d1f91fa19 First pass at using compressed format when uploading textures 2016-03-31 19:27:35 -07:00
Zach Pomerantz
33d56d974e Set texture size in cache post-proc 2016-03-31 17:02:40 -07:00
samcake
c13e24438c Merge pull request #7512 from zzmp/fix/light-buf-fmt
Correctly represent lighting framebuffer
2016-03-30 16:10:10 -07:00
Brad Hefta-Gaub
84bbeef72b Merge pull request #7511 from zzmp/guard/gl
Add GL checks
2016-03-30 15:47:16 -07:00
Zach Pomerantz
02273e067a Add GL checks 2016-03-30 15:20:21 -07:00
samcake
6213e0859d Expose to counters fro drawcalls, one for the API drawcalls and the other for gpu drawcalls spawned 2016-03-30 15:07:45 -07:00
Zach Pomerantz
1234514e8f Correctly represent light fbo fmt 2016-03-30 11:22:44 -07:00
Zach Pomerantz
6ae03fe72e Sync ordering of gl fields/reset commands 2016-03-29 15:52:29 -07:00
samcake
b10e5dcdea Merging back with upstream 2016-03-29 09:14:43 -07:00
samcake
b5028acde1 CLeaning up the location of the global variables, moved them to the gpu::COntext class as static 2016-03-28 11:45:07 -07:00
samcake
5a3896b1de FIxing warnigns 2016-03-27 09:35:13 -07:00
samcake
7361304084 Cleaning up for review 2016-03-25 18:38:52 -07:00
samcake
9b58d50fd4 BUilding a more complete set of tools to monitor performances 2016-03-25 15:28:06 -07:00
samcake
9fb1a9a2a8 Merge and many more counters 2016-03-25 03:02:18 -07:00
samcake
138a996013 First draft of monitoring the memeory consumption 2016-03-23 15:46:17 -07:00
samcake
de96e34f7e Merge branch 'master' of https://github.com/highfidelity/hifi into lemon 2016-03-23 10:00:06 -07:00
samcake
b29ef7b037 IMplementing a memory counter 2016-03-23 09:45:38 -07:00
Brad Davis
252a49eea4 Add a tracker and logging of memory allocated by the GPU library 2016-03-22 22:35:46 -07:00
samcake
24b26e3097 first few elements 2016-03-22 19:18:46 -07:00
Zach Pomerantz
64ced6ee04 Add comment explaining bare glGetError 2016-03-22 12:04:24 -07:00
samcake
9f4516da89 Working on batching the stereo 2016-03-21 09:36:16 -07:00
samcake
d05e23b278 Early work on batching stereo better 2016-03-16 18:35:07 -07:00
samcake
f3daa9e1c5 Fixing the lighting issue in stereo 2016-03-15 14:35:43 -07:00
samcake
fbc19ec74f Back to the previous comuputation for the eye position in the hope to fix local lighting in stereo 2016-03-14 12:11:17 -07:00
samcake
a7f21d5fce Clena up comments, ready to PR 2016-03-14 10:36:19 -07:00
samcake
3cf32b17be Trying to fix the jittering issue, foound an extra matrix inversion that could be the source 2016-03-11 18:52:02 -08:00
Brad Davis
28103cf5ef Migrate composition of the overlay and pointer to the present thread 2016-03-07 17:14:41 -08:00
samcake
5401149713 Cleaning the tlist of textures in the NetworkTexture and in FBXMaterial 2016-02-26 12:10:13 -08:00
samcake
3ee6f9d6f2 Merge branch 'master' of https://github.com/highfidelity/hifi into orange 2016-02-25 23:48:53 -08:00
samcake
96fb9c4466 cleaning up macos warnings, separating Metallic maps from the default, gamma corrected gray textures 2016-02-25 14:13:35 -08:00
Brad Davis
ef33d297e2 Fix framebuffer behavior when changing attachments 2016-02-24 19:57:00 -08:00
samcake
9d0803e6b8 Merge branch 'master' of https://github.com/highfidelity/hifi into orange 2016-02-23 09:33:54 -08:00
samcake
00782b0e76 GOing home, this is in the middle of adding the Roughness texture and potentially cleaning up the different compinations of shaders regarding the material textures 2016-02-22 18:19:36 -08:00
samcake
39a7852979 MOving forward with PBR rendering, cleaning up the lighting shaders and the packi/unpack deferredBuffer shaders 2016-02-19 18:43:07 -08:00
Zach Pomerantz
791d295578 Move paint shader functions to Paint.slh 2016-02-19 11:48:44 -08:00
samcake
b88501784c Making progress toward the PBR material 2016-02-17 18:47:52 -08:00
samcake
7cb0108457 Merge branch 'master' of https://github.com/highfidelity/hifi into red 2016-02-01 15:17:58 -08:00
Atlante45
ad215f23c6 Deactivate SSBOs for now 2016-02-01 22:41:01 +01:00
Atlante45
5ac0350993 Don't fall through in switch case 2016-02-01 18:50:01 +01:00
Atlante45
52885545ea Use feature name for ifdef 2016-02-01 18:50:01 +01:00
Atlante45
838b637591 Don't capture raw draw calls during named calls processing 2016-02-01 18:50:01 +01:00
Atlante45
a5603140de Fix for mac 2016-02-01 18:50:01 +01:00
Atlante45
8cf393bb59 Mac compatibility 2016-02-01 18:50:01 +01:00
Atlante45
8d4dab19c7 Only bind once per render batch 2016-02-01 18:50:01 +01:00
Atlante45
9e8a3f19e9 Revert max input slot changes 2016-02-01 18:50:01 +01:00
Atlante45
38a223b270 Split declareStandardTransform 2016-02-01 18:50:01 +01:00
Atlante45
71ecd1662c Add correct vertex attrib divisor 2016-02-01 18:50:01 +01:00
Atlante45
6ee88c15ec Use vbo for draw call infos 2016-02-01 18:50:01 +01:00
Atlante45
7471646569 Disable attrib vertex on normal passes 2016-02-01 18:50:01 +01:00
Atlante45
d639a838ad set currentNamedCall during setupNamedCalls 2016-02-01 18:50:01 +01:00
Atlante45
670cfc263b Capture draw call info and model xfm in batch 2016-02-01 18:50:01 +01:00
Atlante45
1658c15cca Reserve last input slot for draw call info 2016-02-01 18:50:01 +01:00
Atlante45
78cd4407db Don't pass binding manually, link named call correctly 2016-02-01 18:50:01 +01:00
Atlante45
eb55e55367 Clear buffers between each batch render 2016-02-01 18:50:01 +01:00
Atlante45
6ff38bc32f Make sure _currentDraw has correct value 2016-02-01 18:50:01 +01:00
Atlante45
3e027fc5c5 Use ssbo for model transforms 2016-02-01 18:50:01 +01:00
Atlante45
23cf72bd6c Add multi draw to factored setup 2016-02-01 18:50:01 +01:00
Atlante45
6464fabd71 Update current draw call 2016-02-01 18:50:01 +01:00
Atlante45
ccb183e518 Unify Named/Normal calls 2016-02-01 18:50:01 +01:00
Atlante45
9e0af63441 Bind model transform as single buffer 2016-02-01 18:50:01 +01:00