14,103 Commits over 1,583 Days - 0.37cph!
ShaderGraph: Allow named constants to configure material editor UI
Add SelfIllum to texture ext types
Limit graphics view zoom to reasonable amounts
Remove whitespace in texture parameter name
Add delete button to node UI
ShaderGraph: disable filtering on background pattern
Adjusted colour on handles to be more clear
https://files.facepunch.com/louie/1b0411b1/sbox-dev_0BuTFk5GxC.png
Simplify LobbyFrontPage flow, clicking game / map will open their browsers
Fixes highlight not repainting consistently when text selection changes
ButtonGroup: Don't throw if we can't find a button to pick while setting up initial render tree
Fix text selection not working on center and right aligned texts
Format everything in RichTextKit
Nothing changed except formatting. I forgot to do this when bringing it over, forcing it now so it's not a nuisance going forward (mostly spaces to tabs and looking at diffs)
Fix Image panel not updating its size when the texture gets loaded or ScaleToScreen changes
Add support for `word-break` css property (#853)
Supports `normal` and `break-all` values. Normal will break by word, break-all will break by character.
https://files.facepunch.com/crayz/1b0211b1/sbox-dev_Yt8zD84LqS.mp4
Saw blade prop
https://files.facepunch.com/rickgreeve/tbrender_Viewport.png
vr: tracked objects (hands) also use full anchor rotation, not just yaw
vr: remove axis limitation on vr anchor rotation, enjoy throwing up
Update Steam Audio to 4.1.3
Fix temp depth rendertargets hashing incorrectly when changing MSAA setting
Use a capsule rather than sphere for ripplecompute, send velocity data to ripplecompute, makes ripples seem fully connected even in low franerates
Tag r_water_ripples to be removed from engine on next painday :S
Fix intersection flickering in SDF reflections
Make water ripples feel much more natural, fix it exploding
Fix water collision not working, tweak water ripple propagation
async option for RenderToPixmap, fixes thumbnail rendering
Fixed CustomResources not loading for Map Projects loaded through filename (i.e. after compile)
Test for block copying List<T> or T[]
Lists of structs can use array block copying again
More direct copy for StructArrayConverter
Fix possible NRE when logging about methods without declaring types
Fixed setting size of block-copied list
street lamp unit
-now breakable
ShaderGraph: Add default values to result node so you don't have to plug in a constant if you just want to set a constant value https://files.facepunch.com/layla/1b0211b1/sbox_2nXboeBxrk.png
ShaderGraph: Float editor supports rangeless editing https://files.facepunch.com/layla/1b0211b1/sbox_ri3rVeT2hv.mp4
ShaderGraph: Remove whitespace from param name, fixes shader compile errors
Warn when graph paste is invalid
Still try to compile graph preview if there's no result node, we may have preview nodes
TransformNormal with no input falls back to vNormalWs
Document WorldNormal node to make it clear it's the vertex normal in world space
RenderToPixmap reads pixels in callback for performance
ShaderGraph: Inline float and color editors on nodes, experimental render node previews (only enabled on noise nodes for now) https://files.facepunch.com/layla/1b0111b1/sbox_8EW2bnCQWR.png
Add triplanar mapping to blendable
Skin shader use DXT5 (no sRGB) instead of BC7 for the combined masks texture; stops blocky artifacts & it's more appropriate
Resolves these blocky artifacts on the ao mask: https://files.facepunch.com/matt/1b2811b1/TA6eSCStlI.jpg
Obviously this is a bug with bc7e and alpha channels (there are issues open), but it's super specific to the way we're combining these textures together for this shader.
For standard color maps bc7e is supreme to all other encoders, and when we're combining channels together bc7 is rarely the right choice, so I think it's more than fine to avoid this.
Remove nocompress hint from citizen_skin_ao.png and recompile skin materials
Rework parts of CLightCookieManager to prevent crashing and optimize slightly
* Don't create new light cookies when we exceed the max, otherwise we'll just fucking crash
* Don't needlessly update the texture slices of removed cookies, new cookies will replace
* Light cookies use a strong texture handle instead of weak handle
Cardboard box
Revised design, more wear and tear. Multiple skins and revised Gibs
Merge branch 'master' of sbox
Update README: General cleanup, build instructions, using unit tests, engine reference, using Git tips
Compute max swap chain size from all monitor dimensions - solves tools like Hammer not being able to render fully on secondary larger monitors
GetMaterialOverride return default if the override is invalid, specific fix for Hammer crash but could've been fucked elsewhere
Make sure to always set FrameBufferCopyRectangle when using FrameBufferCopyTexture
Citizen: tagged AO mask as uncompressed, which avoids blockiness and banding from showing up, especially on darker skin colors + small improvement to skin05 (a bit less purplish)
Disable assert for render thread index exceeding maximum, not needed on DX11 and for Vulkan I'll make it valid to have a slower path when this is exceeded - although it's probably worth looking at how many threads C# can summon in the first place.
Use internal native cursor position to do mouse locking in shader graph
Revert, assumed nothing else was using cursor position
Application.CursorPosition uses native cursor pos in CQUtils, fixes dodgy camera in shader graph preview with different screen dpi
Citizen/clothing: added "stopgap" twist setup to shorts, trousers, and vests
Citizen/clothing: added "stopgap" twist setup to jumpers, shirts, and shoes
Citizen/clothing: added "stopgap" twist setup to jackets (testing with this one is parts of the prefab really need to be disabled situationally; if the build server doesn't throw up an error on content compile, then we're good)
Citizen/clothing: added "stopgap" twist setup to gloves
Citizen/clothing: added "stopgap" twist setup to dresses
Citizen: updated the "stopgap" VMDL prefab that should be applied on models with the old Citizen skeleton & merged the two into one (because when flattened, they auto-sort into the proper categories)
beer bottle
texture adjustments
Merge branch 'master' of sbox
Citizen: updated skeleton & twist helpers to use the "containerized" setup seen in the Humans rig + improved behaviour of procedural constraints
This greatly improves the way limbs behave when squashing and stretching, especially when using the height_scale feature, and most notably their upper parts, which were unable to do so properly before.
**IMPORTANT:** this doesn't "break" old VMDLs, because the new twist bones are named differently (previously "twist", now "twist0" & "twist1"). So there is a sort of barebones level of "retrocompatibility". However, it does mean that the old bones will stop twisting. The ideal solution is to fix your clothing items etc. to use the new bone names & transforms, *BUT* as an easy stopgap solution, you can import a prefab onto older VMDLs (like clothing items) which contains the old constraints, and they will run inside that VMDL, separately. (This does mean they won't benefit from the improved squash/stretch, but it will at least keep the helpers running as they did.)
There will also be a minor skinning update in not too long to push this to be as good as possible.