用opengl画一个图
Draw a graph in opengl
我想用我的代码创建一个图形(2d图形),如何在opengl中制作一个简单的2d图形?我是新的opengl,所以也许你可以解释我是如何工作的代码,请。下面是我的代码:
#include <iostream>
using namespace std;
int main ()
{
double dt = 0.10; //(it is constant)
double t = 0.00;
double dx = 0.10; //(it is constant)
double x = 0.00;
double ddy = 1.00; //(it is constant)
double dy = 0.00;
double y = 1.00;
cout<<"t = "<<t<<endl;
cout<<"dx = "<<dx<<endl;
cout<<"x = "<<x<<endl;
cout<<"dy = "<<dy<<endl;
cout<<"y = "<<y<<endl;
cout<<endl;
while(t<=5)
{
x = x + dx*dt;
dy = dy - ddy * dt * dt;
y = y + dy * dt;
if (y<=-1)
{
y = -y;
dy = -dy * 0.70;
}
t = t + dt;
cout<<"t = "<<t<<endl;
cout<<"dx = "<<dx<<endl;
cout<<"x = "<<x<<endl;
cout<<"dy = "<<dy<<endl;
cout<<"y = "<<y<<endl;
cout<<endl;
}
system("pause");
}
也许你应该看看这里http://en.wikibooks.org/wiki/OpenGL_Programming/Scientific_OpenGL_Tutorial_01
有很好的信息开始绘制曲线。因为你有一个参数化的曲线,你只需要将x,y存储在一个顶点缓冲对象(VBO)中,它的大小与你想要的曲线上的点的数量相同,然后像这样绘制这个VBO:
glDrawArrays(GL_LINE_STRIP, 0, nbPoints);
这将创建一个连续的折线连接所有的点
相关文章:
- OpenGL,为什么这不是一个立方体?
- 如何在 debian 下正确链接一个 opengl 程序?
- OpenGL只是渲染一个黑色的方块
- OpenGL:第二个VBO破坏了第一个VBO
- 如何在openGL C++中绘制一个空心圆
- 在 OpenGL 中旋转一个正方形
- OpenGL 2D游戏只绘制第二个精灵纹理而不是第一个
- 如何使用OpenGL渲染到一个QMainWindow的两个QWidget?
- 我应该如何在这个房间中创建一个新对象 - opengl
- 无法使我的第一个Windows OpenGL窗口抬起并运行
- 使用 C++ 库 GLEW 在 openGl 中绘制一个红色三角形
- 将绑定到FBO的纹理复制到另一个OpenGL上下文
- 有没有人有一个OpenGL ES 2.0 Qt 5示例在iOS下工作
- 另一个OpenGL SuperBible第5版设置问题
- 我如何从Qt4传递一个OpenGL上下文
- 如何在c++中处理两个进程(一个OpenGL应用程序通过相机运行手势)
- 编译第一个OpenGL红皮书程序(triangle .cpp)
- 显示帧从VNC/RFB到一个OpenGL应用程序
- 第一个OpenGL程序从红皮书在Mac OS Cocoa NSOpenGLView
- 如何放大/缩小到一个OpenGL屏幕,而不渲染整个屏幕