為什麼cocos2d x用的是右手座標系,旋轉角度卻是以順時針為正?

時間 2021-05-05 15:00:22

1樓:minggo

確實是因為從 cocos2d-iphone 移植過來保持相容性造成的,然後這個問題也成了歷史的一部分,如果修改的話會破壞相容性,只能是在大版本公升級時修復了。

2樓:Yang-z

無論出於什麼原因,無論是否有什麼考慮,聲稱卡迪爾右手系,且z軸指向螢幕外的旋轉正方向居然是順時針,這絕對是個bug。標準就是標準。這個問題前期也困擾了我很久。

我也曾發帖在cocos2dx社群詢問

Does cocos2dx 3.0 use Right-handed coordinates?

但無人回覆。我也在社群發過一篇文章簡述了左手系和右手系的一些例子,以及其旋轉表現(文章可能被刪了,找不到了),然後再分析cocos2dx,居然既不是左手系也不是右手系。

本人猜想這可能是cocos2dx的開發員為相容早期一些flash素材才這樣做的(但flash也是標準右手系的,座標原點在左上角,y軸從上指向下方,z軸指向螢幕裡),cocos2dx取了flash的旋轉正方向,但忽略了flash的z軸是指向螢幕裡的,結果造就了cocos2dx不倫不類的座標體系。

這帶來的問題會比較多,因為打破了右手系的規則,尤其是在引入其他右手系物件時,必須手動將繞z旋轉角度取反傳遞給cocos2dx。

並非你在鑽牛角尖,這是乙個很嚴肅的問題!如同改變加減乘除基礎運算的規則一樣,讓整個數學體系變得不適用。希望cocos2dx開發人員對座標系有準確的認識,讓中國產能真正到達工業標準。

cocos2d x 的缺點有那些

大概我是個弱智新手,折騰一下午都沒實現精靈a動作執行完畢後精靈b動作開始。一開始是不熟悉lambda表示式,捕獲用的引用導致失敗。後來正常,用sequence仍然無法實現 a動作結束後,b動作開始 可能只能強行給b加delay了吧。 不敢大放厥詞,寫了一些都刪了。畢竟自己不僅技術水平低,而且主要用的...

cocos2dx建立專案為什麼要用cmd命令列建立?

Leon 一般來說,有整合開發環境的專案 IDE 的專案,一般都可以在IDE裡面建立工程,比如Unity或者Unreal。而cocos2d x只是一套框架,並沒有對應的IDE,所以為了建立專案,就有了一套命令列指令碼用來從命令列來建立工程。如果以後有一日cocos2d x有了自己的IDE,比如開發中...

Cocos2d x 不是開源專案麼?為什麼觸控科技對外說是自己旗下的?

郭凜 觸控官方介紹說過cocos2d x是由他們投資的 http www.觸控科技投資並支援的2D 遊戲引擎 Cocos2D X在中國擁有70 的開發者認可和使用比例。此外,Cocos2D X在全球199個國家地區有40萬開發者使用,而Cocos2D X已經成為全球使用率最高的手機遊戲引擎之一,在中...