5. 练习-修改小球参数
# 练习-修改小球参数
本节课不讲解新的CannonJS知识点,算是一个练习题,就是修改小球相关参数,更像生活中乒乓球下落的感觉。
# 下落真实感问题
生活中大家看到的乒乓球,一般也就是从一两米以内位置下落,咱们上节课直接放到了100m高度,自由下落时间肯定会比较长,你会感觉感觉不太真实,当然你可以把重力加速度增加到特别大,去减少下落时间。
// 设置物理世界重力加速度
// world.gravity.set(0, -9.8, 0);
world.gravity.set(0, -1000, 0);
不过一般写CannonJS参数时候,都尽量参考物理世界的规律,重力加速度没必要过于离谱,所以可以使用下面方式,改变小球下落高度和自身尺寸,更加接近生活中的情况。
// 设置物理世界重力加速度
world.gravity.set(0, -9.8, 0);
# 修改的参数
在上节课基础上,重新修改下落高度,对比下落效果差异(原来下来高度比较高,整体观看,会感觉很慢)。
// 物理小球:对应threejs的网格小球
body.position.y = 1;
// 网格小球
mesh.position.y = 1;
小球尺寸修改,和生活乒乓球尺寸相近即可
// 物理小球
const body = new CANNON.Body({
mass: 0.03,//自由下落,这里重量不影响,是否修改无所谓
shape: new CANNON.Sphere(0.02)
});
// 网格小球
const geometry = new THREE.SphereGeometry(0.02);
相机可以距离原点更近一些
//相机
const camera = new THREE.PerspectiveCamera(30, width / height, 0.1, 3000);
// camera.position.set(292, 223, 185);
camera.position.set(3,3,3);
// 网格地面
const planeGeometry = new THREE.PlaneGeometry(2, 2);