我想通过漂亮的水仿真来增强我的小游戏引擎。首先,我需要找到一种在游戏中代表水的正确方法。不幸的是,我对代表的了解不多,所以我问你。我前段时间也曾问过类似的问题。但是由于我没有明确提出问题,答案是正确的,但不是我想要的。
在某些游戏中,水只是由高度确定的。例如,零高度以下的所有物体都在水下。我在大多数游戏中都看到了这种表现。问题是我希望在户外世界中不被淹没的洞穴以及每个湖泊和海洋的水位都不同的洞穴。
水的出现的另一种更精确的表示是颗粒。每个水滴都作为点存储在世界空间中。要渲染它们,我可以使用诸如metaball之类的技术,以便它们构建单个网格。这种表示形式对于现实主义非常有用,因为我可以轻松地计算出它们之间的动态关系。令人遗憾的是,没有机器可以实时计算大量的元弹。
还有其他方法可以代表发动机中的水吗?我想拥有动态湖泊,因此无法通过静态几何图形定义水域。例如,如果玩家修改地形以加宽湖泊,则水应填充该海湾,而湖泊的总水位应略有降低。