91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 766KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-05-08
  • 語言: 其他
  • 標簽: opengl??紋理??貼圖??

資源簡介

在opengl中給旋轉的立方體和球體賦予紋理貼圖

資源截圖

代碼片段和文件信息

//======================================================================
/**
*??@file??????CBMPLoader.cpp
*
*??項目描述:?紋理映射
*??文件描述:??載入位圖類?
*??適用平臺:?Windows98/2000/NT/XP
*??
*??作者:?????WWBOSS
*??電子郵件:??wwboss123@gmail.com
*??創(chuàng)建日期:?2006-11-23
*??修改日期:?2007-07-10
*
*/
//======================================================================

#include“CBMPLoader.h“??????????????/**
/**?構造函數(shù)?*/
CBMPLoader::CBMPLoader()
{
???/**?初始化成員值為0?*/
image?=?0;
imageWidth?=?0;
imageHeight?=?0;
}

/**?析構函數(shù)?*/
CBMPLoader::~CBMPLoader()
{
???FreeImage();?/**}

/**?裝載一個位圖文件?*/
bool?CBMPLoader::LoadBitmap(const?char?*file)
{
FILE?*pFile?=?0;?/**
/**?創(chuàng)建位圖文件信息和位圖文件頭結構?*/
BITMAPINFOHEADER?bitmapInfoHeader;
BITMAPFILEHEADER?header;
??
unsigned?char?textureColors?=?0;/**
???/**?打開文件并檢查錯誤?*/
pFile?=?fopen(file?“rb“);
if(pFile?==?0)?return?false;

/**?讀入位圖文件頭信息?*/?
fread(&header?sizeof(BITMAPFILEHEADER)?1?pFile);

/**?檢查該文件是否為位圖文件?*/
if(header.bfType?!=?BITMAP_ID)
???{
???fclose(pFile);?????????????/** ???return?false;
???}

/**?讀入位圖文件信息?*/
fread(&bitmapInfoHeader?sizeof(BITMAPINFOHEADER)?1?pFile);

/**?保存圖像的寬度和高度?*/
imageWidth?=?bitmapInfoHeader.biWidth;
????imageHeight?=?bitmapInfoHeader.biHeight;

????/**?確保讀取數(shù)據(jù)的大小?*/
???if(bitmapInfoHeader.biSizeImage?==?0)
??????bitmapInfoHeader.biSizeImage?=?bitmapInfoHeader.biWidth?*
??????bitmapInfoHeader.biHeight?*?3;

/**?將指針移到數(shù)據(jù)開始位置?*/
fseek(pFile?header.bfOffBits?SEEK_SET);

/**?分配內存?*/
image?=?new?unsigned?char[bitmapInfoHeader.biSizeImage];

/**?檢查內存分配是否成功?*/
if(!image)????????????????????????/** ???{
???delete[]?image;
???fclose(pFile);
???return?false;
???}

/**?讀取圖像數(shù)據(jù)?*/
fread(image?1?bitmapInfoHeader.biSizeImage?pFile);

/**?將圖像顏色數(shù)據(jù)格式進行交換由BGR轉換為RGB?*/
for(int?index?=?0;?index? ???{
???textureColors?=?image[index];
???image[index]?=?image[index?+?2];
???image[index?+?2]?=?textureColors;
???}
??
fclose(pFile);???????/** return?true;?????????/**}

/**?載入位圖文件,并創(chuàng)建紋理?*/
bool?CBMPLoader::Load(const?char*?fileName)
{
if(!LoadBitmap(fileName))
{
MessageBox(NULL“載入位圖文件失敗!““錯誤“MB_OK);
exit(0);
}
/**?生成紋理對象名稱?*/
glGenTextures(1?&ID);
???
????/**?創(chuàng)建紋理對象?*/
????glBindTexture(GL_TEXTURE_2D?ID);

/**?控制濾波?*/
glTexParameteri(GL_TEXTURE_2D?GL_TEXTURE_MIN_FILTER?GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D?GL_TEXTURE_MAG_FILTER?GL_LINEAR);
????glTexParameteri(GL_TEXTURE_2DGL_TEXTURE_WRAP_SGL_REPEAT);
????glTexParameteri(GL_TEXTURE_2DGL_TEXTURE_WRAP_TGL_REPEAT);
???
/**?創(chuàng)建紋理?*/
??? gluBuild2DMipmaps(GL_TEXTURE_2D?GL_RGB?imageWidth
??????????????????imageHeight?GL_RGB?GL_UNSIGNED_BYTE
??????????????????image);
???return?true;
}

/**?釋放內存?*/

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????3437??2007-11-13?11:05??Texture\CBMPLoader.cpp

?????文件???????1128??2007-11-13?11:05??Texture\CBMPLoader.h

?????文件???????2763??2007-11-13?11:05??Texture\Debug\BuildLog.htm

?????文件??????15335??2007-11-13?11:05??Texture\Debug\CBMPLoader.obj

?????文件??????29978??2007-11-13?11:05??Texture\Debug\GLframe.obj

?????文件??????23475??2007-11-13?11:05??Texture\Debug\GLWindow.obj

?????文件???????8733??2007-11-13?11:05??Texture\Debug\stdafx.obj

?????文件?????167936??2007-11-13?11:05??Texture\Debug\Texture.exe

?????文件?????644068??2007-11-13?11:05??Texture\Debug\Texture.ilk

?????文件??????33793??2007-11-13?11:05??Texture\Debug\Texture.obj

?????文件?????527360??2007-11-13?11:05??Texture\Debug\Texture.pdb

?????文件??????15749??2007-11-13?11:05??Texture\Debug\TGALoader.obj

?????文件?????363520??2007-11-13?11:05??Texture\Debug\vc70.idb

?????文件?????102400??2007-11-13?11:05??Texture\Debug\vc70.pdb

?????文件??????10261??2007-11-13?11:05??Texture\GLframe.cpp

?????文件???????3770??2007-11-13?11:05??Texture\GLframe.h

?????文件???????9540??2007-11-13?11:05??Texture\GLWindow.cpp

?????文件???????2322??2007-11-13?11:05??Texture\GLWindow.h

?????文件?????193590??2007-11-13?11:05??Texture\image.bmp

?????文件?????786450??2007-11-13?11:05??Texture\sphere.tga

?????文件?????????67??2007-11-13?11:05??Texture\stdafx.cpp

?????文件????????734??2007-11-13?11:05??Texture\stdafx.h

?????文件???????7171??2007-11-13?11:05??Texture\Texture.cpp

?????文件?????167936??2007-11-13?11:05??Texture\Texture.exe

?????文件???????2145??2007-11-13?11:05??Texture\Texture.h

?????文件?????224256??2007-11-13?11:05??Texture\Texture.ncb

?????文件????????903??2007-11-13?11:05??Texture\Texture.sln

?????文件???????8192??2007-11-13?11:05??Texture\Texture.suo

?????文件???????3983??2007-11-13?11:05??Texture\Texture.vcproj

?????文件???????3479??2007-11-13?11:05??Texture\TGALoader.cpp

............此處省略6個文件信息

評論

共有 條評論