Commit Graph

83 Commits

Author SHA1 Message Date
Shyotl
baddb47c44 LLWindow V3 partial merge. Includes Most everything sans new LLMouseHandler which requires some messy changes in llviewerwindow that are best left for a dedicated commit. Also, some translation fluff was skipped for now. 2011-08-29 03:44:17 -05:00
Shyotl
7e9f8c7bf8 Several LLStat variables migrated into the LLViewerStats class. 2011-08-28 00:56:57 -05:00
Shyotl
174c1800cc llgl/llglext updated. TODO: repackage glext from ll's viewer-development branch so this will compile. (I manually extracted glext-68-windows-20110406.tar.bz2 in my build environment just for now.) 2011-08-27 04:49:51 -05:00
Shyotl
7f2e96f0a3 Misc small updates to renderer. 2011-08-19 01:34:38 -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
04ea6a967e Removed dead code related to 'RenderForSelect'. 2011-08-09 02:11:10 -05:00
Shyotl
9bda97786f Batch indexing/no-fixed-function WIP. 2011-08-09 01:11:05 -05:00
Shyotl
7bcd259821 Added ShyotlRenderVBOStrideMode to toggle between strided and unstrided VBOs. 2011-08-05 19:24:17 -05:00
Shyotl
2c489d7741 Cleaned up polymesh (mesh vectors/normals size match VBO vectors/normals size to allow memcpy). Prep for vbo testing. 2011-08-04 01:38:56 -05:00
Shyotl
1e92e734d8 Bulk of mesh. Excluded via #if MESH_ENABLED. LLModel still needs updated for strided vbos, Collada SDK needs to be wrangled, and misc pieces need to be found and brought over. Skipping inventory stuff until meshes are at least displayable. 2011-07-23 03:26:30 -05:00
Shyotl
a994df7265 A majority of vectorization done. Note that it's INCOMPLETE. LLVolumeFace and LLVertexBuffer haven't been updated, so it's very dirty(and buggy) at those transitions. Compiles on windoze. 2011-07-20 06:07:13 -05:00
Shyotl
35e0b9b6ff Data-alignment. SSE intrinsics. 2011-07-19 21:35:35 -05:00
Shyotl
179c1bcc0c Octree capacites/radii/distances definable via settings. 2011-07-19 03:42:30 -05:00
Shyotl
5ec3795716 Resolved LLCachedControl type mismatch with a few settings. 2011-07-16 23:35:08 -05:00
Aleric Inglewood
a8d71f2550 Merge remote-tracking branch 'origin/master' 2011-06-14 16:02:43 +02:00
Shyotl
101fe0ed01 Workaround for hardware light brighness/atten being too intense upon fullscreen toggle. 2011-06-14 01:11:47 -05:00
Siana Gearz
d06ea4d211 Constant type fix 2011-06-09 21:41:54 +02:00
Shyotl
b691e2b286 Merge branch 'master' of https://github.com/AlericInglewood/SingularityViewer.git 2011-06-08 14:19:43 -05:00
Shyotl
a07e399801 LLAgentCamera transition (1/2) 2011-06-07 21:35:10 -05:00
Aleric Inglewood
fed8951e00 Merge remote-tracking branch 'shyotl/V2Renderer' into V2Renderer 2011-06-03 22:48:23 +02:00
Shyotl
fef7ce9f76 Updated LLSelectMgr 2011-05-30 19:56:00 -05:00
Shyotl
95ea174d43 Spatial partition updated. Seems to run smoother for me, but may want to test on other systems. 2011-05-29 16:28:56 -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
2f3a8fb6c0 Fixing some issues with high-res snapshots. 2011-05-27 14:01:23 -05:00
Aleric Inglewood
e41fd0d978 Add comments regarding the colors and meanings of sound beacons. 2011-05-25 20:16:59 +02:00
Aleric Inglewood
f8c3617540 Merge branch 'master' into V2Renderer 2011-05-25 20:12:30 +02:00
Aleric Inglewood
e3742734f0 Beacons (floater) fixup
After a user spend three days trying to find out why certain
textures looked red (as if they had alpha and you pressed
control-alt-T, but not all of them were like that); and nothing
helped, not relogging, not clearing cache, not even reinstalling
the viewer... I decided to take this bug serious. Note that,
according to Shyotl, there have been more users every now and
then that reported this problem.

The problem (after doing a research for 1 hour) turned out
to be that she had beacons on, highlighting prims with scripts.
The immediate bug is, of course, that this was persistent over
a relog. Upon further investigation, this bug exists because
a Debug Setting had a double meaning: it meant both "beacon
floater is visible", which you want to be persistent, and it
was later renamed and given the meaning "Keep beacons when
closing the floater". Digging deeper it turned out that there
was a REAL mess with regard to the beacons: A non-finished
floater with immature comments (called "dingdong floater") was
half-created and replaced the original floater which, according
to the comment was "so fucked over and over" (== commented out
in several places), but then everything was commented out and
replaced with a menu (because they couldn't get it to work?).
The floater simply didn't exist anymore! That reduced the
meaning of the Debug Setting to "Show beacons", although you
now could only set it in the menu by clicking on "Beacons Always On"
where 'Always' refers to also on when the floater isn't there.

I nuked the immature dingdong code, brought back the original
floater as it was in snowglobe (and still is in Imprudence),
fixed it up a bit with a nicer layout (indentation and spacing)
and disabling (graying out) when needed, and added a new checkbox
that will allow people to still keep/see the beacons after closing
the floater.

In the end this requires THREE Debug Setting variables:
ShowBeaconsFloater : TRUE when the floater is visible, FALSE when not.
                     This is persistent, so the floater is still
		     there if you relog with the floater open.
BeaconsKeepVisible : TRUE when the new checkbox is checked.
		     Also persistent.
BeaconsVisible : TRUE when the beacons are rendered, FALSE otherwise.
		 This is NOT persistent: we don't want unsuspecting
		 users to try and get rid of the weird 'red prims'
		 by relogging and failing at that.
2011-05-25 19:55:42 +02:00
Shyotl
4ee4d52b2f Added bokeh DoF. Fixed some several SSAO and shadow combinations. Fixed GI crash bug. Enabled several fasttimers. Updated shaders. 2011-05-24 20:31:17 -05:00
Aleric Inglewood
b82c94383b Make V2Renderer branch compile. 2011-05-24 18:56:53 +02:00
Shyotl
21498e0486 Cloud rendertype toggling should now actually... toggle. 2011-05-22 00:12:25 -05:00
Shyotl
7a907c4448 RenderLightingDetail renamed to RenderLocalLights. Toggling light level should work now. RenderDeferredFullscreenLights removed. 2011-05-22 00:11:12 -05:00
Shyotl
9a29428b39 Replaced obsolete priority spatial queue lock with new group-specific variants 2011-05-20 15:51:45 -05:00
Shyotl
77f09744ab Merge branch 'AlericMaster' into V2Renderer
Conflicts:
	indra/llcommon/aithreadsafe.h
	indra/newview/pipeline.cpp
2011-05-20 12:56:23 -05:00
Shyotl
6c3cd6d428 Conditionally allocate deferred renderbuffers. 2011-05-20 10:20:11 -05:00
Shyotl
8562fae08b LLPipeline::rebuildGroups() optimized a bit. 2011-05-19 22:38:51 -05:00
Shyotl
cc60a94af6 Workaround for flickering objects in water reflection pass. 2011-05-19 21:24:46 -05:00
Shyotl
1bb009dcf7 Using new LLLightState class instead of direct glLight calls, also other misc cleanup. 2011-05-19 18:56:49 -05:00
Shyotl
754bb38169 Exposed 'RenderPreferStreamDraw'
Don't enable AA in deferred/ui/etc unless AA is actually enabled via setting
Standard c array instead of silly vector, since the size is knowable at compile.
2011-05-18 21:01:26 -05:00
Shyotl
a4b7bbd031 More should-be-safe changes. Prep for pipeline work. 2011-05-18 16:04:46 -05:00
Aleric Inglewood
697f0ad054 Old VWR-14914 spin-off sound beacon patch.
This makes sound beacons green when playing at
full volume, yellow when playing at a lower volume
and red when they are muted (aka, in another parcel
that you can't hear the sounds of).

Originally this was a debug patch as muted sound
sources used to be implemented by setting the volume
to zero, which happens to use like three times more
CPU: so, having a lot of muted sound source caused
the audio thread to never release a mutex anymore
(cause it was never idle anymore), causing the main
loop to hang, waiting on that mutex - dropping the
FPS drastically. Hence it was necessary to see which
sound sources were muted for debugging purposes.
(Since VWR-14914, muted source source are not played
at all anymore, so they do not take extra CPU).

It's still fun to see this extra information though,
now the patch exists anyway.
2011-05-15 02:23:13 +02:00
Shyotl
66c9e3e1b4 Merge branch 'master' into V2Renderer
Conflicts:
	indra/newview/llvoavatar.h
2011-05-14 14:03:25 -05:00
Shyotl
a3ac5a43b3 Changed how the enabled state for the deferred checkbox is handled in the graphics floater
It now is disabled if:
-Lacking hardware support for FBOs
-RenderDeferred not permitted in gpu feature table
-RenderAvatarVP not permitted in gpu feature table
-VertexShaderEnable is enabled and permitted in gpu feature table
-WindLightUseAtmosShaders is enabled and permitted in gpu feature table

Enabling deferred now requires WindLightUseAtmosShaders to be on beforehand, instead of blindly enabling it.
2011-05-13 02:26:14 -05:00
Shyotl
534e1ae733 DeferredHighPrecision test setting to test 16bit framebuffers vs 32bit 2011-05-12 18:59:05 -05:00
Shyotl
d1d6994419 Full v2.6 renderer. 2011-05-12 00:13:38 -05:00
Shyotl
3dff32d2ab Now that depth blitting appears to work, moving hovertext and such to ui render. Also, added depth-culling in a few more spots to hopefully lessen frag shader usage in deferred. 2011-05-02 17:05:06 -05:00
Shyotl
226de66b81 Skip rendering hud-related elements when rendering for impostor. http://code.google.com/p/singularity-viewer/issues/detail?id=20&can=1 2011-04-30 16:01:02 -05:00
Shyotl
80db7f58c7 Added pass_post_bump for fullbright bump faces. 2011-04-25 18:18:36 -05:00
Shyotl
ac12349a8a Merge branch 'V2Renderer' into V2TextureSystem
Conflicts:
	indra/newview/llviewercontrol.cpp
2011-04-23 19:33:20 -05:00