资源简介
学OpenGL编3D游戏(含源代码)
代码片段和文件信息
// OpenGL.cpp: implementation of the OpenGL class.
//程序设计:唐明理 2005.2
//E_mail cqtml@163.com
//////////////////////////////////////////////////////////////////////
#include “stdafx.h“
#include “OpenGL.h“
//////////////////////////////////////////////////////////////////////
#include “stdafx.h“
#include “OpenGL.h“
//////////////////////////////////////////////////////////////////////
extern HWND hWnd;
//////////////////////////////////////////////////////////////////////
OpenGL::OpenGL()
{
}
OpenGL::~OpenGL()
{ CleanUp();
}
BOOL OpenGL::SetupPixelFormat(HDC hDC0)//检测安装OpenGL
{ int nPixelFormat; // 象素点格式
hDC=hDC0;
PIXELFORMATDEscriptOR pfd = {
sizeof(PIXELFORMATDEscriptOR) // pfd结构的大小
1 // 版本号
PFD_DRAW_TO_WINDOW | // 支持在窗口中绘图
PFD_SUPPORT_OPENGL | // 支持 OpenGL
PFD_DOUBLEBUFFER // 双缓存模式
PFD_TYPE_RGBA // RGBA 颜色模式
16 // 24 位颜色深度
0 0 0 0 0 0 // 忽略颜色位
0 // 没有非透明度缓存
0 // 忽略移位位
0 // 无累加缓存
0 0 0 0 // 忽略累加位
16 // 32 位深度缓存
0 // 无模板缓存
0 // 无辅助缓存
PFD_MAIN_PLANE // 主层
0 // 保留
0 0 0 // 忽略层可见性和损毁掩模
};
if (!(nPixelFormat = ChoosePixelFormat(hDC &pfd)))
{ MessageBox(NULL“没找到合适的显示模式““Error“MB_OK|MB_ICONEXCLAMATION);
return FALSE;
}
SetPixelFormat(hDCnPixelFormat&pfd);//设置当前设备的像素点格式
hRC = wglCreateContext(hDC); //获取渲染描述句柄
wglMakeCurrent(hDC hRC); //激活渲染描述句柄
return TRUE;
}
void OpenGL::init(int Width int Height)
{ glViewport(00WidthHeight); // 设置OpenGL视口大小。
glMatrixMode(GL_PROJECTION); // 设置当前矩阵为投影矩阵。
glLoadIdentity(); // 重置当前指定的矩阵为单位矩阵
gluPerspective // 设置透视图
( 54.0f // 透视角设置为 45 度
(GLfloat)Width/(GLfloat)Height // 窗口的宽与高比
0.1f // 视野透视深度:近点1.0f
3000.0f // 视野透视深度:始点0.1f远点1000.0f
);
// 这和照象机很类似,第一个参数设置镜头广角度,第二个参数是长宽比,后面是远近剪切。
glMatrixMode(GL_MODELVIEW); // 设置当前矩阵为模型视图矩阵
glLoadIdentity(); // 重置当前指定的矩阵为单位矩阵
//====================================================
}
void OpenGL::Render()//OpenGL图形处理
{ glClearColor(0.0f 0.0f 0.3f 1.0f); // 设置刷新背景色
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);// 刷新背景
glLoadIdentity(); // 重置当前的模型观察矩阵
glFlush(); // 更新窗口
SwapBuffers(hDC); // 切换缓冲区
}
void OpenGL::CleanUp()//清除OpenGL
{
wglMakeCurrent(hDC NULL); //清除OpenGL
wglDeleteContext(hRC); //清除OpenGL
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3279 2005-04-09 23:57 学OpenGL编3D游戏\A01_OpenGL的程序框架\OpenGL.cpp
文件 665 2005-04-07 16:44 学OpenGL编3D游戏\A01_OpenGL的程序框架\OpenGL.h
文件 4194 2005-04-09 23:57 学OpenGL编3D游戏\A01_OpenGL的程序框架\OpenGL的程序框架.cpp
文件 4549 2005-03-29 01:41 学OpenGL编3D游戏\A01_OpenGL的程序框架\OpenGL的程序框架.dsp
文件 557 2005-03-28 20:19 学OpenGL编3D游戏\A01_OpenGL的程序框架\OpenGL的程序框架.dsw
文件 1269 2005-03-28 20:19 学OpenGL编3D游戏\A01_OpenGL的程序框架\ReadMe.txt
文件 303 2005-03-28 20:19 学OpenGL编3D游戏\A01_OpenGL的程序框架\StdAfx.cpp
文件 1217 2005-03-28 21:23 学OpenGL编3D游戏\A01_OpenGL的程序框架\StdAfx.h
文件 557 2005-03-28 20:19 学OpenGL编3D游戏\A01_OpenGL的程序框架\test.dsw
文件 41984 2009-08-23 20:12 学OpenGL编3D游戏\A01_OpenGL的程序框架\test.ncb
文件 53760 2009-08-23 20:12 学OpenGL编3D游戏\A01_OpenGL的程序框架\test.opt
文件 2484 2005-04-09 23:57 学OpenGL编3D游戏\A02_OpenGL的基本图形\bsipic.cpp
文件 607 2005-04-10 00:01 学OpenGL编3D游戏\A02_OpenGL的基本图形\bsipic.h
文件 4593 2005-04-10 00:01 学OpenGL编3D游戏\A02_OpenGL的基本图形\OpenGL.cpp
文件 736 2005-04-10 00:01 学OpenGL编3D游戏\A02_OpenGL的基本图形\OpenGL.h
文件 4247 2005-04-09 23:57 学OpenGL编3D游戏\A02_OpenGL的基本图形\OpenGL的基本图形.cpp
文件 4640 2005-04-02 10:59 学OpenGL编3D游戏\A02_OpenGL的基本图形\OpenGL的基本图形.dsp
文件 557 2005-03-28 20:39 学OpenGL编3D游戏\A02_OpenGL的基本图形\OpenGL的基本图形.dsw
文件 1269 2005-03-28 20:39 学OpenGL编3D游戏\A02_OpenGL的基本图形\ReadMe.txt
文件 303 2005-03-28 20:39 学OpenGL编3D游戏\A02_OpenGL的基本图形\StdAfx.cpp
文件 1223 2005-03-28 21:25 学OpenGL编3D游戏\A02_OpenGL的基本图形\StdAfx.h
文件 557 2005-03-28 20:39 学OpenGL编3D游戏\A02_OpenGL的基本图形\test.dsw
文件 132150 2005-02-17 22:15 学OpenGL编3D游戏\A03_OpenGL的组合图形\aa.bmp
文件 132150 2005-02-17 22:17 学OpenGL编3D游戏\A03_OpenGL的组合图形\bb.BMP
文件 5504 2005-04-10 00:02 学OpenGL编3D游戏\A03_OpenGL的组合图形\bsipic.cpp
文件 758 2005-04-09 16:25 学OpenGL编3D游戏\A03_OpenGL的组合图形\bsipic.h
文件 3175 2005-04-10 00:02 学OpenGL编3D游戏\A03_OpenGL的组合图形\OpenGL.cpp
文件 702 2005-04-02 22:24 学OpenGL编3D游戏\A03_OpenGL的组合图形\OpenGL.h
文件 4194 2005-04-10 00:02 学OpenGL编3D游戏\A03_OpenGL的组合图形\OpenGL的组合图形.cpp
文件 4612 2005-04-02 22:28 学OpenGL编3D游戏\A03_OpenGL的组合图形\OpenGL的组合图形.dsp
............此处省略517个文件信息
相关资源
- 外星人入侵(alien_invasion).zip
- 浏览器中实现3D全景浏览
- AD常用3D封装库Step
- 基于FPGA的贪吃蛇游戏
- JS小游戏源码
- 3D模型 fvx
- GB3D型材库(几乎包含常用的各种型材
- 3D Brush刷树插件
- u3d俄罗斯方块项目加资源
- openGL正方体贴图
- 用opengl写的一个保龄球游戏
- AI坦克大战
- 安卓数独游戏
- 金山打字游戏_生死时速
- OpenGL完成对OFF文件的读取和使三维模
- 基于cocos2d制作的跑酷游戏源码以及资
- Direct3D游戏编程入门教程2
- OpenGL实验八犹他茶壶光照、阴影、纹
- D3D三层Texture纹理经像素着色器实现渲
- ffmpeg实现dxva2硬件加速
- unity2D横版冒险跳跃游戏源码
- 基于FPGA的黑白棋小游戏
- H5游戏抵御海盗入侵 最新完整版 已测
- opengl绘制花瓶演示
- 自己写的读取任意格式点云并读取的
- unity3d 吃豆人
- 基于Unity3D的2d拾宝游戏
- 基于Processing的击球小游戏
- D3D11_SkeletonAnimation.rar
- NGUI 3.12.1
评论
共有 条评论