c++ - GLSL shader based on KNN of external file (open external file from .vert or .frag)

标签 c++ opengl glsl fopen assimp

我正在使用 OpenGL 通过 Assimp 显示 3d 模型文件,例如 STL 和 obj。

我有一个包含一组点和一个对应值(不一定在对象上)的文件,我想根据形状的每个顶点在所有值范围内的位置为它着色。

我目前的计划是从我的 .vert 或 .frag 文件中打开一个 .txt 文件,然后以这种方式为顶点着色。但是,我不清楚 GLSL 的语法与 C++ 的语法有何不同。我可以使用类似的语法打开文件并仅通过 .vert 文件使用所有值吗?还有其他方法吗?

最佳答案

您不能从 OpenGL 着色器的文件中读取数据。您可以做的是读取 cpp 代码中的数据并将数据绑定(bind)为属性或统一。如果数据非常大,那么您可以将其作为纹理发送。

关于c++ - GLSL shader based on KNN of external file (open external file from .vert or .frag),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38986361/

相关文章:

c++ - 无需默认构造函数即可插入或更新到 unordered_map

python - 为什么纹理索引 31 在 Moderngl 中被覆盖?

c++ - 如何在 OpenGL/C++ 中创建构造实体几何

javascript - 关于太阳/背景渲染的屏幕空间坐标问题

math - 对于平滑步长函数 glsl,edge0 大于或等于 edge1 是什么情况

静态变量导致的 C++ 内存泄漏

python - 如何填充图像边缘内的白色背景以去除背景?

c++ - ERROR_DEV_NOT_EXIST when::CreateFile 在 C++ MFC 中?

opengl - 在 OpenGL 中处理 FBO 的最佳方法是什么?

libgdx - 如何创建和使用非常大的调色板纹理以在 opengl 中使用?