branchrust_reboot/main/jungle_update/vine_3d_renderercancel
24 Commits over 0 Days - ∞cph!
Massive performance boost: Reduce vine ms usage by 50%.
Only run coroutine spring lerps on use, snap to position on init>
Additionally: Only run spring lerps if end point or hang point are different to what they should be
Force vine visual to stay on 2d rendering only
Passed intial performance tests: disabling tube rendering until art is done
Fix LOD flickering issue again
Fixed bug causing invisible lines on swing. Preload both tube and line renderers, so on swapping they can quickly move over and draw the vine properly
Trying to fix an invisible on swing bug
Profiling
Better LOD values
Fix LOD spamming on and off depending on player look direction.
Fix LOD not respecting the OnShow mountable code
Setup new VineLOD script. Swap the physics ropes render mode on lod state change
Setup LOD system with new tube and line renderers.
Show 3d tube vine up to 20 m then swap to line renderer, eventually culling.
Animate hang point and length changes with springs
Bottom hanging part of vine is now a bezier tail.
Tube Renderer now uses parallel transport to push tube rings in a manifold.
Results in much smoother rotational changes
Successfully working 3d representation of the vines
Tube Renderer radius now better matches 2d vine width
Cleanup vine script. Doesn't need to hold a reference to a line renderer
FakePhysicsRope now has multiple render modes: LineRenderer2D, TubeRenderer3D and the option to have both.
Vines are now rendered as both line and tubes.
Ensure end caps have the right normals
Fix tubes rendering as ribbons
Add flat caps onto the end of the tubes if hemisphere caps arent used
WIP: Generate tubes as rings of verts and connect them together instead of lots of capsule segments
Expose position setting methods just like the line renderer
Initial implementation of a tube renderer. This will let us procedurally create swinging vines as 3d objects rather than bill boards