デスクトップ アプリはエンドツーエンドで実行され、鮮明なインワールド テキストが表示されます
6 月の初日: 初回起動キーのオンボーディングにより、デスクトップ アプリが初めてインストールから再生までエンドツーエンドで実行されました。このエンジンは、3D ワールドでの鮮明なテキスト、双方向のオブジェクト関係、パフォーマンスのためのフレームごとのキャッシュ、アンチエイリアシングとテクスチャ方向の修正など、次々と成果を上げました。さらに、新しいローポリモデリングアシスタントも追加されました。
「デスクトップシェルが立つ」から「エンドツーエンドで使える」へ
デスクトップ シェルはつい先日立ち上がったばかりでしたが、「立ち上がる」と「使える」の間には一連の連鎖があります。バックエンドがバンドルされ、プレビューが埋め込まれ、サンプル ゲームがシードされ、最初の起動でユーザーがスムーズにキーを入力できるようにする必要があります。この日、そのチェーン全体がエンドツーエンドで接続され、デスクトップ アプリが初めて「インストール」から「プレイ」まで進むことができました。その間、エンジンは 1 日で長い進歩を遂げ (テキスト、リレーション、パフォーマンス、画質の修正)、コラボレーション側は新しいアシスタントを追加しました。この日は、「インストール可能で実行可能な」デスクトップ エクスペリエンスのループを終了し、エンジンとツールへの供給を継続し、6 月のオープニングは「使用可能でまだ成長中」という 2 つの軌道にしっかりと乗りました。
デスクトップ アプリはエンドツーエンドで実行され、初回起動キーのオンボーディングが行われます。
この日初めてデスクトップアプリが最初から最後まで実行された。バックエンド サービスをインストーラーに直接バンドルし、エンジン プレビューをウィンドウに埋め込み、初回起動時にサンプル ゲームを自動的にシードし、さらに一人称ゲームに必要なマウス ポインター キャプチャ (カーソルをウィンドウにロックしてビューを回転させる) を接続します。最も考慮されているのは初回起動時のエクスペリエンスです。オンボーディング オーバーレイにより API キーの入力が求められ、これはアプリを再起動せずにすぐに有効になります。バックエンドは新しく入力されたキーを実行環境にライブで適用します。ポートは環境変数を介してオーバーライドしてさまざまなマシンに適合させることができ、依存関係の配置に関する一般的な問題はアセンブリ前に自己修復され、ビルドの失敗を回避します。この日から、これを直接インストールして開いて再生できるデスクトップ アプリケーションとして使用することで、真にエンドツーエンドで動作します。これは、「ソースで実行する開発者」から「一般の人がアプリをインストールして使用する」までの重要なステップです。
エンジン: 3D 世界での鮮明なテキスト
このエンジンはこの日、「ワールドスペース テキスト レンダリング」を実現しました。3D シーンのどこにでも、拡大しても鮮明なテキストを直接配置できるようになりました。これは思っている以上に重要です。ゲームでは、標識、道路標識、キャラクターの上の名前、ヘルスバーの番号、フローティングダメージポップアップ、インタラクションプロンプトなど、世界のあらゆる場所にテキストが存在する必要があります。特別なグリフ表現を使用しており、テキストが近くに移動しても遠くに移動しても、拡大または縮小しても、ぼやけたピクセルに変化することなく、エッジを鮮明に保ちます。これ以前は、エンジンはジオメトリとテクスチャしか描画できず、テキストは明らかな隙間でした。これを埋めるということは、UI、プロンプト、数値フィードバックを備えたゲームを作成する際に、初めて適切なテキスト機能が追加されることを意味します。ほぼすべてのジャンルにとって、これは「世界を表現できる」から「世界の情報を伝えることができる」までの重要なステップです。
エンジン: 双方向リレーション + 統合エンティティ ライフサイクル + パフォーマンス キャッシュ
この日、エンジンは低レベルの「オブジェクト編成」におけるいくつかのことを強化しました。 1 つ目: オブジェクト間の関係が双方向に自動同期されるようになりました。親子リンクまたは所有権リンクを作成または解除すると、両端が自動的に一貫性を保ち、「親はこの子を要求しているが、子は親を認識していない」というダーティな状態がなくなり、構成と破棄が容易になります。 2 つ目: シーンとインスタンスのライフサイクルが統合されました。デタッチ、破棄、および完全なクリアは 1 つの秩序あるセマンティクスに従い、エッジ ケースでの削除の見逃しや残留物を回避します。 3 番目のパフォーマンス: フレームごとのレンダリング ステート キャッシュが追加され、フレームごとに再計算される内容をキャッシュして再利用し、不必要なオーバーヘッドを削減しました。これらは目に見えない内部作業ですが、オブジェクトが頻繁に追加、削除、結合されるにつれて、複雑なシーンがより乱雑になり、遅くなるかどうかを決定します。 「オブジェクトがどのように接続され、誕生し、消滅するか」に関するルールを確立することは、エンジンが実際のゲームの複雑さに耐えるための基礎となります。
エンジンの画質修正: アンチエイリアス + テクスチャ方向
この日は、見た目や雰囲気に直接影響するいくつかの画質の問題も修正されました。アンチエイリアスには 2 つの修正が加えられました。1 つはサンプリング オフセットの計算が間違っており、エッジ スムージングが不正確になりました。もう 1 つは、より微妙です。カラーがスペースを 2 回誤って変換され、画像の平坦な領域が全体的に明るくなり、色褪せてしまいました。両方を固定すると、エッジがよりきれいになり、色がより正確になります。手続き的に生成されたジオメトリでのテクスチャの上下が逆になる問題も修正されました。根本的な原因は、テクスチャ座標の方向とグラフィックス サンプラーの原点規則が一致していないことでした (1 つは上から数え、もう 1 つは下から数えます)。古典的な「1 回の反転でオフになる」落とし穴です。草などのテクスチャは逆さまに適用されていましたが、現在は右側が上になっています。これらはいずれも新しい機能ではありませんが、既存の機能の詳細を「見た目がちょうどいい」ように刻み込んでいます。多くの場合、これらの一見明白でありながら見落とされやすい細部においては、画質が優先されます。
新しいローポリモデリングアシスタント + 自動起動外部プラグイン
この日、コラボレーションの名簿にはもう 1 人のメンバーが加わりました。ヘッドレス レンダリングを使用したローポリ 3D モデリングに特化したアシスタントで、面数が少なく、シャープなエッジですっきりとしたスタイルの 3D モデルを生成するのを支援します。この 3D モデルは、多くのインディーズ ゲームで好まれ、迅速に作成でき、特徴的なアート スタイルです。このプラットフォームでは、外部ワークベンチ プラグインをシステムとともに自動起動することもできます。インストールされたサードパーティ ツールは、毎回手動で起動することなく起動時から動作するため、統合エクスペリエンスがスムーズになります。一部のツールが「不明なツール」を誤って報告する同期の問題も修正されました。根本的な原因は、ツール登録の同期がタイムリーでないか、冪等性が十分でないことであり、修正されるとツール呼び出しがより安定します。新しいモデリング アシスタント、プラグインのメンテナンスを軽減する統合の改善、および修正作成ツールの信頼性を向上させることで、「ゲームを作成するための専門 AI チームとの連携」をよりスムーズなものに磨き続けています。
この日が意味するもの
このような日を迎える 6 月の幕開けは、視覚的な表現力 (テキスト)、低レベルの順序 (オブジェクトの関係とライフサイクル)、パフォーマンスと画質の詳細においてエンジンを一気に前進させながら、「普通の人がアプリをインストールして使用する」ことを真にエンドツーエンドで実現するという明確なシグナルを発します。デスクトップ側が「開ける」から「使える」に移行するということは、ツールが実際のユーザーに届く形を持ち始めることを意味します。このエンジンが世界テキストを追加し、オブジェクトの関係を修正することは、このエンジンで実行できるゲームが「完全な作品」に近づくことを意味します。マスマーケット向けの作成プラットフォームは、人々が簡単に参加できるようにすること (デスクトップ アプリと初回起動時のオンボーディング) と、見栄えのするものを作成できるようにすること (継続的なエンジンの強化) の両方を行う必要があります。そしてこの日は、これら 2 つの最も基本的な方針のそれぞれについて確実な一歩を踏み出しました。