ビジュアルスクリプティングチュートリアル (Logic Bricks)
ロジックブロックの紹介
Lesson 1 of 10 • 10 XP
Keep your place in this quest
Log in or sign up for free to subscribe, follow lesson progress, and access more learning content.
このレッスンでは、Cave EngineのLogic Bricksの基本概念を学びます。Logic Bricksとは何か、どのように使用されるか、新しいLogic Brickアセットを作成する方法、そしてそれをエンティティに追加する方法を理解します。

このレッスンに沿って進めることができるLogic Bricksに関するビデオチュートリアルもあります:
Logic BricksはCave Engineのビジュアルロジックシステムです。これは、すべてのロジックをPythonで手動で記述するのではなく、ビジュアルノードベースのワークフローを使用してゲームプレイの動作を作成することを可能にします。Logic Brickはビジュアルスクリプトとして考えることができます: 接続されたノードのグループを保存し、ゲーム内で何が起こるべきかを説明します。
例えば、Logic Bricksを使用して次のようなシンプルな動作を作成できます:
- キーが押されたときにプレイヤーを移動させる
- 毎フレームオブジェクトを回転させる
- プレイヤーが近づくとドアを開く
- 何かが発生したときにサウンドを再生する
- エンティティをアクティブまたは無効にする
- シンプルな相互作用、トリガー、ゲームプレイルールを作成する
これは、Logic BricksがPythonスクリプトを完全に置き換えるわけではありません。むしろ、Cave内でロジックを作成する別の方法を提供します。多くのシンプルまたは中程度のゲームプレイ動作に関しては、Logic Bricksの方が視覚的にロジックを確認できるため、より迅速かつ理解しやすい場合があります。高度なシステムには、より多くの制御が必要な場合、Pythonスクリプトを使用することもできます。
この最初のレッスンでは、基本的なセットアップにのみ焦点を当てます: Logic Brickアセットを作成し、それをプレイヤーエンティティに接続することです。後のレッスンでは、実際のビジュアルロジックをその中に追加し始めます。
1. Logic Brickを追加する
このステップでは、Contentパネル内に新しいタイプのLogic Brickアセットを作成する方法を学びます。このアセットは、後で編集するビジュアルロジックツリーを保存します。
作成するには、Contentパネル内で右クリックし、新しいLogic Brickアセットを作成します。

アセットを作成した後は、プロジェクト内で簡単に識別し見つけられるように名前を変更しましょう。
このLogic Brickはプレイヤーによって使用されるので、Playerのようなシンプルで明確な名前に変更します。
これは小さな詳細のように見えますが、アセットに適切な名前を付けることは非常に重要です。プロジェクトが成長するにつれて、多くの異なるシーン、テンプレート、メッシュ、マテリアル、サウンド、スクリプト、Logic Bricksが存在する可能性があります。良い名前を付けることで、後でプロジェクトを理解しやすくなります。
次に、このLogic Brickをゲームで使用するエンティティに追加する必要があります。
この例では、エンティティはPlayerになります。
これを行う方法は2つあります。
最も早い方法は、Playerエンティティを選択し、次に以前に作成したLogic Brickアセットをダブルクリックすることです。Caveは自動的にLogic Brickを選択したエンティティに追加またはリンクします。
これは、すでに正しいエンティティが選択されている場合の最も迅速なワークフローです。
別のオプションは、Playerテンプレートを編集し、手動でLogic Bricksコンポーネントを追加して、そのアセットを割り当てることです。

コンポーネントを手動で追加するには、まずPlayerエンティティを選択し、Edit Templateをクリックします。
これにより、プレイヤーテンプレート自体を修正でき、そのコンポーネントを含めます。
これは重要です。なぜなら、プレイヤーは通常エンティティテンプレートだからです。テンプレートを編集すると、そのプロジェクト内のすべてのプレイヤーインスタンスに変更が適用されます。シーン内の1つのローカルエンティティのみを編集すると、その特定のインスタンスにのみ影響する可能性があります。
したがって、プレイヤーに属するロジックを再利用可能なオブジェクトとして追加する場合、テンプレートを編集するのが一般的に正しいアプローチです。

次に、Logic → Logic Bricksを選択して、エンティティに新しいコンポーネントを追加します。
このコンポーネントが、エンティティがLogic Brickアセットを使用できるようにします。
Logic Brickアセットはビジュアルロジックを保存しますが、エンティティはどのLogic Brickツリーをそのエンティティで実行するかをCaveに指示するコンポーネントが必要です。これがLogic Bricksコンポーネントの役割です。

コンポーネントを追加したら、Node Treeフィールドを見つけます。
このフィールドで、前のステップで作成して名前を変更したPlayerというLogic Brickを選択します。

これにより、プレイヤーエンティティにPlayer Logic Brickをビジュアルロジックツリーとして使用するように指示しています。
この時点で、セットアップは完了です。あなたは今、次のものを持っています:
- プロジェクト内に作成されたLogic Brickアセット
- アセットがPlayerに名前変更されている
- 編集のためにプレイヤーテンプレートが開かれている
- プレイヤーにLogic Bricksコンポーネントが追加されている
- コンポーネントのNode TreeフィールドにPlayer Logic Brickが割り当てられている
これはエンティティとLogic Brickの基本的な接続です。
Logic Brickアセットにはビジュアルロジックが含まれ、エンティティはLogic Bricksコンポーネントを使用してゲーム内でそのロジックを実行します。
次のレッスンでは、Logic Brick自体を編集し、ノードを追加して実際のゲームプレイ動作を作成し始めます。