2013-12-20 5 views
7

Cocos2d-x 3.0 alphaがリリースされました。 cocos2dx-2に比べて何が改善されましたか?cocos2d-x 2.xよりcocos2d-x 3.0を使用する利点は何ですか?

機能のリストは非常に重要ですが、パフォーマンスの面でそこに新しい制限/改善点は何ですか?

あなたは本当の性能の向上、発展パターン、APIやサポートに気づいたことがありますか?

+2

公式サイトのリリースノートを読むべきでしょう。彼らはそこにあるすべてのことを言いました。 –

答えて

10

私はこれを最近使用してきましたが、主な相違点はすべてが名前空間になっていることです。したがって、目的のcパターンから来た接頭辞の名前を扱う必要はないので、cocos2d :: CCPointの代わりにPoint(特に列挙型の場合、(kCCTexture2DPixelFormat_RGBA8888の代わりにTexture2D :: PixelFormat :: RGBA8888))。また

イベントのもののいくつかは、今のC++ 11件のラムダをサポートしています。

変化のより完全なリストはここで見つけることができます:http://www.cocos2d-x.org/wiki/Release_Notes_for_Cocos2d-x_v300

それを自分自身を使用しての大部分は、ちょうどより多くのC++のような、代わりのようなObjective-Cのを感じるように作られています。

2

Cocos2d-xの2.1.5と2.2の間で起こった変化の一つは、Xcodeでプロジェクトのテンプレートの除去(プロジェクトテンプレートがなどVSに存在していた場合、私は知らない)でした。

新しいビルドシステムは、(少なくともMacの場合)Cocos2d-xのインストールの下でプロジェクトを作成し、プロジェクトファイルは、それらを参照するように見えるところです。これにより、手を動かすことなくプロジェクトを移動することが非常に困難になります。また、システムをどのように設定するか(例えば、svnのようなルート/ツリーやgitのような "どこにでもドロップ")に応じて、設定管理をより苦痛にさせます。

また、Cocos2d-xのライブラリは、そのようライブラリーを構築しています。これまでのインカネーションでは、プロジェクトに直接配置されました。一方で、ルートライブラリコードを変更しなければ、これは理にかなっています。一方、特定のプロジェクトのために時には微調整を行うと、それに依存するすべてのプロジェクトが変更されてしまいます。陰陽。

私はまだCocos2d-xに非常に肯定的です。私はまだ3.0または2.2にアップグレードしていない。それがもう少し成熟すると、私は変更に関係なく、切り替えます。私が必要とするものについては、まだ仕事が完了することは間違いないと確信しています。

+0

Macでv3を始めようとしたばかりの更新コメント - 「cocos new」コマンドラインは、指定したディレクトリでプロジェクトを非常にスムーズに生成します。 –

+0

@AndyDent私は最近、プロジェクトを3.0から3.2にアップグレードしました。私は現在3.2で積極的に取り組んでいます。これまでのところ「OK」と思われます。まだニュアンスは分かっていませんが、https://www.youtube.com/watch?v=HWiiExd16Csを入手して稼働させることができました。 – FuzzyBunnySlippers

+1

フィードバックいただきありがとうございます。私は休暇中のXCode 4.6(旧MBP)に悩まされていますので、v3がビルドされていないのでv2.2にとどまらず、あなたのフィードバックに基づいて3.2(3.3rc0をダウンロードしました)を試します。 –

3

私はそのC++ 11

  1. 自動
  2. ラムダ

を考えると、それは私が切り替えていると、それはかなり安定して見つけていたプレフィックスCC

4

の不要な使用を持っていません。主な利点これまで...

  • レアルボタン、代わりのメニュー
  • リアルタイムspritesheets
  • SpriteBatchNodesはもはや推奨されていると私は
  • を最適化していないところ引き分けの低下を呼び出して見ました
  • より少ない目的のCパターン。
  • よりモダンです。 'CC'の代わりに名前空間。 C++ 11。

    • のEventListenerパターン:
    • より多くのプラットフォームは、私にとって

    主な欠点をサポート。イベントをトリガーしたNode以外のオブジェクトに影響を与えるようにタッチ入力を取得する方法を理解できません。

  • デバッグに多くのテキストのみのボタンを使用しており、レイアウトが難しいです。
  • ドキュメントとサンプルコードが不足しています。たとえば、レイアウトクラスをどこで使用するかのドキュメントは見つかりませんでした。

多くの作業が移植されていますが、古いコードベースを維持することになるため、私たちは危険にさらすことに決めました。私たちのゲームを移植するには、およそ5人日かかりました。ゲームは安定していて、ココスのバグに遭遇しませんでした。

+3

私はEventListenerパターンについて間違っていて、ラムダ式を理解できませんでした。パターンは素晴らしいです。 – ohthepain

関連する問題