Stingray 1.8 (1.8.1267.0)リリースへようこそ。
Stingray 1.8 には、ライト ベイカーの新しい非インタラクティブ モード、Appkit でのスプラッシュ画面の組み込みサポート、Hololens プラットフォームの実験的なサポートが含まれています。WebAssembly と WebGL 2.0 の両方がリリースされたため、Web ブラウザでプロジェクトを実行するためのワークフローは正式に実験モードから卒業し、展開プロセスがこれまで以上にスムーズになりました。
さらに、Capture Frames ツール、Particle Editor、Asset Browser の操作性も向上しています。更新された GoogleVR テンプレートを使用すると、VR の有無にかかわらず実行できるハイブリッド アプリを作成できます。プラグインの開発者は、新しい優れたチュートリアルなどの、開始するために必要なすべてのものが含まれている、GitHub の新しいパブリック Stingray プラグイン リポジトリを確認する必要性を感じるでしょう。
これらの新機能の詳細については、下記の「新機能の紹介」セクションを参照してください。
このトピックのセクション:
このセクションでは、この Stingray の最新バージョンで使用可能となったすべての主要な新機能を説明します。
ここでは、解決済みのバグと既知の制限事項を、ワークフロー領域別に紹介しています。
このセクションでは、Stingray の最新リリースで判明している既知の新しい制限事項を説明します。
このセクションでは、Stingray の以前のバージョンで開始したプロジェクトの作業を行う場合に、最新バージョンに正常にアップグレードするための手順を説明しています。
Stingray で WebGL 2.0 または WebAssembly 技術を早期に採用していた方、または試用を待っていた方のために、プロジェクトを Web ブラウザで実行するためのワークフローが「実験的」な状態から卒業したとお知らせできることを嬉しく思います。この新しい改善されたワークフローのハイライト:
WebAssembly と WebGL 2.0 の両方がリリースされたため、Web ブラウザで Stingray を実行するために Web ブラウザの環境設定やフラグを変更する必要がなくなりました。Web ブラウザで Stingray を実行するためにブラウザの環境設定を変更していた場合は、変更を元に戻すことをお勧めします。
ブラウザに提供されたファイル URL を使用するのではなく、ローカルの Node.js HTTP サーバを使用して Web 用のプロジェクトを実行するようになったため、以前の Stingray のバージョンで行う必要があった一連の面倒な環境設定手順が不要になりました。また、仮想マッピングを使用することで URL がよりシンプルな値(localhost:3000 など)に縮小され、プロジェクト間で同一に保たれます。
Web ブラウザの indexedDB ローカルストレージを使用するようになったため、ページをリフレッシュするたびにコンテンツを再ダウンロードする必要がなくなりました。(プロジェクトを頻繁に更新する場合は、キャッシュをクリアする必要がある場合もあります。)
これらをサポートするために、Stingray は WebAssembly をサポートする Web ブラウザ(Chrome バージョン 57 や Firefox バージョン 52 など)を必要とするようになりました。
最新情報については、「Web で開始する」を確認してください。
パーティクル エフェクト システムとコントローラをコピーして貼り付けることができます。システムまたはコントローラを選択し、右クリックして Copy (および Paste)を選択するか、[Ctrl]+[C]、[Ctrl]+[V]のホットキーを使用して、システムをコピーして貼り付けます。
システムをドラッグ アンド ドロップして、パーティクル内のエフェクトの順序を変更します。
新しいパーティクル エフェクトを作成すると、既定のパーティクル マテリアルが作成されます。
「パーティクル エフェクトを作成して編集する」を参照してください。
オンライン アセットを検索すると、Asset Browser のツリー ビューにある Online Assets の横に結果の数が表示されます。Search フィールドの Clear アイコンをクリックすると、Search の結果を消去できます。
また、Online Assets ビューから Locate in Project という新しいオプションを使用して、プロジェクトにインストールされているオンライン アセットを見つけることもできます。インストールされているアセットを選択して(緑色のチェックマークで示されます)、 アイコンをクリックするか、右クリックして Locate in Project を選択します。「Asset Browser」を参照してください。
Capture Frames ツールを使用して、ストーリー内のキャプチャ範囲を定義できるようになりました。修正後にストーリー全体を再キャプチャするのではなく、フレームまたは秒単位でキャプチャ範囲を指定することで、すぐに再キャプチャします。
テクスチャのロードとフィルタリングが改良された Texture Manager について説明します。
新しい非インタラクティブなライト ベイク処理モードが Stingray ベイカーに追加され、メモリ消費のコントロールが向上しました。シーン内のすべてをベイク処理して進行状況を表示する代わりに、この新しいモードでは、シーン内の 1 つのオブジェクトを完全にベイクして、ライトマップを出力し、メモリをプロセスに保存します。このモードをオンにするには、Light Baking ウィンドウで Interactive ベイク処理を無効にします。また、非インタラクティブ ベイク処理は、コマンド ラインからベイク処理セッションを開始するときの既定のベイク処理モードです。「コマンド ラインからライトマップのベイク処理をトリガする」を参照してください。
このリリースの Stingray には、3ds Max 2018 および 3ds Max 2017 をサポートするための、更新された Stingray DCC Link プラグインが同梱されています。「Maya、Maya LT、3ds Max との相互運用性」を参照してください。
コンテンツの大部分がバックグラウンドでロードされている間に、簡単なスプラッシュ画面でプロジェクトを開始する方法を知りたいという要望がお客様から多数寄せられました。そのため、Appkit にロード画面のサポートが追加されました。
Appkit を使用する Stingray テンプレートの 1 つに基づいて新しいプロジェクトを開始すると、プロジェクトを実行するたびに「Powered by Autodesk Stingray」というロード画面から開始されます。このスプラッシュ画面をカスタマイズして、独自のロゴやプロジェクトに役立つ情報を表示することができます。
詳細については、「Appkit のロード画面を使用する」を参照してください。
起動時に Appkit がロードする Lua スクリプトの名前を設定できるようになりました。settings.ini ファイルで、script_data オブジェクトを見つけるか作成し、project_script 設定を追加します。たとえば、次のようになります。
script_data = { project_script = "scripts/lua/my_project/boot_script" }
Google Cardboard または Google Daydream ヘッドマウント ディスプレイを使用している場合は、右上の歯車アイコンをタップすると、電話端末の VR 設定をすばやく調整できます。新しい Lua 関数も追加されました。
注: 現在は Android デバイスのみがサポートされています。
GoogleVR テンプレートの GoogleVR API から新しい機能が公開されました。Lua を使用して、ランタイムに VR モードを開始または終了できるようになりました。これにより、VR の有無にかかわらず実行できるハイブリッド アプリケーションがサポートされます。VR 立体視表示から非 VR 表示に切り替えるにはプロジェクトの Lua 関数 Project.shutdown()を呼び出し、VR モードに戻すには Project.on_init_complete()を呼び出します。
VR SLI は VR アプリケーションのパフォーマンスを向上し、立体視レンダリングを高速にするために複数の GPU を使用します。この強化されたパフォーマンスを利用するには、VR テンプレートで作業をするときに、2 つの新しい設定 disable_implicit_sli および nv_vr_sli_enabled を settings.ini ファイルに手動で追加します。詳細については、「Stingray エンジンの settings.ini ファイルのリファレンス」を参照してください。
Script Editor を使用して、次のような Stingray リソースを開いて編集することができます
HoloLens プラットフォームの初期サポートが追加されました。詳細については、「HoloLens で開始する」を参照してください。
まだ見ていない場合は、GitHub で新しいパブリック Stingray プラグイン リポジトリを確認してください。Visual Studio プロジェクトや、C/C++ を使用してエンジンとエディタを拡張するための構築ツールなどの、Stingray を拡張する新しいプラグインをすぐに作成できるようにするために必要なものがすべて含まれています。
ここでは、この詳細なチュートリアルを必ず読んでください。エンジンとエディタにフックするフル機能のプラグインを作成してパッケージ化するための基礎として、プラグイン リポジトリを使用する際に必要なすべての手順について説明されています。
プラグイン記述子ファイル形式の優先拡張子として、stingray_plugin を標準化することに決定しました。既に .plugin ファイルを作成またはインストールしている場合は、下位互換性により .plugin が引き続き認識されます。ただし、今後の開発のために、.stingray_plugin を代わりに使用することをお勧めします。
.dll ファイルを使用してランタイム エンジンを拡張する Stingray プラグインを作成した場合に、.dll をエンジンの plugins フォルダにコピーする必要はなくなりました。
新しい runtime_libraries 拡張子を使用して、.stingray_project ファイル内の .dll ファイルへのパスを設定します。プラグインがエディタにロードされている間に、(Test Level または Run Project を使用して)エディタからスポーンしたエンジン インスタンスが自動的にライブラリをロードします。
新しい基本プラグイン リポジトリのこの設定例を確認するか、SDK ヘルプで関連情報を確認してください。
エンジンの実行可能ファイルが --lua <code snippet> コマンド ライン パラメータを受け入れるようになりました。このパラメータを含めると、Lua 環境内のコマンド ラインで指定したコード スニペットをエンジンが自動的に実行します。プロジェクトの Lua ブート スクリプトから init()関数を呼び出した後、初めて update()を呼び出す前にコードを実行します。
これは、Connections パネルから複数のエンジンのインスタンスを起動して、それぞれ異なる方法で動作させる場合に便利です。
Motion Blur が既定のシェーディング環境で無効になりました。(「シェーディング環境のプロパティ」を参照してください。)Motion Blur をオンにすると、カメラが動いているときに少しぼかしたエフェクトを作成することができます。
エディタの使用中に[F1]を押すと Stingray ヘルプが開くようになりました。
Lua の SaveSystem と C の SaveSystemCApi が、IdString32 オブジェクトと IdString64 オブジェクトを保存してロードできるようになりました。Lua では、IdString32Box オブジェクトと IdString64Box オブジェクトを保存してロードすることもできます。
既知の制限事項として Stingray 1.7 に影響を与えた最新の問題は以下のとおりです。これらの問題は非常に悩ましいものでした。Stingray 1.8 で修正されたことをお伝えできることを嬉しく思います。
このセクションでは、Stingray の既知の制限事項と回避策について説明します。
「修正事項」セクションに特に記載のない限り、このリリースには以前のバージョンの「Stingray リリース ノート」に記載される「既知の制限事項」と同じ内容が適用されることにご注意ください。
GAME-19426 iOS のダンボール VR ビューが、iPhone 7 Plus の画面の一部でしかレンダリングされない
Stingray 1.8 のレンダリング バックエンドを iOS の OpenGL から Metal に変更しました。googlevr SDK を使用して iOS Cardboard のサポートを実装しています。この SDK には追加設定を行っていない Metal のサポートが含まれていないため、一時的に無効になっています。詳細については、この既知の問題のリンクを参照してください。
GAME-22249 iOS で実行しているときにすべてのテンプレートの Scaleform UI がない
回避策 : ありません。
GAME-20689 Wwise エディタからのリモート同期では Android 上の Stingray に接続できない
Android デバイス上で実行する Stingray エンジンのインスタンスに Wwise エディタのリモート同期機能を使用して接続しようとすると、デバイスへの接続は失敗します。場合によっては、デバイス上のエンジンがクラッシュすることもあります。現時点では、この問題に対する回避策はありません。
GAME-22069 ミニレンダラーを使用しているときに、ベイク処理された反射プローブが正しく機能しない
ミニレンダラーを使用しているときに反射プローブのキューブマップが正しく生成されず、VR テンプレート プロジェクトで反射が薄れます。
回避策: 既定のレンダラーを使用し、キューブマップを生成するようにプロジェクトの settings.ini ファイルを修正します。プロジェクトを閉じ、settings.ini で mini_renderer に戻し、プロジェクトを再度開きます。
GAME-22597 新しくスポーンされたシェーディング環境エンティティが機能しない
シェーディング環境エンティティを破壊し、新しいエンティティを再スポーンすると、変更が行われません。新しいシェーディング環境エンティティをスポーンした後に、Particle Editor ビューポートでの背景レベルの切り替えや、ゲームでのシェーディング環境の切り替えが正しく機能しなくなります。
回避策 : ありません。
注: この制限は 3ds Max Interactive で修正されています。
Stingray を含むオートデスク製品の完全なインストール ガイドが、Stingray オンライン ヘルプ(こちら)に含まれています。
このセクションでは、Stingray の旧バージョンを使用しているユーザ向けに、特定のアップグレード手順を必要とする改善点と修正事項について説明します。
Wwise エクスポータ ツールが更新され、Stingray エディタでコンパイルされる前にサウンド バンクの生成が完了するようになりました。Wwise プロジェクトが書き込み可能であれば、プロジェクトを Stingray 1.8 にロード/移行すると、サウンド バンクが自動的に再生成されます。エラーが発生した場合は、プロジェクトを再ロードするか、Wwise 設定ファイルを更新します(File > Settings > Update Wwise Project Settings)。
このリリースの Lua API のすべての新しい要素、変更された要素、削除された要素の完全なリストについては、「バージョン履歴」を参照してください。
プロジェクト内の API 要素が変更または除去された場合は、それに応じてコードを調整する必要があります。
Unit.set_animation_bone_mode()によって受け入れられ、Unit.animation_bone_mode()によって返される設定名が変更され、接頭辞 delta_ が除去されました。これにより、各設定の効果が分かりやすくなります。
VR でワールドをスケールせずにスペースのスケーリングを追跡するには、Oculus.set_tracking_space()と SteamVR.set_tracking_space()を使用します。これにより、ワールド空間に影響を与えるフォグやシャドウなどのスケールされたエフェクトによる問題が修正されます。関数 Oculus.set_tracking_space_pose()と SteamVR.set_tracking_space_pose()は廃止予定です。トラッキング空間をスケールするときは、Unit.set_local_scale()を使用してコントローラを手動でサイズ変更する必要があることに注意してください。
このリリースのすべての新しいフロー ノード、変更されたフロー ノード、削除されたフロー ノードの完全なリストについては、「バージョン履歴」を参照してください。
FlowNodeApi 関数で、フロー ノードとイベント名を特定するために、const char* の代わりに数値の ID 値が必要になりました。stingray_plugin_foundation で IdString32()クラスを使用することで、文字列からこの ID を生成することができます。詳細については、SDK ヘルプの「リソース名と ID について」を参照してください。
エディタの ConfigDataApi が変更され、stingray_plugin_foundation の DynamicConfigValue クラスとの連携が強化されました。この API を使用してエディタとプラグインの間でデータを交換するエディタ プラグインを作成した場合は、新しい API に合わせてコードをリファクタリングする必要があります。