整张大地图需要分割吗?

在内存足够容纳整张大地图的情况下,剩下的大概主要是绘图效率问题。所以我想知道:
如果要在屏幕上绘出一张大图的一小部分,那么DirectDraw或D3D的绘图操作采用哪种方式实现?
1、先在内存中填充整张大图,然后将要显示的区域部分翻转到前台显示缓存
2、根据命令参数只在内存中填充大图中要显示区域部分的数据,然后将它们翻转到前台显示缓存
显然,如果是方式1,那么每次绘整张大图很费时,有必要分割显示。而如果是方式2,绘图与图大小无关,内存足够时图片分割岂不是多此一举?
[269 byte] By [wood87654321-wood87654321] at [2008-1-9]
# 1
如果你的显存足够大,那么就加载整个作为纹理使用好了,具体显示多大,控制纹理坐标来实现,那多方便啊
# 2
我的意思不是问该怎么设计,而是问对于显示大图的一小部分这种情况,底层API是用上述1、2哪种方式实现的。
wood87654321-wood87654321 at 2007-10-19 > top of Msdn China Tech,专题开发,技术,项目,游戏开发...
# 3
ddraw或者d3d是根据的你的命令来做这个操作的,
你加载的图多大就是多大,你让它翻转它就翻转
他们不会自己来处理

D3D也好,DDRAW
建立一个和图形大小一直的off-screen,把图片填充在这里
然后建立一个和屏幕等大小的后台缓冲,把每次要显示的内容从图上copy到这里,然后flip
也可以不建立这个后台,直接copy到前台
# 4
谢谢,这意味着对大地图分割还是很必要的
wood87654321-wood87654321 at 2007-10-19 > top of Msdn China Tech,专题开发,技术,项目,游戏开发...