前言
今天我们来介绍下3D中的世界坐标系和局部坐标系的区别。
是什么?
任何一个模型都有自己的坐标,它的坐标又分为局部坐标和世界坐标。
什么是局部坐标?
模型自身的坐标
什么是世界坐标?
模型自身.position和所有父对象.position累加的坐标
使用场景:
什么场景使用局部坐标?
1. 模型变换:当对模型进行平移、旋转或缩放等变换操作时,这些变换通常是相对于模型的局部坐标系进行的。例如,如果你想将一个立方体绕自身的中心旋转,你会将旋转操作应用于立方体的局部坐标系
2.动画:在3D动画中,模型通常会进行复杂的变形和动作。这些动作往往是相对于模型的局部坐标系进行的。例如,一个人物角色的手臂抬起,这个动作是相对于手臂的局部坐标系进行的。
3. 局部特效:某些特效可能只应用于模型的一部分,而不是整个场景。例如,在一个火焰特效中,火焰可能只位于模型的某个区域,而其他部分保持不变。在这种情况下,特效会相对于模型的局部坐标系进行渲染和处理。
什么时候用世界坐标系?
- 场景布局:当你在3D场景中摆放多个模型时,你通常会使用它们的世界坐标来确定它们在场景中的位置和相对关系。通过使用世界坐标,你可以精确地放置和排列模型,以创建所需的场景布局。
2. 光照和阴影:在进行光照和阴影计算时,通常需要将模型的位置和方向转换到世界坐标系中。这样可以确定光源的位置、光的照射方向以及模型的投影位置,以产生逼真的光照和阴影效果。
3. 碰撞检测:当进行碰撞检测时,通常会将模型的位置和边界框转换到世界坐标系中。这样可以与其他模型或碰撞体进行准确的碰撞检测,以实现物体之间的交互和碰撞效果。
4. 相机视图:在相机的视角中,模型的位置和方向也是基于世界坐标系进行计算和转换的。这样可以确定相机的位置和朝向,从而呈现出正确的观察视角和透视效果。
有什么区别?
1. 世界坐标是全局坐标系,描述对象相对于整个场景的位置和方向,而局部坐标是对象自身的坐标系,描述对象内部的位置和方向。
2. 世界坐标是固定的,不受对象的变换影响,而局部坐标是相对于对象自身的,随着对象的变换而改变。
- 世界坐标用于全局操作,如场景布局、光照和相机视图,而局部坐标用于对象的局部操作,如变换、动画和局部特效。
总结
这部分的内容主要是偏理论多一点,如有错误之处,欢饮大家留言指出,谢谢大家了。