branchrust_reboot/main/terrain_renderer/holescancel
14 Commits over 30 Days - 0.02cph!
Include missing distance function in commit
Split shaders between stencil hole and overhead map
Fix subinstances
Reduce hole map distance for increased resolution
Move map pivot in front of camera for increased distance
Use DitherMaskClip for softer shadow edges
Don't render holes to texture border to prevent sampling clamp issues
Change to additive blend mode to prevent intersecting holes stomping data
Add triangle prism asset for hole shape
Replace alpha float cutoff with alpha map bool value in tile extractor
Use local top down hole map for non-screen space rendering (shadows, probes)
Restructure hole shader stencil passes to use depth tests to fix some holes clipping through wrong terrain
Render out stencil results to R8 hole mask and clear depth for those regions
Handle alternate topdown render of hole volumes
Use separate editor command buffers for hole rendering and terrain depth prepass
Add Hole editor script
Use meshes for hole shapes
Switch to using CommandBufferManager to keep hole and terrain render order
Add cylinder mesh that matches radius of terrain modifiers
Hole editor clean up
Refactor terrain alphamap to packed bools in bytes
Fix primitive object hole assets front/back faces
Change gizmos to use transform
Move terrain shader from front of queue to back for now
Remove stencil writing from terrain depth prepass
Restore original terrain stencil state
Remove holemap
Add debug option to hole shader to see front/back faces
Subinstance culling with degen triangles
Sample terrain height in hole vertex for high res interpolation and discard in fragment if above terrain
Automatically start depth prepass when TerrainHoleRenderer is active
Prototype terrain holes using stencils for better resolution
Create terrain only depth prepass (also stops unity overwriting stencil state) after HoleShape pass where stencil mask is written
Change terrain shader depth test to Equal (failing where prepass stencil test fails)
Change hole renderer to use cubes or triangle prism configs
Add HoleShape assets for minimal cube and triangle prism vertex positions and triangles
Dynamically duplicate HoleShape meshes (with vertexID based instancing) to meet min vertex count for efficient instancing
Improve HoleShape inspector with adjustable sliders
Gizmo drawer for hole shapes
Fit to mesh function
Improve inspector GUI
Render in editor for easier testing
Terrain holes prototyping with SDF style shape components to render new static terrain holes locally for improved resolution