ポータル2にあるlinked_portal_doorの機能が必要です。UDKで少し検索しましたが、ほとんどの場合、ポータルガンの複製を試みています。UDK、CryEngine、Unity3D、または他のエンジンが同様のものを持っているかどうか誰かが知っていますか?私はソースを使用することに反対しているのではなく、私のオプションが何であるかを知りたいだけです。
ポータル2にあるlinked_portal_doorの機能が必要です。UDKで少し検索しましたが、ほとんどの場合、ポータルガンの複製を試みています。UDK、CryEngine、Unity3D、または他のエンジンが同様のものを持っているかどうか誰かが知っていますか?私はソースを使用することに反対しているのではなく、私のオプションが何であるかを知りたいだけです。
回答:
私は、ソースエンジンが、これをすぐにサポートできる唯一のエンジンであると確信しています。技術的な問題のいくつかについては、私がGamasutraで見つけた記事で読むことができます。将来の読者のためにここにコピーします。
「私たちが遭遇したもう1つの問題は、モデルの詳細レベル(LOD)などの距離ベースのシステムを変更する必要があったことです。私たちのゲームでは、距離はポータルの場所を基準にしているためです。
つまり、距離の計算は、1本の線ではなく、2点を結ぶ3本の線の選択になったということです。また、見通し線は、単一のポータルを複数回通過してそのターゲットに到達する可能性があります。
ソースエンジンは、カリングのために事前に計算された可視性の最適化を多数行います。ユーザーがポータルで可視性リーフをブリッジできるようにすると、さらに複雑なレベルが追加されます。
レンダリングを改善するために、ポータルビューのステンシルバッファ描画メソッドを実装しました。これにより、ポータルの再帰深度を処理するための柔軟性が大幅に向上しました。これにより、無限の数のポータル(パフォーマンスによってのみ制限される)をレンダリングできるようになり、「無限」の廊下がかなりきれいに見えました。
ステンシル描画は、HDRブルーミングなどのソースエンジンの他のテクノロジーと適切に統合する問題の解決にも役立ちました。ポータルではシーンをさらに2回レンダリングする必要があるため、ポータルのエッジに基づく特別な視錐台カリングや、ポータル描画用のレンダリングリストの最適化など、ポータルをできるだけ速くレンダリングすることに多くの努力を注ぎました。 」
また、同じブロックの反対側にポータルがあるなど、特別なケースがたくさんあることをどこかで読んだことを覚えています。ポータルの作成は簡単な作業ではありません。
編集:
これを含む他の良い記事を見つけました:
すぐに、ポータルをレンダリングし、プレーヤーと他のオブジェクトがポータル間をシームレスに移動できるようにするための、より堅牢な方法が必要であることに気付きました。これには、ソースエンジンのレンダリングと物理コードをもう少し掘り下げる必要があり、独自のポータルシステムをプログラムする必要がありました。
基本的に、Source物理システムに壁の片側のみに一時的な穴を開けるように指示する必要があり、ポータルの背後にあるすべてのものはマップの別の部分のジオメトリに接続されています。これを機能させ、ソリューションをリアルタイムで実行するために最適化することは、大きな課題でした。