游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3595|回复: 6

怎么用 SHADER处理图片的对比度?让黑的更黑`白的更白`

[复制链接]

26

主题

88

帖子

88

积分

注册会员

Rank: 2

积分
88
发表于 2006-11-29 06:35:00 | 显示全部楼层 |阅读模式
怎么用 SHADER处理图片的对比度?让黑的象素更黑`白的更白`?
PS:使用HLSL`,目前已有:
texture colorMap<string name = "afa.jpg">
sampler colorMapSampler = sampler_state
{
   Texture = <colorMap>;
   MinFilter = Linear;
   MagFilter = Linear;
   MipFilter = Linear;   
   AddressU  = Clamp;
   AddressV  = Clamp;
};

......

... VS(...)...
{
   ??????
}

18

主题

971

帖子

982

积分

高级会员

Rank: 4

积分
982
发表于 2006-11-29 08:39:00 | 显示全部楼层

Re: 怎么用 SHADER处理图片的对比度?让黑的更黑`白的更白`

随便在网上SEARCH一下就能找到调节图片对比度的方法!

6

主题

307

帖子

309

积分

中级会员

Rank: 3Rank: 3

积分
309
发表于 2006-11-29 10:42:00 | 显示全部楼层

Re:怎么用 SHADER处理图片的对比度?让黑的更黑`白的更白`

调节对比度需要对整个画面进行亮度统计

Shader没有这个能力

32

主题

1259

帖子

1351

积分

金牌会员

Rank: 6Rank: 6

积分
1351
发表于 2006-11-29 13:30:00 | 显示全部楼层

Re:怎么用 SHADER处理图片的对比度?让黑的更黑`白的更白`

简单一点,从一半的亮度处伸展开

k*(color-0.5)+color

0

主题

4

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2006-11-29 13:35:00 | 显示全部楼层

Re: 怎么用 SHADER处理图片的对比度?让黑的更黑`白的更白`

首先将RGB转成YUV,其中的Y分量就是亮度信息,对Y可以做Smoothstep或者你自己的修正算法,然后再将YUV转回RGB就可以了

5

主题

686

帖子

697

积分

高级会员

Rank: 4

积分
697
QQ
发表于 2006-11-29 16:33:00 | 显示全部楼层

Re:怎么用 SHADER处理图片的对比度?让黑的更黑`白的更白`

简单的用乘方就可以解决鸟~


to bracelet:
Shader可以对整个画面做亮度统计的,DownScale就可以了,HDR里面就有

26

主题

88

帖子

88

积分

注册会员

Rank: 2

积分
88
 楼主| 发表于 2006-11-29 22:23:00 | 显示全部楼层

Re:怎么用 SHADER处理图片的对比度?让黑的更黑`白的更白`

GOOD~~有思路了~谢谢大家~
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-25 23:21

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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