22,469 Commits over 1,614 Days - 0.58cph!
When materials compile new textures register them immediately - fixes cases where recompiling the vmat with a new texture would result in a missing texture
Port over shadow controller
Hash fog volumes and update clipmaps when they change
Add Decal.Place( SceneWorld, ... )
Fix trigger touch events, skip contact AFTER activating it
Adjust inertia tensor based on the ratio of custom mass to computed mass
Shape AsSphere and AsCapsule
Remove shape creation from interface, used for getting hit point and normal from sweeps, should just have a function for it on interface
Make aggregate physics library agnostic
Testing method for creating a decal in scene worlds
Add SwapChainSampleableDepth to gameinfo, we always want sampleable depth, fixes decals, light culling and reflections not working on Scene
Use Complex & Dynamic Reflections to relevant dev_metal_rough/dev_nonmetal_rough materials
Reenable r_tiled_rendering_depth_cull, r_tiled_rendering doesnt need to be fcvar_archive anymore
Implement some more annoying joint functions
Add SceneLight.FogLighting
Force update volumetric fog clipmaps when fog volumes are dirty (e.g editor mode)
Get joint local and global frames
Touch found, touch persists and touch lost
Enable contact modification if touch persists is enabled
Allow contacts to be flagged as non solid so they get reported but not resolved (triggers)
Cleanup
Change SceneCamera.VolumetricFog to a property
Update VolumetricFog automatically, before render
Remove GetMainCameraVolumetricFog (unused)
Render each eye into separate scratch targets and then blit into combined texture until I can figure out why this is broken
Allow custom exception stack trace inspectors
Update Facepunch.ActionJigs
Fixed missing asset type icons
Scale WebWidget by dpi scale
Updated Facepunch.ActionJigs
GraphView.CenterOnSelection
Remove now obsolete tests
TypeLibrary stores and reuses TypeDescriptions and MemberDescriptions when swapping assemblies.
Fix tests + fix issues with props that only have set; or get;
No need to wrap getValue() body in {} as already have them
Use SemanticModel.LookupSymbols to find and validate methods taking inheritance into account
Non dynamic bodies mass center is bounds center for now
Compute mass for hull
Compute mass for sphere and capsule
Network SkyCameraEntit.SkyboxScale and remove unused shit
Do the same for HullCreateBox so we can get player hull starting to work
Consolidate current game project logic further, make these tests better reflect use case
HullCreate with just the vertices until we have a shared hull class or interface
Store the original triangle index on BVH before it runs through mesh builder and sorting so we can get the original triangle and triangle material
Switch from forked to stable MonoMod.RuntimeDetour
Make sure we generate a sln and sync package manager when a project isn't launched straight from the .sbproj
No more .addon upgrading
This seems redundant and like it'll cause something unpredicted in the future
Can load http:// images
If any HammerEntity fails to parse don't shit the bed for all of them
WrapPropertySet, WrapPropertyGet, WrapMethod
Added Tiling option to hotspot
Tiling regions are defined in the SubRect tool
https://files.facepunch.com/louie/1b1111b1/hst.png
Run WrapSet and WrapGet if both are specified. When passing to static callback always pass propertyName or methodName as fully qualified name.
Support type argument for return type and Func param
Nicer error when can't find type to invoke on for passed callback name
CodeGeneratorFlags/CodeGeneratorAttribute renaming
Minor glossary of differences we keep with upstream rendersystemvulkan
Remove native SetupStereoFrustums
Remove unused camerarenderer stage
RenderStereo uses correct view flags etc., clean up
Revert this, it cocks everything up, find a different way
Calculate mass for all bodies, not just dynamic, our API relies on it
Oops, wouldn't have worked, now it does
Traces get start solid from solver, not fraction being zero
Cast callbacks calls world ShouldHit, does some extra checking for static/dynamic
Remove references to vphysics2
Co-authored-by: Matt Stevens <matt@mattstevens.co.uk>
New rendersystem interface bits
Base rendersystem updates
Sync rendersystemempty w/ public
Partial update rendersystemdx11
scenesystem updates
rendersystemvulkan bits and bobs
Reference Facepunch.ActionJigs, NodeGraph refactor
Allow references to Facepunch.ActionJigs in editor code
More plumbing for action editing
Updated ActionJigs
Some more node types
Support deserializing system types if TypeLibrary is okay with them
Error messages in node tool tips
Added GraphView.GetRelevantNodes
Node graph HandleConfig refactor
Allow arbitrary nesting in node creation context menu
Default handle color tweak
Update Facepunch.ActionJigs
Hotload: fix before / after constraints on upgrader ordering
TypeLibrary.GetSerializedObject overload accepting a getter
Add [Flags] to DockProperty
Constant nodes
Node interface tweaks
Update() node UI after Layout() calls
Update ActionJigs
Try to get nodes to redraw on change
Post-rebase fixes I missed
Remove references to vphysics2
Co-authored-by: Matt Stevens <matt@mattstevens.co.uk>
New Outfit Piece! - Hair Net
https://files.facepunch.com/daniel/1b1111b1/sbox-dev_0eon8tFPlK.jpg
Now you can dress up as a fry cook at a fast food restaurant.
LODs coming asap!