• 您能帮我检查一下为什么它无法正常工作的问题吗(鼠标单击不生成任何内容)

    这是我的代码。 我想编写一个代码,当我单击鼠标时,将在鼠标位置生成一张光盘,然后移动它。光盘可以是任何颜色和任何大小。 我实际上不知道我的错误在哪里。我可以编译它,但是不能工作。当我单击时,什么也没有产生。您可以帮我检查一下,哪一部分有问题? 我认为可能是在鼠标部分或绘制光盘的部分。 #include <stdlib.h> #include <stdio.h> #include <math.h> #ifdef __APPLE__ #define GL_SILENCE_DEPRECATION #includ...
  • 有人可以帮我实例化在OpenGL中工作吗?

    https://pastebin.com/Dyv5JBFd 我为多维数据集创建了一个顶点数组。我正在尝试以立方体形状创建1000个立方体。我相信我不了解何时生成和绑定VAO和VBO。老实说,我不知道哪些信息可以帮助您解决这一问题。在pastebin中,我首先包含了着色器,然后包含了主要代码。如果我可以提供任何帮助,请告诉我。什么都没有显示,但是正在运行。谢谢。 编辑:多维数据集在第100行 编辑2:实例化代码从160开始 编辑3:显示矩阵从272开始 编辑4:抽奖电话始于293 #version 330 c...
  • GLWF捕获鼠标导致分割错误

    对于老手来说,这可能很容易,但是我是Opengl的新手,目前正在学习教程。 现在,我将要捕获鼠标事件(以设置相机移动)。 但是,尽管我运行的是作者的原始代码,但是却遇到了段错误。 我猜他可能忘记设置其他内容(只是一个猜测)。 但是,由于我是绝对的opengl初学者,所以我完全迷失了这种可能。 问题在于捕获鼠标移动会产生分割错误。 The mouse and keyboard input is completely capsuled in a separate class called Window.cpp....
  • 使用C ++在OpenGL中纹理3d多边形

    我是OpenGL和编程技术的新手,我试图将任何图片粘贴到立方体和金字塔的所有表面上,以便图片可以随它们移动和旋转 我尝试了很多教程,但大多数教程都专注于2d或其他编程语言(如C#)。 如何对多边形进行纹理处理 这是代码: #include <GL/glut.h> float pyramid_x = 0, pyramid_y = 0, pyramid_z = 0; float cube_x = 0, cube_y = 0, cube_z = 0; float pyramid_angle = 0.0; floa...
  • 三角形不出现在OpenGL中?

    我可以使Opengl三角形出现。 #include <GL/glew.h> #include <GLFW/glfw3.h> #include <iostream> const char* vertexShaderSource = "#version 330 core\n" "layout (location = 0) in vec3 aPos;\n" "void main()\n" "{\n" " gl_Position = vec4(aPos.x, aPos.y, aPos.z, 1.0);\n" ...
  • 在OpenGL着色器文件三角形中获取随机错误。请帮忙…):

    我一直在尝试找到一种方法来使此工作正常,但无法解决!我收到随机错误 Ans至少可以说我一无所知。这是一个OpenGL着色器文件三角形,我同时包含主着色器和GLSL着色器。真的需要一些帮助谢谢。 这是我的顶点和片段,一个文件 #shader vertex #version 330 core layout(location = 0) in vec3 position; void main() { gl_Position = vec4(position.x, position.y, position....
  • 为什么在类的实例中强制转换变量也将其在父类的另一个实例中强制转换?

    我一直在尝试准备使用3D引擎,但是遇到了一些问题。即: 当我尝试将动画添加到我的一个对象/类中时,它的几何形状(用于描述其形状的变量)也会覆盖其父类中的其他一些对象。 我将在此处插入一些代码段以显示我的意思: 几何父类: class ParamSurface : public Geometry { //--------------------------- unsigned int nVtxPerStrip, nStrips; public: ParamSurface() { nVt...
  • OpenGL计算着色器无法找到制服

    从一到两周前开始,我开始研究计算着色器,这是因为我对图形和着色器的总体兴趣很大。大约3个月前,我从事CPU光线追踪器的工作,并希望重新开始在GPU上进行这项工作,我注意到由于功率限制,顶点/片段着色器无法做到这一点。 直到我开始注意到计算着色器。现在,我可以使用最基本的原始raytracer来以20 fps的速度渲染大约500个球体。 我遇到的问题是glGetUniformLocation方法无法跟踪我的相机制服(“ u_CameraTransform)”,它是mat4。我正在运行opengl 4.5,并检...
  • 修复驾驶汽车的程序时出现问题

    对不起,我英语不好:( 任务是通过在旋转时按a键或s键并在旋转时按w或z键沿旋转方向移动。 我当前的方向是(dir_x,dir_z),如何去新的方向? 我想修改下面的源代码 使用键盘输入进行运动控制-'A':将前轮向左旋转1度(θ[2]的值增加1)-'S':将前轮向右旋转1度(减小theta [2的值]乘以1)-'W':将速度变量值增加0.1(变量名:speed)-'Z':将速度变量值减少0.1 沿行进方向移动汽车的位置 需要一个变量来指示汽车的当前位置 由于它在xz平面中移动,因此需要x,z坐标变量示例:...
  • 如何在OpenGL中绘制由5个三角形组成的VAO?

    我最近编写了一个程序来绘制具有3个不同RGB值的三角形,并且我希望在同一程序中对另一个单独的VAO进行同样的操作,但是我希望这个由5个三角形组成的三角形。这是我的main.cpp: void framebuffer_size_callback(GFLWwindow* window, int width, int height); void processInput(GLFWwindow *window); // Shaders const char *vertexShaderSource = "#vers...
  • 无法获得普通的2D着色器以在C ++ openGL中绘制红色三角形(无编译器错误)

    我使用了openGL,GLEW和GLFW3。在openGl 3.0台面中,使用了默认着色器,并绘制了白色三角形。在4.2中,屏幕保留为黑色。没有错误消息生成。 问题不是由于将片段着色器标签错误地指定为顶点着色器,反之亦然。 该程序包含3个功能: (1)compileShader,应该将着色器类型和源代码作为std :: string接收,并返回带有已编译代码的着色器ID。 (2)createProgram,获取顶点着色器和片段着色器的源代码,并返回带有已编译并附加的着色器的程序ID。 (3)和main,两个...
  • 对象在放大时消失-Opengl

    I am trying to plot a 2d graph of 20 million points using OpenTK. I need to be able to zoom in, zoom-out and pan. Everything worked when I tried to test it on 50K points graph but when I tried to plot the 20 million, the graph object seems to disappear aft...
  • 细分后为什么我的三角形不显示?的OpenGL

    我开始学习opengl,并且我处于镶嵌细分阶段,但是我遇到了问题,当我将镶嵌细分着色器附加到程序时,三角形将不会显示。着色器正确编译,没有链接错误。从代码方面看,一切似乎都很好。当我仅使用顶点着色器和片段着色器时,一切正常。可能是什么原因? Shaders::Shaders(const char* vertexPath, const char* fragmentPath, const char* tessControlPath, const char* tessEvaluationPath) { s...
  • 为什么没有角色被渲染

    So I am trying to render a character in OpenGL using freetype2. If I replace the variable vertex_location in my code with 0 I can see some kind of pixelated thing being rendered but it seems wrong because every time I restart the application the pixelated ...
  • 更新后顶点坐标不变

    我正在尝试使用单个着色器绘制两个不同的纹理,并且两个纹理均具有不同的纹理坐标,并且需要进行两个连续的绘制调用。但是,在更改了一组纹理坐标之后,就永远无法再对其进行更改或将其恢复为原始状态。 这是当前绘制调用的结果,其次是绘制人物,首先是绘制方框的一部分: 这两种纹理都只是图像的一部分,但是只有人应该显示图像的一部分,而方框应完整显示。 这是我的顶点着色器: #version 330 core layout (location = 0) in vec3 aPos; layout (location = 1)...
公告

欢迎访问 goshare  点击这里设置您的邮箱  可以接收站内跟帖、回复邮件提醒,不错过任何一条消息。

关注公众号订阅更多技术干货! 码农俱乐部