私の小さなゲームエンジンを見栄えの良い水のシミュレーションで強化したいと思います。それに取り掛かるには、ゲームで水を表現する適切な方法を見つける必要があります。残念ながら、私は多くの異なる表現を知りませんので、私はあなたに尋ねます。少し前に私が尋ねた同様の質問があります。しかし、問題を明確に定式化していないので、答えは正しいですが、私が探していたものではありません。
一部のゲームでは、水は高さレベルによって定義されます。たとえば、高さが0未満のすべては水中です。私はこの表現を(主に古い)ゲームで見ました。問題は、浸水していない屋外の洞窟で、湖や海ごとに水位が異なることです。
水の発生のもう1つの、より正確な表現は、粒子です。すべての水滴は、ワールドスペースのポイントとして保存されます。それらをレンダリングするために、メタボールなどの手法を使用して、単一のメッシュを構築することができます。それらの間のダイナミクスを簡単に計算できるので、この表現はリアリズムにとって素晴らしいでしょう。残念ながら、リアルタイムでメタボールの海を計算できるマシンはありませんでした。
エンジンで水を表す他の方法はありますか?動的な湖が欲しいので、静的なジオメトリによって水域を定義することはできません。たとえば、プレーヤーが地形を変更して湖を広げた場合、水はその湾を満たし、その湖の全体的な水位はわずかに低下するはずです。