topical media & game development

talk show tell print

mobile-query-three-plugins-cannonjs-examples-pool.htm / htm



  <!doctype html><title>Minimal tQuery Page</title>
  <script src="../../../build/tquery-bundle-require.js"></script>
  <script src="../vendor/cannon.js/build/cannon.js"></script>
  <script src="../tquery.world.cannonjs.js"></script>
  <script src="../tquery.object3d.cannonjs.js"></script>
  <body><script>
  require(['tquery.poolball', 'tquery.shadowmap', 'tquery.deviceorientation'], function(){
          var world        = tQuery.createWorld().boilerplate().start()
                                  .addCannonjs()
                                  .shadowMapEnabled(true)
  
          world.tCamera().position.z        = 20;
  
          // put some lights
          tQuery.createAmbientLight().addTo(world).color(0x444444);
          tQuery.createDirectionalLight().addTo(world).position(3,3,3)
                  .castShadow(true)
                  .shadowDarkness(0.4)
                  .shadowMap(512*2,512*2)
                  .shadowCamera(6, -6, 5, -5, 0.1, 20)
                  //.shadowCameraVisible(true)
  
          var physicsWorld= world.cannonjsWorld();
          physicsWorld.gravity.set(0,-9.8,0);
          physicsWorld.solver.iterations = 10;
  
          var ground        = tQuery.createCube(30,1,30).addTo(world)
                                  .translateY(-5)
                                  .addCannonjs({
                                                  mass        : 0
                                          }).back()
                                  .setLambertMaterial()
                                          .color(0x0000ff)
                                          .map('../../assets/images/water.jpg')
                                          .back()
                                  .receiveShadow(true)
          var body        = ground.cannonjs().body()
          physicsWorld.add(body);
              
              setInterval(function(){
                  var object3D        = tQuery.createSphere().addTo(world)
                                          .addCannonjs().back()
                                          .castShadow(true)
                  var body        = object3D.cannonjs().body()
                  physicsWorld.add(body);
                  
                  body.position.set(Math.random()*2-1,5,Math.random()*2-1);
                  //body.angularVelocity.set(0,0,0);
                      
              }, 1000)
  });
  </script></body>


(C) Æliens 04/09/2009

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author.