Articles of 地形

无限的地形阴影

我正在创造一个无限的地形引擎,它会产生分形或噪音的地形。 如果事先不知道在太阳前会呈现什么,我怎么能在这个地形上为太阳制造dynamic的阴影。 我的地形:太阳是唯一的光,它是定向的,我的地形是在一个位于相机之前的飞机上产生的,平截头体被剔除并且适合于观看平截头体的大小。 它是用生成的噪声纹理进行高度映射的,并在其上使用曲面细分着色器。 video: http : //www.youtube.com/watch?v = tk6yFwYusOsdynamic阴影与无限的地形。

佩林噪声变化

目前我正在制作一个体素生存游戏。 大约一个月前,我开始使用Perlin噪音程序性地生成地形。 我了解如何使用和应用它的大部分。 但是我不明白如何改变地形结构。 让我说,你可能会理解,因为“我没有语法好”。 通过改变频率和幅度,我知道我可以改变由此产生的地形,从连绵起伏的丘陵变成锯齿状的山峰。 然而,最终的结果将永远是一样的:要么永不落山,要么永不落山。 我真不明白怎样把这两个“地形结构”混合在一起,才能得到丘陵地区和山地地区。

倾斜的多边形对撞机2D造成箱对撞机2D在滑动的同时碰撞“碰撞”

我正在做程序上的地形生成。 到目前为止,我已经创建了网格,并附加了一个2D多边形对撞机。 地形由丘陵组成。 这样做之后,我把一个二维刚体与一个二维盒子对撞机一起代表玩家。 当我把球员放在上面,让他一直滑下去,有时他不能正常滑动,而是撞上山坡,突然间自己跳起来,就好像他绊倒了一样东西(尽管没有什么那里)。 奇怪的是,它不是一直在发生,有时候也是如此。 即使我让他在同一个地方滑倒,他再也碰不到了,除非在极less的情况下,他不会再这样做。 什么可能导致这个?

Unity – 从Blender导入的网格总是被破坏

我想要将我在Blender中制作的地形网格导入Unity,但是Unity似乎无法正确加载它。 这可能是什么原因,我该如何解决?

如何获得更温和(像云一样)的噪音?

最近我开始玩perlin噪音的地形。 使用这个库我可以使A相当快。 然而,它是波澜起伏,是可取的。 我想要达到的是B,在那里你可以看到更柔和的噪音更令人信服的斜坡。

使用2D地图进行3D游戏的等级编辑

我们正在尝试为3D游戏制作关卡编辑器,这个游戏涉及在室外环境中行走。 在很多方面,高度图满足游戏的需求,但是在很多方面也存在不足,所以我们正在考虑对高度图概念进行各种改进,但是很难find解决这个问题的简单方法。 一开始,一个高度图有很大的难度和尖锐的边缘。 只要一切顺利,高度图看上去很美,但是沿着垂直的悬崖,沿着道路的边缘,以及高度图的分辨率变得相关的任何地方,都会变得锯齿状。 这些问题的明显解决scheme是在高度图顶部添加一个vector绘图层,所以我们可以精确地定义垂直悬崖和道路的曲线,并使用它将专门的多边形插入到地形的网格中。 垂直悬崖甚至可以是地形网格中的一个简单的间隙,可以用另一个网格填充,这样我们就可以渲染悬崖面,不过我们喜欢这样做,绕过了海格图通常具有的局限性。 高度贴图的另一个问题是手工绘制平滑斜坡的难度。 对于游戏的目的,地形应该是一个缓坡或一个垂直的悬崖,所以没有模棱两可的问题,玩家是否可以穿越它。 我们可以扫描高度图以检测过度陡峭的斜坡并显示错误消息,但我们真正想要做的是给用户绘制工具,只会绘制可接受的斜坡。 但是,这怎么办呢? 也许传统的栅格高度图会导致比解决更多的问题,所以需要完全不同的高度图。 也许不是添加一个vector绘图层,而是将整个高度图作为一个vector图像来表示,并且用一组多边形表示,每个多边形都有一定的高程。 这样我们就可以自动获得平滑的曲线,为垂直悬崖和平坦的土地创建网格是微不足道的,但是在编辑器中呈现斜坡并渲染它们成为一个挑战。 我们已经考虑过在第二层绘制多边形的混合工具,无论这些混合多边形出现在哪里,底层的地形多边形都会平滑地合并在一起。 具有共享边缘的多边形将从与这些边缘垂直的斜坡以一定角度倾斜,从而使斜坡可行。 不幸的是,生成网格的几何graphics是困难的,这意味着悬崖是每个海拔变化的默认值。 由于用户画线来阻止玩家的通过似乎更自然,而不是画出玩家可以穿越的地方,所以另一种方法是让用户像在栅格高度图中那样在另一图层中画出悬崖线,但是现在那些悬崖峭壁将会阻止地形变成纯净的连绵起伏的丘陵。 将高度图的每个多边形设想为具有垂直边的沙子的支柱,并且当从地graphics成网格时,沙子从其支柱stream出,除了遇到悬崖线并且被迫stream动之外,在每个方向上形成平滑的斜坡周围。 除了悬崖之外,任何地方都需要有足够的坡度向上走,所以当悬崖上有缝隙的时候,沙子需要stream过并在另一边铺开。 我们对如何实现这个目标有一些想法,但这仍然是一个重大的挑战。 最后,我们可以用一个斜坡块来表示斜坡。 编辑将是容易的,生成网格将是容易的,所有的问题将被解决,但被限制在一个网格肯定会牺牲我们希望拥有的自由。 除非没有其他解决scheme是可行的,否则我们不希望受限于轴alignment。 最终的问题是:是否有切实可行的方法来实施我们正在考虑的任何方法,还是我们从完全错误的方向来实现?

使用纹理数组的多纹理algorithm

我想multitexture地形网格。 我有纹理数组中的16个纹理。 对于每个顶点我有每个纹理的权重。 我只关心每个顶点的两个最显着的纹理。 例如,如果一个纹理的草的强度为0.6 ,土的强度为0.3 ,岩石的强度为0.1 ,那么可以忽略岩石并将草和土的总和归一化到1.0 。 最简单的解决scheme是存储每个顶点中每个纹理的权重,并基于每个纹理的权重混合所有纹理 for(int i = 0; i< 16; i++) color += sampled_ith_textue * ith_texture_weight; 它可以工作,但是由于它需要16个样本,所以速度很慢。 使用normalmap,glossmap,heightmap和…它可以像2 * 16或3 * 16样本一样上升。 那么有没有更好的解决scheme呢? 正如我所说,只考虑两个最重要的纹理是很好的。 Nvidia有一个例子,只是做了这个( 页面 ),但是当两个相邻的顶点有不同的纹理,它会导致文物。 有什么建议么?

使用网格在地形上绘制网格 – Shader Depth和Z-Buffer

我想要实现的是在地形上渲染一个(巨大的)网格。 为此,我正在使用四边形生成的网格,其中每个图块的顶点Y值与地形相同,以便像地形一样“塑造”这个网格。 我的问题是,这个网格应该总是呈现在地形,保持每个其他对象呈现在这个网格的顶部。 正如你应该猜到的,我是着色器编程的初学者。 所以这里有一些上限: 使用简单的不亮透明着色器 (使用ZTest,ZWrite和Cull值)渲染网格: 正如你所看到的那样,z格斗有问题,当格子总是被画在最上面的时候。 因为地形有很多的“峰”,四边形应该是有很多顶点的平面才能够跟随地形(或者上升很多的网格会使它漂浮在地形)。 将ZTest更改为始终 : 在这里我遇到了这样的问题:山背后的瓦片在不应该的时候仍然被绘制出来,这是因为它忽略了z-sorting,因此也渲染了其他物体。 我已经尝试使用另一个着色器通道首先写入到z缓冲区,以避免在山背后渲染瓦片没有成功。 我想我错过了与地形着色相关的东西,但我不知道它是什么。 任何帮助都感激不尽。

高度地图为故事驱动的地形

我们正在开发一个独立的故事驱动的冒险游戏,我们的作家正在写具体地理到她的故事。 有没有关于如何创建特定地理的高度图的信息? 我已经search了一下,没有什么具体的我可以find控制绘画创建一个非常具体的地理。 我已经把黑常识和纯白的常识做法作为最高点,但是迄今为止我们的结果是微不足道的。

在Unity3D中创建一个2D地形

我正在尝试在Unity中制作可在“场景”视图中编辑的2D地形。 我遇到了这个github仓库,这是非常符合我的要求,但我不知道我能做些什么才能让它在顶层有另一个纹理来创建平台的幻想。 我已经广泛search,没有find任何。 我不是在寻找付费的解决scheme,如Ferr2D,Zippy地形2D地形造物主等。我希望地形能够有曲线和样条等谢谢。