11,220 Commits over 1,338 Days - 0.35cph!
Revert "None of this is used, prove me wrong"
This reverts commit 673e5e351dc372e2cdb4b91f3fefcea3b8fd9990.
None of this is used, prove me wrong
Add SceneModel.MergeBones( SceneModel other )
Fix startup error
Performance scope animation update
AssetSystem: optimize FindByPath lookup
Optimize GameResourceProcessor
Keep __references ordered to avoid diff hell
Optimize recursive WalkJsonTree
FPArms: updated weightlists
FPArms: overhauled punching animgraph (still some things to iron out, but the core functionality works again at least)
SceneModel can get anim parameters
Native Resource Cache
Use a sliding window cache alongside weak references for our native resources in C#. There were cases where we were reloading resources every frame because the garbage collector was too good at it's job, so we'll let per frame loads hang around a bit longer.
Resolves #1306
Add PhysicsWorld.Step( delta, substeps )
Fix strong handle leak in Texture.FromNative
SelectionSystem has events
Rename TreeNode.HasChild to TreeNode.HasDescendant
Open and scroll to selected item in treeview
Updated trace code from Jay
add Gizmo.Draw.SolidNavigationMesh, LineNavigationMesh
Add NavigationPath.GetPositionAlongPath
Add Gizmo.Draw.SolidTriangles
Remove all the Msg'ing when generating a navmesh
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)
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)
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
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
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
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
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
Make RootPanel.IsWorldPanel virtual, so we can be more explicit with it
Be a bit more accurate with Rotation equality
Add SceneCamera.EnableUserInferface
Fuck all of that actually, just leave a better comment here
Make sure intermediate depth matches intermediate output color render target
ComputePipelineRenderTargetInfo doesn't care if toolview is false
This does the same shit
r_textures_list_all - see all resident textures
tier0: new memalloc aligned16 accessors
CResourceNameGetter inherits CResourceName
Don't stub CSceneSystem::SetMainSwapChain in tools, why would we not want SCENE_RTSIZE_FRAMEBUFFER the correct size
RenderTarget.GetTemporary uses 32 bit depth when needed
fix options.cpp redefinition
Editor.Animate promoted to public