游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2929|回复: 1

怎么解决啊...

[复制链接]

6

主题

6

帖子

24

积分

注册会员

Rank: 2

积分
24
发表于 2003-8-31 23:03:00 | 显示全部楼层 |阅读模式
我用CreateBitmapFromBMP和CreateSurfaceFromBMP分别建立了同样大小的m_BBitmap,m_SBitmap.
使用g_pDisplay->DrawBitmap( 0, 0, m_BBitmap, SCREENBUFFER );时成功.
使用g_pDisplay->DrawSurface( 0, 0, m_SBitmap, SCREENBUFFER );时非法操作.
使用g_pDisplay->DrawBitmap( 0, 0, m_SBitmap, SCREENBUFFER );时花屏.
使用g_pDisplay->DrawBitmap( 0, 0, m_SBitmap, m_BBitmap );时花屏.
使用g_pDisplay->DrawSurface( 0, 0, m_SBitmap, m_BBitmap );时非法操作.
如何把CreateSurfaceFromBMP建立的iBitmapX显示出来啊?
另外,用CreateSurfaceFromBMP建立的iBitmapX可以使用iBitmap->GetSurface()->GetDC( &dc );
用CreateBitmapFromBMP建立的iBitmapX不能使用iBitmap->GetSurface()->GetDC( &dc );
如果CreateBitmapFromBMP建立iBitmapX是自己管理内存,那为什么不直接由DirectX的Surface的来管理更方便呢?
我觉得在用CreateBitmapFrom建立iBitmapX类时完全可以建立并初始化Surface指针啊,为什么用CreateBitmapFromBMP建立的iBitmapX不能使用iBitmap->GetSurface()->GetDC( &dc );呢?
能不能告诉我是什么原因存在CreateBitmap和CreateSurface两套函数且不能相互使用.或者告诉我用什么方法可以怎么可以用DrawBitmap和DrawSurface相互复制图形呢?

1万

主题

1万

帖子

2万

积分

管理员

中级会员

Rank: 9Rank: 9Rank: 9

积分
20356
QQ
发表于 2003-9-1 15:36:00 | 显示全部楼层

Re:怎么解决啊...

两者是不能通用的。
我没有做这方面的处理,因为这种处理在游戏制作中一般不予与考虑。
自己进行图像数据管理有很多好处,毕竟Surface在一定程度上有些限制。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-5-20 22:21

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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