游戏开发论坛

 找回密码
 立即注册
搜索
12
返回列表 发新帖
楼主: gpra8764

16位色详细原理解释

[复制链接]

1

主题

7

帖子

13

积分

新手上路

Rank: 1

积分
13
发表于 2005-10-11 14:00:00 | 显示全部楼层

Re: Re:16位色详细原理解释

sandy_zc_1: Re:16位色详细原理解释

DDraw7的SetColorKey参数中的colorKey,经过我的多次测试,并不能滤去一个颜色范围,它指定的ColorKey完全由其中的Low决定,High你设定多少都无所谓。


请问加了表示SRCKEY使用一个颜色范围的标志了吗?
似乎叫XXXXSPACE~~~

43

主题

229

帖子

234

积分

中级会员

Rank: 3Rank: 3

积分
234
QQ
 楼主| 发表于 2006-4-20 23:58:00 | 显示全部楼层

Re: Re:16位色详细原理解释

sandy_zc_1: Re:16位色详细原理解释

DDraw7的SetColorKey参数中的colorKey,经过我的多次测试,并不能滤去一个颜色范围,它指定的ColorKey完全由其中的Low决定,High你设定多少都无所谓。


这点我回去研究了,实际上只是bltFast不支持那个参数,在Blt里或BlfFx里面High是有用的,具体只要在后面的Flag标志里加上一个参数就可以,可以自己去找DirectDraw中文帮助文档看看的.

另外加上我的CatchColor软件的最新更新,按Ctrl开始\停止取色.

sf_200642023581.rar

51.5 KB, 下载次数:

10

主题

62

帖子

68

积分

注册会员

Rank: 2

积分
68
发表于 2006-4-21 09:36:00 | 显示全部楼层

Re: Re: 16位色详细原理解释

jcfly: Re: 16位色详细原理解释

在传奇3中提取出来的位图很奇怪,其位深是 16 ,bifCompression 位是3,bifOffset为 66  (一般的应是 54)...



WINGDI.H
/* constants for the biCompression field */
#define BI_RGB        0L
#define BI_RLE8       1L
#define BI_RLE4       2L
#define BI_BITFIELDS  3L
#if (_WIN32_WINNT >= 0x0400)
#endif


MSDN:
BI_BITFIELDS
Specifies that the bitmap is not compressed and that the color table consists of three DWORD color masks that specify the red, green, and blue components, respectively, of each pixel. This is valid when used with 16- and 32-bit-per-pixel bitmaps.



表示BITMAPINFOHEADER后面有三个DWORD,分别用来表示R、G、B的掩码。这样BMP文件也能存放565格式的16位图像数据

那三个DWORD后面的才是图像数据
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-24 07:08

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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