资源简介
在VC++6.0平台上写的程序,我只发了一个Cpp文件,Data文件夹,里面放有纹理贴图,一个exe文件,可以浏览编译后的效果以及一个Readme,主要写的是操作说明....在此供大家学习使用

代码片段和文件信息
#define WM_TOGGLEFULLSCREEN (WM_USER+1) // 定义全屏/窗口切换消息
#define TIMER1 101 // 定义时钟代号设置为101号
#define title “5DG‘S Lighting“ // 定义窗口标题
#define CLASSNAME “5DG_OPENGL“ // 定义窗口类名
#define WIDTH 640 // 定义窗口宽度
#define HEIGHT 480 // 定义窗口高度
#define BPP 16 // 定义每象素的位数
#define MAXTEXTURE 1 // 定义最大的纹理数目(new)
// 在此处引用程序要求的头文件:
#include // Windows的头文件
#include // OpenGL32库的头文件
#include // Glu32库的头文件
#include // Glaux库的头文件
#include // 标准输入/输出头文件
// 在此处加入程序要求的库到链接器中:
#pragma comment(lib “opengl32.lib“) // 链接时查找OpenGL32.lib
#pragma comment(lib “glu32.lib“) // 链接时查找glu32.lib
#pragma comment(lib “glaux.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; // 存储按键信息
// 在此处定义用户变量:
GLfloat angle_X;
GLfloat angle_Y;
GLuint texture[MAXTEXTURE]; // 纹理数组,保存纹理名称
// 定义位置在屏幕右上方的光源
//GLfloat light_position0[] = {1.0f 1.0f 1.0f 0.0f}; // 设置光源的位置
//GLfloat light_ambient0[] = {0.7f 0.7f 0.7f 1.0f}; // 定义环境光的颜色
//GLfloat light_diffuse0[] = {1.0f 0.0f 1.0f 1.0f}; // 定义漫反射光的颜色
//GLfloat light_specular0[] = {1.0f 1.0f 1.0f 1.0f}; // 定义镜面反射光的颜色
// 定义位置在屏幕左下方的光源
GLfloat light_position1[] = {-1.0f -1.0f 1.0f 0.0f}; // 设置光源的位置
GLfloat light_ambient1[] = {0.5f 0.5f 0.5f 1.0f}; // 定义环境光的颜色
GLfloat light_diffuse1[] = {1.0f 1.0f 1.0f 1.0f}; // 定义漫反射光的颜色
GLfloat light_specular1[] = {1.0f 1.0f 1.0f 1.0f}; // 定义镜面反射光的颜色
// 定义位置在屏幕右上方的光源
GLfloat light_position0[] = {1.0f 1.0f 1.0f 0.0f}; // 设置光源的位置
GLfloat light_ambient0[] = {0.5f 0.5f 0.5f 1.0f}; // 定义环境光的颜色
GLfloat light_diffuse0[] = {1.0f 1.0f
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 24542 2009-03-12 15:17 1.11\1.11.cpp
文件 49208 2009-03-05 16:30 1.11\Data\Pyramid.bmp
文件 241726 2009-03-12 15:17 1.11\1.11.exe
文件 152 2009-03-12 15:19 1.11\Readme.txt
目录 0 2009-03-12 15:18 1.11\Data
目录 0 2009-03-12 15:17 1.11
----------- --------- ---------- ----- ----
315628 6
- 上一篇:C++二叉树基于Mfc的程序开发
- 下一篇:C语言 人事管理系统
相关资源
- 安卓c语言开发SDL2+opengles
- QT半透明效果界面
- 基于STM32F103C8T6主控板使用BH1750检测光
- c++ 透明代理(hookproxy)
- 交互式计算机图形学 第六版 OpenGL源代
- VC++基于OpenGL模拟的一个3维空间模型
- opengl绘制汽车.cpp
- opengl实现水流效果sph
- opengl源代码,全是精华!
- OpenGL迷宫山东大学图形学实验三
- opengl的立方体消隐算法
- vc++ opengl代码爆炸
- 我见过最漂亮的CS仿真程序openGL和C+
- 广东某工业大学的openGL课程设计
- 使用OpenGL实现多个小球在密闭空间内
- 利用openGL和C++实现光线跟踪绘图的完
- OpenGl C++太阳系小行星运行系统 可切换
- vc++和OpenGL实现三维地形实时动态显示
- C++实现利用OpenGL实现三维绘图
- 太阳、地球、月亮之间的运动图Open
- MFC 单文档 实现opengl 三维旋转 缩放
- OPENGL的烟花程序(代码)
- MFC+OpenGL三维建模与动画显示
- 基于opengl粒子系统实现喷泉的模拟
- 一个基于openGL的太阳系模型,太阳地
- vc6.0+opengl纯色五角星填充
- vc6.0+opengl动态绘制五角星
- NeHe_OpenGL教程完整版 里面有地址可以
- OpenGL简单——实现立方体贴上不同纹
- MFC实现dem的读取与现实
评论
共有 条评论