SDL和OpenGL的完美组合。终于合体了。但是坐标系还是有问题。
来源:互联网 发布:手机防热软件 编辑:程序博客网 时间:2024/05/01 05:47
根据我一贯的喜好,还是使用DEV C++。跳过SDL的配置。
OpenGL的头文件和动态链接库已经包含到DEV C中了。下面是一个例子一看什么都明白了。
#include <GL/gl.h>
#include <SDL/SDL.h>
bool running=true;
float y=0.0;
void initGL()
{
SDL_Init(SDL_INIT_VIDEO);
SDL_SetVideoMode(600,300,16,SDL_OPENGL);
}
void destroyGL()
{
SDL_Quit();
}
void draw()
{
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
glRotatef(y,0,1,0);
glBegin(GL_TRIANGLES);
glColor3f(1,0,0);
glVertex3f(0,0,0);
glColor3f(0,1,0);
glVertex3f(1,0,0);
glColor3f(0,0,1);
glVertex3f(0,1,0);
glEnd();
SDL_GL_SwapBuffers();
}
void quit()
{
running=false;
}
void onKeyDown(const SDL_Event& event)
{
switch(event.key.keysym.sym)
{
case SDLK_ESCAPE:
quit();
break;
case SDLK_LEFT:
y+=0.1;
break;
case SDLK_RIGHT:
y-=0.1;
break;
}
}
void loop()
{
SDL_Event event;
while(running)
{
while(SDL_PollEvent(&event))
{
switch(event.type)
{
case SDL_QUIT:
quit();
break;
case SDL_KEYDOWN:
onKeyDown(event);
break;
}
}
draw();
SDL_Delay(50);
}
}
int main(int argc,char* argv[])
{
initGL();
loop();
destroyGL();
return 0;
}
在此基础上,我们就可以使用SDL和OpenGL合体去做我们的游戏了。
哦 忘了发截图:
- SDL和OpenGL的完美组合。终于合体了。但是坐标系还是有问题。
- 一直苦苦的寻找SDL和OpenGL的合体方法,最终发现SDL本身就封装了OpenGL的方法
- 哎,好不容易的完成了LM优化.....但是还是有问题
- jsonArray添加了有数据的JSONObject,但是还是为空.
- OpenGL坐标系和像素坐标系
- 终于解决了不能打开网页,但是可以聊天的问题。。。
- eclipse有时候导入了包,但是还是有红线,找不到
- hadoop-1.0.4-eclipse-plunge.jar 编译。千辛万苦,终于是出来了。下面的我的有些还是有点小区别,但是大体还是一样的
- SDL 和 OpenGL 关系
- SDL和Opengl
- 不好的事情,终于还是发生了
- 磨磨蹭蹭的,终于还是来了
- 关于先有鸡还是先有蛋,终于有正确答案了
- 关于先有鸡还是先有蛋,终于有正确答案了
- 关于先有鸡还是先有蛋,终于有正确答案了
- 关于先有鸡还是先有蛋,终于有正确答案了
- 关于先有鸡还是先有蛋,终于有正确答案了
- 关于先有鸡还是先有蛋,终于有正确答案了
- 关于GROUP BY 的一种用法
- 华为交换机做镜像抓包
- 我个人关于研究生发文章的总结,对研一,研二很有用(转自小木虫)
- C + SDL 贪吃蛇的基础实现
- XML传输图片数据-Base64编码
- SDL和OpenGL的完美组合。终于合体了。但是坐标系还是有问题。
- 补一篇SDL入门的文章,翻译自外网,目前中文资源较少
- asp.net中Repeater嵌套绑定的方法(使用两个Repeater做子类别绑定)
- Java多线程中常见错误处理
- byte类型转换 +和+=的区别
- 不断奋斗不断成长,保持一颗年轻的心
- 开放源代码技术开放实验室
- MFC的dll文件与.net framework
- Cassandra 源码解析 3: 分布式hashtable(DHT) 和 Locator