资源简介
openGL bunny 画兔子openGL bunny 画兔子openGL bunny 画兔子openGL bunny 画兔子openGL bunny 画兔子openGL bunny 画兔子openGL bunny 画兔子

代码片段和文件信息
#include
#include
#include
#include “windows.h“
#include “glut.h“
#include “glaux.h“
using namespace std;
//数据声明================================================================================================
#define MAX 70000
#define max_num 99999999
#define LEFT 1
#define RIGHT 2
#define SMALL 3
#define LARGE 4
GLfloat make_s_l=2.0;
int mn;
int specialkey;
GLfloat max_x=-max_nummin_x=max_nummax_y=-max_nummin_y=max_nummax_z=-max_nummin_z=max_num;
struct point
{
GLfloat x;
GLfloat y;
GLfloat z;
GLfloat dx;
GLfloat dy;
GLfloat dz;
int num;
};
struct triangle
{
int p1;
int p2;
int p3;
GLfloat dx;
GLfloat dy;
GLfloat dz;
};
point ma[MAX];
triangle na[MAX];
GLfloat xrot=0.0yrot=0.0zrot=0.0;
GLfloat LightAmbient[]= { 0.5f 0.5f 0.5f 1.0f };// 环境光参数
GLfloat LightDiffuse[]= { 1.0f 1.0f 1.0f 1.0f };// 漫射光参数
GLfloat LightPosition[]= { 0.0f 0.0f 2.0f 1.0f };// 光源位置
//函数声明===============================================================================================
int LoadGLTextures();
AUX_RGBImageRec *LoadBMP(char *Filename);
void render();
void reshape(int wint h);
void keyboard(unsigned char key int x int y);
void mouse(int button int state int x int y);
void createGLUTMenus();
void MenusEvents(int option);
void gl_Init();
//主函数==================================================================================================
int main(int argc char* argv[])
{
glutInit(&argcargv);
glutInitDisplayMode(GLUT_DEPTH | GLUT_RGBA |GLUT_DOUBLE );
glutInitWindowPosition(100 100);
glutInitWindowSize(800 600);
glutCreateWindow(“Bunny“);
gl_Init();
//glClearColor(0.0 0.0 0.0 0.0); //背景颜色,默认为黑色
glutDisplayFunc(render);
//glutIdleFunc(render); //让程序空闲时调用render
glutReshapeFunc(reshape);
glutKeyboardFunc(keyboard);
glutMouseFunc(mouse);
glEnable(GL_DEPTH_TEST);
createGLUTMenus();
glutMainLoop();
return 0;
}
void render()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glRotated(xrot1.00.00.0);
glRotated(yrot0.01.00.0);
glRotated(zrot0.00.01.0);
//glColor3f(0.0F 1.0F 0.0F);//设置光照颜色效果没用
int i;
for(i=1;i<=n;i++)
{
glBegin(GL_TRIANGLES);//开始画三角形
glNormal3f(ma[na[i].p1].dxma[na[i].p1].dyma[na[i].p1].dz);//第一点
glVertex3f(ma[na[i].p1].xma[na[i].p1].yma[na[i].p1].z);
glNormal3f(ma[na[i].p2].dxma[na[i].p2].dyma[na[i].p2].dz);//第二点
glVertex3f(ma[na[i].p2].xma[na[i].p2].yma[na[i].p2].z);
glNormal3f(ma[na[i].p3].dxma[na[i].p3].dyma[na[i].p3].dz);//第三点
glVertex3f(ma[na[i].p3].xma[na[i].p3].yma[na[i].p3].z);
glEnd(); //三角形绘制结束
}
glFlush();
glutSwapBuffers();
}
void reshape(int wint h)
{
glViewport(0 0 w h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(min_x*make_s_l max_x*make_s_l min_y*make_s_l max_y*make_s_l min_z*make_s_l max_z
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2285487 2003-08-21 09:44 glut画兔子\bunny.vt
文件 196662 2009-04-20 00:44 glut画兔子\Data\bunny.bmp
文件 196662 2009-04-07 00:17 glut画兔子\Data\dat.bmp
文件 49220 1998-01-04 22:02 glut画兔子\Data\Glass.bmp
文件 196664 2000-03-06 02:10 glut画兔子\Data\NeHe.bmp
文件 17476 1999-07-11 02:52 glut画兔子\Data\Star.bmp
..A.SH. 22016 2008-12-20 14:31 glut画兔子\Data\Thumbs.db
文件 196662 2004-01-01 19:35 glut画兔子\Data\yellow.bmp
文件 12024 2005-10-19 15:32 glut画兔子\glaux.H
文件 12648 1998-05-13 00:00 glut画兔子\GLU32.LIB
文件 2290 1999-02-10 12:46 glut画兔子\glut.def
文件 27670 2000-12-13 00:22 glut画兔子\glut.h
文件 237568 2001-11-08 02:27 glut画兔子\glut32.dll
文件 28728 2001-11-08 02:27 glut画兔子\glut32.lib
文件 7753 2004-01-02 04:06 glut画兔子\gzq.cpp
文件 4284 2004-01-01 18:49 glut画兔子\gzq.dsp
文件 514 2009-04-19 10:56 glut画兔子\gzq.dsw
文件 58368 2004-01-02 04:06 glut画兔子\gzq.ncb
文件 48640 2004-01-02 04:06 glut画兔子\gzq.opt
文件 1464 2004-01-02 04:06 glut画兔子\gzq.plg
文件 26454 2001-11-08 02:42 glut画兔子\README-win32.txt
目录 0 2009-04-29 14:34 glut画兔子\Data
目录 0 2004-01-02 04:06 glut画兔子\Debug
目录 0 2004-01-02 04:06 glut画兔子
----------- --------- ---------- ----- ----
3629254 24
- 上一篇:FLASHFTP简体中文破解版
- 下一篇:COMP90038 算法笔记
相关资源
- OpenGL参考手册
- Qt Creator opengl实现四元数鼠标控制轨迹
- OpenGL文档,api大全,可直接查询函数
- opengl轮廓字体源代码
- MFC读三维模型obj文件
- 利用OpenGL写毛笔字算法
- 兔子养殖场管理系统
- MFC中OpenGL面和体的绘制以及动画效果
- 基于OPENGL的光线跟踪源代码368758
- VC 实现三维旋转(源码)
- 自编用openGL实现3D分形树,分形山
- OpenGL球形贴图自旋程序
- OpenGL导入贴图的Texture类
- 计算机图形学(openGL)代码
- 用OpenGL开发的机械臂运动仿真程序(
- OpenGL-3D坦克模拟
- OPENGL实现世界上最小的3D游戏
- VS2012OpenGL配置所需要的全部libdllh文件
- 基于OpenGL的仿蝗虫机器人三维动态仿
- 图形学 - OpenGL实现3种三维茶壶显示源
- opengl程序-会跳舞的骷髅
- opengl实现三维网格光顺Laplacian算法
- opengl——爆炸
- OpenGL三维地形建模
- opengl游戏编程徐明亮版(含源码)
- 用OPENGL画的一个简单的直升飞机
- opengl完美天空盒
- 3D绘图程序设计:使用Direct3D 10/9和Ope
- OpenGL绘制可运动自行车源程序.zip
- OpenGL实现飘动效果
评论
共有 条评论