繁体   English   中英

为什么Sprite Kit SKNode会公开zRotation,xScale和yScale而不是简单地进行转换?

[英]Why does Sprite Kit SKNode expose zRotation, xScale and yScale instead of simply a transform?

Sprite Kit依赖于zRotation,xScale和yScale而不是简单的transform属性。 是因为Apple需要旋转和比例值来以更高的性能计算物理量吗?

还是为什么他们不仅仅显示变换属性,而不是显示单独的旋转和缩放属性?

因为他们将自己置于(大多数)潜在用户的心态中:

WTF是一种转换???

哎呀,数学!

为什么不只是旋转,位置和比例属性???

为什么这必须这么难?

雪碧套件很烂!!! 1

对于除了少数程序员和数学家之外的任何人,这些属性自然都表示为旋转,比例,位置。 每个人都可以理解它们,每个人都可以使用它们,并且用来对其进行转换的数学运算十分简单,并有广泛的文献记载,即,绕着具有cos(x)/ sin(y)的点旋转。 三角学是可管理的。

那些想要使用变换的人将发现在将这些属性与变换之间相互转换没有困难。 变换是一个高级概念,功能更强大,但也更难使用。

现在告诉变形侠,他们将不得不使用原始四元数进行所有计算。 同样的事情,只是更高层次。 ;)

其他方面:

  • CGTransform API既不是Objective-C也不是ARC
  • 物理引擎(Box2D)也没有变换的概念
  • cocos2d也没有转换属性(它们仅在内部使用),Sprite Kit是在cocos2d之后建模的。
  • 变换在其他2D渲染引擎中也不常用

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM