游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4713|回复: 7

DX7中调用BltFast出错!高手来指点一下

[复制链接]

3

主题

26

帖子

26

积分

注册会员

Rank: 2

积分
26
发表于 2007-2-15 10:23:00 | 显示全部楼层 |阅读模式
本人用的是VC++.NET 2005编译器
int DirectSurfaceDraw(int x,int y,LPDIRECTDRAWSURFACE7 src,bool HasColorKey)
{
        RECT rt={0,0,260,104};

        if(FAILED(BackSurface->BltFast(x,y,src,&rt,DDBLTFAST_WAIT | (HasColorKey?DDBLTFAST_SRCCOLORKEY:0))))
        {
                LogFile.LogSave ("BltFast操作失败!");
                return 0;
        }

        return 1;
}
在调用BltFast函数对缓冲页面进行操作时总出问题啊
函数返回的结果并不是以下这几个
DDERR_EXCEPTION  
DDERR_GENERIC  
DDERR_INVALIDOBJECT  
DDERR_INVALIDPARAMS  
DDERR_INVALIDRECT  
DDERR_NOBLTHW  
DDERR_SURFACEBUSY  
DDERR_SURFACELOST  
DDERR_UNSUPPORTED  
DDERR_WASSTILLDRAWING
真不知道问题出在哪

前面都没问题的

3

主题

26

帖子

26

积分

注册会员

Rank: 2

积分
26
 楼主| 发表于 2007-2-15 10:25:00 | 显示全部楼层

Re:DX7中调用BltFast出错!高手来指点一下

如果能帮我修改下源代码更好
但是要附带一个30M的资源文件
得用QQ传啊

3

主题

26

帖子

26

积分

注册会员

Rank: 2

积分
26
 楼主| 发表于 2007-2-15 17:58:00 | 显示全部楼层

Re:DX7中调用BltFast出错!高手来指点一下

自己顶

54

主题

2916

帖子

3765

积分

论坛元老

Rank: 8Rank: 8

积分
3765
QQ
发表于 2007-2-16 14:23:00 | 显示全部楼层

Re:DX7中调用BltFast出错!高手来指点一下

BltFast时不要超出屏幕边界。

很早以前的东西现在都不太记得了。

3

主题

26

帖子

26

积分

注册会员

Rank: 2

积分
26
 楼主| 发表于 2007-2-17 09:14:00 | 显示全部楼层

Re:DX7中调用BltFast出错!高手来指点一下

我检查了很多遍
没有超过边界啊
调用Blt就不会出错

9

主题

102

帖子

343

积分

中级会员

Rank: 3Rank: 3

积分
343
发表于 2007-2-24 18:52:00 | 显示全部楼层

Re:DX7中调用BltFast出错!高手来指点一下

忘记设置src 的 colorkey?

15

主题

129

帖子

129

积分

注册会员

Rank: 2

积分
129
QQ
发表于 2007-2-25 13:25:00 | 显示全部楼层

Re:DX7中调用BltFast出错!高手来指点一下

bltfast一般的错误都是区域超过了,如果需要剪切,就要使用blt

32

主题

1583

帖子

1589

积分

金牌会员

Rank: 6Rank: 6

积分
1589
发表于 2007-2-26 21:36:00 | 显示全部楼层

Re:DX7中调用BltFast出错!高手来指点一下

把源文件放上来吧,不要资源应该很小。

单从这些代码上没看出什么问题。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-26 13:04

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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