c++ - 来自文本文件的 OPENGL 地形

标签 c++ opengl vertex terrain

<分区>

我正在尝试创建从 txt 文件获取高度值的地形。

在我的搜索过程中,我意识到地形通常是从 bmp 文件或另一种从像素中获取值的图片创建的。我将文件中的高度值读取到二维数组中。

void File(){
    FILE* file = fopen("data.txt", "r"); // data.txt opened with read only mode to get heights
    int i,j;
    for (i = 0; i < 17; i++){
        for (j = 0; j < 21; j++){
            fscanf(file, "%d", &data[i][j]);
        }
    }
    fclose(file);
}

然后将这些值加载到顶点以创建三角形。

但是当我更改 x y z 值时到处都是三角形。

预期的项目是创建地形。

是否有一种特殊的方法或代码可以仅使用 txt 文件中的高度值来创建地形?

最佳答案

OpenGL 渲染图元,如三角形和三角形带。您需要将地形高度图转换为 OpenGL 可以理解的图元。

也许这个通过快速谷歌搜索找到的教程可以帮助你。
http://www.codeproject.com/Articles/14154/OpenGL-Terrain-Generation-An-Introduction

关于c++ - 来自文本文件的 OPENGL 地形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22821942/

相关文章:

c++ - 调用派生和基类析构函数的虚拟析构函数

c++ - 在 makefile 中使用 ifeq 编译 C 或 CPP 文件

c++ - 如何用 C++ 编写通用排序函数?

c++ - 如何在Mac上使用C++创建图形

python - 如何在 OpenGL 的 GLSL 中重复 3x9 纹理?

c++ - 如何在 C++ 中将 long 转换为字符串?

delphi - 我需要从当前OpenGL状态计算可见空间的边缘

python - igraph python 检查顶点是否存在

c++ - (C++ 和 OpenGL)我试图在批处理渲染器中旋转一组顶点(它将模拟一个正方形),但它不是 100% 工作 :(

c++ - OpenGL 漫反射着色器,对象不显示