userFelixcancel
reporust_rebootcancel

921 Commits over 730 Days - 0.05cph!

9 Months Ago
CodeGen
9 Months Ago
merge from indirect_instancing
9 Months Ago
Mark Indirect Instancing as DeveloperOnly
9 Months Ago
Fixed NRE in FallbackMemory.SubmitDrawCalls and other problems by using a free space bitmap and keeping fallback indices stable
9 Months Ago
rebase on main
9 Months Ago
Fix occasional wrong position of objects which use Animator snapping upon spawn when Instancing is active
9 Months Ago
Attempt to fix release build crash with Indirect Instancing enabled by avoiding (potentially buggy) NativeBitArray altogether.
9 Months Ago
merge from indirect_instancing
9 Months Ago
rebase on /main
10 Months Ago
Advanced on-screen profiling using FrameTimingManager (WIP)
10 Months Ago
Improve Update() performance by caching is_in_motion state for every entity.
10 Months Ago
Improve Update() performance by caching is_in_motion state for every entity.
10 Months Ago
merge from indirect_instancing
10 Months Ago
* Tuned execution order to avoid waiting for jobs the main thread. * Split TransformApplyJob into TransformGatherJob that only extracts matrices to reduce any locks we might place on transform data. * Added a ton more instrumentation to the CrudeProfiler to get more live information about Indirect Instancing, Debug Draw and also some global timings. * Made certain expensive debug features toggleable. * The debug overlay can now render “µ”.
10 Months Ago
merge from indirect_instancing
10 Months Ago
Some fixes and cleanups for the Indirect Instancing debug overlay
10 Months Ago
merge from indirect_instancing
10 Months Ago
rebase on main
10 Months Ago
Properly cull underground objects when Indirect Instancing is enabled
10 Months Ago
Fix culling volumes not working with Indirect Instancing by allowing to inject culling decisions from gameplay code. (pre_culled_mask)
10 Months Ago
merge from indirect_instancing
10 Months Ago
Fix deep sea island terrain not rendering properly when Indirect Instancing is enabled by not instancing all MeshTerrains for now.
10 Months Ago
Fix command count mismatch error spam due to destroyed materials.
10 Months Ago
merge from indirect_instancing (exception fix)
10 Months Ago
Fix a typo causing an access conflict between DamageTrackerRegionScanJob and TransformApplyJob
10 Months Ago
merge from indirect_instancing
10 Months Ago
Fix object popping caused by orphaned motion list entries in multiple ways: * Remove seq_nums from the motion list just before they are unassigned. This piggy-backs off the existing remove_queue to guarantee container safety when objects are destroyed at inconvienient times. No need for a separate motion_stop_queue. * Store parent entity for every InstancedLODComponent. When objects are returned to the pool they are unparented first, but they still need to know who their parent was so they can properly remove their seq_nums from that entity. Bonus: Fix some NREs when Indirect Instancing is disabled in the editor.
10 Months Ago
rebase on main
10 Months Ago
merge from indirect_instancing
10 Months Ago
Keep Indirect Instancing disabled by default (until rare wrong object bug is fixed)
10 Months Ago
rebase on main
10 Months Ago
* Improve job scheduling to make leaving the job phase more robust through loading screens * Fix NRE when trying to remove instances before Indirect Instancing was initialised
10 Months Ago
Remove unused field
11 Months Ago
Fix server build
11 Months Ago
rebase on main
11 Months Ago
* Made switching Indirect Instancing at runtime more robust * Prevent some other possible exceptions * Avoid some unnecessary calls to MotionList
11 Months Ago
* Renamed TransformMemory to MotionList (as it should be) * Use managed HashSet instead of NativeHashSet because there seems to be no performance benefit to using native at the moment. * Fixed exception caused by removing elements from the set while iterating
11 Months Ago
Use negative handles for fallback memory
11 Months Ago
Remove InstanceHandle and use a simple integer instead
11 Months Ago
* Added generic NativeMultiList to replace InstanceHandleList (WIP) * Store Transform.InstanceIDs (and actual nullable Transform references) in PerInstanceMemory, indexed by seq_num * Simplified MotionList add/removal procedures to HashSet operations * Cleared up function naming in BaseEntity.Client.Motion.cs * Consider all entities as a potential motion parent and utilise existing parent/child relations to call MotionStart / MotionStop * Removed IMotionParent interface because it caused more confusion than anything else * Correctly dispose of the hash set storing child instances when an entity is destroyed
11 Months Ago
(WIP) Large refactor: Make BaseEntity responsible for calling StartMotion / StopMotion with (potentially) a single array of numbers to mitigate spikes when large entities set into motion.
11 Months Ago
* Make instances identifiable by a single never changing integer * Speed up adding/removing instances by using various look up tables to find instances instead of staged linear searching
11 Months Ago
Convert seq_num uint → int
11 Months Ago
rebase on main
11 Months Ago
Enable Indirect Instancing by default
11 Months Ago
No longer restrict Indirect Instancing (`indirect_instancing.enabled`) to developer accounts. I'm looking at you, staging players. 👀
11 Months Ago
Allow Indirect Instancing to be toggled in-game any time (Also correctly applies config value when in editor now)
11 Months Ago
* Remove the need for HasValidMesh() on LOD components * Renamed a bunch of things for clarity
11 Months Ago
rebase on main
11 Months Ago
Disable Indirect Instancing by default to unblock editor issues (I'll be back)