未验证 提交 fc681563 编写于 作者: M Michael Herzog 提交者: GitHub

Exampels: Clean up. (#21688)

上级 342946c8
......@@ -378,7 +378,7 @@
for ( let v = 0; v < triangles * 3; v ++ ) {
const triangleIndex = ~ ~ ( v / 3 );
const birdIndex = ~ ~ ( triangleIndex / trianglesPerBird )
const birdIndex = ~ ~ ( triangleIndex / trianglesPerBird );
const x = ( birdIndex % WIDTH ) / WIDTH;
const y = ~ ~ ( birdIndex / WIDTH ) / WIDTH;
......@@ -468,18 +468,18 @@
const valuesChanger = function () {
velocityUniforms[ "separationDistance" ].value = effectController.separation;
velocityUniforms[ "alignmentDistance" ].value = effectController.alignment;
velocityUniforms[ "cohesionDistance" ].value = effectController.cohesion;
velocityUniforms[ "freedomFactor" ].value = effectController.freedom;
velocityUniforms[ 'separationDistance' ].value = effectController.separation;
velocityUniforms[ 'alignmentDistance' ].value = effectController.alignment;
velocityUniforms[ 'cohesionDistance' ].value = effectController.cohesion;
velocityUniforms[ 'freedomFactor' ].value = effectController.freedom;
};
valuesChanger();
gui.add( effectController, "separation", 0.0, 100.0, 1.0 ).onChange( valuesChanger );
gui.add( effectController, "alignment", 0.0, 100, 0.001 ).onChange( valuesChanger );
gui.add( effectController, "cohesion", 0.0, 100, 0.025 ).onChange( valuesChanger );
gui.add( effectController, 'separation', 0.0, 100.0, 1.0 ).onChange( valuesChanger );
gui.add( effectController, 'alignment', 0.0, 100, 0.001 ).onChange( valuesChanger );
gui.add( effectController, 'cohesion', 0.0, 100, 0.025 ).onChange( valuesChanger );
gui.close();
initBirds();
......@@ -501,8 +501,8 @@
fillPositionTexture( dtPosition );
fillVelocityTexture( dtVelocity );
velocityVariable = gpuCompute.addVariable( "textureVelocity", document.getElementById( 'fragmentShaderVelocity' ).textContent, dtVelocity );
positionVariable = gpuCompute.addVariable( "texturePosition", document.getElementById( 'fragmentShaderPosition' ).textContent, dtPosition );
velocityVariable = gpuCompute.addVariable( 'textureVelocity', document.getElementById( 'fragmentShaderVelocity' ).textContent, dtVelocity );
positionVariable = gpuCompute.addVariable( 'texturePosition', document.getElementById( 'fragmentShaderPosition' ).textContent, dtPosition );
gpuCompute.setVariableDependencies( velocityVariable, [ positionVariable, velocityVariable ] );
gpuCompute.setVariableDependencies( positionVariable, [ positionVariable, velocityVariable ] );
......@@ -510,16 +510,16 @@
positionUniforms = positionVariable.material.uniforms;
velocityUniforms = velocityVariable.material.uniforms;
positionUniforms[ "time" ] = { value: 0.0 };
positionUniforms[ "delta" ] = { value: 0.0 };
velocityUniforms[ "time" ] = { value: 1.0 };
velocityUniforms[ "delta" ] = { value: 0.0 };
velocityUniforms[ "testing" ] = { value: 1.0 };
velocityUniforms[ "separationDistance" ] = { value: 1.0 };
velocityUniforms[ "alignmentDistance" ] = { value: 1.0 };
velocityUniforms[ "cohesionDistance" ] = { value: 1.0 };
velocityUniforms[ "freedomFactor" ] = { value: 1.0 };
velocityUniforms[ "predator" ] = { value: new THREE.Vector3() };
positionUniforms[ 'time' ] = { value: 0.0 };
positionUniforms[ 'delta' ] = { value: 0.0 };
velocityUniforms[ 'time' ] = { value: 1.0 };
velocityUniforms[ 'delta' ] = { value: 0.0 };
velocityUniforms[ 'testing' ] = { value: 1.0 };
velocityUniforms[ 'separationDistance' ] = { value: 1.0 };
velocityUniforms[ 'alignmentDistance' ] = { value: 1.0 };
velocityUniforms[ 'cohesionDistance' ] = { value: 1.0 };
velocityUniforms[ 'freedomFactor' ] = { value: 1.0 };
velocityUniforms[ 'predator' ] = { value: new THREE.Vector3() };
velocityVariable.material.defines.BOUNDS = BOUNDS.toFixed( 2 );
velocityVariable.wrapS = THREE.RepeatWrapping;
......@@ -549,11 +549,11 @@
// For Vertex and Fragment
birdUniforms = {
"color": { value: new THREE.Color( 0xff2200 ) },
"texturePosition": { value: null },
"textureVelocity": { value: null },
"time": { value: 1.0 },
"delta": { value: 0.0 }
'color': { value: new THREE.Color( 0xff2200 ) },
'texturePosition': { value: null },
'textureVelocity': { value: null },
'time': { value: 1.0 },
'delta': { value: 0.0 }
};
// THREE.ShaderMaterial
......@@ -652,22 +652,22 @@
if ( delta > 1 ) delta = 1; // safety cap on large deltas
last = now;
positionUniforms[ "time" ].value = now;
positionUniforms[ "delta" ].value = delta;
velocityUniforms[ "time" ].value = now;
velocityUniforms[ "delta" ].value = delta;
birdUniforms[ "time" ].value = now;
birdUniforms[ "delta" ].value = delta;
positionUniforms[ 'time' ].value = now;
positionUniforms[ 'delta' ].value = delta;
velocityUniforms[ 'time' ].value = now;
velocityUniforms[ 'delta' ].value = delta;
birdUniforms[ 'time' ].value = now;
birdUniforms[ 'delta' ].value = delta;
velocityUniforms[ "predator" ].value.set( 0.5 * mouseX / windowHalfX, - 0.5 * mouseY / windowHalfY, 0 );
velocityUniforms[ 'predator' ].value.set( 0.5 * mouseX / windowHalfX, - 0.5 * mouseY / windowHalfY, 0 );
mouseX = 10000;
mouseY = 10000;
gpuCompute.compute();
birdUniforms[ "texturePosition" ].value = gpuCompute.getCurrentRenderTarget( positionVariable ).texture;
birdUniforms[ "textureVelocity" ].value = gpuCompute.getCurrentRenderTarget( velocityVariable ).texture;
birdUniforms[ 'texturePosition' ].value = gpuCompute.getCurrentRenderTarget( positionVariable ).texture;
birdUniforms[ 'textureVelocity' ].value = gpuCompute.getCurrentRenderTarget( velocityVariable ).texture;
renderer.render( scene, camera );
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册