游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1431|回复: 3

求高人帮忙修改3ds.cpp中的创建贴图函数

[复制链接]

5

主题

16

帖子

20

积分

注册会员

Rank: 2

积分
20
发表于 2007-8-6 09:24:00 | 显示全部楼层 |阅读模式
我的3ds.cpp中的CreateTexture(UINT textureArray[], LPSTR strFileName, int textureID)函数,只能加入bmp格式的贴图 谁能给我改一下或者有个新的函数可以实现导入其他格式的贴图 ,具体函数是这样的:
void CLoad3DS::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_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR_MIPMAP_NEAREST);
        glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR_MIPMAP_LINEAR);
        if (pBitmap)                                                                                // 释放位图占用的资源
        {        if (pBitmap->data)        free(pBitmap->data);                                                       
                free(pBitmap);                                       
        }
}

5

主题

755

帖子

757

积分

高级会员

Rank: 4

积分
757
发表于 2007-8-6 09:37:00 | 显示全部楼层

Re:求高人帮忙修改3ds.cpp中的创建贴图函数

你去opengl区问啊这是dx

52

主题

155

帖子

160

积分

注册会员

Rank: 2

积分
160
发表于 2007-8-6 10:06:00 | 显示全部楼层

Re:求高人帮忙修改3ds.cpp中的创建贴图函数

用lib3ds吧,比这个好用些

5

主题

16

帖子

20

积分

注册会员

Rank: 2

积分
20
 楼主| 发表于 2007-8-6 10:26:00 | 显示全部楼层

Re:求高人帮忙修改3ds.cpp中的创建贴图函数

lib3ds在哪能找到,请帮忙说一下,谢谢!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-25 14:27

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表