Stingray 1.9 リリース ノート

Stingray 1.9 では、温度設定および IES ライトのプロファイルを含む物理ライトが導入されたことにより、シーン内にさらにリアルなライト分布を作成できるようになりました。また、カスタム トーン マッピングが追加され、クリア コート マテリアルが更新されたことにより、レンダリングのコントロール機能と精度も向上しました。

その他の機能強化には、Asset Browser でアセットにお気に入りのマークを付けて、これらをいつでも見つけやすくする機能などがあります。Stingray エディタで作業しているときに、アセットは接続されたすべてのエンジンで自動的に更新されるようになりました。Capture Frames プラグインの更新に伴い、追加コーデックのサポートのために設計された拡張インタフェースが使用できるようになったため、スクリプト開発者やプログラマはプロジェクトの Lua コードを Visual Studio Code エディタを使ってデバッグできるようになりました。

このリリースには、ソースを購入したお客様がアクセスできる実験的な HoloLens プロジェクトも用意されています。

これらの新機能の詳細については、下記の「新機能の紹介」セクションを参照してください。

重要: Stingray のベータ版を使用している場合は、既存の Stingray データをバックアップするか、プロジェクトのコピーを使って作業することを強くお勧めします。

このトピックのセクション:

新機能


物理ベースのライト

新しい Physical Light エンティティを使用すると、実際のライトのデータを使用して、シーン内にリアルなライト分布を作成することができます。Create パネルから Physical Light を追加し、Property Editor の新しいスライダを使用して Brightness および Temperature を調整することができます。実際の光源の分布をエミュレートするには、IES ライトのプロファイルを読み込んで、ライトに割り当てます。物理ライトはライト ベイカーと完全に互換性があるため、シーンをベイク処理するとライトが表示されます。「物理ベースのライティング」および「物理ライトを作成する」を参照してください。

Capture Frame ツールの更新

Capture Frames ツールが更新されて、OpenEXR 形式(.exr)を使用する独立したエンコーダ プラグインを備えたフレーム キャプチャ インタフェース プラグイン ツールになりました。このエンコーダ プラグインを他のエンコーダ形式に対応するように拡張して、さまざまなファイル形式でフレームをキャプチャすることができます。

Asset Browser のお気に入り

使用頻度の高いアセットやフォルダは、お気に入り として Asset BrowserFavorites フォルダに追加することができます。お気に入りアイコン をオンにするか、Asset Browser 内で右クリックして Add to Favorites を選択して、アセットまたはフォルダにお気に入りのマークを付けます。アセットやフォルダを Favorites フォルダにドラッグ アンド ドロップすることもできます。詳細については、「Asset Browser」を参照してください。

Texture Manager の改善

以前のリリースからの継続的な改善により、Texture Manager ツールはこれまでよりもさらに見やすくなりました。プラットフォーム リストがコンパクトな外観になり、テクスチャ ビュー リストに追加されたヘッダーによってテクスチャを体系的に表示できるようになりました。Texture Manager では、テクスチャをサイズ、修正日、名前でソートして整理することができます。また、Texture Manager の UI レイアウトの状態が調整したとおりに保持されるようになりました(有効化されたフィルタや、サイズ変更したフィルタ ビューなど)。

Visual Studio Code でプロジェクトをデバッグする

オートデスクは、完全な機能を備えた専用の開発およびデバッグ環境でプロジェクトをデバッグしたいというお客様からの要望に耳を傾けてきました。本リリースでは、オートデスクが提供する Visual Studio Code 用の Stingray 拡張機能を使用して、Lua コード内でのブレークポイントの設定とトリガ、コードのステップ実行、変数値のトレース、エンジンへのコマンドおよび Lua の送信、コンソール メッセージの読み取りなどを行うことができるようになりました。

この新しいワークフローはオートデスクにとって朗報であり、Stingray エディタに統合されていた古い Script Debugger が削除されたことについて、お客様から高い評価が得られると確信しています。

FBX バージョン 2018.1.1

このリリースの Stingray には、さまざまな改善やバグ修正が行われている、FBX の最新バージョン(2018.1.1)が使われています。

更新された DCC 相互運用性プラグイン

このリリースには、Maya 2018 および Maya LT 2018 をサポートするための、更新された Stingray DCC Link プラグインが含まれています。プラグインの詳細については、「Maya、Maya LT、3ds Max との相互運用性」を参照してください。

クリア コートの改善

クリア コートのエネルギー節約率が高まり、クリア コート マテリアルを使用しているときにブルームを抑えられるようになりました。

カスタム トーン マッピング

新しいシェーディング環境プロパティを使用すると、既定のトーン マッピングを無効にしたり、カスタム プラグインを通してトーン マッピング拡張したりできます。「シェーディング環境のプロパティ」を参照してください。

注: カスタムのポスト エフェクト機能を実装している場合を除き、既定のトーン マッピングは有効なままにしておくことをお勧めします。

接続されたエンジンの自動リフレッシュ

プロジェクトのリソースを変更しなければならない場合、ターゲット プラットフォーム上のエンジンで実行されているコンテキスト内にその変更が表示されていれば、それらの変更を正しく行うことが簡単になりました。

このリリースでは、エディタ内で作業しているユーザが、Stingray エンジンのライブ インスタンス(Test Level ボタンまたは Run Project ボタンを使用して起動したエンジン)に接続している場合、プロジェクト リソースに行ったすべての変更が自動的に検出され、変更されたこれらのアセットが可能な限り再ロードされます。

(レベルやスクリプト ファイルなどの一部の種類のアセットでは、追加手順がいくつか必要になることがあります。詳細については、「リソースの再ロード」を参照してください。)

実験的な機能: HoloLens の更新

その他の新機能

開発者向けの新機能

TypeScript および JavaScript API のリファレンス

オートデスクは、エディタのフロントエンド JavaScript コードを TypeScript に移行する作業を開始しました。今のところ、リポジトリ内で独自のソース コードを管理する方法を中心に変更が進められているため、プラグイン開発者としての作業が大幅に変わることはありません。今までどおり、プレーンな JavaScript でエディタ プラグインを実行し続けることができます。

ただし、この変更に伴い、古い JavaScript API リファレンス文書を排除する作業も進められています。古い文書を排除しても大きな損失にはなりません。公開されている API 全体がこれらの文書に完全に記載されているわけではなく、ユーザがエディタのソース ファイル内で関数を直接検索しなければならないことが頻繁にありました。

オートデスクは近い将来に、新しい TypeScript コード内にある組み込みタイプの情報を利用して、これまでよりもはるかに完全で使いやすいリファレンスを生成できるようになることを願っています。

エディタ プラグインのネイティブの zip サポート

stingray.fs JavaScript API に、次のような .zip ファイルを操作するためのサポート機能が組みこまれるようになりました。

stingray.fs.zip(folderPath:string, zipFilePath: string): boolean

folderPath の内容から新しい zip ファイルを作成し、新しい zip ファイルに zipFilePath という名前を付けます。戻り値は、新しいファイルが書き込まれたかどうかを示します。

stingray.fs.zipinfo(zipFilePath: string): array.<{path:string, size:number}>

zip ファイル zipFilePath を読み取り、この zip に含まれているすべてのオブジェクトの配列を返します。配列内の各オブジェクトには、zip 内のファイル名を示す path メンバー、および圧縮されていない場合のサイズが格納されている size メンバーがあります。

stingray.fs.unzip(zipFilePath:string, destinationPath: string): boolean

zip ファイル zipFilePath を読み取り、その内容を destinationPath フォルダに抽出します。戻り値は、抽出が正常に完了したかどうかを示します。

JavaScript から Lua を実行して Promise にその結果を取得する

JavaScript engine-service は、evaluateScript() という新しい関数を提供します。この関数は、エンジンの Lua 環境内で Lua スクリプトを実行し、この Lua スクリプトの結果にアクセスする際に使用できる Promise を返します。これにより、エディタが提供する他の JavaScript サービスを呼び出す場合と同じ非同期メカニズムを使用できるため、プラグインの JavaScript コードで Lua スニペットの結果を取得および使用することが大幅に簡単になります。

たとえば、次のようになります。

let snippet = "6 * 8";
engineService.evaluateScript(snippet).then(
    function (result) { console.log("The result is: " + result); }
);

先頭に戻る

修正事項

以前の既知の制限事項:

Stingray 1.8 で既知の制限事項として操作に影響を与えていた問題は次の通りです。これらの問題は非常に悩ましいものでした。Stingray 1.9 で修正されたことをお伝えできることを嬉しく思います。

Asset Browser

一般

オーディオ/Wwise

Deployer/接続

エンジン コア

フロー

相互運用性

Level Editor

パーティクル

レンダリング

Texture Manager

ツールの基礎

先頭に戻る

既知の制限事項


このセクションでは、Stingray の既知の制限事項と回避策について説明します。

修正事項」セクションに特に記載のない限り、このリリースには以前のバージョンの「Stingray リリース ノート」に記載される「既知の制限事項」と同じ内容が適用されることにご注意ください。

: Stingray のベータ版を使用している場合は、既存の Stingray データをバックアップするか、プロジェクトのコピーを使って作業することをお勧めします。

先頭に戻る

アップグレード要件


Stingray を含むオートデスク製品の完全なインストール ガイドが、Stingray オンライン ヘルプ(こちら)に含まれています。

このセクションでは、Stingray の旧バージョンを使用しているユーザ向けに、特定のアップグレード手順を必要とする改善点と修正事項について説明します。

シェーダ コンパイラの更新

D3D11 シェーダ コンパイラから D3D10 互換性フラグ D3D10_SHADER_ENABLE_BACKWARDS_COMPATIBILITY が除去されました。この変更は、カスタム シェーダを使用するユーザに影響します。この互換性フラグがなくなったことで、シェーダ コンストレイントは静的であると認識されるようになり、変更できなくなりました。値を変更するには、ローカル変数を作成する必要があります。

クリア コートの変更点

クリア コートを改善するための更新が行われました。その結果、Output ノードの動作が変更されました。プロジェクトにクリア コート マテリアルが含まれている場合は、コンテンツを調整しなければならない可能性があります。

エンティティおよびコンポーネント API の変更点

このリリースでは、Lua API および C API でのエンティティ コンポーネントの操作方法が変更されました。各コンポーネントを所有しているエンティティ内で一意の ID が必要になりました。この ID は、コンポーネント マネージャから個々のエンティティ インスタンスの参照を取得する場合に使用します。

これらのコンポーネント ID とコンポーネント インスタンスの仕組みの概要については、「ゲームプレイ中にエンティティを操作する」ページを確認してください。

Lua API または C API のどちらかを使用してエンティティを操作している場合は、コードを更新しなければならない可能性があります。

これらの変更が行われた理由のバックグラウンドについては、ブログの投稿を参照してください。

Lua API の変更点

このリリースの Lua API のすべての新しい要素、変更された要素、削除された要素の完全なリストについては、「バージョン履歴」を参照してください。

プロジェクト内の API 要素が変更または除去された場合は、それに応じてコードを調整する必要があります。

主な変更点は次のとおりです。

Xbox One XDK バージョン

Stingray では、XDK の October 2016 QFE 2 リリースが必要です。

PlayStation 4 SDK バージョン

Stingray は、バージョン 4.0 の PlayStation 4 SDK を必要とします。

古いバージョンの SDK からこのバージョンにアップグレードするときに問題が生じた場合は、インストール前に C:¥ProgramData¥SCE フォルダから既存ファイルを削除してください。

開発者向けのプラグイン SDK の変更点

このセクションには、Stingray SDK を使用して旧バージョンの Stingray のプラグインを作成した場合に影響を受ける可能性がある、このリリースの主な変更点をまとめています。

エンジン C API

重要な注意事項: 以前のバージョンに対するバイナリ互換性は保証されません。C プラグイン API を使用してエンジンのプラグインを作成した場合は、このバージョンの Stingray に対してプラグインが適切に機能することも、機能しないこともあります。前のバージョン以降に変更された API がコード内で使用されていない場合は、このプラグインが引き続き機能する可能性があります。ただし、最新バージョンの Stingray SDK ヘッダー ファイルを取得し、新しいヘッダーに対してプラグインの .dll を再コンパイルすることを強くお勧めします。

このリリースのエンジン プラグイン API および C スクリプト API の新しい要素、変更された要素、削除された要素の完全なリストについては、「バージョン履歴」を参照してください。

エディタ C API

このリリースのエディタ プラグイン API のすべての新しい要素、変更された要素、削除された要素の完全なリストについては、「バージョン履歴」を参照してください。

このリリースでは、エディタの API に大幅な変更はありません。アップグレード要件はありません。バイナリ互換性および API 互換性が必要です。

エディタの JavaScript モジュールのパス

プラグインから、プラグイン付属の別のスクリプト モジュール、または別のプラグイン内のスクリプト モジュールを参照する必要がある場合は、require() および define() 呼び出し内で該当するモジュールを参照するときに使用するパスを調整しなければならない可能性があります。

以前のリリースでは、モジュールのパスの先頭にプラグインの名前を配置することができ、require.js によってパスが自動的に解決されていました。このリリースでは、次のようになります。

先頭に戻る