OpenGL载入由3dmax 导出的ASE文件的纹理贴图问题

dontforgetaboutus 2011-01-09 10:18:46
本人在网上下载了一个3d模型的素材 用3dmax 导出为.ase格式的文件 用OpenGL编程实现模型的载入 模型的三角形坐标都能够成功载入 就是贴图的时候出现问题,有的纹理材质使用了sub material 载入各种不同图像作为子纹理,而模型的每个部分指明了一个主要的material没有指明sub material请问如何解决 谢谢

这是.ASE文件的 材质信息:
*MATERIAL_LIST {
*MATERIAL_COUNT 18
*MATERIAL 0 {
*MATERIAL_NAME "LOTUCOWL"
*MATERIAL_CLASS "Multi/Sub-Object"
*MATERIAL_AMBIENT 0.0000 0.0000 0.0000
*MATERIAL_DIFFUSE 0.1451 0.4431 0.0000
*MATERIAL_SPECULAR 1.0000 1.0000 1.0000
*MATERIAL_SHINE 0.9000
*MATERIAL_SHINESTRENGTH 1.0000
*MATERIAL_TRANSPARENCY 0.0000
*MATERIAL_WIRESIZE 1.0000
*NUMSUBMTLS 3
*SUBMATERIAL 0 {
*MATERIAL_NAME "LOTUS"
*MATERIAL_CLASS "Standard"
*MATERIAL_AMBIENT 0.0000 0.0000 0.0000
*MATERIAL_DIFFUSE 0.1451 0.4431 0.0000
*MATERIAL_SPECULAR 1.0000 1.0000 1.0000
*MATERIAL_SHINE 0.9000
*MATERIAL_SHINESTRENGTH 1.0000
*MATERIAL_TRANSPARENCY 0.0000
*MATERIAL_WIRESIZE 1.0000
*MATERIAL_SHADING Phong
*MATERIAL_XP_FALLOFF 0.0000
*MATERIAL_SELFILLUM 0.0000
*MATERIAL_TWOSIDED
*MATERIAL_FALLOFF In
*MATERIAL_XP_TYPE Filter
*MAP_DIFFUSE {
*MAP_NAME "Tex #17"
*MAP_CLASS "Bitmap"
*MAP_SUBNO 1
*MAP_AMOUNT 1.0000
*BITMAP "C:\MANANA\LOTUS\H\RCOWL.jpg"
*MAP_TYPE Screen
*UVW_U_OFFSET 0.0000
*UVW_V_OFFSET 0.0000
*UVW_U_TILING 1.0000
*UVW_V_TILING 1.0000
*UVW_ANGLE 0.0000
*UVW_BLUR 0.4000
*UVW_BLUR_OFFSET 0.0000
*UVW_NOUSE_AMT 1.0000
*UVW_NOISE_SIZE 1.0000
*UVW_NOISE_LEVEL 1
*UVW_NOISE_PHASE 0.0000
*BITMAP_FILTER Pyramidal
}
*MAP_REFLECT {
*MAP_NAME "Tex #13"
*MAP_CLASS "Bitmap"
*MAP_SUBNO 9
*MAP_AMOUNT 0.2000
*BITMAP "C:\MANANA\LOTUS\H\lakeREM.jpg"
*MAP_TYPE Spherical
*UVW_U_OFFSET 0.0000
*UVW_V_OFFSET 0.0000
*UVW_U_TILING 1.0000
*UVW_V_TILING 1.0000
*UVW_ANGLE 0.0000
*UVW_BLUR 2.0000
*UVW_BLUR_OFFSET 0.0000
*UVW_NOUSE_AMT 1.0000
*UVW_NOISE_SIZE 1.0000
*UVW_NOISE_LEVEL 1
*UVW_NOISE_PHASE 0.0000
*BITMAP_FILTER Pyramidal
}
}
*SUBMATERIAL 1 {
*MATERIAL_NAME "LEFT"
*MATERIAL_CLASS "Standard"
*MATERIAL_AMBIENT 0.0000 0.0000 0.0000
*MATERIAL_DIFFUSE 0.1451 0.4431 0.0000
*MATERIAL_SPECULAR 1.0000 1.0000 1.0000
*MATERIAL_SHINE 0.9000
*MATERIAL_SHINESTRENGTH 1.0000
*MATERIAL_TRANSPARENCY 0.0000
*MATERIAL_WIRESIZE 1.0000
*MATERIAL_SHADING Phong
*MATERIAL_XP_FALLOFF 0.0000
*MATERIAL_SELFILLUM 0.0000
*MATERIAL_TWOSIDE
...全文
135 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
羽飞 2011-01-09
  • 打赏
  • 举报
回复
那我接个分吧,其实我Opengl很垃圾
dontforgetaboutus 2011-01-09
  • 打赏
  • 举报
回复
解决了 原来每个三角形的后面都有一个*MESH_MTLID 指定子纹理

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧