|
99 | 99 | depthWrite: false, |
100 | 100 | transmission: params.transmission, // use material.transmission for glass materials |
101 | 101 | opacity: params.opacity, |
| 102 | + side: THREE.DoubleSide, |
102 | 103 | transparent: true |
103 | 104 | } ); |
104 | 105 |
|
105 | | - const material1 = new THREE.MeshPhysicalMaterial().copy( material ); |
106 | | - |
107 | | - const material1b = new THREE.MeshPhysicalMaterial().copy( material ); |
108 | | - material1b.side = THREE.BackSide; |
109 | | - |
110 | | - const material2 = new THREE.MeshPhysicalMaterial().copy( material ); |
111 | | - material2.premultipliedAlpha = true; |
112 | | - |
113 | | - const material2b = new THREE.MeshPhysicalMaterial().copy( material ); |
114 | | - material2b.premultipliedAlpha = true; |
115 | | - material2b.side = THREE.BackSide; |
116 | | - |
117 | | - mesh1 = new THREE.Mesh( geometry, material1 ); |
| 106 | + mesh1 = new THREE.Mesh( geometry, material ); |
118 | 107 | mesh1.position.x = - 30.0; |
119 | 108 | scene.add( mesh1 ); |
120 | 109 |
|
121 | | - let mesh = new THREE.Mesh( geometry, material1b ); |
122 | | - mesh.renderOrder = - 1; |
123 | | - mesh1.add( mesh ); |
124 | | - |
125 | | - mesh2 = new THREE.Mesh( geometry, material2 ); |
| 110 | + mesh2 = new THREE.Mesh( geometry, material ); |
126 | 111 | mesh2.position.x = 30.0; |
127 | 112 | scene.add( mesh2 ); |
128 | 113 |
|
129 | | - mesh = new THREE.Mesh( geometry, material2b ); |
130 | | - mesh.renderOrder = - 1; |
131 | | - mesh2.add( mesh ); |
132 | | - |
133 | 114 | // |
134 | 115 |
|
135 | 116 | stats = new Stats(); |
|
148 | 129 | gui.addColor( params, 'color' ) |
149 | 130 | .onChange( function () { |
150 | 131 |
|
151 | | - material1.color.set( params.color ); |
152 | | - material2.color.set( params.color ); |
153 | | - material1b.color.set( params.color ); |
154 | | - material2b.color.set( params.color ); |
| 132 | + material.color.set( params.color ); |
155 | 133 |
|
156 | 134 | } ); |
157 | 135 |
|
158 | 136 | gui.add( params, 'transmission', 0, 1, 0.01 ) |
159 | 137 | .onChange( function () { |
160 | 138 |
|
161 | | - material1.transmission = material2.transmission = params.transmission; |
162 | | - material1b.transmission = material2b.transmission = params.transmission; |
| 139 | + material.transmission = params.transmission; |
163 | 140 |
|
164 | 141 | } ); |
165 | 142 |
|
166 | 143 | gui.add( params, 'opacity', 0, 1, 0.01 ) |
167 | 144 | .onChange( function () { |
168 | 145 |
|
169 | | - material1.opacity = material2.opacity = params.opacity; |
170 | | - material1b.opacity = material2b.opacity = params.opacity; |
| 146 | + material.opacity = params.opacity; |
171 | 147 |
|
172 | 148 | } ); |
173 | 149 |
|
174 | 150 | gui.add( params, 'metalness', 0, 1, 0.01 ) |
175 | 151 | .onChange( function () { |
176 | 152 |
|
177 | | - material1.metalness = material2.metalness = params.metalness; |
178 | | - material1b.metalness = material2b.metalness = params.metalness; |
| 153 | + material.metalness = params.metalness; |
179 | 154 |
|
180 | 155 | } ); |
181 | 156 |
|
182 | 157 | gui.add( params, 'roughness', 0, 1, 0.01 ) |
183 | 158 | .onChange( function () { |
184 | 159 |
|
185 | | - material1.roughness = material2.roughness = params.roughness; |
186 | | - material1b.roughness = material2b.roughness = params.roughness; |
| 160 | + material.roughness = params.roughness; |
187 | 161 |
|
188 | 162 | } ); |
189 | 163 |
|
190 | 164 | gui.add( params, 'envMapIntensity', 0, 1, 0.01 ) |
191 | 165 | .name( 'envMap intensity' ) |
192 | 166 | .onChange( function () { |
193 | 167 |
|
194 | | - material1.envMapIntensity = material2.envMapIntensity = params.envMapIntensity; |
195 | | - material1b.envMapIntensity = material2b.envMapIntensity = params.envMapIntensity; |
| 168 | + material.envMapIntensity = params.envMapIntensity; |
196 | 169 |
|
197 | 170 | } ); |
198 | 171 |
|
|
0 commit comments