资源简介
OpenGL三维图形系统开发与实用技术.实用技术篇(源码)
代码片段和文件信息
#include “main.h“
// 从文件中创建纹理
void CreateTexture(UINT textureArray[] LPSTR strFileName int textureID)
{
AUX_RGBImageRec *pBitmap = NULL;
if(!strFileName) // 如果无此文件,则直接返回
return;
pBitmap = auxDIBImageLoad(strFileName); // 装入位图,并保存数据
if(pBitmap == NULL) // 如果装入位图失败,则退出
exit(0);
// 生成纹理
glGenTextures(1 &textureArray[textureID]);
// 设置像素对齐格式
glPixelStorei (GL_UNPACK_ALIGNMENT 1);
glBindTexture(GL_TEXTURE_2D textureArray[textureID]);
gluBuild2DMipmaps(GL_TEXTURE_2D 3 pBitmap->sizeX pBitmap->sizeY GL_RGB GL_UNSIGNED_BYTE pBitmap->data);
glTexParameteri(GL_TEXTURE_2DGL_TEXTURE_MIN_FILTERGL_LINEAR_MIPMAP_NEAREST);
glTexParameteri(GL_TEXTURE_2DGL_TEXTURE_MAG_FILTERGL_LINEAR_MIPMAP_LINEAR);
if (pBitmap) // 释放位图占用的资源
{
if (pBitmap->data)
{
free(pBitmap->data);
}
free(pBitmap);
}
}
void ChangeToFullScreen()
{
DEVMODE dmSettings;
memset(&dmSettings0sizeof(dmSettings));
if(!EnumDisplaySettings(NULLENUM_CURRENT_SETTINGS&dmSettings))
{
MessageBox(NULL “Could Not Enum Display Settings“ “Error“ MB_OK);
return;
}
dmSettings.dmPelsWidth = SCREEN_WIDTH;
dmSettings.dmPelsHeight = SCREEN_HEIGHT;
int result = ChangeDisplaySettings(&dmSettingsCDS_FULLSCREEN);
if(result != DISP_CHANGE_SUCCESSFUL)
{
MessageBox(NULL “Display Mode Not Compatible“ “Error“ MB_OK);
PostQuitMessage(0);
}
}
HWND CreateMyWindow(LPSTR strWindowName int width int height DWORD dwstyle bool bFullScreen HINSTANCE hInstance)
{
HWND hWnd;
WNDCLASS wndclass;
memset(&wndclass 0 sizeof(WNDCLASS));
wndclass.style = CS_HREDRAW | CS_VREDRAW;
wndclass.lpfnWndProc = WinProc;
wndclass.hInstance = hInstance;
wndclass.hIcon = LoadIcon(NULL IDI_APPLICATION);
wndclass.hCursor = LoadCursor(NULL IDC_ARROW);
wndclass.hbrBackground = (HBRUSH) (COLOR_WINDOW+1);
wndclass.lpszClassName = “GameTutorials“;
RegisterClass(&wndclass);
if(bFullScreen && !dwstyle)
{
dwstyle = WS_POPUP | WS_CLIPSIBLINGS | WS_CLIPCHILDREN;
ChangeToFullScreen();
ShowCursor(FALSE);
}
else if(!dwstyle)
dwstyle = WS_OVERLAPPEDWINDOW | WS_CLIPSIBLINGS | WS_CLIPCHILDREN;
g_hInstance = hInstance;
RECT rWindow;
rWindow.left = 0;
rWindow.right = width;
rWindow.top = 0;
rWindow.bottom = height;
AdjustWindowRect( &rWindow dwstyle false);
hWnd = CreateWindow(“GameTutorials“ strWindowName dwstyle 0 0
rWindow.right - rWindow.left rWindow.bottom - rWindow.top
NULL NULL hInstance NULL);
if(!hWnd) return NULL;
ShowWindow(hWnd SW_SHOWNORMAL);
UpdateWindow(hWnd);
SetFocus(hWnd);
return hWnd;
}
bool bSetupPixelFormat(HDC hdc)
{
PIXELFORMATDEscriptOR pfd;
int pixelformat;
pfd.nSize =
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\
文件 28 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\AUTORUN.INF
目录 0 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\
目录 0 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\
文件 4260 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\3DS Loader.dsp
文件 545 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\3DS Loader.dsw
文件 74752 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\3DS Loader.ncb
文件 49664 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\3DS Loader.opt
文件 1482 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\3DS Loader.plg
文件 16628 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\3DS.CPP
文件 2372 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\3DS.H
文件 79176 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\3ds Format.rtf
目录 0 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\Debug\
文件 254073 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\Debug\3DS Loader.exe
文件 5922284 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\Debug\3DS Loader.pch
文件 66935 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\Debug\3ds.obj
文件 78873 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\Debug\FACE.3DS
文件 921656 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\Debug\FACE.BMP
文件 29418 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\Debug\Init.obj
文件 44120 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\Debug\Main.obj
文件 197632 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\Debug\vc60.idb
文件 159744 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\Debug\vc60.pdb
文件 78873 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\FACE.3DS
文件 921656 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\FACE.BMP
文件 5414 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\Init.cpp
文件 2798 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\MAIN.H
文件 5173 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DS File Loader\Main.cpp
目录 0 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DSglLoader\
文件 2375 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DSglLoader\3DSglLoader.clw
文件 4327 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DSglLoader\3DSglLoader.cpp
文件 4660 2012-09-17 15:09 OpenGL三维图形系统开发与实用技术.实用技术篇全\Chapter01\3DSglLoader\3DSglLoader.dsp
............此处省略744个文件信息
- 上一篇:包装机推包机构综合
- 下一篇:pixy摄像头配套资料
相关资源
- 超图三维地图开发webgl和cesium
- opengl绘制的简单机器人 可以实现走路
- 图像立体匹配和三维重建软件
- opengl三维迷宫
- opengl+粒子系统的降雪模拟增强版
- OpenGL --A Primer[2nd Edition] OpenGL程序设计
- 基于OpenGL的 虚拟漫游
- MyGUI_3.2.0
- opengl地球仪
- OpenGL编程指南原书第9版高清完整版
- 地形数据tif格式
- 光栅投影三维精密测量-达飞鹏
- OpenGL着色语言 中文高清版
- OpenGL编程指南原书第9版内
- openGL绘制虚拟教室
- 基于OpenGL的3D赛车游戏的研究与实现源
- OpenGL绘制一个多边形 添加颜色
- OpenGL三维图形系统开发与实用技术 基
- 三维瓦片数据3d-tiles)
- 人脸三维重建完整代码
- OpenGL鼠标交互3D模型
- 图形学的几道基础练习计算机图形学
- TrapcodeParticularAE三维粒子插件v2.5官方
- 交互式计算机:图形学基于OpenGL着色
- 基于opencv与opengl实现增强现实
- 测绘技术在数字文化遗产保护中的应
- OpenGl三维镂垫绘制附使用说明
- 医学影像处理与分析1~8章 田捷
- OpenGL三维图形系统开发与实用技术基
- opengl导入FBX模型代码
评论
共有 条评论