8

ネイティブSDKを使用して、AndroidとiOSの両方で個別にアプリケーションを開発しています。ただし、アプリケーションには、ベクトルグラフィックの傾斜、スケーリング、回転などの基本的な2D(3Dの場合もあります)機能に加えて、単純なテクスチャ平面に対するあらゆる種類のオプションのファンシーエフェクトをサポートするモジュールがいくつかあります。

このモジュールをビューの一部の内部でホストし、そのコードがiOSプラットフォームとAndroidプラットフォームの両方で可能な限り共有されるようにしたいと思います。

私はあらゆる種類の解決策を求めてウェブの周りに潜んでいます。

  1. まず第一に、OpenGLがあります。問題は、OpenGLのコーディングに慣れておらず、OpenGLで作成するコードが2つのプラットフォーム間で共有可能かどうかを理解できなかったことです。実際にNDKなどでやろうとした人はいないようです。
  2. のようなプラットフォームがあります

    a。クラッター(http://www.clutter-project.org/)-モバイルデバイスでの使用例は見つかりませんでした。

    b。Unity3Dのようなプラットフォームは、アプリケーション全体をそのプラットフォームで実行する必要があることを理解している限り、あまり役に立たないと思いますが、それは私が探しているものではありません。

では、iOSとAndroidの間で2d / 3dコードを共有することは可能だと思いますか?もしそうなら、あなたがお勧めできる方法はありますか?

または、2Dまたは3Dグラフィックスの各デバイスのネイティブメソッドを使用する必要がありますか?

ありがとう!

4

3 に答える 3

7

Kivy:Linux、Windows、MacOSX、Android、iOS向けのOpenGLを利用した図面、インターフェイス、ビジュアルなどを作成するためのオープンソースのクロスプラットフォームプログラミング言語。kivy.org

KivyウィジェットにAndroidまたはiOSのネイティブウィジェットを使用してドロップできる可能性があります。アプリは、すべてのプラットフォームで同じOpenGLベースのインターフェイスを使用します。

2011年9月27日午後1時編集:私はさらに調査を行いました。全体として、これらの4つのオープンソースフレームワークを自分でチェックして、どれが自分に最適かを判断する必要があります(商用フレームワークをリストすることもできますが、それらは簡単に見つかります)。

  1. Kivy(kivy.org
    • 素晴らしいGUIとウィジェットライブラリ。
  2. HaxeNME(haxenme.org
    • OpenGLグラフィックスを作成するための非常に優れた2D/3DAPI。
    • 素晴らしいクロスプラットフォームのサポート。すべてのフレームワークの中で最高。
    • 残念ながら、GUIまたはウィジェットライブラリは組み込まれていません。
  3. Qt Quick QML(qt-project.org
    • OpenGLグラフィックスを作成するための非常に優れた2D/3DAPI。
    • HTMLに似ていますが、OpenGL用です。HTMLとJavaScriptをすでに知っていますか?QML(Quick Markup Language)には、テキストフィールド、ラジオボタン、チェックボックスなどの基本的な必需品が含まれており、イベントハンドラーを使用してアニメーション化および制御できます。QMLアプリケーションのアニメーション、イベントハンドラーなどは、JavaScriptで記述されています。違いは、JavaScriptが解釈される代わりにコンパイルされることです。
    • QtQuickは本当に素晴らしいです。私の個人的なお気に入り。Qt Quick QMLを読んでから、Android用のアニメーションタイルアプリを試して、QtQuickの可能性を確認してください。Qtの最新リリース(近日公開)は、iOS、Android、Blackberry、およびすべてのデスクトップOSをサポートします。Windows Phoneは進行中の作業ですが、QtQuickがすでにWindows8のMetroプラットフォームをサポートしていることを考えると、まもなく到着します。Qt Quickは非常に優れていますが、HaxeNMEのようにすべてのプラットフォームで機能するわけではありません。
  4. MoSync(mosync.com
    • 隠された宝石。このフレームワークには、より多くの露出が必要です。MoSync SDKは、クロスプラットフォームのOpenGLフレームワーク、PhoneGapに似たHTML / JavaScriptフレームワーク、各プラットフォームのネイティブUIウィジェットを使用するプラットフォーム間でアプリを作成するためのNativeUIフレームワーク、およびC++GUIを作成するためのMAUIを提供します。
    • 純粋なOpenGLを書くことに夢中になっている場合は、少なくともMoSyncをチェックすることをお勧めします。MoSyncはOpenGL ES 1.0/2.0の1対1の実装を提供します。

また、アプリがフォームベース(ゲームのようにアニメーション化されていない)の場合、PhoneGapがニーズに合う可能性があります。HTML5の適切な機能を使用すると、ネイティブな感じのアプリを作成できます(多くの恐ろしくて落胆する例とは異なります)。「ネイティブ」と感じるPhoneGapで作成されたアプリを試してみたい場合は、「Go2012」を試してください。Go 2012アプリは、HTML5を正しく使用すれば、プラットフォーム(iOS、Android、Blackberry、およびWindows Phone(すべてでテスト済み))間でハードウェアアクセラレーションを利用できることを証明しています。Go 2012のアニメーション(スクロールなど)はすべてCSS3ハードウェアアクセラレーションアニメーションです。PhoneGapショーケースのほとんどのアプリの質の悪さに騙されないでください!

于 2012-09-09T13:48:50.147 に答える
2

OpenGL ESを使用して、Cでコードを記述します。Android用のNDKラッパーを記述します。理論的には、オープンGLCコードは2つのプラットフォーム間で再利用可能である必要があります。

于 2012-03-12T20:11:55.890 に答える
1

アドビという小さな会社名について群れを作ったことはありますか

Airを使ってみてください。

人々はアドビが行った努力を高く評価していませんが、それは市場で入手可能な最も強力なクロスプラットフォームです!

サポート:

  • 3Dと2Dの両方でアプリを高速化するDirectXアクセスを備えたWindows。
  • Linux
  • OpenGLバックグラウンドを持つAndroid(2.2以降)
  • OpenGLを搭載したiOS
  • BlackBerry

そしてもっとたくさん...あなたが高レベルで働きたいならば、Airを使ってください!

于 2012-09-09T14:24:00.643 に答える