Xenkoでの最初のステップ

ゲームエンジンの世界に興味を持っている人なら誰でも、2015年12月1日から旧Paradox3DがXenkoに名前を変更したことを知っていますが、1回目または2回目にHabrのチュートリアルがないため、新しい(またはそうでない)何かとXenkoの機能について話します。 興味があれば、猫へようこそ!







免許



このエンジンはほとんどオープンソース( GitHub )であり、GPL v3の下でライセンスされていますが、次の2つの場合に無料で使用できます。





他のライセンスオプションについては、開発者に連絡する必要があります。



開発機能



Xenkoの最新バージョン(執筆時点-1.5 Beta)は、Windows 7 SP1 + / 8 + / 10の64ビットバージョンでの実行のみをサポートしています。スクリプトを記述するためには、次のいずれかのIDEが必要です。





ゲームを作成できるプラットフォームのサポートが望まれます。 Windowsファミリー(デスクトップ、ストア、10ユニバーサル、電話)だけでなく、 AndroidおよびiOS (Xamarinライセンスのみ向けに開発できるようになりましたが、Silicon StudioはまもなくMacOSX、Linux、さらには次世代コンソール。



はじめに



まず、エンジン自体と、.NETを操作するための追加要素をインストールする必要があります。 インストールとすべてのソフトウェアのダウンロードには約25分かかります。 Xenko Launcherを使用すると、新しいバージョンをインストールするか、インストール済みのバージョンを切り替えることができます。







目的のオプションを起動し、新しいプロジェクトを作成し(デフォルトですべての設定を残すことができます)、Xenko Studioがロードされるまで待ちます。



Visual Studioをremotelyとさせる、ごく普通のUIに出会えます。







  1. シーン要素
  2. ソリューションエクスプローラー(プロジェクトに関連するすべてのフォルダーとファイル)
  3. リソース(資産)を表示します。 リソースを選択すると、しばらく強調表示されます。
  4. リソースのプレビュー。 アクション履歴; 依存関係(2つのタブがあります:Referencees-現在のリソースに必要なすべての資産を表示します。Referencers-反対に、現在のリソースに依存するすべての資産を表示します)
  5. プロパティエディター


ゲームを開始するには、F5キーを押すだけです。プロジェクトがコンパイルされ、MSBuildの使用が開始されます(これは、さほど高速ではありません)。

左側の「 + 」と下の新しいリソースを使用して、新しいエンティティを追加できます。







オブジェクトを選択すると、そのすべてのプロパティを右側のウィンドウ(プロパティグリッド)で表示できます。 ここで、変換、テクスチャ、物理学、およびその他のコンポーネント。



ところで、テクスチャリソースがないと、モデルは表示されません(これは、[マテリアル]タブの小さな「手」をクリックすることで実行できます)。



これは視覚能力がほぼ終了する場所です。 ナビゲーションの短所の中で、3D空間での制御の複雑さ(主な機能はWASDShift / Alt + LMB / RMB / SCMを使用して実行されます )および衝突領域を表示できないこと(衝突ボリューム)に注意することができます。



コード付きロボット



Xenko StudioはVisual Studioと連携して動作するため、私は使用しています。 メニューの上部から[VS]を選択すると、Visual Studioでプロジェクトが開きます。







同じソリューションエクスプローラーで、ゲームを起動するファイルが1つだけであることがわかります(私の場合はMyGameApp.cs )。 プロジェクトの作成時にさらにプラットフォームを選択した場合は、プラットフォームごとに個別のディレクトリが作成されます。



たとえば、モデルを移動させます。 最初に、別のMoving.csクラスを作成し、以下のコードを追加する必要があります。







using System; using SiliconStudio.Xenko.Engine; namespace MyGame { public class Moving : SyncScript //    ,    public { public override void Update() //      { if (Game.IsRunning) //,    { //   / -    X if (Input.IsKeyDown(SiliconStudio.Xenko.Input.Keys.Right)) { this.Entity.Transform.Position.X += 0.1f; } if (Input.IsKeyDown(SiliconStudio.Xenko.Input.Keys.Left)) { this.Entity.Transform.Position.X -= 0.1f; } //   / -    Z ( Y, ..   ) if (Input.IsKeyDown(SiliconStudio.Xenko.Input.Keys.Up)) { this.Entity.Transform.Position.Z += 0.1f; } if (Input.IsKeyDown(SiliconStudio.Xenko.Input.Keys.Down)) { this.Entity.Transform.Position.Z -= 0.1f; } } } } }
      
      





MyGame.Gameフォルダーに保存します。 エラーをチェックしますCtrl + Shift + Bはプロジェクトをビルドします)。







Xenko Studioで、球体を選択し、[ コンポーネントの追加 ] -> [スクリプト ] クリックして、 スクリプトを追加します。



ビルド(待機​​)すると、矢印をクリックすると球体が動くことがわかります。 リストにスクリプトがない場合は、おそらくプロジェクトをリロードする必要があります( [ファイル]-> [プロジェクトのリロード] )か、コードにエラーがあります。







PS球体が間違った方向に動いている場合は、コードで変更してください-=から+ = 、またはその逆。 カメラの位置に依存します。



サポート、コミュニティ、ドキュメント



残念なことに、 ドキュメントはあまり多くありません。 ドキュメントはしばしば不正確であるか、単に欠落しているだけであり、エンジンはあまりにも生であり、大きなコミュニティを持つことができません。







したがって、あなた自身の強みと聴衆の助けだけに頼ってください。



おわりに



Xenkoは非常に興味深いエンジンですが、 ベータ段階では、GameDevの世界に非常に新しいものをまだ提供できません。 Unityで働いていれば、Xenkoで簡単に作業できます。 初心者にとっては複雑すぎて理解できないように思えますが、次のリリースでは修正されると思います。



長所:





短所:






All Articles