質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

87.91%

android おすすめの3D物理演算プラットフォームは?

解決済

回答 3

投稿 編集

  • 評価
  • クリップ 1
  • VIEW 3,566

score 13

android(Java)初学者です。
androidで3D物理演算を利用したゲームアプリを作りたいと思ってるのですが、
開発プラットフォーム選びに悩んでいます。

できるだけ簡単に作りたいと思っているのですが、
端末の傾き検知やBluetooth通信といったOS依存?の機能も利用したいです。
どんな開発プラットフォームがおすすめでしょうか?

androidの3D物理演算の実装方法について調べたところ、主に

  • Unity
  • Bullet + OpenCV

の2つの方法があるようでした。
Unityの方が開発しやすいようですが、上記のOS依存の機能が容易に利用できるのか不安に思っています。

当方のandroidの習熟レベルとしては、入門書にあるような内容は一通り理解し、大体その範囲なら自由にアプリを作れる程度です。
また、UnityやOpenCVについては全くの素人です(ただしC#やPythonの知識は少しあります)。

よろしくお願いします。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 3

checkベストアンサー

+1

簡単に作るならUnityをおすすめします。Android固有の機能にアクセスする方法もあるようですね。

ただ、今後深くゲーム開発を理解するならエンジンを使わずにAndroid単体で作った方がいいですね。
Android ゲームプログラミング A to Z

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/08/30 22:09

    回答ありがとうございました!まずはUnityで作ってみて、こだわりたかったらAndroid単体でごりごり作ってみます。
    もしUnityで簡単に作ることができたら、解決方法のところに結果をまとめたいと思います。

    キャンセル

0

Unityベースで一通りできそうな感触がつかめたので報告させていただきます。(ほとんど人様の知恵を借りて達成できたものですが)
特に 2. Bluetooth の内容は他のネイティブ機能にも応用できるかと思います、というより私がBluetoothに応用させていただきました。
私自身初心者ですので、もっといい方法があったり間違ったことを言ってるかもしれません。その際はご指摘いただけると幸いです。

環境・バージョン等は、

  • OS: Mac OS X EI Caption ver.10.11.6
  • Unity: 5.4.1f1 Personal
  • Android Studio: 2.2
  • テスト用Android実機: 4.4.2等

です。

1. 傾き検知

これはUnityデフォルトの Input.acceleration プロパティーで問題なくいけました。
https://docs.unity3d.com/ja/current/Manual/MobileInput.html

2. Bluetooth

Bluetoothに関してはUnity Asset Storeでプラグインを買ってみたりしたのですが、どうも思い通り動かず、結局自分でプラグインを作ることにしました。
参考にさせていただいたサイトは、

  • http://redfreshet.com/2015/08/18/unity_android_link_1/
  • http://qiita.com/YukiMiyatake/items/c8c2ef396fbf4457ba4f

です。(管理人の方、本当にありがとうございます!)

基本、1番目のサイトの方法でJavaライブラリ*.jarを作り、UnityのAssets/Plugins/Androidに適当なパーミッションを書いたAndroidManifest.xmlとともに投げ込みます。
そして2番めのサイトに従って、ライブラリ内メソッドにアクセスします。

躓いた点としては、

  • Javaライブラリを作るとき、Unityのclasses.jarの場所が
    /Applications/Unity/PlaybackEngines/AndroidPlayer/Variations/mono/Release/Classes/classes.jar
    に変わっていたこと
  • AndroidStudioでAPIレベルが足りない(Call requires API level 5 ...)と怒られるが、無視してかまわないこと

ぐらいでしょうか。上記サイトが本当に分かりやすかったので、初心者の私でもなんとかなりました!

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

-1

androidで3D物理演算を利用したゲームアプリを作りたいという
ことであればOpenGL ESやJBulletなどが良いとのことです。

既に調査されたかもしれませんが、
http://web-prog.com/
のサイトに面白い情報が出ています。

よろしくお願い申し上げます。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/08/27 07:08

    コメントを読んで、それに沿って答えた方が良いと思います。

    キャンセル

  • 2016/08/27 08:43

    お勧めの「3D物理演算」について聞いているのは質問者です。お勧めの「3D物理演算」があるのであれば、質問者への回答になるように回答を編集してください。

    キャンセル

  • 2016/08/30 23:49

    「3D物理演算」に関する回答に編集されたようですので、下げた評価は取り消します。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 87.91%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る