游戏开发论坛

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

如何使用direct3d实现水中的动态物体.

[复制链接]

2

主题

3

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2007-3-21 17:04:00 | 显示全部楼层 |阅读模式
如何使用direct3d实现水中的动态物体,有思路的请讲讲,如果有例子就更好了.谢谢.

18

主题

971

帖子

982

积分

高级会员

Rank: 4

积分
982
发表于 2007-3-21 17:29:00 | 显示全部楼层

Re:如何使用direct3d实现水中的动态物体.

??什么叫水中的动态物体啊?
不明白是指要模拟物理效果还是模拟图形效果

2

主题

3

帖子

0

积分

新手上路

Rank: 1

积分
0
 楼主| 发表于 2007-3-21 18:29:00 | 显示全部楼层

Re:如何使用direct3d实现水中的动态物体.

比如说水中游动的鱼,因为在水中,产生水波的时候鱼会扭曲。

3

主题

113

帖子

147

积分

注册会员

Rank: 2

积分
147
发表于 2007-3-21 21:52:00 | 显示全部楼层

Re:如何使用direct3d实现水中的动态物体.

可使用光线追踪图形方面知识,纯光栅化图形..感觉很难实现物体的扭曲..

18

主题

971

帖子

982

积分

高级会员

Rank: 4

积分
982
发表于 2007-3-22 11:19:00 | 显示全部楼层

Re:如何使用direct3d实现水中的动态物体.

那实际上还是水的折射引起的,因为有波浪时从波峰、波谷到鱼的水深度、到人眼的反射角度都有变化,所以会引起扭曲。如果真要模拟,考虑用真实的物理学去做好了,会非常耗时。

3

主题

89

帖子

89

积分

注册会员

Rank: 2

积分
89
QQ
发表于 2007-3-23 16:30:00 | 显示全部楼层

Re:如何使用direct3d实现水中的动态物体.

近似的方法:先通过RTT(render to texture)将水中物体绘制到水平面(沿观察方向投影到水平面)。
然后在绘制水面时,利用bump mapping将该纹理与其它反射、高光等效果混合。
考虑视差映射和折射,可以逼近真实效果。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-26 19:14

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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