すべてのオブジェクトの共通の機能

GDevelopゲームでは、スクリーン上に乗せる全てをオブジェクトと呼んでいます。

ゲームにオブジェクトを追加する

シーンでは、オブジェクトリストの下部にある右側の[オブジェクトの追加]ボタンをクリックするだけで、オブジェクトを追加できます。

それぞれにプロパティと目的を持つ、さまざまなタイプのオブジェクトから選択できます。

選択したオブジェクトのタイプに応じて、エディター、オブジェクトの属性、およびイベントで使用可能な機能が異なります。このページの目的はオブジェクト全般を説明することであるため、各タイプのこれらの固有のプロパティの詳細には触れません。 各タイプのオブジェクトの詳細を参照して下さい。

シーン内のオブジェクト

シーンにインスタンスを追加します

オブジェクトは、[オブジェクト]タブでオブジェクトを選択(クリック/タップ)し、シーンにドラッグしてそのオブジェクトのインスタンスを配置することで、シーンに配置できます。インスタンスは、基本的に存在するオブジェクトのコピーです。各インスタンスには、独自の変数、位置、アニメーション(スプライトオブジェクト用)、コンテンツ(テキスト用)などがあります

シーンエディターでオブジェクトを選択してドラッグすることで、オブジェクトの位置を変更できます。オブジェクトを選択し、ホワイトスケールポイントの1つをドラッグして、オブジェクトをスケーリングできます。

プロパティの変更

シーンエディターでオブジェクトを選択すると、左側のプロパティパネルに、選択したインスタンスに関する情報が表示されます。開いていない場合は、ツールバーのプロパティボタンをクリックして再度開くことができます。

位置

プロパティのX値とY値を変更することにより、選択したインスタンスの位置を正確に設定できます。

角度

角度の値を変更することにより、インスタンスの角度を設定できます。

角度は0〜360度の任意の値にすることができます。この図を見て、特定の角度の方向を確認してください。

Z オーダー

プロパティでインスタンスのZオーダー値を変更できます。

Zオーダーの目的は、インスタンスがオーバーラップするときに最初に表示されるオブジェクトを指定できるようにすることです。より正確には、異なる値を設定することで、オブジェクトが他のオブジェクトの背後にあるか前面にあるかを制御できます。2つのオブジェクトが重なっている場合、Zオーダーの値が低いオブジェクトが他のオブジェクトの背後に表示されます。

値は、負の数値と0を含む任意の整数です。

上の画像では、左側のブッシュのZオーダーは2、コインのZオーダーは1、右側のブッシュのZオーダーは0です。

レイヤー

インスタンスのレイヤーを設定できます

デフォルトでは、各GDevelopシーンには「ベースレイヤー」と呼ばれる単一のレイヤーがあります。これは、シーン内のすべてのオブジェクトの場所です。さまざまな目的のためにレイヤーを追加し、任意のレイヤーに任意のインスタンスを配置できます。たとえば、画面にコントロールを表示するレイヤー、メニュー、マップ、または背景を表示するレイヤーがあります。

位置と角度の固定(ロック)

「エディターで位置/角度をロック」ボックスにチェックマークを付けると、エディターでインスタンスを動かせないようにできます。

インスタンスがロックされると、シーンでインスタンスを選択できなくなります。シーン内で多くのオブジェクトが互いに重なり合っている場合があります。これにより、意図しないものを選択し続けるため、それらの一部を選択することが難しくなります。そのような場合、インスタンスをロックして操作します。

インスタンスパネルを開くと、ロックされたインスタンスのロックを解除できます。インスタンスパネルには、シーン内のすべてのインスタンスが表示され、リストからオブジェクトを選択します。

インスタンス変数

「変数の編集」ボタンを使用すると、選択したインスタンスの固有の変数を指定できます。
変数は基本的に、ゲーム中に比較および変更できる値(数値、テキスト)を保持するコンテナのようなものです。GDevelopにはさまざまなタイプの変数があり、特に各オブジェクトには変数を含めることができます。ゲームの実行中、シーンに存在するオブジェクトの各インスタンスには独自の変数があります。

「変数の編集」では、選択したインスタンスに固有の変数を指定できます。たとえば、シーンにGoldのボックスを表すオブジェクトがある場合、各インスタンスの「Gold」という名前の変数を変更して、異なる番号を設定できます。次に、イベントで、プレーヤーがボックスと衝突したときに、変数の値を読み取ってプレーヤーのゴールドの値に追加できます。

カスタムサイズ

プロパティパネルでカスタムサイズを有効にして、オブジェクトのサイズを変更し、カスタムの幅と高さをピクセル単位で入力できます。

オブジェクトグループ

オブジェクトグループは、オブジェクトのセットです。たとえば、「Enemies」というグループには、「Mushroom」、「Bomb」、「Dinosaur」というオブジェクトを含めることができます。その後、イベントでグループの名前を使用して、グループに含まれるすべてのオブジェクトを参照できます。

これにより、イベントを複数回繰り返すことなく、多くのオブジェクトに適用されるイベントを作成でき、ゲームのパフォーマンス、保守性、およびイベントの可読性が向上します。

グループエディターを開くには、ツールバーのグループアイコンをクリックします。

グループエディターには、シーンのすべてのグループ(およびゲームのすべてのシーンで使用できるグローバルグループも)が一覧表示されます。グループを追加するには、リストの下部にあるボタンをクリックします。

新しいグループがリストに追加されます。

  • グループの名前を変更するには、右のグループをクリックして選択し、名前の変更を選びます。
  • グループにオブジェクトを追加するには、グループをタップまたはクリックします

グループを編集するために開いたウィンドウで、下部のフィールドをクリックし、オブジェクトを選択して(またはオブジェクトの名前を入力して)グループに追加します。

変数

各オブジェクトには変数を含めることができます。変数は、情報を保存するために使用できる入れ物です。ゲームの実行中、シーンに存在するオブジェクトの各インスタンスには独自の変数があります。

変数については、 このページ を参照して下さい。

タイマー

オブジェクトは独自のタイマーを保持でき、各タイマーはシーンに存在するオブジェクトのインスタンスごとに一意になります。オブジェクトタイマーは、X秒ごとにインスタンスを作成してアクションを起動するのに役立ちます。

たとえば、古典的な使用法は、銃弾の発射をシミュレートすることです。シーンに1つの戦車がある場合は、シーンタイマーを使用して、3秒ごとにこの戦車が発砲(弾丸を作成)し、タイマーをリセットできるようにします(戦車が再び射撃できるように)

問題は、2つの戦車があり、シーンタイマーを使用する場合、両方の戦車が同じシーンタイマーを共有しているため、両方の戦車が同時に撮影することに気付くことです。2番目の戦車が独自の速度で射撃できるようにするには、互いに独立した2つの個別のタイマーが必要です。しかし、100台の戦車がある場合はどうでしょうか?インスタンスごとに1つ、100個のシーンタイマーを作成する必要はありません。

これは、オブジェクトタイマーが有用になっているときです。シーンタイマーを使用するすべての条件/アクションを、オブジェクトタイマーを使用する条件/アクションに置き換えます。ゲーム中、GDevelopは各タンクインスタンス内にタイマーを作成します。条件を使用してタイマーの値をチェックする場合、入力した数値よりも大きい秒単位の値を持つタイマーを持つインスタンスのみが選択されます。

タイマーの詳細については、こちらをご覧ください タイマー

可視性

オブジェクトの可視性は、オブジェクトが存在した後に可視にできるプロパティです。オブジェクトの表示/非表示を切り替えることができます。オブジェクトが表示されない場合、オブジェクトが存在しないことを意味しません。反対に、オブジェクトが存在しなくなった場合、オブジェクトが表示されないことを直接意味します。オブジェクトが存在する場合、オブジェクトは表示され、逆も同様です。

オブジェクトが存在し、可視性がオフになっている場合、すべてのアクションと条件は、オブジェクトが可視である場合と同じように実行されます。

イベントエディターの操作中でも

ゲーム中にイベントエディターを使用して、オブジェクトのインスタンスまたは複数のインスタンスのプロパティを変更および操作できます。これは、GDevelopでのゲーム作成の特徴です。つまり、ゲームのプレイ中にリアルタイムでオブジェクトを操作します。イベントおよびイベントエディターはこのページの範囲外であるため、基本的なゲーム作成の概念ページを参照してください。 * すべてのオブジェクトは同じ共通の機能(このページに記載されている位置、角度、すべてなど)を共有し、すべてのオブジェクトに使用できる多くの条件とアクションがあります。ここの、オブジェクトのための共通の条件/アクションの詳細をお読みください。 * オブジェクトは特定の機能を提供することもできます。たとえば、 スプライト オブジェクトにはアニメーションを含めることができ、再生中のアニメーションはアクションを使用して変更できます。