From c9324a804c15cf3db403833e67935762eb45cb80 Mon Sep 17 00:00:00 2001 From: yum Date: Tue, 4 Nov 2025 17:26:46 -0800 Subject: 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. --- globals.cginc | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'globals.cginc') diff --git a/globals.cginc b/globals.cginc index 6e0d71f..c2b38cb 100644 --- a/globals.cginc +++ b/globals.cginc @@ -134,11 +134,32 @@ float _Ray_Marching_Overstepping_Factor; int _Baked_Origins_UV_Channel_Index; #endif // _RAY_MARCHING_BAKED_ORIGINS +#if defined(_RAY_MARCHING_CART_INSTANCING) +float _Ray_Marching_Cart_Instancing_Count_X; +float _Ray_Marching_Cart_Instancing_Count_Y; +float _Ray_Marching_Cart_Instancing_Count_Z; +float _Ray_Marching_Cart_Instancing_Span_X; +float _Ray_Marching_Cart_Instancing_Span_Y; +float _Ray_Marching_Cart_Instancing_Span_Z; +#endif // _RAY_MARCHING_CART_INSTANCING + +#if defined(_RAY_MARCHING_CART_INSTANCING_OFFSETS) +float _Ray_Marching_Cart_Instancing_Offsets_X_Every_Y; +float _Ray_Marching_Cart_Instancing_Offsets_X_Every_Z; +float _Ray_Marching_Cart_Instancing_Offsets_Y_Every_X; +float _Ray_Marching_Cart_Instancing_Offsets_Y_Every_Z; +float _Ray_Marching_Cart_Instancing_Offsets_Z_Every_X; +float _Ray_Marching_Cart_Instancing_Offsets_Z_Every_Y; +#endif // _RAY_MARCHING_CART_INSTANCING_OFFSETS + #if defined(_RAY_MARCHING_CART_GRID) float _Ray_Marching_Cart_Grid_Radius; float _Ray_Marching_Cart_Grid_Count_X; float _Ray_Marching_Cart_Grid_Count_Y; float _Ray_Marching_Cart_Grid_Count_Z; +float _Ray_Marching_Cart_Grid_Span_X; +float _Ray_Marching_Cart_Grid_Span_Y; +float _Ray_Marching_Cart_Grid_Span_Z; #endif // _RAY_MARCHING_CART_GRID #if defined(_RAY_MARCHING_HEX_GRID) -- cgit v1.2.3