资源简介
opengl设计的一个房子,图形学上的一个课程设计,设计得很漂亮,这个是第二份设计,希望对大家有帮助

代码片段和文件信息
#define WM_TOGGLEFULLSCREEN (WM_USER+1) // 定义全屏/窗口切换消息
#define TIMER1 101 // 定义时钟代号设置为101号
#define title “5DG‘s frameWork -- Hello OpenGL World!“ // 定义窗口标题
#define CLASSNAME “5DG_OPENGL“ // 定义窗口类名
#define WIDTH 700 // 定义窗口宽度
#define HEIGHT 680 // 定义窗口高度
#define BPP 16 // 定义每像素的位数
#define MAXTEXTURE 7
#define GL_PI 3.1415f
#define MAP 40// MAP_W*MAP_SCALE/2
// 在此处引用程序要求的头文件:
// 在此处引用程序要求的头文件:
#include
#include
#include
#include
#include
#include
#include // 标准输入/输出头文件
// 在此处加入程序要求的库到链接器中:
#pragma comment( lib “glut32.lib“ )
#pragma comment(lib “opengl32.lib“) // 链接时查找OpenGL32.lib
#pragma comment(lib “glu32.lib“) // 链接时查找glu32.lib
#pragma comment(lib “glaux.lib“)
// 在此处定义与窗口相关的结构体:
typedef struct { // 定义处理键盘的结构体
BOOL keyDown [256]; // 存储键盘按键状态的数组
} Keys;
typedef struct { // 定义存储应用程序实例的结构体
HINSTANCE hInstance; // 应用程序实例
const char* className; // 应用程序类名
} Application;
typedef struct { // 定义初始化窗口所需信息
Application* application; // 所属的应用程序
char* title; // 窗口标题
int width; // 窗口宽度
int height; // 窗口高度
int bitsPerPixel; // 每像素的位数
BOOL isFullScreen; // 是否全屏
} GL_WindowInit;
typedef struct { // 定义窗口结构体
Keys* keys; // 键盘
HWND hWnd; // 窗口句柄
HDC hDC; // 设备描述表
HGLRC hRC; // 绘制描述表
GL_WindowInit init; // 提供Window初始化信息的结构体
} GL_Window;
// 此代码模块中包含的函数的前向声明:
BOOL Initialize(GL_Window* window Keys* keys); // 设置你绘制前的初始化值
void DrawSceneGL(void); // 在这里完成场景的绘制
void Update(void); // 在此处更新对消息的动作
void Deinitialize(void); // 在此处做退出前扫尾工作
// 在此处定义全局变量:
GL_Window* OGL_window; // 存储窗口信息
Keys* OGL_keys; // 存储按键信息
GLuint texture[MAXTEXTURE];
// 在此处定义用户变量:
GLfloat angle_yopen_door;
GLfloat anglexyz;
GLUquadricObj *qobj;
GLUquadricObj *g_text;
GLfloat angle_X;
GLfloat angle_Y;
GLfloat deepth=-10;
BOOL lighting = FALSE;
BOOL pKeyE;
BOOL pKeyF; // 键F按下了吗?
BOOL pKeyL; // 键E按下了吗?
BOOL fog_on; // 雾效果是否启用
static GLfloat sunpos[4] = {-1 0.2 0.1 0.0 };
static GLfloat suncolor[4] = { 0.7 0.8 1.0 0.0 };
static GLfloat sunambient[4] = { 0.5 0.5 0.4 1.0 };
GLfloat fogcolor[4] = { 0.7 0.8 1.0 1.0 };
GLdouble g_eye[3]; //
GLdouble g_look[3]; //
float g_elev;
float rad_xz;
float g_Angle;
float speed=0.2f;
void ResizeWindowGL(int width int height) // 重新设置窗口大小
{
glViewport(0 0 (GLsizei)(width) (GLsizei)(height)); // 重置当前视口大小
glMa
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 44079 2009-06-18 05:36 房子设计2\5DG‘S Win32 fr
文件 3640 2009-06-18 01:42 房子设计2\5DG‘S Win32 fr
文件 567 2009-06-18 01:42 房子设计2\5DG‘S Win32 fr
文件 50176 2009-06-18 08:18 房子设计2\5DG‘S Win32 fr
文件 48640 2009-06-18 08:18 房子设计2\5DG‘S Win32 fr
文件 69922 2009-06-18 08:18 房子设计2\5DG‘S Win32 fr
文件 1963574 2009-06-18 04:39 房子设计2\data\08080116130133.bmp
文件 56792 2009-06-18 04:22 房子设计2\data\0e4785f929fc7d10d9f9fdb0.jpg
文件 235254 2009-06-10 08:59 房子设计2\data\1.bmp
文件 44994 2009-06-10 09:02 房子设计2\data\10.bmp
文件 58854 2009-06-10 09:03 房子设计2\data\11.bmp
文件 245754 2009-06-10 08:59 房子设计2\data\2.bmp
文件 219869 2009-06-18 04:23 房子设计2\data\2dy.cn_20081020082614303752.jpg
文件 235254 2009-06-10 08:59 房子设计2\data\3.bmp
文件 225954 2009-06-10 08:59 房子设计2\data\4.bmp
文件 218754 2009-06-10 09:00 房子设计2\data\5.bmp
文件 92718 2009-06-18 04:42 房子设计2\data\56.bmp
文件 39954 2009-06-10 09:00 房子设计2\data\6.bmp
文件 58434 2009-06-10 09:00 房子设计2\data\7.bmp
文件 1440054 2009-06-18 04:39 房子设计2\data\78.bmp
文件 58434 2009-06-10 09:00 房子设计2\data\8.bmp
文件 480054 2009-06-10 09:01 房子设计2\data\9.bmp
文件 132150 2005-02-17 22:15 房子设计2\data\aa.bmp
文件 117586 2004-07-29 19:11 房子设计2\data\Back.jpg
文件 1505142 2009-06-17 11:15 房子设计2\data\bb.bmp
文件 3000054 2009-06-18 01:21 房子设计2\data\bed.bmp
文件 1440054 2009-06-18 04:26 房子设计2\data\beijing.bmp
文件 202556 2006-01-11 11:05 房子设计2\data\body.bmp
文件 1360854 2009-06-18 01:21 房子设计2\data\desk.bmp
文件 49208 2004-07-29 20:24 房子设计2\data\Egypt.bmp
............此处省略27个文件信息
相关资源
- 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实现飘动效果
- opengl室内场景的绘制,包括碰撞检测
评论
共有 条评论