diff options
| author | yum <yum.food.vr@gmail.com> | 2025-11-04 17:26:46 -0800 |
|---|---|---|
| committer | yum <yum.food.vr@gmail.com> | 2025-11-04 17:26:46 -0800 |
| commit | c9324a804c15cf3db403833e67935762eb45cb80 (patch) | |
| tree | eed670156a998d79958f10caf2833cc8ddb0a5c9 /3ner.shader | |
| parent | 27c7851bf08aaee87eb348010737c34b5698adaa (diff) | |
add ray march instancing (copies) with row offsets
instancing uses real evaluated copies of the mesh instead of domain
repetition. useful for hiding artifacts as an alternative to quilez's
corrective term, which generally converges more slowly.
Diffstat (limited to '3ner.shader')
| -rw-r--r-- | 3ner.shader | 37 |
1 files changed, 32 insertions, 5 deletions
diff --git a/3ner.shader b/3ner.shader index 9315aed..3e7e9e0 100644 --- a/3ner.shader +++ b/3ner.shader @@ -81,12 +81,39 @@ Shader "yum_food/3ner" [HideInInspector] m_end_Ray_Marching_Baked_Origins("Baked Origins", Float) = 0 //endex + //ifex _Ray_Marching_Cart_Instancing_Enabled==0 + [HideInInspector] m_start_Ray_Marching_Cart_Instancing("Cartesian Instancing", Float) = 0 + [ThryToggle(_RAY_MARCHING_CART_INSTANCING)] _Ray_Marching_Cart_Instancing_Enabled("Enable", Float) = 0 + [IntRange] _Ray_Marching_Cart_Instancing_Count_X("Count X", Range(1,3)) = 1 + [IntRange] _Ray_Marching_Cart_Instancing_Count_Y("Count Y", Range(1,3)) = 1 + [IntRange] _Ray_Marching_Cart_Instancing_Count_Z("Count Z", Range(1,3)) = 1 + _Ray_Marching_Cart_Instancing_Span_X("Span X", Range(0,2)) = 0.1 + _Ray_Marching_Cart_Instancing_Span_Y("Span Y", Range(0,2)) = 0.1 + _Ray_Marching_Cart_Instancing_Span_Z("Span Z", Range(0,2)) = 0.1 + + //ifex _Ray_Marching_Cart_Instancing_Offsets_Enabled==0 + [HideInInspector] m_start_Ray_Marching_Cart_Instancing_Offsets("Offsets", Float) = 0 + [ThryToggle(_RAY_MARCHING_CART_INSTANCING_OFFSETS)] _Ray_Marching_Cart_Instancing_Offsets_Enabled("Enable", Float) = 0 + _Ray_Marching_Cart_Instancing_Offsets_X_Every_Y("X every Y", Range(0,1)) = 0 + _Ray_Marching_Cart_Instancing_Offsets_X_Every_Z("X every Z", Range(0,1)) = 0 + _Ray_Marching_Cart_Instancing_Offsets_Y_Every_X("Y every X", Range(0,1)) = 0 + _Ray_Marching_Cart_Instancing_Offsets_Y_Every_Z("Y every Z", Range(0,1)) = 0 + _Ray_Marching_Cart_Instancing_Offsets_Z_Every_X("Z every X", Range(0,1)) = 0 + _Ray_Marching_Cart_Instancing_Offsets_Z_Every_Y("Z every Y", Range(0,1)) = 0 + [HideInInspector] m_end_Ray_Marching_Cart_Instancing_Offsets("Offsets", Float) = 0 + //endex + [HideInInspector] m_end_Ray_Marching_Cart_Instancing("Cartesian Instancing", Float) = 0 + //endex + //ifex _Ray_Marching_Cart_Grid_Enabled==0 - [HideInInspector] m_start_Ray_Marching_Cart_Grid("Cart Grid", Float) = 0 + [HideInInspector] m_start_Ray_Marching_Cart_Grid("Cartesian Grid", Float) = 0 [ThryToggle(_RAY_MARCHING_CART_GRID)] _Ray_Marching_Cart_Grid_Enabled("Enable", Float) = 0 - _Ray_Marching_Cart_Grid_Count_X("Count X", Range(0,40)) = 5 - _Ray_Marching_Cart_Grid_Count_Y("Count Y", Range(0,40)) = 5 - _Ray_Marching_Cart_Grid_Count_Z("Count Z", Range(0,40)) = 5 + [IntRange] _Ray_Marching_Cart_Grid_Count_X("Count X", Range(0,40)) = 5 + [IntRange] _Ray_Marching_Cart_Grid_Count_Y("Count Y", Range(0,40)) = 5 + [IntRange] _Ray_Marching_Cart_Grid_Count_Z("Count Z", Range(0,40)) = 5 + _Ray_Marching_Cart_Grid_Span_X("Span X", Range(0,40)) = 0.1 + _Ray_Marching_Cart_Grid_Span_Y("Span Y", Range(0,40)) = 0.1 + _Ray_Marching_Cart_Grid_Span_Z("Span Z", Range(0,40)) = 0.1 [HideInInspector] m_end_Ray_Marching_Cart_Grid("Cart Grid", Float) = 0 //endex @@ -225,7 +252,7 @@ Shader "yum_food/3ner" [ThryToggle(_TESSELLATION)] _Tessellation_Enabled("Enable", Float) = 0 _Tessellation_Factor("Factor", Range(1, 64)) = 1 _Tessellation_Frustum_Culling_Bias("Frustum culling bias", Float) = 35 - _Tessellation_Falloff_Factor("Falloff factor", Float) = 50 + _Tessellation_Falloff_Factor("Falloff factor", Float) = 0.05 // Shit for thry [HideInInspector] Tessellation_Enabled("Enabled", Float) = 1 [HideInInspector] Tessellation_EnabledForwardBase("Enabled (ForwardBase)", Float) = 1 |
