I also missed alot writing in the last post, i didn't explain much because the original plan was to put everything into a huge Release post on 2.4 which might take another month or so.
Anyway, i'll do a run-down of some of the most important changes in this and the last update, so here we go:
User Interface:
With the implementation of my new right-mouse hold camera turn feature alot of bugs sneaked in, most of which i fixed before the update went out, theres no promise that i can fix all of them, there will always be bugs somewhere and one of these bugs was the inability to right-click into the tools floater more and more people kept reporting. The problem was found quickly, with the implementation of this feature i had to change how right-click menus work, the tools floater however was kept as it was and we all probably know that the tools floater hides itself as soon as we do any kind of unusual action not directly linked to building such as caming around. Consider this issue fixed, the tools floater will continue to hide as usual but not anymore when we right-click... or hold.
Last update also added the option to change Tone Mapping to "Custom", there were no options to customize it however, with this update you will see a bunch of new options in the Tone Mapping area to customize Tone Mapping when set to "Custom", they come with the usual "default" buttons aswell, don't be shy! play with them, you can just revert them back to default.
My change to how RenderShadowResolution works kept alot people with a huge questionmark over their head. Let's clear that one up too! RenderShadowResolution was previously a F32 debug, something like 1.0 or 0.5923643, it was a direct shadow resolution multiplier, multiplying your current shadow resolution, which was depending on your screen resolution, by your desired amount. I removed this F32 debug and put it into a Vector3 debug which is basically an array with 3 F32 debugs, like this: 1024,1024,1 or 1024,1024,1.0 in this case. It allows me to save the shadow width and height into the first 2 arrays and the multiplier into the third array, allowing us to customize shadow resolution freely. In "Display" you will find 3 sliders now, Shadowmap Width, Shadowmap Height and Shadowmap Multiplicator, these 3 together are the Vector3 i was talking about and they work just as you think they would work: (Width * Height) * Multiplicator. If you got a 1080p resolution like me, you would have to set it to 2048 * 1024 * 1.0 to roughly get what you did before this change, but why would you chose a such strange resolution if you can select a quadratic shadowmap like: 2048*2048*1.0 or 1024*1024*2.0. Can you still follow me or is your brain starting to overheat already?
I noticed an increasing amount of people with an issue that is causing them have tooltips on their screens forever, its (obviously) an user error, you open the "Interface" tab, see the scrollbar and start scrolling your Mousewheel, everyone does that. Scrolling however changes the value of spinners, even if you didn't focus them, i wonder why this was never changed... i changed it to disallow changing values as long as you don't focus that spinner, that means you can now safely scroll up and down using your Mousewheel without having to fear to accidentally your settings again. -- i love that wording.
Rendering:
Last update reduced the near-clip plane drastically. You don't know what that means? It means you can zoom closer onto your avatar or objects around you before they start "cutting off", this is exceptionally good in Mouselook where hands and other stuff often whoosh around near your head/eye position.
SSAO, Shadow Blur, Tone Mapping and some Glow settings have been finetuned a bit more for a better overall look, sunrise/dawn scenes should now have a fairly good visible "bleeding" effect for glow, that means, glow "bleeds" over as in its "overglowy", you can see this effect on these 2 comparison shots (might be hard to see because these are high resolution snapshots) aswell as the new glow defaults which generally brighten areas lit by the sun more than before. It creates a warm looking image.
Here are 2 comparison snapshots for the old and new Tone Mapping defaults, i'm sure you will like the new one, its probably the biggest visual change for Tone Mapping i've done since i added it.
Depth of Field has been changed in how it is calculated, this change comes from Tofu Buzzard who also did Screen Space Reflections and other nice things such as SSAO algorythm changes and haze fixes. Overall Depth of Field should be alot faster now for a very slight reduce in quality. Don't worry tho i will offer you an option to chose between all 3 different Depth of Field types in 2.4. You can see how the chair color bleeds slightly over its edge into the blurry scene, this doesn't happen in with the original slower Depth of Field but for now its a fair trade until you get the option to chose.
As of this update Depth of Field is now even easier to set up, you can now press CTRL + X to enable free selecting of a Depth of Field focus point, just like zooming on it...without zooming on it, just like you can in Flycam mode. Press CTRL + X to activate it, move your mouse to your desired focus point position and press Shift + X to lock the focus point there, Depth of Field will now stay focused on that point, no matter if you zoom on something else or if you move your mouse, to deactivate/release the focus point again just disable the lockon with Shift + X. You can also disable the free focus point selection with CTRL + X, that will make Depth of Field focus normal again, e.g focus on your Zoom point.
Snapshots:
Changelog:
2.3.9.4Added: Refreshing for our new custom Tone Mapping options and for our new Shadow Resolution array.
Added: Slider options for custom Tone Mapping preset, now we can truly customize it. Also changed FXAA name slightly so people don't oversee it that easy.
Added: Sliders for active/inactive floater transparency. I wonder where i lost them.
Added: Debugs for freely selectable Depth of Field. Needs a bit cleanup now.
Added: Freely selectable Depth of Field focus point, enable it via CTRL + X and lock it via Shift + X.
Added: Right-Arm Editing Motion option. Fixes awkward joint breakage on certain angles for both left and right arm.
Changed: ShowSelectionBeam now controls if our Avatar does the editing arm motion.
Changed: Controller defaults slightly for better seperation between walking diagonally and straight into one direction.
Changed: More finetuning for Controller defaults, remap all buttons to nothing except flycam when we click SpaceNav Defaults.
Fixed: Load/Save Camera position not working anymore.
Fixed: Inability to right-click into the Tools floater because it vanishes for a split second.
Fixed: Compile.
Removed: Debugging stuff for selectable DoF focus point.
ACME-1317
SH-4667 HTTP Viewer reports network error instead of a misnamed joint on mesh upload
SH-4645 Viewer hangs on exit after cancelling a mesh upload.
SH-4516 Fix a subset of thread races in llmeshrepository
SH-4492 Create a useful README for llcorehttp.
SH-4490 More 'humane' error code presentation from llcorehttp callers
SH-4489 New debug/dev settings for control over new mesh behavior
SH-4478 Corrected/updated error handling for all retrieval operations.
SH-4411 Thread/mutex rework between main and worker thread
SH-4407 Tuning to get new code working as well.
SH-4371 Reduce 22mS inter-conenction latency on HTTP operations.
SH-4368 Adjust upload timeout parameters for slow networks.
SH-4365 Conversion of mesh uploaders to llcorehttp.
SH-4325 Viewer working mixed grid with GetMesh and GetMesh2 caps
SH-4312 Clumsy configuration coordination between mesh and corehttp
SH-4310 Better status checking and error logging in Mesh code.
SH-4257 Preparation for a new cap grant: GetMesh2
SH-4252 Add second policy class for large mesh asset downloads
SH-4184 Conversion to llcorehttp. Remove unneeded responder classes (moved to Handlers).
SH-4163 Run an initial series of 'B' tests on the mesh downloader code
SH-4162 Merge metrics repo into this branch and integrate
SH-4161 Integrate cpu metrics into LLDeadmanTimer and then metrics viewer
SH-4153 Port user and system cpu accounting from example program.
SH-4139 Convert http downloaders and responders to llcorehttp patterns
SH-4106 Significantly upgrade the HttpHeaders interface for SSB.
SH-4090 Integrating deadman timer with mesh repo downloads.
SH-4089 Unit test work for timer. Knocked off some tests for the deadman's timer.
SH-4088 Deadman timer switch started in llcommon. Unit test started.
SH-3690 Cleanup pass through code.