iPhone 上の Unreal Engine: 完全なストーリー

iPhone 上の Unreal Engine: 完全なストーリー

Epic Games のシニア コンソール プログラマー Josh Adams は、今週開催された Game Developers Conference で、ゲーム開発者に Unreal Engine 3 の新しい iPhone 版を正式に紹介しました。
プレゼンテーションの大部分は、Epic の Windows ベースのツールが iPhone 開発キットの Mac ベースの「XCode」ワークフローとどのように連携するかに関するものでしたが、Adams 氏は Apple デバイス上で実行される Unreal Championship レベルの動作モデルも示し、開発者は次のことを確認しました。デモは 25 ~ 30 フレーム/秒の速度で更新されました。
Adams 氏は、UE3 を iPhone に導入するプロセスを「できるかな?」という楽しみだったと説明しました。このプロジェクトは Open GL ES 2.0 に基づいており、iPhone 3GS、iPad、第 3 世代 iPod Touch などの新しい Apple デバイスでのみ動作します。 UE3 は、エンジンに必要なプログラム可能なピクセル シェーダーをサポートしていないため、古い iPod Touch や iPhone では動作しませんが、モバイル Apple ファミリのより新しく高速なデバイスが登場すると、Epic のエンジンは明らかにそれらに合わせて拡張されます。
興味深いことに、プレゼンテーション中にアダムス氏は、Epic が現在 Unreal Engine 3 に取り組んでいる、Linux、Mac、NVIDIA Tegra 2 など、サポートされていないプラットフォームの範囲についても明らかにしました (Nintendo DS 2 の噂が真実であれば、非常に興味深い可能性があります)。
Epic のミドルウェアを iPhone に変換するのは並大抵のことではありませんでした。エンジン自体は、16 MB の実行可能ファイル内の 200 万行のコードで構成されており、コードの 90% はプラットフォームに依存せず、残りの 10% は実行されているハードウェアに合わせて調整されています。
エンジンの中核機能のほぼすべてが、iPhone の技術版にそのまま残されています。同じゲームプレイ、衝突、計算ルーチン、さらにはファイル形式も使用されます。 Unreal Engine エディタに慣れているゲーム メーカーは、iPhone 向けに開発するときにまったく同じ Windows ベースのツールセットを使用します。 Epic が変更を加えなければならなかったのは、主にレンダリング ハードウェア インターフェイス (RHI)、つまりエンジンのレンダリング スレッドとホスト プラットフォームの API の間の「薄い層」でした。
Josh Adams は、Unreal Engine が環境を照明する方法についても説明しました。このコードは、アーティストが決定した静的および動的ライトを収集し、それらを 1 つまたは 2 つのライトに変換します。指向性ライト、アンビエント ライト、または球面調和ライトがすべてサポートされています。これは、アーティストによって設定されたライトやゲームプレイ中に動的に生成されたライトの多くがレンダリング コストが非常に低いため、iPhone にとっては最適です。
iPhone 独自のコントロールに対応するために新しいコードが作成されました。タッチスクリーン入力を保存するバッファが設定され、新しいフレームがレンダリングされるたびにすべて処理されます。チルト関数は同様の期間にポーリングされますが、バッファリングは行われません。アダムス氏はまた、iPhone 3GSの磁力計が旋回情報を強化する手段として検討されたが、機能にアクセスするためのCPUコストが法外に高く、生成された入力が使用できないことが判明したという理由で却下されたことについても語った。
コアの Unreal Engine レンダラーに加えられた変更は 2 つあります。まず第一に、(既存の Open GL ドライバーを拡張することで) Open GL ES 2.0 への移行に対応する必要があり、第二に、モバイル チップセットが UE3 の通常のターゲット プラットフォームよりも大幅に性能が低いという事実を考慮する必要がありました。
Unreal のシェーダー サポートは完全に見直されました。このエンジンは数千のシェーダーで動作し、そのうち 5 ~ 20 個のシェーダーが 1 つのマテリアルにのみ使用されます。 Epic の解決策は、これらのシェーダを 1 つのテクスチャに「自動平坦化」すると同時に、PC エディタにプレビュー サポートを追加して、アーティストが最終的なアートが画面上でどのように見えるかを確認できるようにすることでした。
精度は失われますが (スペキュラー マップやノーマル マップのサポートと同様)、効果は同様に見え、最終的な作品は非常に小さな画面に表示されるため、品質の低下はそれほど明白ではありません。 Epic の通常のアート パイプラインは引き続き使用でき、ロードするテクスチャが少なくなり、モバイル プラットフォーム上で明らかに高速に実行されます。
Josh Adams 氏が指摘したもう 1 つの弱点は、Open GL ES 2.0 自体にありました。ゲームは、オクルージョン カリング (ユーザーには見えないポリゴンを消去) を通じてレンダリングを最適化します。オクルージョン クエリは現時点では ES ではサポートされていないため、Unreal Engine で作成されたレベルは結果的に小さくする必要があります。
今後、新しいハードウェア リビジョンが市場に投入されるにつれて、iPhone、iPad、および iPod Touch デバイスが徐々に強力になるとエピックは予想しています。新しいハードウェアは明らかにより強力であることを意味し、エンジン メーカーは、ある時点で鏡面反射光マッピングと法線マッピングのサポートが含まれること、および著名な「ヒーロー」アートワーク (たとえば、主人公) が完全なマテリアル サポートを得ることを期待しています。
また、エピックは、オクルージョン クエリの問題が Open GL ES 2.0 ドライバーの今後のバージョンで解決されることを期待しており、これにより、より大規模で複雑な環境が可能になるはずです。 UE3 と他のミドルウェア (GameSpy や PhysX など) との統合も、モバイル フォーマットに移植されるときと同様に iPhone エンジンに追加されます。
UE3 の iPhone バージョンが最初に発表されたとき、Epic は「別のプラットフォーム」もサポートすることを明らかにしました。それは明らかに最近発表された iPad です。 Josh Adams 氏は GDC の参加者に対し、Epic は現在 iPad テクノロジーにアクセスできず、新しいハードウェアがどの程度のパワーをもたらすかについてはまったく把握していないと述べた。
iPad 自体は 1GHz ARM A8 Cortex CPU を実行しており、iPhone 3GS に搭載されている同じ PowerVR SGX535 チップのより高クロックなバージョンと組み合わせられていると広く考えられています。 Epic によると、モバイル プラットフォームにおける UE3 のパフォーマンスのボトルネックは主に CPU にあり、その結果、グラフィックス チップにはまったく負荷がかかっていません。
そのため、iPhone 3GS で行った短い Unreal Championship デモは印象的でしたが、潜在的に iPad のアーキテクチャでは、iPad の画面の大幅な解像度の向上を考慮した後でも、かなり根本的なパフォーマンスの向上が見られる可能性があります。
Epic は Unreal Engine 3 を iPhone に導入するのに 2 人のチームで 4 人月の作業を要しましたが、Tegra 2 の作業内容が突然明らかになったことから、同社が自社のミドルウェアを広く普及させることに非常に興味を持っていることは明らかです。幅広いモバイルプラットフォーム。 UE3 が Android に移行するのかとの質問に対し、Josh Adams は明確にコメントを拒否しました…

「 iPhone 上の Unreal Engine: 完全なストーリー」に関するベスト動画選定!

How to use iphone as body mocap in Unreal Engine 5.1
Apex作りながらUnrealEngineの基本的な使い方解説【超初心者向け】

関連記事一覧