How to Create Bouncing Ball on MouseClick?鼠标点击创建弹跳小球
要实现鼠标点击掉落小弹球,
实际上就是鼠标点击创建小球 和 cannon物理引擎的结合,
需要注意的是,每一个新建的小球都需要绑定一个CANNON.Body,
需要在创建的同时留好数据的访问入口,
鼠标时间控制小球创建
1 | const mouse = new THREE.Vector2() |
材质添加
1 | const world = new CANNON.World({ |
动画控制
1 | const timeStep = 1/60 |
阴影锯齿
需要注意的是:
如果不做任何处理,此处的球体阴影会因为锯齿变得参差不齐:
渲染器创建时有抗锯齿选项antialias,
设置为true的话抗锯齿效果会好一些:
1 | const renderer = new THREE.WebGLRenderer({antialias: true}); |
看视频作者的操作,是将光源的shadow.mapSize属性进行放大:
1 | pointLight.shadow.mapSize.width = 1024 |
效果确实好了很多。