22,469 Commits over 1,614 Days - 0.58cph!
Fix MeshTrace result not returning good defaults
EndPosition is now the hit position if hit, non hits have endposition and distance set
Delete the sceneobject RayTraceObject straigt away
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
Hang watchdog -> tools stall monitor
Splash screen is stall monitor main thread window before editor opens
Don't remove an event instance - even if it's throwing errors
Event system unregister (#1291)
* Rewrite event system to lift and sweep
* Enroller calls unregister before hotload, register afterwards
Enroller calls unregister before hotload, register afterwards
Rewrite event system to lift and sweep
Add PhysicsCallback class
Add PhysicsShape.IsTrigger
Handle IsTrigger in collisionfilter
CollisionEvent callback stub
implement > < operator overloads in TimeSince/TimeUntil
Remove World StepCollision and GetSimulationTimeElapsed, doubt these are needed anymore
Body and Shape SetMaterialIndex
World GetBody by index
Move vphysics into engine2
Remove legacy objectparams_t stuff
Calculate collision impact forces to give the same results we currently get
Another big interface cleanup
Disable rendering of debug scene objects when debug rendering is disabled
Shape set material (density, friction, restitution)
Aggregate set surface properties
Set shape material when building aggregate
Reference Facepunch.ActionJigs, NodeGraph refactor
Allow references to Facepunch.ActionJigs in editor code
More plumbing for action editing
Remove deprecated renderingpipeline stuff that was never even used
Document TrackedDevice, remove unused, update skeletal data
Move VR class into Sandbox.Engine (forwarded to Sandbox.Game) and respect anchor for tracked transforms
Compositor submit bindings, cleanup
Submit all the info we need to camera renderer + start rewriting stereo rendering
Deleted subviews, crossed/nohmd stereo modes, auto-fidelity, no longer uses multiview instancing
Clean up
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
Snap angle works under 1.0
Add SerializedObject.OnPropertyChanged callback
Hammer: float snap angles and some more presets
Chefs hat LODs and adjustments to boxing boots
More safety in JsonSerializerOptionsUpgrader (#1287)
Fix asserts showing as errors in intellisense
Delete loads of random shit from game
Don't explicitly set MultiProcMaxCount, defaults to # logical processors (which is 96 on our build server) - compiles 15% faster locally for me
Add BBox,FromBoxes, BBox.FromPoints
Fix possible exception in ConcurrentDictionaryUpgrader (#1287)
Possible fix for first error in #1287
I couldn't repro, but it's possible some serialization was happening
during a hotload to cause this.
Don't run Program.Main if package is local. The assumption is that they'll be using scene view so that's controlled by the editor.
Allow provide message with Assert.NotNull, IsNull
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
Only allow CodeGen on custom attributes. Tidy up. CallbackName for CodeGenType.Static is the actual fully qualified name of static method to call
Ignore sln, lutconfig, lutignore when publishing
When can't find active package, print a list of packages that it can find
Ignore unittest folder when publishing
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
Lets not have a games folder in the sln anymore
Lets put the sln in the active game folder
Improve docs for CodeGenAttribute
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
Collision events with bullshit impact strength until this can be calculated properly
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
Don't enable joint collision by default
Fix mesh shape debug drawing https://files.facepunch.com/layla/1b0411b1/sbox-dev_Iu61effQRf.png
Allow references to Facepunch.ActionJigs in editor code