Creator在去掉Skew前

Creator在去掉Skew前,官方能不能写一个代替Skew的3D实现,我实在是找不到方法实现呀
如题。字数补丁

自顶
ZSBD
ZSBD
ZSBD

顶上去,我们用skew来实现2D角色的阴影,官方如果要去掉,应该给一个代替的例子。

skew 和 3d 节点中的 rotation 和 scale 有冲突,并且在 3D 世界中的需求比较少见,所以为了平衡矩阵运算的复杂度(让 worldMatrix 计算更简单),我们在 3.0 中不会有 skew。

如果项目需要,3.0 可以自己设置 matrix,大致需要三个步骤

  1. 获取本地 node.position, node.rotation, node.scale

  2. 通过类似 2.x 的计算方法计算出本地 matrix

    https://github.com/cocos-creator/engine/blob/v2.4.3-release/cocos2d/core/CCNode.js#L704

  3. 通过 node.matrix = matWithSkew 来设置

可以封装一个函数来让使用更方便

1赞

使用这个方法实作,编辑器效果正常,浏览器预览场景中动态修改SkewX or SkewY值无法看见动态修改Skew的效果
版本cocos creator 2.3.4

Test3DSkew.js.zip (1.6 KB)