游戏开发论坛

 找回密码
 立即注册
搜索
12
返回列表 发新帖
楼主: Venever

请教:为何纹理在某些机器上显示不出来,640*480小纹理

[复制链接]

18

主题

279

帖子

279

积分

中级会员

Rank: 3Rank: 3

积分
279
QQ
发表于 2006-2-10 17:15:00 | 显示全部楼层

Re:请教:为何纹理在某些机器上显示不出来,640*480小纹理

还有两台都用Wildcat6100的有趣:一台支持,一台不支持
[B]non power of 2 texture[/B]是一个OpenGL1.5属性。

1

主题

8

帖子

8

积分

新手上路

Rank: 1

积分
8
 楼主| 发表于 2006-2-10 18:38:00 | 显示全部楼层

Re:请教:为何纹理在某些机器上显示不出来,640*480小纹理

刚重看了一遍azure的“OpenGL版本与OpenGL扩展机制 ”,才发现
里面说过1.5这个特性,那是不是OpenGL1.5以上的都有,以下的
就不行?看了看自己的是2.0.1。还没来得及找其他几台查查,
要等明天了

我当时曾经试着把相关的.dll,.lib,.h考过去,好像没什么用,看来方法错了。
请教要怎样才能统一版本呢?更新驱动还是怎样?

18

主题

279

帖子

279

积分

中级会员

Rank: 3Rank: 3

积分
279
QQ
发表于 2006-2-11 15:33:00 | 显示全部楼层

Re:请教:为何纹理在某些机器上显示不出来,640*480小纹理

OpenGL的版本更新一般需要安装相应的驱动, 单单复制DLL文件一般是不管用的. 因为有些驱动需要在注册表中注册一下.

1

主题

8

帖子

8

积分

新手上路

Rank: 1

积分
8
 楼主| 发表于 2006-2-13 12:40:00 | 显示全部楼层

Re:请教:为何纹理在某些机器上显示不出来,640*480小纹理

明白了,谢谢,周末没来得及回复,sorry
查到不支持的那台版本是1.5.4517 Windows Release,好长啊。。。
终于可以就此结贴,谢谢以上各位的帮助。

6

主题

29

帖子

37

积分

注册会员

Rank: 2

积分
37
QQ
发表于 2006-2-18 17:46:00 | 显示全部楼层

Re:请教:为何纹理在某些机器上显示不出来,640*480小纹理

我觉得不必将640×480的纹理扩大成1024×512的,可以直接缩放成512×512啊,用标准的WINMM库中的DIBDRAW函数就可以了。对纹理质量没有损失,显存也不浪费,而且实际效果是一样的。

5

主题

16

帖子

16

积分

新手上路

Rank: 1

积分
16
发表于 2006-2-18 21:14:00 | 显示全部楼层

Re: 请教:为何纹理在某些机器上显示不出来,640*480小纹理

1.首先应该确定你使用的是哪一种纹理,比如1d,2d,3d,cube,rect
2.得到显卡所能支持该种纹理的最大尺寸 glGetIntegerv(xx,&max_size);
这里xx
对于1d和2d纹理GL_MAX_TEXTURE_SIZE
对于3d纹理GL_MAX_3D_TEXTURE_SIZE
对于cube纹理GL_MAX_CUBE_MAP_TEXTURE_SIZE
对于rect纹理GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB(如果显卡支持GL_ARB_texture_rectangle )或者
GL_MAX_RECTANGLE_TEXTURE_SIZE_EXT(如果显卡支持GL_EXT_texture_rectangle)或者
GL_MAX_RECTANGLE_TEXTURE_SIZE_NV(如果显卡支持
GL_NV_texture_rectangle)
3.对于opengl 2.0以前的显卡,除了rect纹理,尺寸必须为2^n,opengl 2.0以后纹理没有这个限制,但是对于有些比较旧的显卡,如ati 9500,如果纹理尺寸不是2^n,并且寻址模式不是clamp时,不能得到硬件加速,因此运行速度就比较慢.同时rect纹理只能使用clamp寻址模式,并且它的寻址范围是1..texture_size
4对于比较旧的支持gl2.0的显卡,必须更新驱动才可以支持gl2.0
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-23 11:47

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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