游戏开发论坛

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

各位高手,快请帮忙,我都急死了,请帮我看看问题,给

[复制链接]

12

主题

40

帖子

40

积分

注册会员

Rank: 2

积分
40
发表于 2004-6-30 08:59:00 | 显示全部楼层 |阅读模式
我把屏幕设置为:640,480,16,0,DDSDM_STANDARDVGAMODE
然后,我根据我定义的数组大小用两个for循环,在后缓冲区,反复帖tile,tile的大小为36*36,最后翻页,在屏幕上显示地图,可是不管我按数组的大小帖,还是加大数组的行数和列数,总是帖不满,屏幕的右边和下边老是缺一整条,而且缺的地方闪.

举个例子
CreateDDPla(36,36,"C:/Documents and Settings/开普科技/My Documents/My Pictures/diban.bmp",25);//自定义函数,创建Tile表面
//以下为拷贝数据到Tile表面
::SelectObject(hdc,kip);
pOPla[25]->GetDC( &hdc1 );
::BitBlt( hdc1 , 0 , 0 ,36,36, hdc , 0 , 0 , SRCCOPY );
pOPla[25]->ReleaseDC(hdc1);
//用循环帖Tile
for(=0;i<15;i++)
{
for(j=0;j<21;j++)
{
pBBuf->BltFast(tr*36,rt*36,pOPla[25],CRect(0,0,36,36),DDBLTFAST_WAIT);
}
}
pPSur->Flip( NULL , DDFLIP_WAIT );

65

主题

225

帖子

232

积分

中级会员

Rank: 3Rank: 3

积分
232
发表于 2004-6-30 11:22:00 | 显示全部楼层

Re:各位高手,快请帮忙,我都急死了,请帮我看看问题,

最后的一行超出了屏幕外,所以不会被显示,建议重载BitFast函数,如果有超出屏幕的RECT,则自动进行裁剪.

12

主题

40

帖子

40

积分

注册会员

Rank: 2

积分
40
 楼主| 发表于 2004-6-30 11:35:00 | 显示全部楼层

Re: 各位高手,快请帮忙,我都急死了,请帮我看看问题,

还请指教我的另一个问题
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-7-2 23:52

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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