小编Jav*_*rez的帖子

Point Sprites用于粒子系统

点精灵是构建粒子系统的最佳选择吗?

新版本的OpenGL和最新图形卡的驱动程序中是否存在点精灵?或者我应该使用vbo和glsl吗?

c c++ opengl glsl

27
推荐指数
1
解决办法
2万
查看次数

绘制渲染缓冲区对象的内容

不太了解操作渲染缓冲区对象.例如,如果我想显示渲染缓冲区中的内容,我必须将渲染渲染到纹理?

    GLuint fbo,color_rbo,depth_rbo;

    glGenFramebuffers(1,&fbo);
    glBindFramebuffer(GL_FRAMEBUFFER,fbo);

    glGenRenderbuffersEXT(1, &color_rb);
    glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, color_rb);
    glRenderbufferStorageEXT(GL_RENDERBUFFER_EXT, GL_RGBA8, 256, 256);
    glFramebufferRenderbufferEXT(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT,GL_RENDERBUFFER_EXT, color_rb);

    glGenRenderbuffersEXT(1, &depth_rb);
    glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, depth_rb);
    glRenderbufferStorageEXT(GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT24, 256, 256);
    glFramebufferRenderbufferEXT(GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT,GL_RENDERBUFFER_EXT, depth_rb);

    if(glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT)!=GL_FRAMEBUFFER_COMPLETE_EXT)return 1;

    glBindFramebuffer(GL_FRAMEBUFFER,0);

    //main loop    

    //This does not work :-(
    glBindFramebuffer(GL_FRAMEBUFFER,fbo);
    glClearColor(0.0,0.0,0.0,1.0);
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

    drawCube();
    glBindFramebuffer(GL_FRAMEBUFFER,0);
Run Code Online (Sandbox Code Playgroud)

任何的想法?

opengl fbo

3
推荐指数
1
解决办法
3041
查看次数

C + OpenGL四元数

四元数是以下形式的数字:

a + bi + cj + dk
Run Code Online (Sandbox Code Playgroud)

对?好,但......

  1. 如何用C语言解释这个数字?

  2. 例如,我想旋转一个多维数据集乘以四元数?一个向量?

c opengl quaternions

2
推荐指数
1
解决办法
324
查看次数

glGetUniform有用吗?

我的问题是这个.这个功能的用处是什么?我知道我得到了一个统一变量的值,但它有什么用呢?例:

我从我的C/C++程序中分配一个统一变量的值.

    Program  -> glUniform*(...);  -> Shader -> glGetUniform*(...)
Run Code Online (Sandbox Code Playgroud)

使用glGetUniform我得到这个或任何其他变量的值,但是统一...因为我可以直接从我的应用程序获取值,因为我不能直接为着色器中的统一变量赋值,这有什么用处特征?

    Program  -> glUniform*(...);  -> Shader -> glGetUniform*(...)
       |
       V
  uniform value
Run Code Online (Sandbox Code Playgroud)

opengl glsl

2
推荐指数
1
解决办法
1175
查看次数

如何从矩阵中获取角度

我有一个像这样的旋转矩阵:

1.0       0.0        0.0        2.07814
0.0      -0.809017   0.587785   0.0
0.0      -0.587785  -0.809017   0.0
0.0       0.0        0.0        1.0
Run Code Online (Sandbox Code Playgroud)

我如何从中获得角度?如果我应用逆,我得到这个

cos exp -1 (-0.809017) = 144.0
sin exp -1 (-0.587785) = -36.0
sin exp -1 ( 0.587785) =  36.0
cos exp -1 (-0.809017) = 144.0
Run Code Online (Sandbox Code Playgroud)

但我的问题是我知道角度是216.0度,我该如何回到那个角度?

c opengl

1
推荐指数
2
解决办法
319
查看次数

Matrix 中的同时旋转

有人可以(再次)帮助我吗?我有一个这样的矩阵:

\n\n
1.0  0.0  0.0  2.5\n0.0  1.0  0.0  0.0\n0.0  0.0  1.0  0.0\n0.0  0.0  0.0  1.0\n
Run Code Online (Sandbox Code Playgroud)\n\n

如何同时在X轴上旋转20\xc2\xb0,在Y轴上旋转-128\xc2\xb0,在Z轴上旋转72.1\xc2\xb0?

\n\n

非常感谢

\n

c opengl

-1
推荐指数
1
解决办法
652
查看次数

标签 统计

opengl ×6

c ×4

glsl ×2

c++ ×1

fbo ×1

quaternions ×1