0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

LumberyardAdvent Calendar 2017

Day 23

LumberyardのGem設定 初級編

Last updated at Posted at 2018-01-29

かなり遅れましたが、Lumberyard Advent Calendar 2017 23日目の記事です。

LumberyardのGemを有効にしてみましょう。
今回、検証で使用したバージョンは1.12.0.1です・

#Gemとは?

Gemはゲームプロジェクトを拡張するためのコードやアセットが含まれているパッケージのことを言います。

image.png

超簡単に言えば、Lumberyardのプラグインみたいなものです。

LumberyardもGemにあるアセットを有効にすることによって、VR開発、Twitch、ScriptCanvas等の機能を使うことが可能です。

Gemを有効にするには、他のゲームエンジンと比べて少し手間がかかるので、公式ドキュメントを見ながらちょっとまとめてみました。

おまけ 自作のGemについて

Gemは開発者が新規に作成することも可能のようです。

今回は触れないので興味ある人は、こちらのドキュメントの「プロジェクトコンフィギュレータ を使用して新しい gem を作成するには」「コマンドラインを使用して新しい Gem を作成するには」をお読みください。

#前提条件

デフォルトのエンジン設定ではGemがそもそも使えないため、Lumberyard セットアップアシスタント で [Compile the game code] オプションを選択しておく必要があります。

image.png

上から三番目のチェックを有効にします。
Gemを利用するにあたり、Insttall required SDKで必要なSDKをすべてインストールする必要があるので、セットアップアシスタントで一括でダウンロードしましょう。

image.png

#Gem有効手順

今回は既存で作成したプロジェクトに新規のGemを有効にします。

※プロジェクトの作り方はまめおさんのLumberyard 新規プロジェクト作成方法を見てください。

有効にするには、Lumberyard Project Configuratorから該当のプロジェクトのEnable Gemsをクリックします。

image.png

※今回検証用に作成したプロジェクトは「Test1」になります。

Gemを有効にする前に、あらかじめプロジェクトを右上にある「Set as default」で、デフォルト起動プロジェクトにしてください。

※これをやらないと後述の作業がすべてエラーが出力されるか、別プロジェクトにあるGem設定が反映されてしまいます。

image.png
選択自体は、使いたい機能にチェックを入れて、右上のSaveを押すだけです。
非常に簡単です。

image.png
※(REQUIRED)と赤文字で書かれているGemは必須項目なのでチェックを外さないでください。外してSaveしてしまうと最悪プロジェクトが壊れる可能性があります。

ただ、Gemを有効にしただけではプロジェクトにその機能が追加されません。
またGemによってはプロジェクト起動時にエラーが発生して開けなくなる場合があります。
そのため、プロジェクトを再ビルドする必要があります。

#プロジェクト再ビルド

早速プロジェクトを再ビルドしましょう。
ビルドするにはコマンドラインが必要です。Windowsでは一応コマンドプロンプトでも行けたので、そちらのやり方を書いていきます。

※もし、ビルド時に謎のエラーが起きる場合はAWS コマンドラインインターフェイスをインストールすれば解決するかもしれません。

1.コマンドラインでdev ディレクトリに移動

デフォルトの設定でインストールしたのであれば、以下の通りコマンドを入力してください。
image.png

「cd」と入力して、エンジンをインストールしたフォルダのdevをドラッグアンドドロップするだけです。

image.png

移動完了です。

2.lmbr_waf configure実行

続いてlmbr_waf configureを実行します。
image.png

実行するとこのような感じでコマンドが走ります。

image.png

image.png

最後、finished successfullyが出れば成功です。

image.png

※ここでエラーが起きる場合、プロジェクトが別の設定になっている(削除済みのプロジェクトを対象に実行している)可能性があります。

3.lmbr_waf build_win_x64_vs2015_profile -p game実行

最後、「lmbr_waf build_win_x64_vs2015_profile -p game」と入力して実行します

image.png

※上記はVisual Studio 2015をインストールしている場合です。
※Visual Studio 2013をインストールしている場合は、「lmbr_waf build_win_x64_vs2013_profile -p game」と入力します。

このビルドが一番時間がかかるので、気長に待ちましょう。
何事もなく無事successfullyが出れば再ビルド完了です。

新規追加分のGemがプロジェクトに反映され使えるようになっています。

再ビルドのエラーについて

Lumberyardがベータ版であるせいか、いくつかのGemを有効にすると再ビルド時にエラーが出力されることがよくあります。

よくあるのが、以下の文字コードのエラーです。
image.png

上記の例ですと、AnimGraph.cppがUnicode形式以外になってるというエラーです。
該当のソースの文字コードをUnicodeに変換しましょう。

中には文字コード以外が原因でエラーを吐くGemもあります。
※元のソース(CryEngine4)の60%強を修正したとのことなので、その影響が出ている可能性は否定できません。


※追記

上記の文字コード以外のエラーは、すべてのGemを有効にした場合に発生してました。
そのためどのGemが原因なのか完全にわかっていないため、調査して問題のあるGemが分かり次第再掲させていただきます。


もしフォーラムをみて解決方法が書いていない場合は、自力で頑張ってエラー吐いているソースを修正するしかありません。
ベータ版であるためにちょっと不安定な部分もあります。

まとめ

ちょっと手間はかかりますが、Gemを利用すれば様々な機能を使うことが可能です。
もし、ベータが外れた場合、この機能がほかのエンジンでいうAsset Store的な役割をする可能性は十分あると思います。

この手間をかけずに、簡単にGemの機能を反映されてほしいなという気持ちもあるので、今後のGemに期待しています。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?