游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4440|回复: 10

哪位高人讲解一下游戏中水中倒影的实现

[复制链接]

40

主题

48

帖子

48

积分

注册会员

Rank: 2

积分
48
发表于 2009-7-23 15:26:00 | 显示全部楼层 |阅读模式
我知道可以用事先渲染好的立方体环境贴图,也可以使用动态的环境映射,但事先渲染好的立方体贴图有缺陷,就是当水面上有东西飞过时水中的倒影渲染不出来,要是动态的环境映射,每一帧都需要把场景渲染6遍,这大大增加了负担,请问有什么好点的办法能实现吗?请赐教

227

主题

1793

帖子

1866

积分

金牌会员

Rank: 6Rank: 6

积分
1866
发表于 2009-7-23 15:30:00 | 显示全部楼层

Re:哪位高人讲解一下游戏中水中倒影的实现

中水中倒影就是把场景反过来在水面下渲染一遍
至少我是这么做的

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
发表于 2009-7-23 16:11:00 | 显示全部楼层

Re:哪位高人讲解一下游戏中水中倒影的实现

render to cubemap 环境贴图

59

主题

984

帖子

1200

积分

金牌会员

Rank: 6Rank: 6

积分
1200
发表于 2009-7-23 16:13:00 | 显示全部楼层

Re:哪位高人讲解一下游戏中水中倒影的实现

read <<reflections from bumpy surfaces>> in <<shaderX 3>>

34

主题

657

帖子

672

积分

高级会员

Rank: 4

积分
672
发表于 2009-7-23 17:13:00 | 显示全部楼层

Re:哪位高人讲解一下游戏中水中倒影的实现

先反射照相机然后渲染场景到纹理中,然后利用投影到纹理将场景投影到水面上。

362

主题

3023

帖子

3553

积分

论坛元老

Rank: 8Rank: 8

积分
3553
发表于 2009-7-23 20:09:00 | 显示全部楼层

Re: Re:哪位高人讲解一下游戏中水中倒影的实现

tonykee: Re:哪位高人讲解一下游戏中水中倒影的实现

render to cubemap 环境贴图


似乎没有必要

40

主题

48

帖子

48

积分

注册会员

Rank: 2

积分
48
 楼主| 发表于 2009-7-24 14:39:00 | 显示全部楼层

Re:哪位高人讲解一下游戏中水中倒影的实现

把场景反过来渲染一遍,是不是还要用模版让倒立的场景显示出来?在HLSL中如何通过水的的折射把倒立的场景显示出来?还有,如果是将场景翻转渲染到贴图,是不是还要根据视点的变化改变场景翻转的角度然后渲染到纹理?有点不是很明白

34

主题

657

帖子

672

积分

高级会员

Rank: 4

积分
672
发表于 2009-7-24 16:31:00 | 显示全部楼层

Re:哪位高人讲解一下游戏中水中倒影的实现

可以看看这篇文章。
http://www.gamedev.net/reference/articles/article2138.asp

5

主题

686

帖子

697

积分

高级会员

Rank: 4

积分
697
QQ
发表于 2009-7-24 22:25:00 | 显示全部楼层

Re:哪位高人讲解一下游戏中水中倒影的实现

平面反射折射而已,自己画个图就晓得了,大面积的水,用cube的话反而不够精确

15

主题

62

帖子

64

积分

注册会员

Rank: 2

积分
64
发表于 2009-7-27 10:37:00 | 显示全部楼层

Re:哪位高人讲解一下游戏中水中倒影的实现

把眼睛对称到水面下面,然后生成matView,然后剪裁RTT,然后把倒影图渲染到水面即可
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-12-20 16:44

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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