Commit Graph

99 Commits

Author SHA1 Message Date
Shyotl
43aa145c94 It's silly that this was necessary... but it was. AMD... :( 2015-02-25 21:11:06 -06:00
Shyotl
cd85afc9a5 Quick workaround to fix issue with simple geom not rendering in deferred 'underwater' pass. 2014-07-21 20:28:23 -05:00
Shyotl
e2fa94e2c3 Fixed water normals. 2014-07-05 19:09:21 -05:00
Shyotl
7d8af7d413 Use one shared vbo to draw fullscreen rectangles in LLPipeline, for both deferred and non-deferred. Provides a nice bit of cleanup. 2014-07-03 17:09:27 -05:00
Shyotl
869517b9c6 Evidently a line in objectSkinV.glsl escaped earlier staging. 2014-06-22 03:43:43 -05:00
Shyotl
ee60a9801b Appease some nVidia cards/driversets regarding skinned shaders. 2014-05-27 20:18:48 -05:00
Shyotl
67c8ac2b04 Skinned shaders were exceeding maximum amount of vertex uniforms on amd hardware.
-Changed the transform matrix uniform to a 3x4 matrix and packed translation into it to free up uniforms. (3x3 is converted to 3x4 internally, so we were needlessly eating 3*52 extra uniform slots. translationPalette might also have been treated as a vec4 internally too, wasting 52 more slots.)
-matrix3x4 requires opengl2.1 and newer, so added a new featuretable mask.
-Also added a featuretable mask to disable hardware skinning and deferred shading on hardware with less than 1024 vertex uniforms.
NOTE: On old old old amd hardware, evidently a 3x4 matrix might be upgraded to 4x4. I'm unsure, but I doubt such hardware has 1024+ uniform components available to begin with. 4x3 supposedly doesn't do this, but opengl is column-major, so this makes little sense.
2014-05-17 03:31:45 -05:00
Shyotl
c3771e2fd5 Removed unused preprocessor definition in objectSkinV.glsl 2014-05-15 16:23:14 -05:00
Shyotl
3db9c6a9ff Try mask-based object shader configuration, instead of a bazillion hard-coded shader globals. Should be a bit more consistent. (non-deferred only, for now)
Also abuse discard in alpha shaders, instead of processing invisible fragments.
2014-05-14 03:30:02 -05:00
Shyotl
98f9a09b39 sunlight_color_copy need only be vec3. 2014-05-08 16:39:41 -05:00
Shyotl
162e7b7699 Fixed a silly mistake that was causing vsync to be enabled when it should have been. Also fix typo in objectSkinV.glsl previous commit 2014-05-08 15:30:02 -05:00
Shyotl
7158a3c83d Fixed an annoying showstopper regarding rigged attachment vertex corruption. Rigged meshes have can have poor weighting, causing potential div-by-zero issues. 2014-05-08 15:11:12 -05:00
Shyotl
f7fdeeea9b Be super sure not to let rigged vert weights extend beyond actual joint count. 2014-02-10 20:18:39 -06:00
Shyotl
58b7fe5fef Avoid potential buffer over-read in shader, overrun in application. 2014-01-28 16:28:03 -06:00
Latif Khalifa
aaf06fa2cc FITMESH-6, FITMESH-20 Fix for some objects disappearing when hardware skinning enabled and ALM disabled.
NOTE: There appears to be a driver bug on some AMD systems that will cause hardware skinning to break given different combinations of shaders. Users should be advised that if they see improper skinning on their avatars, they should either enable advanced lighting model, or disable atmospheric shaders or hardware skinning.

davep
2014-01-24 12:26:43 +01:00
Latif Khalifa
269deb56e6 Fitted mesh 2014-01-24 01:11:27 +01:00
Shyotl
e00e704cbd Fix minor error in shader which prevented ssao from working with shadows enabled. 2013-12-24 20:16:05 -06:00
Shyotl
7da8b012e6 Pulled SSAO out into its own shader to support running at a lower-than-native framebuffer resolution (defaults at half-resolution [SHRenderSSAOResolutionScale=.5] ). This doesn't improve the slow ssao/shadow softening, however, as that bit remains unchanged. 2013-12-13 02:19:57 -06:00
Shyotl
78e3d61b98 Remove ambient occlusion darkening from all deferred shaders except the one that actually calculates occlusion values.. (aka every shader except class2/softenLightF.glsl) 2013-11-28 21:07:25 -06:00
Latif Khalifa
594eacb480 Merge branch 'master' of git://github.com/Shyotl/SingularityViewer 2013-11-19 04:44:55 +01:00
Shyotl
030588caaf Underwater shadows. 2013-11-18 09:57:35 -06:00
Siana Gearz
a5103a1fc1 Sprinkle some Intel GPU support on Linux 2013-11-18 04:22:21 +01:00
Siana Gearz
749d0eec28 Merge https://github.com/abaph/SingularityViewer
Brings in support for MESA accelerators.
2013-11-17 16:38:06 +01:00
Shyotl
d4a3cb168c Altered the deferred alpha fragment shader to handle alphamasking when drawing avatar hair/skirts. (Special handling for these two seems weird, considering all other mesh parts are also alphamasked.. It also prevents skirts from casting shadows. Future alteration may be desired.) 2013-11-13 12:59:21 -06:00
Shyotl
3ed249cba5 Retain cubemap reflection on shiny faces while in shadowed, but don't bloom the sun reflection. 2013-11-13 01:35:31 -06:00
Shyotl
584e5176a4 Err closer to LL regarding shadows, however also fixed alpha face shadows to look like all other shadows. 2013-11-13 01:30:45 -06:00
Shyotl
203ae9dfa3 Fix uninitialized variable warning in alphaF.glsl. Also made USE_VERTEX_COLOR actually work if FOR_IMPOSTOR is set. 2013-11-11 18:56:16 -06:00
Shyotl
32ecf444bd Attempt to resolve shader compilation errors on osx since it's particularly picky. 2013-11-11 17:48:54 -06:00
Shyotl
0d1c98b5f7 Fix shadow dithering. It's still pretty ugly tho, but looks okay if ssao is enabled. May add random kern in the future. 2013-11-08 02:03:21 -06:00
Shyotl
322ceceb60 Added shaders needed to display texture 'edit' overlay using the specular/normalmap texcoords. 2013-11-05 23:51:09 -06:00
Andros Baphomet
997fdebb9f Re-fix shader compilation errors 2013-11-03 13:12:27 -05:00
Andros Baphomet
fe0a761ce6 Merge remote-tracking branch 'upstream/master'
Conflicts:
	indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedNoColorF.glsl
	indra/newview/app_settings/shaders/class1/deferred/fullbrightShinyF.glsl
	indra/newview/app_settings/shaders/class1/deferred/fxaaF.glsl
	indra/newview/app_settings/shaders/class1/deferred/giF.glsl
	indra/newview/app_settings/shaders/class1/deferred/multiSpotLightF.glsl
	indra/newview/app_settings/shaders/class1/deferred/softenLightF.glsl
	indra/newview/app_settings/shaders/class1/deferred/spotLightF.glsl
	indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl
	indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedF.glsl
	indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedNoColorF.glsl
	indra/newview/app_settings/shaders/class2/deferred/multiSpotLightF.glsl
	indra/newview/app_settings/shaders/class2/deferred/spotLightF.glsl
2013-11-03 12:17:50 -05:00
Shyotl
827bbc9b89 Fix up a few glowies. 2013-11-02 19:15:28 -05:00
Shyotl
378dd14ade Return to our nice ssao. 2013-11-02 03:29:32 -05:00
Shyotl
e5d71560e8 Fix fullbright stuff in deferred. Have to re-assess old glow occlusion bugfixes. 2013-11-02 02:38:23 -05:00
Shyotl
af8f8bb040 Mats. 2013-11-02 01:20:05 -05:00
Andros Baphomet
c009866d86 Merge remote-tracking branch 'upstream/master' 2013-10-30 09:42:58 -04:00
Shyotl
8e55d5499e Occlusion FBOs in deferred. 2013-10-26 18:07:56 -05:00
Shyotl
574022ed2c Made a few more fullbright face types occlude any glow behind them. 2013-10-26 18:01:36 -05:00
Andros Baphomet
12abca8954 Merge remote-tracking branch 'upstream/master' 2013-10-12 01:50:26 -04:00
Shyotl
b6bf5545c9 Change lightfunc from GL_R8 to GL_R16F/R32F 2013-10-09 15:44:15 -05:00
Shyotl
f25eb07fab Unstaged changes cleanup. Further vectorization. Change in binormal/bitangent calculation. 2013-10-09 15:43:23 -05:00
Andros Baphomet
f6861cd5ba Fix shader compilation/out-of-spec issues 2013-10-05 17:33:34 -04:00
Shyotl
b3d97b0860 Avoid running the motionblur shader if there hasn't been camera movement. Also clamp per-frame fragment velocity to reduce visual artifacts. 2013-07-03 17:12:12 -05:00
Siana Gearz
3cd16c84ef Dirty patch Intel HD4000 shader-confusion 2013-05-27 06:47:00 +02:00
Inusaito Sayori
8f3fe5dfae File mode fixes for some exe, plist, and glsl files. 2013-05-18 11:45:27 -04:00
Siana Gearz
6ee8cc5798 Unbreak skinning on low end hardware 2013-02-26 20:47:43 +01:00
Shyotl
76f3dc9e19 Massive sunshine/viewer-dev catchup. Further implemented serverside baking and added/updated metrics feedback. 2013-02-19 01:50:46 -06:00
Shyotl
0742610674 Updated gObjectPreviewProgram shader (simple lighting) 2013-02-12 14:59:02 -06:00
Shyotl
afaaba6b3c OSX was choking on transformfeedback shaders. Make failure to load such shaders non-critical to the shader loading process. Also clean up glColorMask state properly in wlsky. 2012-12-24 17:56:32 -06:00