|
|
@@ -7,6 +7,7 @@ import { Loop } from '../utils/LoopNode.js';
|
|
|
import { smoothstep } from '../math/MathNode.js';
|
|
|
import { uniformArray } from './UniformArrayNode.js';
|
|
|
import { builtin } from './BuiltinNode.js';
|
|
|
+import { renderGroup } from '../core/UniformGroupNode.js';
|
|
|
|
|
|
/**
|
|
|
* This node is used in {@link NodeMaterial} to setup the clipping
|
|
|
@@ -94,7 +95,7 @@ class ClippingNode extends Node {
|
|
|
|
|
|
if ( this.hardwareClipping === false && numUnionPlanes > 0 ) {
|
|
|
|
|
|
- const clippingPlanes = uniformArray( unionPlanes );
|
|
|
+ const clippingPlanes = uniformArray( unionPlanes ).setGroup( renderGroup );
|
|
|
|
|
|
Loop( numUnionPlanes, ( { i } ) => {
|
|
|
|
|
|
@@ -113,7 +114,7 @@ class ClippingNode extends Node {
|
|
|
|
|
|
if ( numIntersectionPlanes > 0 ) {
|
|
|
|
|
|
- const clippingPlanes = uniformArray( intersectionPlanes );
|
|
|
+ const clippingPlanes = uniformArray( intersectionPlanes ).setGroup( renderGroup );
|
|
|
const intersectionClipOpacity = float( 1 ).toVar( 'intersectionClipOpacity' );
|
|
|
|
|
|
Loop( numIntersectionPlanes, ( { i } ) => {
|
|
|
@@ -154,7 +155,7 @@ class ClippingNode extends Node {
|
|
|
|
|
|
if ( this.hardwareClipping === false && numUnionPlanes > 0 ) {
|
|
|
|
|
|
- const clippingPlanes = uniformArray( unionPlanes );
|
|
|
+ const clippingPlanes = uniformArray( unionPlanes ).setGroup( renderGroup );
|
|
|
|
|
|
Loop( numUnionPlanes, ( { i } ) => {
|
|
|
|
|
|
@@ -169,7 +170,7 @@ class ClippingNode extends Node {
|
|
|
|
|
|
if ( numIntersectionPlanes > 0 ) {
|
|
|
|
|
|
- const clippingPlanes = uniformArray( intersectionPlanes );
|
|
|
+ const clippingPlanes = uniformArray( intersectionPlanes ).setGroup( renderGroup );
|
|
|
const clipped = bool( true ).toVar( 'clipped' );
|
|
|
|
|
|
Loop( numIntersectionPlanes, ( { i } ) => {
|
|
|
@@ -202,7 +203,7 @@ class ClippingNode extends Node {
|
|
|
|
|
|
return Fn( () => {
|
|
|
|
|
|
- const clippingPlanes = uniformArray( unionPlanes );
|
|
|
+ const clippingPlanes = uniformArray( unionPlanes ).setGroup( renderGroup );
|
|
|
const hw_clip_distances = builtin( builder.getClipDistance() );
|
|
|
|
|
|
Loop( numUnionPlanes, ( { i } ) => {
|