terrain相关内容

基本双重轮廓理论

我一直在谷歌上搜索,但找不到任何基本的东西.在最基本的形式中,如何实现双重轮廓(对于体素地形)?我知道它做什么,为什么,但不明白如何去做.JS 或 C#(最好)都不错.有没有人用过 Dual contouring 并能简单解释一下? 解决方案 好的.所以今晚我很无聊,决定尝试一下自己的双重轮廓.正如我在评论中所说,所有相关材料都在以下论文的第 2 部分: 原始版本:http://ww ..
发布时间:2022-01-04 10:00:15 C#/.NET

WebGL - 带高度图的纹理地形

我正在尝试使用 WebGL 创建 3D 地形.我有一个带有地形纹理的 jpg,还有另一个带有高度值(-1 到 1)的 jpg. 我查看了各种包装器库(如 SpiderGL 和 Three.js),但我找不到合适的示例,如果我这样做(如在 Three.js 中),代码没有记录,我可以'不知道怎么做. 谁能给我一个好的教程或例子? Three.js 中有一个例子 http://mrd ..
发布时间:2021-12-31 18:45:16 前端开发

OpenGL - 如何计算地形高度网格中的法线?

我的方法是计算两个分别平行于 X 轴和 Y 轴的切向量.然后计算叉积以找到法向量. 切向量由穿过两个最近线段中点的直线给出,如下图所示. 我想知道是否有更直接的计算,或者在 CPU 周期方面成本更低. 解决方案 通过使用“有限差分法"(或者至少我认为它是这样调用的),您实际上可以在没有叉积的情况下计算它. 实际上它足够快,我可以用它在顶点着色器中实时计算法线. //# ..
发布时间:2021-12-19 17:56:47 其他开发

如何在 XNA 的 3D 地形上画一个圆圈?

所以我一直在网上寻找这个问题的答案,但我似乎遗漏了一些东西. 我有一个在 XNA 4.0 中动态创建 3D 地形的小项目,但我希望能够在地形上绘制一个圆(或任何其他形状,但让我们先画一个圆).现在我已经阅读了一些关于“投影纹理"的内容,但我承认我在着色器语言方面完全不知所措. 这个想法是我可以(动态地)创建一个基本形状,比如一个直径为 2 个“单位"的圆,然后在地形上绘制它,作为光标所 ..
发布时间:2021-11-25 03:18:10 C#/.NET

如何在 Three.js 中获取透视相机的角度值?

如何从 3D 场景中透视相机的每个角度获取值.我正在使用 Three.js 库. 为了更准确,我将用下一个符号标记我想知道的内容: 我需要知道哪些坐标: 我需要它,因为我正在创建一个实模式地图引擎,通过鼠标光标在 3D 场景中移动. 我想要实现的目标在这里可用:http://www.zephyrosanemos.com/windstorm/current/live-demo ..
发布时间:2021-11-25 02:57:26 前端开发

受限景观的程序生成

我想实现地形的程序生成.经过彻底的研究,我得出一个结论,它应该使用梯度(相干)噪声生成算法之一来实现,例如 Perlin Noise 算法.但是,我不希望这一代完全随机.我想应用一些限制条件(例如哪里应该是山脉,或者哪里应该是低地等). 问题: 例如,我有一条曲线代表一些景观元素.曲线是一组点. 我如何改进 Perlin Noise 算法,以便沿着这个曲线噪声将具有首选的值范围( ..
发布时间:2021-11-25 02:07:29 C#

如何在 XNA 中实现蠕虫风格的可破坏地形?

我想为我拥有的游戏制作一个创意原型.这个游戏的想法是玩家将挖掘地面,创造隧道并寻找宝藏. 我希望创建“蠕虫风格"地形,对在隧道中徘徊和跳跃的玩家进行碰撞检测.在这些图片中可以看到此类动态地形的示例. 我的问题是如何实现这种可破坏地形的最佳方式?我正在使用 XNA 游戏工作室. 解决方案 此线程.另外,这个 是关于实现可破坏地形的分步教程. 编辑 - 第二个教程的原始链接已 ..
发布时间:2021-10-02 19:01:29 C#/.NET

球形六边形网格地图上的 Three.js 纹理地形

这更像是一个方法问题,而不仅仅是技术问题. 我有一个生成的球体,作为一个网格分解成六边形.每个六边形瓦片都是不同类型的地形,例如,山脉、丘陵、海洋、飞机等.我想在 3d 中将每种地形类型绘制为一组多个网格,代表相应的地形类型. 现在最大的问题是如何在运行时将地形网格调整到每个六边形面,具体取决于地形类型,地形类型也会在运行时发生变化,例如地形变形.还要考虑到六边形并不完全规则或相等. ..
发布时间:2021-09-07 18:48:49 其他开发

如何将矩形投影到网格/地形对象上,用作选择选取框?(在三个.js 中)

我有一个使用 THREE.Terrain 库生成的地形.我希望能够单击并拖出一个选取框并选择地形网格表面上的对象. 目前我正在检测拖动的开始和结束,并在全局 XZ 平面中绘制一个矩形,但我希望它与表面齐平. 目前是这样的; 然而,我的目标更像是这样; 我想知道我是否错过了使用 Core Three.js 功能执行此操作的一些明显方法. 总是有一种蛮力方法,即围绕矩形的 ..
发布时间:2021-09-07 18:43:14 其他开发

三.js - 多重材质平面

我正在尝试在一个平面上使用多种材质来制作一个简单的地形编辑器.所以我创建了几个材质,并尝试为平面中的每个顶点分配一个材质索引: var materials = [];材料.推(新三.MeshFaceMaterial({颜色:0xff0000}));材料.推(新三.MeshFaceMaterial({颜色:0x00ff00}));材料.推(新三.MeshFaceMaterial({颜色:0x000 ..
发布时间:2021-09-06 19:51:28 其他开发

确定所在位置的地形类型

我正在尝试确定任意位置的地形类型.例如,如果我使用Google Maps,我可以通过地图上显示的颜色直观地看到什么是森林,建筑面积和水域. 我正在尝试查看是否可以使用某种API调用来获取此基本信息.我不需要非常精确,也不需要确定确切的地形类型(因此,像Corine Land Cover这样的东西实在是太过分了).我将每隔几分钟就要提出许多这样的要求.我已经找到了一个早在3年前就问过的问题真的 ..
发布时间:2021-05-12 20:22:32 其他开发

如何获得40 FPS的地形生成器性能

我制作了一个地形生成器,我希望游戏能全屏显示,但是当我更改块大小时,FPS会减小.我不知道如何解决此问题. 这是我的代码: pygame.init()scsizeX = 600scsizeY = 400屏幕= pygame.display.set_mode((0,0),pygame.FULLSCREEN)scX,scY = screen.get_size()时钟= pygame.time ..
发布时间:2021-05-09 19:27:10 Python

从数组THREE.js创建纹理

我正在使用地形生成器,但看不出要怎么做颜色.我希望能够生成将占用整个PlaneGeometry的图像.我的问题是如何基于高度图创建一个可以覆盖整个PlaneGeometry(无包裹)的图像?我可以想到一种方法,但是我不确定它是否可以完全覆盖PlaneGeometry,并且效率很低.我会以二维视图在画布上绘制颜色.然后,我会将画布转换为纹理,这是最好/唯一的方法吗? 更新:使用DataText ..
发布时间:2021-04-21 19:17:53 前端开发

使用Java 2D的抗锯齿高度图边缘

我正在使用Java 2D渲染地形图.地形图看起来像这样: 您可以看到边缘呈锯齿状.我想平滑地渲染地形的边缘,但是使用RenderingHints启用抗锯齿功能不起作用,因为我一次将地形图渲染为一列. 这是渲染地形的代码: // terrainImageG2 renders to a BufferedImage, obtained via BufferedImage.createG ..
发布时间:2021-02-10 18:42:43 Java开发

使用Three.js的地形碰撞问题

我已经在Three.js中通过高度图创建了一个地形,并且正在使用mrdoob的misc_controls_pointerlock进行碰撞和移动.但是,当我执行 objects.push(terrainobj); 时,性能会下降到约3fps(从60左右),并且不会与地形发生冲突.碰撞是通过射线实现的.我该如何解决? 解决方案 如果只是高度图,则可以避免使用ray并直接在位图中进行碰撞检查(使 ..
发布时间:2020-06-18 18:37:56 其他开发

调整六边形网格的高度图生成

目前,我正在做一个小项目,只是为了一点乐趣.这是一个使用OpenGL的C ++ WinAPI应用程序. 我希望它将变成在六边形网格上玩的RTS游戏,当我完成基本游戏引擎后,我计划进一步扩展它. 目前,我的应用程序由一个VBO组成,该VBO包含顶点和高度图信息.高度图是使用中点位移算法(菱形正方形)生成的. 为了实现六边形网格,我接受了在此处解释的想法.它向下移动普通网格的奇数行, ..

WebGL-带高度图的纹理地形

我正在尝试使用WebGL创建3D地形.我有一个带有地形纹理的jpg,另一个是带有高度值(-1至1)的jpg. 我看过各种包装器库(例如SpiderGL和Three.js),但找不到合适的示例,如果这样做(例如在Three.js中),则代码没有记录,我可以"无法弄清楚该怎么做. 有人可以给我一个很好的教程或例子吗? Three.js中有一个示例 http://mrdoob.gith ..
发布时间:2020-06-18 18:37:48 前端开发

铯路径到地形:连接2点的线在地形下方

我有一条随着时间的流逝的道路. 我使用Cesium.sampleTerrain获取位置高程并将其悬垂在地形上. 问题是,即使所有点都在地形上,连接2个点的线有时也会在地形下. 如何在地形上同时悬垂连接线? 这是我的代码: var promise = Cesium.sampleTerrain(terrainProvider, 14, positions); Cesium.when(pro ..
发布时间:2020-05-25 02:48:06 其他开发