游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2471|回复: 5

(((WINAPI里哪个Blt函数能实现镜面反转?)))

[复制链接]

58

主题

281

帖子

281

积分

中级会员

Rank: 3Rank: 3

积分
281
QQ
发表于 2004-10-28 00:53:00 | 显示全部楼层 |阅读模式
BitBlt、StretchBlt、TransparentBlt 好象都没这个功能,难道只能自己写?又怕效率不高。

3

主题

95

帖子

107

积分

注册会员

Rank: 2

积分
107
发表于 2004-10-30 00:09:00 | 显示全部楼层

Re:(((WINAPI里哪个Blt函数能实现镜面反转?)))

用DDraw的Overlay吧,呵呵,效率高也不差

13

主题

978

帖子

978

积分

高级会员

Rank: 4

积分
978
发表于 2004-10-31 16:40:00 | 显示全部楼层

Re:(((WINAPI里哪个Blt函数能实现镜面反转?)))

ddraw的blt就行了

32

主题

1583

帖子

1589

积分

金牌会员

Rank: 6Rank: 6

积分
1589
发表于 2004-10-31 18:50:00 | 显示全部楼层

Re:(((WINAPI里哪个Blt函数能实现镜面反转?)))

楼主问Win32 API中的函数。

我也没有发现,遇到反转都是自己提前把图反转好……

13

主题

978

帖子

978

积分

高级会员

Rank: 4

积分
978
发表于 2004-10-31 20:55:00 | 显示全部楼层

Re:(((WINAPI里哪个Blt函数能实现镜面反转?)))

反转图形是有硬件支持的,纯软件效率肯定不高。还是那一句,怕效率不高就用ddraw。

7

主题

29

帖子

29

积分

注册会员

Rank: 2

积分
29
QQ
发表于 2004-11-2 14:32:00 | 显示全部楼层

Re: (((WINAPI里哪个Blt函数能实现镜面反转?)))

改映射模式
int extX = 0;
int extY = 0;
if(水平翻转)
   extX = -1;
if(垂直翻转)
   extY = -1;
SetMapMode(hdc,MM_ANISOTROPIC);
SetWindowExtEx(hdc,1,1,NULL);
SetViewportExtEx(hdc,extX,extY,NULL);
SetViewportOrgEx(hdc,(1-extX)*(x+width)/2,(1-extY)*(y+height)/2,NULL);
BitBlt(hdc,x,y,width,height,hdc1,0,0,SRCCOPY);
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-12-23 02:08

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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