17,499 Commits over 1,338 Days - 0.54cph!
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
Updated Facepunch.ActionJigs
GraphView.CenterOnSelection
Allow custom exception stack trace inspectors
Update Facepunch.ActionJigs
Update Facepunch.ActionJigs
Null literal node
Can get / set fields with nodes
INode.CanClone, CanRemove
Post-rebase fixes
Flush managed rts the same time native wants to, stops those huge temporary vram spikes when resizing scene editor
Plumb in a fix for EntityPrefabEditor entity selection
KeyBindWidget: Fixed using the wrong code for middle/right mouse button
See if we can convince it to compile editor addons during test
Write s&box.sln in unit test proper
artifact game log files when running test
Add ProjectCookie, to save cookies relative to a specific project (like last opened scenes etc)
Create BVH and copy it to RnMesh_t (for tools)
BVH resource pointers point to rubikon data
Swap these bits around in bvh node because that's the order rubikon has it
Fix bloom being enabled by default
Clean release build at 1am every day
If there is no current game, generate s&box.sln (fixes sbox/issues/1302)
Use aligned vertices for RnMesh_t, convert post load if they're unaligned
Add materials back to BVH
Native Vulkan submit, remove unused
Save RnHull_t on shape so tools can grab it later
Create RnHull from library hull, just copy everything over
Revert "Don't add hulls and meshes to aggregate if they fail to build (old data)"
This reverts commit 54d7102f39ce1aca8dde5f84c4cb91070f953eb2.
Revert "Abstract physics hull"
This reverts commit 592ef2bbb12f7cb633735b58c7ff5f594c292715.
Revert "Allow BVH to have optional material indices"
This reverts commit 6ba259ea8f0271d3f59e7b138a07f691cc918c6f.
Revert "Move CPhysicsMesh and CPhysicsHull to their own files"
This reverts commit 9c6ca449f38b72260189f2dc093aa4325b96fee6.
Revert "Abstract physics mesh, phase out RnMesh_t but keep around for loading old collision data"
This reverts commit 883b63ad78c97bd879a9f64e14551ff13bebca5f.
Revert "Start trying to phase out RnHull and RnMesh"
This reverts commit 71878031f158215d4f40a4f1dc913827824394ba.
Revert "Remove bullshit from RnHull and RnMesh to see if still loads and how"
This reverts commit 288df9621dd0c6cb6de3e35b958cecc4cb267102.
Try pointing hull resource pointers to rubikon data, much easier if works
Resource pointer needs to use intptr_t
Add a hull deep clone
Cherry picked SAT fixes in library
Recycle shadow depth texture if requested atlas is of same size, remove code for unused mask texture
Hammer uses same shadow atlas as everything else
Don't add hulls and meshes to aggregate if they fail to build (old data)
Native -> managed VR system, call managed WaitGetPoses inside VrPostPresent
Render & submit serially + native submit test
Use managed VR system checks in some native code
Fixed check for if this is first time assembly is enrolled
Call TriggerRegisterEvent before OnHotloadSuccess
This makes sure that TypeLibrary knows about the new assembly before
things like EntityManager.OnHotloaded() get called.
Fixed check for if this is first time assembly is enrolled
Call TriggerRegisterEvent before OnHotloadSuccess
This makes sure that TypeLibrary knows about the new assembly before
things like EntityManager.OnHotloaded() get called.
Add PhysicsBody.AddShape() which takes a Hull and transforms it
Fix leaked resources when CSwapChainDx11 is resized
Before: https://files.facepunch.com/matt/1b1711b1/Taskmgr_mvUnDuMcc1.png
After: https://files.facepunch.com/matt/1b1711b1/Taskmgr_fd19SDW3Xa.png
CSwapChainVulkan also flushes scratch rendertargets on resize
New Outfit Piece! - Chef's Skull Cap
https://files.facepunch.com/daniel/1b1711b1/R8fCJOhbSd.jpg
LODs coming ASAP
Add SceneModel.AnimationGraph
Don't hit gizmo hitbox if too close
FloatControlWidget observes [Range] attributes, creates a slider
https://files.facepunch.com/garry/64940736-605c-4d7f-a7f7-5d20c1427fa2.png
Add Gradient type, editor, tests
https://files.facepunch.com/garry/de833785-fe3d-4cc9-b27a-035df8705130.png
Add CurveControlWidget
Add SceneCamera.Bloom
Move CPhysicsMesh and CPhysicsHull to their own files
Allow BVH to have optional material indices
Abstract physics mesh, phase out RnMesh_t but keep around for loading old collision data
Revert "Remove all vmat_c files from repo"
This reverts commit 78190dfd8e5471286d0142df92a07cd8d3968e14.
Remove all vmat_c files from repo
Exclude .mayaSwatches from main repository too
[pick] Fix Graphics.GenerateMipMaps downsampling an invalid mip at the end
Codegen Attributes (#1299)
* Initial tests for static call wrap
* Finally sort of got somewhere... bit of a nightmare to debug this right now. Allow multiple CodeGenAttribute. Remove from ClientRpc and add some tests locally instead
* Support CodeGenType.Instance with CodeGenType.WrapCall
* Added first version of WrapSet/WrapGet
* Unit test stubs
* Don't pass value for get accessor..
* Cast to original return type in get accessor when wrapping
* Tests build
* Let CodeGenType.WrapCall proxies return their own values. They can simple do "return resume();" if they wanna keep intended behavior, so we can also wrap methods that don't just return void
* Fixed a bug with static set/get wrap codegen not passing correct method name. Now support also adding [CodeGen] attributes directly to a method or property bypassing an attribute alias, these don't require setting the Instance/Static flags.
* Use nameof where possible
* Fixed tests for WrapSet/WrapGet
* Improve documentation
* Improve docs for CodeGenAttribute
* More documentation
* Fixed logic in WrapSet
* Added method validation. Compiler will let you know what methods you're missing when using CodeGen and what types, return types etc they need
* Add some extra tests
* Only allow CodeGen on custom attributes. Tidy up. CallbackName for CodeGenType.Static is the actual fully qualified name of static method to call
* Auto generate backing fields for properties. Pass current value in WrapGet callbacks. Set backing field before calling WrapSet callbacks. Update method validation error prints appropriately
* Fixed ValidatePropertyCallback
* Can now propertly wrap setters/getters. Setter callback passes Action<T> you can call to run default behavior
* Fix error if value statement empty
* Update tests
* Fix TestWrapSet
* 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
* Update tests
* WrapPropertySet, WrapPropertyGet, WrapMethod
* 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
* Remove leftover test code
Remove leftover test code
Turns out none of this stuff was needed because I'd already coded it
Optimized compile for gizmo_line and gizmo_sprite, fixes on Vulkan
.gitignore: ignore all compiled content except shaders
Uncomment this stuff with updated vulkan headers
32 bit depth buffer doesn't imply reverse depth
Pixel center always 0.5f
Update OpenVR from 1.16.8 to 1.26.7 (latest)