基本概念この章では、あなたが既にCocos2d-xを使い始め、念願のゲーム開発の準備ができていることを想定しています。クロスプラットフォームのゲームエンジンです。ゲームエンジンとは、全てのゲームに必要な共通機能を提供するソフトウェアのことです。ことを「ゲームエンジン」と呼ぶことにします。ゲームエンジンには、使用することで開発速度をスピードアップでき、自家製エンジンよりもパフォーマンスが良くなる多くのコンポーネントが含まれています。通常ゲームエンジンは、レンダラー・2D/3Dグラフィックス・衝突検出・物理エンジン・音声・コントローラーサポート・アニメーションなどのコンポーネントの一部もしくは全てによって構成されています。ゲームエンジンは通常マルチプラットフォームをサポートしているので、ゲームを開発してそれを複数のプラットフォームに提供する作業が手間を一切をかけずに簡単に行えます。ゲームエンジンなので、クロスプラットフォームの携帯およびデスクトップゲームを開発するための簡略化されたAPIが実装されています。大量の仕事をさせたりわずかな仕事をさせたりできます。オブジェクト、その多くの機能が用意されています。ゲーム制作に必要なものが全て含まれています。included.メインコンポーネント最初は圧倒されるかもしれませんが、Cocos2d-xでの開発は簡単です。詳細を見る前に、Cocos2d-xで使用されている概念をいくつか理解する必要があります。いったオブジェクトです。あなたの好きなどのゲームでも、これらのコンポーネントを全て何らかの形でみることができるでしょう!それでは実際に見てみましょう。以下の画面はあなたがこれまでにプレイしたことのある非常に有名なゲームに少し似ているかもしれません。:下の画像も見てください、スクリーンショットを区切って、画面を構成しているコンポーネントを識別しています。labelsが表示されており、これらの機能は全てCocos2d-xに実装されています。ゲーム設計ドキュメントのいくつかを見てください。あなたのゲームで使用しているコンポーネントが何なのかを分かります。上記のものを同じコンポーネントのはずです。Directorは処理の流れを制御し、処理を行うべき受信者に何をするのか指示を出します。あなた自身のことはエグゼクティブプロデューサーとして考えてください。切り替えと遷移を行うことです。以下に、代表的なゲームの流れの例があります。Scene遷移の制御を行います。:あなたのゲームのディレクターはあなたです。何がいつどのように起きるかはあなたが決めます。charge!Sceneあなたのゲームでは、おそらくメインメニュー、いくつかのステージ、エンディングシーンを実装したいでしょう。あなたのお気に入りに映画で考えると、映画は複数のシーンや個別のストーリーラインに分けることができます。これと同じ思考プロセスをゲームに適用した場合、どんなにシンプルなゲームでも少なくとも数シーンは必要ということが分かります。Sceneになります。このシーンはいくつかのパーツによって構成されており、それらパーツ全てが組み合わさることによって我々の目の前にスタート画面が表示されています。rendererによって描写されます。スプライトとその他オブジェクトを画面に描写する処理を司ります。graphについて少し説明する必要があります。sceneを視覚的に配置するためのデータ構造です。オブジェクトを含んでいます。これは複雑なように感じるかもしれません。あなたに代わってCocos2d-xが大抵の処理を行うのに、なぜこの技術の詳細を理解する必要があるのか疑問に思っているかもしれません。レンダラーによってSceneがどのように描写されるのかを理解することは本当に重要なのです。ゲームにノードやスプライトやアニメーションを追加したら、それが想定どおりに描写されているかを確認したいことでしょう。大したことありません。紙に書き出して精査すれば、きっと簡単に間違いを見つけることができるでしょう。ツリーをたどることができます。アルゴリズムを使用しています。中間順では巡回したツリーの左側へ行き、ルートノードまで行き、それからツリーの右側へ行きます。graphではそれが最前面に表示されます。オブジェクトが使われており、あなたはそれが何なのかを知っているかもしれませんし、知らないかもしれません。スプライトとは、画面上を動き回るブジェクトです。あなたはそれらを操作することができます。あなたが作成するゲームにおいて、メインキャラクターにはおそらくスプライトを使うことになるでしょう。あなたは、全てのグラフィカルなオブジェクトはSpriteではないのか?と考えているかもしれません。あなたがオブジェクトを画面上で動かす場合のみ、それはスプライトということになります。Nodeかを指し示してみましょう:Spriteは全てのゲームにおいて重要です。プラットフォーム・ゲームを作成する際に、あなたはおそらく何らかの画像を使用して作成されたメインキャラクターを用意するでしょう。ような設定可能なプロパティを持っています。0));それでは、各プロパティについて説明しましょう。この章で使っているサンプルコードから出来上がった、以下のスクリーンショットで考えてみましょう。位置が元の位置から新たに設定した位置に変わっていることに注意してください。回転していることが分かります。変化していることが分かります。pointの値を持っています。pointについてはまだ説明していなかったので、いい機会です。spriteの位置を設定する時に基礎座標として使用される部分を設定するものだと考えることができます。0));そうすると、スプライトの左下隅がsetPosition()で設定する基準位置として使用されます。それでは、実際に実行してこれらのいくつかを見てみましょう:各画像の赤点を見てください。Nodesの位置を決める際にとても役立つということが分かったでしょう。動的に変更することもできます。Spriteはあらゆる部分を微調整することが可能です。オブジェクトを追加することは、必要な作業の一部にしか過ぎません。オブジェクトは全てのゲームにおいて不可欠なものです。オブジェクトを変化させることができます。Node上で実行するActionの連鎖を作成することさえ可能です。プロパティが変更可能です。Scaleがあります。Actionsを使用しています。複数のActionの制御もいくつかの方法で行うことができます。オブジェクトのことです。手間をかけずにこれを制御することができます。Spawnと呼ばれています。オブジェクトを受け取り、それらを同時に実行します。関係を使用しています。これは、親ノードのプロパティや変更はその子へも適用されるということを意味します。変更すると子のscaleも変更されます。2.0親への全ての変更が子へ伝わるわけではありません。...)にのみ影響を与えるだけで、子の位置には影響しません。(0,0)に追加されます。parent.ログ機能を使ってメッセージを出力する時には、アプリを実行している時に情報取得やデバッグのためにコンソールにメッセージを出力したいことがあるかもしれません。log()を使用します。std::coutを使うことも可能です。方が複雑な出力をより簡単に書式化することができます。概念について多くのことを見てきました。ここで深呼吸をしましょう。心配しないでください。あなたのアイディアを一歩一歩ゆっくりと形にしていけば良いのです。プログラミングについての技術は一晩で学べるようなスキルではありません。これには何度も練習して理解することが必要です。フォーラムもあなたの疑問の助けになるということを忘れないでください。本サイトはCocos2d-xのサイトを非公式に翻訳したものであり、Cocos2d-xに関する著作権は全てそちらに帰属しています。誤訳が判明した場合、より分かりやすい言い回しが見つかった場合、原文が変更された場合などにより、本サイトの内容は予告なく変更されることがあります。誤訳についての指摘や未翻訳部分についての助言など、ご意見についてはこちらへいただけると助かります。翻訳の内容には誤りがある可能性があります。本サイトの記述内容によって不利益が発生した場合も、サイト管理人は一切の責任を負いません。