threejs中变换相关的知识点总结

2023-12-22 16:18:11

一, 前言

在threejs的使用过程中经常会遇到需要移动旋转缩放之类的变换的情况,而可以实现这一目的的方法也有很多,如: translate,scale,rotateX,applyMatrix4,position.set,rotateOnWorldAxis… 等等, 很多方法可供选择。有的是作用在geometry上的, 有的是作用在mesh上的。那么它们之间到底有什么区别,看似达到了相同的变换效果,但实际上有什么本质的区别呢?如果不总结一下是很容易混淆的。

首先我们将geometry和mesh对象打印出来做一个比较:

1. geometry:

在这里插入图片描述

  • 我们可以看到在 BoxGeometry 中没有与变换相关的 position, rotation, scale, matrix,matrixWorld之类的相关属性,变换的是attributes.position中存储的点位数据。因此geometry的所有变换方法的最终作用效果就是修改attributes.position中存储的点位数据,而这个数据也就是最终专递给顶点着色器的position数据。
  • </

文章来源:https://blog.csdn.net/weixin_40856652/article/details/135148575
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。