游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1486|回复: 2

问两个问题

[复制链接]

2

主题

4

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2007-9-25 21:20:00 | 显示全部楼层 |阅读模式
不管用D3DXCreateTextureFromFile和D3DXCreateTextureFromFileEx载入很小的纹理时,都会需要一段时间,尽管不足一秒,但看的出来,请问有什么办法可以提速?

ogg音频应该怎么编程让他播放

谢谢

8

主题

390

帖子

390

积分

中级会员

Rank: 3Rank: 3

积分
390
发表于 2007-9-25 22:05:00 | 显示全部楼层

Re:问两个问题

1:纹理使用dds格式,体积较小,upload 到video memory比较快,不需cpu解码也速度快一些。另外,也许不需要使用D3DXCreateTextureFromFile载入,直接CreateTexture,然后lock,然后直接copy dds的raw data。

2:Ogg的audio是ogg vorbis,使用vorbis的sdk就可以了。ogg的video是ogg theora,使用theora的sdk解码就是了。都是开源的,。。。。

8

主题

390

帖子

390

积分

中级会员

Rank: 3Rank: 3

积分
390
发表于 2007-9-25 22:17:00 | 显示全部楼层

Re:问两个问题

说起纹理格式,现在商业引擎几乎只使用dxt1,dxt3,dxt5,甚至dxt3格式都不用,就1,5,理由是,无需支持这么多格式,1,5已经足够,dxt1处理不透明的贴图(其实可以处理1bit alpha),dxt5处理带alpha的纹理。

具体是artist可以提供各种格式的图片,png,tga,jpeg,bmp等,引擎提供工具在转入编辑器中进行压缩成dds格式,然后直接保存dds的raw data保存在地图资源包中,在游戏运行时直接载入显存,完全去掉实时解压jpeg或者png等耗时操作。
    ----。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-21 05:25

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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