游戏开发论坛

 找回密码
 立即注册
搜索
楼主: hays2002

在游戏中怎么表现出黑夜

[复制链接]

85

主题

824

帖子

878

积分

高级会员

Rank: 4

积分
878
QQ
发表于 2004-5-30 01:22:00 | 显示全部楼层

Re:在游戏中怎么表现出黑夜

公式没错,
只是我反着写了,
不大容易理解,
那我就按正常顺序来解释一下吧,
alpha混合公式如下:
result = ALPHA * srcPixel + ( 1 - ALPHA ) * destPixel
当加亮时srcPixel 为255,
则公式就成了:result = ALPHA * 255+ ( 1 - ALPHA ) *destPixel
如果256级alpha的话,ALPHA =ALPHA /256
那么上面的公式就成了:result = ALPHA +  (1-ALPHA /256)*destPixel
所以变暗的公式就是:result = (1-ALPHA /256)*destPixel
srcPixel为0

47

主题

145

帖子

3602

积分

论坛元老

Rank: 8Rank: 8

积分
3602
 楼主| 发表于 2004-5-30 16:00:00 | 显示全部楼层

Re:在游戏中怎么表现出黑夜

<如果256级alpha的话,ALPHA =ALPHA /256> 干嘛要除个256??我不怎么理解!说说行吗?

54

主题

2916

帖子

3765

积分

论坛元老

Rank: 8Rank: 8

积分
3765
QQ
发表于 2004-5-31 06:51:00 | 显示全部楼层

Re:在游戏中怎么表现出黑夜

程序嘛!就是要高效节能。

18

主题

135

帖子

143

积分

注册会员

Rank: 2

积分
143
发表于 2004-5-31 08:27:00 | 显示全部楼层

Re:在游戏中怎么表现出黑夜

真的很长见识啊

47

主题

145

帖子

3602

积分

论坛元老

Rank: 8Rank: 8

积分
3602
 楼主| 发表于 2004-5-31 21:47:00 | 显示全部楼层

Re:在游戏中怎么表现出黑夜

<如果256级alpha的话,ALPHA =ALPHA /256> 干嘛要除个256??我不怎么理解!说说行吗?
<如果256级alpha的话,ALPHA =ALPHA /256> 干嘛要除个256??我不怎么理解!说说行吗?
===============================================
我很菜。。。。给我说说吧~

85

主题

824

帖子

878

积分

高级会员

Rank: 4

积分
878
QQ
发表于 2004-5-31 23:43:00 | 显示全部楼层

Re:在游戏中怎么表现出黑夜

首先ALPHA 是一个0~1之间的小数,
其次,ALPHA的级数是你自己定义的,
你也可以除以100,
反正只要让它在0~1间按比例变化就行了!
最后顺便提一下,
这样的逐点操作是非常慢的,
在实际使用过程中还要用MMX优化一下

132

主题

1341

帖子

1341

积分

金牌会员

Rank: 6Rank: 6

积分
1341
发表于 2005-2-20 11:24:00 | 显示全部楼层

Re: Re:在游戏中怎么表现出黑夜

nocture: Re:在游戏中怎么表现出黑夜

D3D中:
LPD3DXSPRITE pSprite;
.....
//将Surface绘制到BackBuffer
pSprite->Draw(Surface,
     ...

这个“//将Surface绘制到BackBuffer”
怎样做?
[em24]

15

主题

1268

帖子

1268

积分

金牌会员

Rank: 6Rank: 6

积分
1268
发表于 2005-2-20 11:33:00 | 显示全部楼层

Re:在游戏中怎么表现出黑夜

关 灯,关显示器
这个“//将Surface绘制到BackBuffer”
怎样做?

IDirect3DDevice9::StretchRect Method

32

主题

1583

帖子

1589

积分

金牌会员

Rank: 6Rank: 6

积分
1589
发表于 2005-2-20 11:53:00 | 显示全部楼层

Re:在游戏中怎么表现出黑夜

直接用他们提供的代码是不行的,慢死你。

要么用D3D,要么根据代码描述的公式用汇编重写吧(别问我,我不会汇编),或者用MMX优化也可以,总之运算量很大的。

31

主题

630

帖子

635

积分

高级会员

Rank: 4

积分
635
发表于 2005-2-20 13:24:00 | 显示全部楼层

Re:在游戏中怎么表现出黑夜

这么改会真实吗?肯定得改光源,改环境光。
感觉从原理上改才会真实。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-12-24 09:48

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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