问题标签 [glad]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
opengl - “gladLoadGL”有问题。我收到一个错误,说它不需要 1 个参数
我正在尝试做一些openGL教程(https://www.glfw.org/docs/latest/quick_guide.html#quick_example),其中一个功能是gladLoadGL。代码行是“gladLoadGL(glfwGetProcAddress);” 但是,当我尝试运行时,我收到错误“C2660 'gladLoadGL': function does not take 1 arguments”。
我尝试过在线搜索,但似乎没有人遇到与我相同的问题。我查看了glad.h 文件,该函数有一个警告“未找到函数定义gladLoadGL”,这可能是我的问题所在。当我生成高兴的代码 ( https://glad.dav1d.de/ ) 时,我在语言 C/C++、规范 OpenGL、gl 版本 4.6、配置文件核心和生成加载程序的位置上打勾。
c++ - 渲染到 opengl 帧缓冲区后无法在 SFML 中渲染
我的目标是创建噪声,在帧缓冲区上使用着色器进行渲染,并在 CPU 上提取数据。我不需要在循环中使用 opengl 进行进一步渲染,我只需要一次,一开始。
初始化我的 SFML 窗口后,我很高兴,我的 opengl 代码工作正常并且按预期工作。
问题是在完成 opengl 调用之后再次使用 SFML 绘制东西。
我已经阅读了示例和教程,但我不明白出了什么问题......
我使用我自己的gladc/glad.h 副本来初始化opengl。
当我绘制 SFML 矩形时,会引发异常
我想知道是否真的可以像我一样使用opengl。一个重要的细节是我正在使用 opengl,因为我需要将纹理声明为 GL_FLOAT 以便之后可以将其拉回。SFML 自己无法做到这一点。
opengl - 使用 -fPIC 的高兴.o 缺少符号
对于 GUI 项目,我们有一个 makefile,它从所有 .o 文件构建一个库 (.a),然后为每个测试链接该库。
这样做时,任何未使用的函数都不会包含在可执行文件中。为了不必每次都重新构建每个测试,我们决定切换到 .so 并使用动态链接。此代码使用 OpenGL 和glad.o (glad.c -->glad.o)
我很高兴,甚至不确定我们是如何得到它的。它定义了上述符号,但它不是用 -fPIC 编译的,也不能链接到共享库中。
当我使用glad.c 构建时,生成的glad.o 没有符号
查看头文件glad.h
这些在编译着色器时被调用。
所以也许我们glad.c 的来源很糟糕。我翻遍了,可以在各种opengl演示中找到它,但我不明白它真正来自哪里。
我找到了这个生成器: https ://glad.dav1d.de/
并为编译该代码的 OpenGL 3.3(.c 和 .h)生成的代码具有相同的错误。那么我应该获得什么版本的glad.c 才能正确生成这些符号?
c++ - 如何修复“函数_main中引用的未解析的外部符号_gladLoadGLLoader”和“未解析的外部符号_glad_glViewport”?
构建程序时,我不断收到未解决的外部符号错误。但是,程序编译得很好。我正在使用 GLFW 和 GLAD 库。
我不断收到相同的 2 个错误:
c++ - 为什么在 GLFW 窗口中使用此代码在我的屏幕上没有绘制立方体?
我有一堆代码(从各种教程中复制)应该绘制一个随机的变色立方体,相机每秒左右移动一次(带有一个变量,尚未使用计时器)。在我将我的代码移动到独特的类中并将其全部推入我的主函数之前,它过去是有效的,但现在我在主窗口上除了空白背景之外什么都看不到。我无法在此处查明任何特定问题,因为我没有收到任何错误或异常,并且我自己定义的代码已检出;当我调试时,每个变量都有一个我期望的值,并且在我重新组织我的代码之前,我使用的着色器(以字符串形式)在过去工作。我可以在相同的范围内打印出立方体的顶点glDrawArrays()
功能也一样,它们也有正确的值。基本上,我不知道我的代码有什么问题导致无法绘制任何内容。
我最好的猜测是我调用了 - 或忘记调用 - 在我的Model
班级的三种方法之一中使用错误的数据不正确地调用了某些 opengl 函数。在我的程序中,我创建了一个Model
对象(在初始化 glfw 和glad 之后,然后调用Model
构造函数),通过函数每隔一段时间(时间无关紧要)更新它update()
,然后每次将它绘制到我的屏幕上主循环通过draw()
函数运行。
代码错误的可能位置:
我的问题很简单,为什么我的程序不会在我的屏幕上绘制一个立方体?问题出在这三个功能之内还是其他地方?如果需要,我可以提供有关绘图过程的更多一般信息,尽管我相信我提供的代码就足够了,因为我实际上只是调用model.draw()
.
c++ - 如何解决我在 Ubuntu 19.04 下使用 GLFW 时遇到的编译问题?
所以我试图编译一个基本的应用程序,当我尝试编译它时,它会抛出一个错误:
主.cpp:
是什么原因造成的,我该如何解决?
c - 结构在OpenGL中移动他的内存地址
主程序
顶点缓冲区.h
我想使用 vao 渲染一个矩形。当我运行 main.c 中注释的代码时,OpenGL 会渲染矩形。但是,如果我将头文件与结构一起使用,则它不起作用。我发现 Struct 改变了他的内存地址。在 initVertexBuffer() 中的 printf() 之后,它输出内存地址和值“1”。但是在 bindVertexBuffer() 中,它每次输出值“0”而不是“1”并且内存地址被推迟。请你帮助我好吗?
c - C中OpenGL中的着色器问题
我正在尝试使用着色器渲染一个矩形。但是当我启动程序时,OpenGL 会渲染矩形,但颜色不正确。我正在观看有关 C++ 中 OpenGL 的 youtube 教程,但我想用 C 编写代码,因此 OpenGL 命令和 GLSL 源代码应该是正确的。谁能帮我?谢谢 :
编辑:当我在函数 compileShader 中打印字符串“char *shaderSource”时,它显示字符串最后看起来有点不同:
最后的这个字符每次都不同
主程序
着色器2.h
windows - 我是否需要分别为每个 opengl 上下文加载函数?
我正在尝试使用高兴在 Windows 上加载 opengl 函数。很快我发现我需要有有效的 opengl 上下文来加载函数。一切正常,但我不确定每次创建窗口时加载 opengl 函数是否是个好主意。
这些函数是在多个 opengl 上下文之间共享的,还是我需要为我创建的每个上下文加载它们?
c++ - C++ OpenGL,绘制形状返回错误
我正在尝试在我的应用程序上绘制形状。我已添加#include <glad/glad.h>
到我的代码中。
我在头文件中将顶点数组、顶点缓冲区和索引缓冲区设置为无符号整数。
在我的application.h文件中,我添加了这个:
在我的构造函数的 application.cpp 中,我添加了这个:
在我的void Application::run()
我补充说:
现在的问题是当我运行代码时,它给了我标题中提到的错误:
在 Sandbox.exe 中的 0x000000005D78F420 (nvoglv64.dll) 处引发异常:0xC0000005:访问冲突读取位置 0x0000000000000000。
我一直在尝试解决此问题的方法,但似乎不起作用。如果我注释掉 glDrawElements,代码会运行并且可以工作,但不会绘制任何形状(很明显)。