嗨,我不确定我是否理解这是如何运作的。 api声明它将局部坐标转换为世界空间。
让我说我有三个精灵。 spriteA添加到场景,spriteB添加到spriteA。并且spriteC添加到spriteB。
- Scene
- spriteA
- spriteB
- spriteC
我想将spriteC origin转换为world
如果我这样做:[self convertToWorldSpace:[spriteC CGPointZero]];
或者:[spriteA convertToWorldSpace:[spriteC CGPointZero]];
或者:[spriteB convertToWorldSpace:[spriteC CGPointZero]];
甚至[spriteC convertToWorldSpace:[spriteC CGPointZero]];
他们不应该给出相同的答案,因为它们都被转换为世界坐标吗?或者我是从一个节点空间到父节点空间......直到我到达世界空间。
在世界坐标中查看spriteC位置的正确答案是什么?
答案 0 :(得分:4)
要在spriteC
上找到世界空间原点,您可以将精灵作为父级,在这种情况下为spriteB
,并询问其子级的世界空间:
[spriteB convertToWorldSpace:[spriteC CGPointZero]];
答案 1 :(得分:1)
[spriteC convertToWorldSpace:CGPointZero];
由于Kazuki回答,但CGPointZero是全球性的。
答案 2 :(得分:0)
[spriteC convertToWorldSpace:[spriteC CGPointZero]];
convertToWorldSpace:方法将一个节点空间转换为父节点空间......直到它到达世界空间。