• 大小: 17.33MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-06-30
  • 语言: 其他
  • 标签:

资源简介

计算机图形学期末大作业,保龄球游戏,实现了碰撞检测、视界转换、场景切换等要求.最后给分4.7(满分5)

资源截图

代码片段和文件信息

#include“CBMPLoader.h“              /**< 包含头文件 */

/** 构造函数 */
CBMPLoader::CBMPLoader()
{
   /** 初始化成员值为0 */
image = 0;
imageWidth = 0;
imageHeight = 0;
}

/** 析构函数 */
CBMPLoader::~CBMPLoader()
{
   FreeImage(); /**< 释放图像数据占据的内存 */
}

/** 装载一个位图文件 */
bool CBMPLoader::LoadBitmap(const char *file)
{
FILE *pFile = 0; /**< 文件指针 */

/** 创建位图文件信息和位图文件头结构 */
BITMAPINFOHEADER bitmapInfoHeader;
BITMAPFILEHEADER header;
  
unsigned char textureColors = 0;/**< 用于将图像颜色从BGR变换到RGB */

   /** 打开文件并检查错误 */
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;

    /** 确保读取数据的大小 */
   if(bitmapInfoHeader.biSizeImage == 0)
      bitmapInfoHeader.biSizeImage = bitmapInfoHeader.biWidth *
      bitmapInfoHeader.biHeight * 3;

/** 将指针移到数据开始位置 */
fseek(pFile header.bfOffBits SEEK_SET);

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

/** 检查内存分配是否成功 */
if(!image)                        /**< 若分配内存失败则返回 */
   {
   delete[] image;
   fclose(pFile);
   return false;
   }

/** 读取图像数据 */
fread(image 1 bitmapInfoHeader.biSizeImage pFile);

/** 将图像颜色数据格式进行交换由BGR转换为RGB */
for(int index = 0; index < (int)bitmapInfoHeader.biSizeImage; index+=3)
   {
   textureColors = image[index];
   image[index] = image[index + 2];
   image[index + 2] = textureColors;
   }
  
fclose(pFile);       /**< 关闭文件 */
return true;         /**< 成功返回 */
}

/** 释放内存 */
void CBMPLoader::FreeImage()
{
   /** 释放分配的内存 */
   /*if(image)
      {
         delete[] image;
         image = 0;
      }*/
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    ..A..H.     67072  2017-01-10 17:10  CGproject_final\.vs\environment\v14\.suo

     文件     489472  2017-01-10 17:10  CGproject_final\Debug\environment.exe

     文件    1429908  2017-01-10 17:10  CGproject_final\Debug\environment.ilk

     文件    1658880  2017-01-10 17:10  CGproject_final\Debug\environment.pdb

    ..A..H.     20480  2016-12-18 22:46  CGproject_final\environment\.vs\environment\v14\.suo

     文件       2244  2017-01-10 15:47  CGproject_final\environment\CBMPLoader.cpp

     文件        668  2017-01-10 17:10  CGproject_final\environment\CBMPLoader.h

     文件    1280054  2017-01-09 19:24  CGproject_final\environment\data\archmodels81_039_001.bmp

     文件        146  2017-01-09 13:25  CGproject_final\environment\data\pingzi.mtl

     文件    1332723  2017-01-06 17:50  CGproject_final\environment\data\pingzi.obj

     文件     172854  2017-01-09 02:02  CGproject_final\environment\data0\behind.bmp

     文件    1281224  2017-01-09 11:13  CGproject_final\environment\data0\from_m.bmp

     文件    2564624  2017-01-09 11:26  CGproject_final\environment\data0\front.bmp

     文件     649566  2017-01-09 02:19  CGproject_final\environment\data0\front1.bmp

     文件     649566  2017-01-09 02:27  CGproject_final\environment\data0\left.bmp

     文件    3160162  2017-01-09 01:12  CGproject_final\environment\data0\left1.bmp

     文件    6688694  2017-01-09 01:46  CGproject_final\environment\data0\left2.bmp

     文件     649566  2017-01-09 02:27  CGproject_final\environment\data0\right.bmp

     文件    1080054  2017-01-09 02:44  CGproject_final\environment\data0\top.bmp

     文件      76854  2016-12-30 20:55  CGproject_final\environment\data1\behind.bmp

     文件     261954  2016-12-30 17:06  CGproject_final\environment\data1\front.bmp

     文件     261954  2016-12-30 17:06  CGproject_final\environment\data1\left.bmp

     文件     261954  2016-12-30 17:06  CGproject_final\environment\data1\right.bmp

     文件    1120014  2016-12-30 22:16  CGproject_final\environment\data1\top.bmp

     文件     224586  2016-12-30 23:01  CGproject_final\environment\data2\behind.bmp

     文件     786486  2002-02-27 16:42  CGproject_final\environment\data2\front.bmp

     文件     786486  2002-02-27 16:42  CGproject_final\environment\data2\left.bmp

     文件     786486  2002-02-27 16:42  CGproject_final\environment\data2\right.bmp

     文件     786486  2003-11-17 13:29  CGproject_final\environment\data2\top.bmp

     文件      39040  2016-12-30 14:17  CGproject_final\environment\Debug\Camera.obj

............此处省略90个文件信息

评论

共有 条评论