|
@@ -53,6 +53,13 @@
|
|
|
|
|
|
var torusKnot;
|
|
|
|
|
|
+ var params = {
|
|
|
+ color: '#ffffff',
|
|
|
+ scale: 4,
|
|
|
+ flowX: 1,
|
|
|
+ flowY: 1
|
|
|
+ };
|
|
|
+
|
|
|
init();
|
|
|
animate();
|
|
|
|
|
@@ -102,9 +109,11 @@
|
|
|
// water
|
|
|
|
|
|
water = new THREE.Water( 20, 20, {
|
|
|
+ color: params.color,
|
|
|
+ scale: params.scale,
|
|
|
+ flowDirection: new THREE.Vector2( params.flowX, params.flowY ),
|
|
|
textureWidth: 1024,
|
|
|
- textureHeight: 1024,
|
|
|
- scale: 4
|
|
|
+ textureHeight: 1024
|
|
|
} );
|
|
|
|
|
|
water.position.y = 1;
|
|
@@ -151,6 +160,35 @@
|
|
|
renderer.setPixelRatio( window.devicePixelRatio );
|
|
|
document.body.appendChild( renderer.domElement );
|
|
|
|
|
|
+ // dat.gui
|
|
|
+
|
|
|
+ var gui = new dat.GUI();
|
|
|
+
|
|
|
+ gui.addColor( params, 'color' ).onChange( function( value ) {
|
|
|
+
|
|
|
+ water.material.uniforms.color.value.set( value );
|
|
|
+
|
|
|
+ } );
|
|
|
+ gui.add( params, 'scale', 1, 10 ).onChange( function( value ) {
|
|
|
+
|
|
|
+ water.material.uniforms.config.value.w = value;
|
|
|
+
|
|
|
+ } );
|
|
|
+ gui.add( params, 'flowX', - 1, 1 ).step( 0.01 ).onChange( function( value ) {
|
|
|
+
|
|
|
+ water.material.uniforms.flowDirection.value.x = value;
|
|
|
+ water.material.uniforms.flowDirection.value.normalize();
|
|
|
+
|
|
|
+ } );
|
|
|
+ gui.add( params, 'flowY', - 1, 1 ).step( 0.01 ).onChange( function( value ) {
|
|
|
+
|
|
|
+ water.material.uniforms.flowDirection.value.y = value;
|
|
|
+ water.material.uniforms.flowDirection.value.normalize();
|
|
|
+
|
|
|
+ } );
|
|
|
+
|
|
|
+ gui.open();
|
|
|
+
|
|
|
//
|
|
|
|
|
|
controls = new THREE.OrbitControls( camera, renderer.domElement );
|