Unity3d 模拟视锥的实现
2016-04-16 11:56
357 查看
一个独立游戏 Teleglitch 使用了一种欺骗手法来模拟视锥,效果如下:
博主看了看了看提示
Actually,
the line of sight shadows aren’t done with perspective. They are just
black polygons extruded from the walls away from the player. The math is
similar to black 3d walls extruding towards the camera, but if you
really look at them, they aren’t.
原理和卡通渲染挤出边是一样的,
就是把物体沿着视线(玩家)向外挤出一定距离来产生阴影的感觉,
博主没调距离之前的实现效果:
关于距离的调法,不能单单只调整挤出的距离,那样的话阴影会脱离物体,博主根据视线到物体方向与法线进行角度比较,也就是点积,来线性改变这个距离,离得远的拉伸的长,近的基本不动,
最终效果:
另外注意,方向上的比较是世界空间的比较,需要把物体顶点位置变为世界空间的位置。
博主近期渲染:
近期渲染
---- by wolf96
博主看了看了看提示
Actually,
the line of sight shadows aren’t done with perspective. They are just
black polygons extruded from the walls away from the player. The math is
similar to black 3d walls extruding towards the camera, but if you
really look at them, they aren’t.
原理和卡通渲染挤出边是一样的,
就是把物体沿着视线(玩家)向外挤出一定距离来产生阴影的感觉,
博主没调距离之前的实现效果:
关于距离的调法,不能单单只调整挤出的距离,那样的话阴影会脱离物体,博主根据视线到物体方向与法线进行角度比较,也就是点积,来线性改变这个距离,离得远的拉伸的长,近的基本不动,
最终效果:
另外注意,方向上的比较是世界空间的比较,需要把物体顶点位置变为世界空间的位置。
博主近期渲染:
近期渲染
---- by wolf96
相关文章推荐
- Unity3d 模拟视锥的实现
- 【Unity】6.1 Unity中的C#脚本基础知识
- 【Unity】第6章 Unity脚本开发基础
- Unity3D教程宝典之 AnimationCurve
- 自我感觉。。第一阶段unity总结。。
- Unity3D-深入剖析NGUI的游戏UI架构
- unity 基于socket的多人群聊实现
- [Unity3D]Unity3D游戏开发之角色控制漫谈
- Unity3d大会
- 《VR入门系列教程》之21---使用Unity开发GearVR应用
- UNITY退后台
- Unity优化总结
- 小译UnityAPI-OnApplicationFocus,OnApplicationPause,OnApplicationQuit
- Unity优化----drawcall系列
- Unity性能优化之Draw Call
- Unity开发-你必须知道的优化建议
- Unity3D 重力下打飞碟
- Unity AssetBundle 爬坑!!!!!!!
- Unity2016 Unity3D开发VR游戏的经验
- unity3d热更新插件uLua学习整理