Commit Graph

32 Commits

Author SHA1 Message Date
Shyotl
0a89503edd Renamed glUniformMatrix3x4fvARB to glUniformMatrix3x4fv, since I don't think it ever had the ARB postfix. Also use its the properly named (although identical to the current) function pointer signature. 2014-05-17 04:04:33 -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
af8f8bb040 Mats. 2013-11-02 01:20:05 -05:00
Shyotl
8441bc80a4 Use LLStaticHashedString for faster uniform lookup. 2013-10-26 16:26:46 -05:00
Shyotl
d71210e942 Trivial changes, mostly to clean up diff noise. Majority of changes are comment corrections or licenseinfo updates. (does not include newview directory) 2013-01-07 14:44:54 -06:00
Siana Gearz
c8e3935648 GCC build fix 2012-09-14 02:56:40 +02:00
Shyotl
435b9cd1bb Including these changes to llglshader might've been a good thing to do a few commits ago. Eups. 2012-09-14 02:44:51 +02:00
Shyotl
67e1a3b004 Lindie viewer-dev catchup regarding rendering pipeline. 2012-06-30 20:05:31 -05:00
Shyotl
e1d243272f V3 merge part 1 / 2. 2012-04-13 22:39:39 -05:00
Siana Gearz
3f0f955a76 Catching up with Lindies part 2 2012-03-25 10:47:20 +02:00
Shyotl
d10724ae6f Remove some dead savedsettings. 2012-02-10 11:20:28 -06:00
Shyotl
afed6dad84 Fix deferred on mac. VBO cleanup. https://bitbucket.org/VirLinden/viewer-development-shining-fixes/changeset/853c76596bdb 2012-01-26 16:09:47 -06:00
Shyotl
1bfa72fa7c V3 merge. Slight update. Fixes lighting oddities. 2011-12-16 01:50:57 -06:00
Shyotl
ffb285c6ff Huge renderer update (WIP). Still plenty to do, especially pertaining to UI.
-Nametag bubble visbility is oddly inconsistent. May vanish with future planned UI merges...
-VBOs are PAINFULLY slow on ATI hardware. This repos self-compiled davep/shining-fixes branch, so I'll leave the ball in LL's court for now regarding that.
2011-12-09 14:02:29 -06:00
Shyotl
1fd908b2c4 Removed maximum_alpha uniform (as it's always 1.0 anyhow) 2011-11-19 15:13:16 -06:00
Shyotl
73f2543a6f Use LLGLShader::sIndexTextureChannels instead of mNumTextureImageUnits directly.. also check that channel value isn't invalid. Also make super-sure shaders are disabled on pre opengl 2.0 hardware. 2011-10-20 13:37:09 -05:00
Shyotl
4368c57243 Disabled reserved attrib having reserved locations in shaders. Conflicted with attrib location assumptions elsewhere. 2011-10-19 09:43:28 -05:00
Shyotl
4446b0fbad Give each reserved attribute a consistent index across all shaders. 2011-10-17 19:19:36 -05:00
Shyotl
8ce30e9ff7 Fixed a crash for hardware lacking ARB_shader_objects extension support. 2011-10-17 19:05:37 -05:00
Shyotl
d1b19aa389 Automatically disable new texture batching when using legacy renderpath. 2011-10-17 12:19:43 -05:00
Shyotl
20ef149dcb Added test setting 'ShyotlUseLegacyTextureBatching' to disable new texture indexing. The new indexing method requires heavy branching in shaders, which some hardware may not perfom well with. 2011-08-16 02:37:18 -05:00
Shyotl
f551294e66 Alphamasking migrated to shaders instead of using fixed-function. Very early code. Hasn't even made it into viewer-development yet. 2011-08-12 19:20:11 -05:00
Shyotl
c9860f7b66 Massive deferred update...
Plus renamed setupViewport to setup[2|3]DViewport.
Migrated mWindowRect to mWindowRectRaw, mVirtualWindowRect to mWindowRectScaled.
Slowly updating getwindow/getworldview calls to new v2 variants as I run across them.
Cleaned up ascent-related code in llmanip.cpp.
Impostor update tweaks.
Edgepatch water occlusion changes. (no patch flickering on edges of screen while moving camera)
2011-08-11 03:16:17 -05:00
Shyotl
ca328aec72 Replaced some opengl fixed functions with shaders. Temporary ShyotlUseLegacyRenderPath setting to debug if this change actually improves framerate at all (setting not tied to callbacks. Have to toggle shaders to have stuff pick up the setting change) 2011-08-10 03:53:49 -05:00
Shyotl
9bda97786f Batch indexing/no-fixed-function WIP. 2011-08-09 01:11:05 -05:00
Shyotl
b258b71e07 Flipped the MESH_ENABLED switch. Added missing components and updated stuff to be closer to mesh-development head. 2011-07-30 20:30:07 -05:00
Shyotl
71eec1caed Improved error handling (introduced debugsession commandline argument). Startup/shutdown now more verbose. SSE checks if project was compiled with SSE(2)... not sure if windows would reach it if hardware lacked support, but linux/mac may (from V2). Fixed Mac crashes in deferred. 2011-05-28 01:46:11 -05:00
Shyotl
62e3aa10c1 Reasonably safe changes.
Using accessor for vertexbuffer in LLFace
Extra occlusion query lookup in llgl (unused)
Const changes.
2011-05-18 14:35:27 -05:00
Shyotl
3901893a3a Resolved some unitialized variables. 2011-04-16 18:21:54 -05:00
Shyotl
7d3e9723c3 Reduced LL's leakage of program/shader objects, drastically.
Re-structured some shader loading/unloading handling.

These changes are pretty experimental. I'll be holding off of tweaking the paramater managers(among other things) until I know if this stuff is working correctly.
2011-02-10 18:21:38 -06:00
Siana Gearz
1a07a4b693 Shyotl's ATI sky fix 2011-01-13 05:43:28 +01:00
Hazim Gazov
7a86d01598 Imported existing code 2010-04-02 02:48:44 -03:00