Marmalade C ++およびShiVa3D:Android x86プラットフォーム用のゲームエンジンの使用開始

Android用のクロスプラットフォームアプリまたはゲームを開発していますか? もしそうなら、あなたは特別なツールを見る必要があります。 たとえば、Marmalade C ++ 8.0 SDKおよびShiVa3Dゲームエンジンへ。 今日は、Android x86プラットフォーム用のアプリケーションについてお話します。



マーマレードC ++ SDK


マーマレードSDKの背後にある考え方は、次のように聞こえます。 このアイデアは新しいものではありませんが、非常に重要です。 異なるプログラミング言語とAPIを使用する代わりに、サポートされているすべてのプラットフォームで同じコードをコンパイルして実行できます。 この汎用性は、各ターゲットプラットフォームのAPIの抽象化層の役割を果たすC / C ++ベースのAPIのおかげで実現されています。

Marmalade SDKは、クロスプラットフォームアプリケーション開発ツールキットです。 さまざまな環境で動作しますが、Windowsを使用します。 マーマレードには、さまざまなプラットフォームでアプリケーションを開発、テスト、展開するための一連のライブラリ、コードサンプル、ツールが含まれています。 特に、Android x86で。 パッケージはよく文書化されています

事前準備


以下では、Windows環境でのMarmalade SDKの使用について説明します。 Mac OSを使用している場合は、ドキュメントのこのセクションを参照しください。
そのため、Marmalade SDKをインストールする前に準備する必要があります。 つまり、さらに作業を進めるには、次のものが必要です。


作業の前に、環境変数を確認する価値があります。上記のツールをインストールするときに環境変数が正しく構成されていない場合は、これを修正してください。


環境変数を編集するときは、パスの末尾に特殊文字や「\」などの区切り文字がないように注意してください。

事前トレーニングが完了したので、 Marmalade SDKをダウンロードします 。 特に、マーマレードコアに興味があります。 パッケージをダウンロードするためのリンクが提供される前に、サイトに登録する必要があります。 インストール後、実験を開始するには、登録時に指定した電子メールに送信されるライセンスコードを入力する必要があります。

Marmalade SDKを使用したAndroid x86開発


Marmalade SDKに付属のHelloWorldサンプルプロジェクトを検討してください。 私たちの場合、プロジェクトはここにあります:C:\ Marmalade \ 8.0 \ examples \ HelloWorld。


HelloWorldサンプルフォルダーの内容

このフォルダーには、2つのデモプロジェクト用のMKBおよびCPPファイルが含まれています。 彼らは、マーマレードが世界に挨拶できるさまざまな方法を示しています。 同じプロジェクトに関連するファイルの名前は同じです。
MKBファイルにはプロジェクト情報が含まれています。 すなわち:


MKBファイルの詳細は、ドキュメントに記載れています 。 CPPファイルは、C ++で記述されたプロジェクトソースコードです。

マーマレードプロジェクトを操作するには、3つの方法があります。 すべてがMKBファイルに関連付けられています。 1つ目は使用するIDEのプロジェクトを自動的に作成するときに使用され、2つ目はコマンドラインツールを使用し、3つ目はMarmalade Hubの使用に基づいています。

Visual StudioでMarmaladeプロジェクトを操作する


ファイルIwGxHelloWorld.mkbをダブルクリックします。 コマンドラインインターフェイスを開くマーマレードは多くの作業を行い、最終的にこのファイルの隣にいくつかの新しいフォルダーが表示され、Visual StudioでIwGxHelloWorld_vc14プロジェクトが開きます。


Visual Studioでプロジェクトを開く

プロジェクトをコンパイルし、Marmalade x86シミュレーターで実行します。 これを行うには、メニューコマンドDebug> IwGxHelloWorld_vc14 Properties ...を実行します。


IwGxHelloWorld_vc14プロパティチーム

表示されるウィンドウで、[構成マネージャー]ボタンをクリックします。


構成マネージャーボタン

次に、「構成」フィールドで、「x86デバッグ」オプションを選択します。 閉じるボタンをクリックします。


プロジェクト構成のセットアップ

Visual Studioのメインウィンドウに戻り、メニューコマンド[デバッグ]> [デバッグの開始]を実行します。


チームはプロジェクトのデバッグを開始しました

警告ウィンドウが表示されたら、その中の[はい]ボタンをクリックします。


警告ウィンドウ

デバッグ情報がないことを通知するウィンドウが表示されたら、[はい]をクリックします。 これで、出力ウィンドウでプロジェクトの起動準備プロセスを監視するだけで、待つだけです。 すべてが正常に実行された場合、Marmalade x86 Simulatorウィンドウが開き、Hello Worldが実行されます。


HelloWorldプロジェクトがエミュレータで正常に起動しました。

コマンドラインからプロジェクトを構築する


Marmalade SDKには、コマンドラインからMKBファイルを処理するために呼び出すことができるmkb.batバッチファイルが含まれています。 これにより、作業をスピードアップできます。 MKBファイルの名前がHello.mkbであるとします。 このファイルがあるフォルダーに移動し、以下のコマンドを使用して、サポートされているすべてのプラットフォームのプロジェクトを再構築します。

>>mkb.bat Hello.mkbexecuterebuild 

特定のプラットフォーム(この場合はAndroid x86)のMKBファイルのオプションセクションで作業する必要がある場合は、以下を追加できます。

 option { android-x86 } 

プロジェクトのデバッグバージョンとリリースバージョンをビルドするには、それぞれ次のコマンドを使用できます。

 >> mkb.bat Hello.mkb --execute --debug >> mkb.bat Hello.mkb --execute --release 

コマンドラインからmkb.batを起動するには、インストールされたMarmaladeのコピーのbin s3eフォルダーへのパスをPath環境変数に追加する必要があります。 たとえば、パスは次のようになります。C:\ Marmalade \ 8.0 \ s3e \ bin。

マーマレードハブを使用する


Marmalade SDKをインストールすると、Marmalade Hubもシステムにインストールされます。 これはプロジェクト自動化ツールキットです。 それを実行し、最初のページで[新しいプロジェクトの作成]コマンドを選択します。


マーマレードハブで新しいプロジェクトを作成する

新しいプロジェクトを作成するためのウィンドウが表示されます:


新しいプロジェクトを作成するためのウィンドウ

ここでは、次のフィールドに興味があります。


これらの設定が完了したら、[作成]ボタンをクリックします。 プロジェクトが作成され、Marmalade Hubウィンドウに新しいブックマークが開きます。


マーマレードハブウィンドウの新しいプロジェクト

Android x86プラットフォームに関心があるので、[展開の作成]ボタンをクリックし、表示されるウィンドウで展開パラメーターを構成します。


プロジェクト展開オプションの設定

つまり、PlatformフィールドでAndroidを選択し、サポートされているアーキテクチャのリストでGCC X86 ANDROIDを示します。 [次へ]ボタンをクリックします。 次のウィンドウで、パッケージの名前とバージョンを示すように求められます。 デフォルト値は変更しません。作成ボタンをクリックしてください。

目的のアーキテクチャのプロジェクトが作成されます。 これで、エミュレータで実行できるようになりました。そのためには、[プロジェクト]タブを選択したときに使用可能なシミュレータボタンで、またはデバイスで[実行]ボタンを使用します。 もちろん、適切なアーキテクチャのAndroidデバイスがコンピューターに接続されていて、アプリケーションのUSBデバッグの準備ができていることを条件とします。

デバイスにプロジェクトを展開して実行するには(この場合、これはIntel Atom Z3530 CPUベースのASUS Fonepad 8タブレットです)、[デバイスにインストールして実行]ボタンをクリックします。 プロジェクトが正常にインストールおよび起動された場合、緑色で表示されるステータスバーのメッセージからこれを確認できます。


Androidデバイスでプロジェクトを正常にインストールして実行する

マーマレードプロジェクトがデバイスで開始されます。


Marmalade SDKを使用して作成されたアプリケーションがデバイスで実行されています

プロジェクト.SOおよび.OBJバイナリは、C:\ MarmaladeTest \ HelloWorld \ build_helloworld_vc14 \ Debug_HelloWorld_vc14_gcc_x86_androidにあります。 これらは、それぞれHelloWorld.soとHelloWorld.objです。

生成されたプロジェクトAPKファイル(HelloWorld.apk)は、C:\ MarmaladeTest \ HelloWorld \ deployments \ HelloWorld.0.gcc_x86_androidにあります。 Marmalade SDK 8.0は、Androidプラットフォームの特定のバージョン用の個別のAPKファイルの作成と、さまざまなプラットフォーム用のライブラリのバージョンを含むユニバーサルファイル(脂肪バイナリ)の両方をサポートしています。 Google Playにプロジェクトを配置すると、 さまざまなプラットフォーム用 APKファイルのさまざまなバージョンをダウンロードできます。

ゲームエンジンShiVa3D


注:ここで説明されているのと同じバージョンのエンジンが関連しているため、すべてをそのままにしました。 素材のデザインと表示をわずかに変更しました。

ShiVa3Dは、3次元ゲームを開発するためのツールのセットです。 その中のすべてがこの目標を目指しています。 特に、Web、ゲームコンソール、モバイルデバイス用のゲームやアプリケーションを作成するために設計されたグラフィカルエディターが装備されています。 つまり、ShiVa3Dを使用して、Windows、Mac OS、Linux、iPhone、iPad、BlackBerry Tablet OS / BlackBerry 10、Android、Palm OS、Wii、WebOS向けのアプリケーションを作成できます。これらは、スタンドアロンアプリケーションおよびWebブラウザーで実行されるアプリケーションです。

エンジンはOpenGL、OpenGL ES、またはDirectXを使用して、プログラムによるグラフィック出力を実行できます。 ShiVa3Dは、業界標準となったプラグイン、特にNVIDIA PhysX、FMODサウンドとARToolKitを操作するためのライブラリをサポートしています。

ShiVa3D Web Editionは、実験に使用できる完全な無料バージョンです。

前述のエディターに加えて、ShiVa3Dは、Windows、Mac OS、Linux、iPhone、iPod、iPad、Android、BlackBerry QNX、Palmのエディターで作成されたプロジェクトを作成するためのツールであるShiVa3Dオーサリングツールを提供します。

ShiVa3Dをインストールする


ShiVa3Dをインストールする前に、準備する必要があります。 一般的に、以下の追加ツールのリストは、Marmalade SDKのインストールの準備で上で検討したものに対応していますが、ShiVa3Dに固有の特別な要件がいくつかあります。 つまり、次のものが必要になります。


環境変数を確認する価値があります。上記のツールをインストールするときに環境変数が正しく構成されていない場合は、これを修正してください。


環境変数を編集するときは、パスの末尾に特殊文字や「\」などの区切り文字がないことを確認する必要があることを思い出してください。

これでShiVa3Dをダウンロードしてインストールする準備ができました。 特に、ShiVa3D Web Editionに関心があります。
パッケージには多くの例が含まれています。最初の実験では、そのうちの1つをダウンロードできます。 これを行うには、ShiVa Editorを起動した後、メインウィンドウの[ゲームエディター]セクションにある[ゲームを開く]または[ドロップする]ボタンを使用する必要があります。 ゲームプロジェクトのリストを含む[開く]ウィンドウが開きます。 実験用のゲームプロジェクトを見つけたと仮定して、ShiVa3Dエディターを使用してプロジェクトをエクスポートする手順を検討してください。

プロジェクトをSTKファイルにエクスポート


コマンドGeneral> Game Editor> Game> Exportを実行して、エクスポート手順を開始します。


ShiVa3Dでプロジェクトのエクスポート手順を開始する

エクスポートされたアプリケーションの名前(名前)とバージョン(バージョン)を入力して、表示されるウィンドウのフィールドに入力します。 エクスポートの結果として取得されるファイルの場所を指定します。 この場合、フォルダーD:\ ShiVa3D_prog \ game_exportが使用されます。 他のフォルダを使用できます。


エクスポート設定を構成する

出力は単一のSTKファイルである必要があり、ランタイムパッケージフラグがこれを担当することに注意してください。

ShiVa 3Dオーサリングツールを使用してアプリケーションをコンパイルする


プロジェクトをエクスポートした後、ShiVa Editorを閉じて、ShiVa 3Dオーサリングツールを起動します。


ShiVa 3Dオーサリングツールウィンドウ

ウィンドウの左側で、Androidアイテムをダブルクリックして選択します。


Androidを選択した後のShiVa 3Dオーサリングツールウィンドウ

前にエクスポートしたアプリケーションをインポートします。 これを行うには、このウィンドウの適切なフィールドに入力し、目的のファイルへのパスを示します。 ここで、アプリケーションアイコンの画像、開始画面の画像を追加できます。


ファイルを選択してプロジェクトを作成します

ウィンドウの右下にある[設定]ボタンをクリックすると、設定画面が開きます。


設定ウィンドウ

このウィンドウの適切なフィールドで、アプリケーションの準備に必要なさまざまなソフトウェアツールへのパスを指定する必要があります。 その中には、Cygwin、Android NDKなどがあります。

データ入力が完了したら、[OK]をクリックし、ShiVa 3Dオーサリングツールのメインウィンドウに戻って、[ステップ2:オーサリング]タブをアクティブにします。


[ステップ2:オーサリング]タブに移動する

ここにアプリケーションパッケージの名前を入力します。


ステップ2の使用:オーサリングタブ

[ステップ3:ビルド]タブに移動します。 ここで、アセンブリパラメータを設定できます。 すなわち-Androidの最小バージョン、ターゲットプラットフォーム(この場合はx86)、出力ディレクトリ。


[ステップ3:ビルド]タブでアプリケーションのビルドオプションを構成する

適切な値を設定したら、画面の右下にある[ビルド]ボタンをクリックします。 すべてうまくいけば、システムはそれを報告します。


アプリケーションの正常なコンパイル

ShiVa3Dを使用する場合、GUIツールであるShiVa 3Dオーサリングツールの使用に制限されます。 コマンドラインサポートはここでは提供されません。 x86プラットフォーム用に設計されたアプリケーションを準備するためのオーサリングツールの設定について、さらに詳しく検討してみましょう。

x86用のShiVa 3Dオーサリングツールの構成


  1. ShiVa Editorでアプリケーションを作成し、エクスポートします。 プロジェクトファイル名に特に注意してください。 ラテンアルファベットの大文字と小文字(azまたはAZ)、数字(0-9)、アンダースコア(_)を含めることができます。 ファイル名の他の文字は、コンパイル段階でエラーになります。 ゲームプロジェクトは、最初にShiVa Editorを使用してエクスポートし、次にShiVa Authoring Toolを使用して処理する必要があることを考慮することが重要です。

  2. ShiVa 3Dオーサリングツールを開き、Androidアイテムをダブルクリックします。 これからは、上記のガイドをいくつかの違いとともに使用できます。 つまり、「ステップ2:オーサリング」タブを開いているとき、そこに「オーサリングの種類」フィールドが表示されます。


オーサリングタイプフィールド

デフォルトでは、このフィールドはAPKパッケージに設定されています。 デバイスにすぐにインストールできるアプリケーションのAPKパッケージだけで十分な場合は、このフィールドの値を変更しないでください。

これらの設定では、追加のファイルは受信されないことに注意してください。 もちろん、それらはパッケージを組み立てるプロセスに存在しますが、一時フォルダーに保存され、不要になった場合は削除されます。

APKパッケージではなくソースファイルが必要な場合は、[作成の種類]フィールドで[プロジェクト]を選択します。 その結果、プロジェクトのソースファイルを含むZIPファイルが生成されますが、APKファイルは作成されません。

コンパイル中に生成されるファイル(APKまたはZIP)が格納されるフォルダーは、[出力フォルダー]フィールドの[ステップ3:ビルド]タブで設定されます。 このフィールドに到達するには、スクロールバーを使用する必要があります。


フィールド出力フォルダー

このフィールドに入力するには、右側のフォルダアイコンを使用して目的のディレクトリを見つけるか、手動でフルパスを入力します。

プロジェクトのターゲットコンパイルプラットフォームを選択するには、[ステップ3:ビルド]タブの[CPUサポート]フィールドを使用します。 [出力フォルダー]フィールドの上にあります。 デフォルトでは、デフォルトに設定されています。 パラグラフx86に興味があります。


ターゲットプラットフォームの選択

アプリケーションが動作するために必要なAndroidの最小バージョンを構成し、最小OSサポートフィールドで9未満のAPIバージョンを設定すると、エラーが発生する場合があります。


Android APIの最小バージョンの選択

プロジェクトのコンパイルから生じるファイルについて


先ほど説明したことをすべて考慮した後、ShiVa3Dゲームをx86プラットフォーム用にコンパイルする準備が整いました。 出力で何が起こるかは、選択したオーサリングタイプのオプション:APKパッケージまたはプロジェクトによって異なります。 ただし、いずれの場合も、ファイルは指定された出力ディレクトリにあります。 フォルダーは次のアドレスにあります:D:\ ShiVa3D_prog \ authoring_tool_output。

APKパッケージオプションを選択すると、1つの.apkファイルが含まれます。
D:\ ShiVa3D_prog \ authoring_tool_output \ FistApp_1-debug.apk

[プロジェクト]を選択すると、ファイルも1つになりますが、今回は拡張子.zipが付きます。
D:\ ShiVa3D_prog \ authoring_tool_output \ FistApp_1_Android.zip

このアーカイブには、バイナリ、マニフェストファイル、メイクファイル、リソース、およびプロジェクトビルドファイルが含まれています。

結論


このガイドでは、Android x86プラットフォームを中心に、Marmalade SDKおよびShiVa 3Dを使用した最初のステップを実行する方法を学びました。 独自のモバイルゲームの作成を検討している場合、おそらく、これらのツールの1つがまさに必要なものになるでしょう。

元の記事はこちらです。

Source: https://habr.com/ru/post/J272821/


All Articles