Skip to main content

概要

ヒント

このセクションでは、WarudoのスクリプティングAPIを詳しく解説します。Warudoでスクリプトを書き始めるために、すべての詳細を把握しておく必要はありません。しかし、少なくともこのセクションに目を通し、仕組みの全体像をつかむことをおすすめします!

Warudoは、エディターとランタイムという2つのアプリケーションで構成されています(本ハンドブックのプログラマー向けではないセクションでは、ランタイムをメインウィンドウと呼んでいました)。エディターではシーンを作成・編集します。たとえば、アセットやプラグインの設定を更新したり、ブループリントにノードを追加・接続したりします。ランタイムはレンダリング/スクリプティングエンジンとして機能し、作成したシーンを実行します。

エディター(右)とランタイム(左)。

エディターとランタイムはWebSocket接続を介して通信します。エディターで変更を行うと、その変更がランタイムに送信され、ランタイムがそれに応じてシーンを更新します。このアーキテクチャにより、加えた変更をリアルタイムで確認できます。反対に、ランタイムで変更を行った場合(例: ノードのデータ入力をプログラムから変更する場合)、その変更をエディターへ送り返す必要があります(データ入力へのアクセスを参照)。

WarudoランタイムはUnity 2021.3を使用して構築されています。ただし、コアフレームワークはできる限りエンジンに依存しない設計になっています。そのため、ノード、アセット、プラグインは、シンプルでクリーンなAPI群を通じて、互いに、またユーザーとやり取りできます。また、ホットリロードなどの機能も実現されています。

一般的なUnityプロジェクトのようにMonoBehaviourから派生したC#クラスを記述する代わりに、NodeやAssetなどのWarudoの基底クラスから派生したクラスを記述します。これらのクラスはWarudoのランタイムによってインスタンス化・管理されます。そして、これらのクラス内からUnity APIを呼び出し、GameObjectの作成やコンポーネントの追加など、Unityシーンとやり取りできます。

最終更新日 2026.10.06