需求:公司的端游项目有个超大场景(8x8公里),里面需要各种角度的房子,但unity自带的反射球 是长方体模式 且不支持旋转。相比ue4 早早就有可旋转的长方体和球体2种模式,unity的2017 2018 2019 居然就硬是罔顾需求没增加这一常用功能。当然 unity有自己的建议 把长方体 切割成多个 立方体,这样就解决球形了 然后 再用 距离混合来模糊下边界。但不能提供方便精确的效果,所以决定开发这一功能。

实现1:无源码的修改方案

没有源码修改比较绕,首先调大boxsize 我这里是z方向调大3倍让引擎的cube渲染足够覆盖需要反射的区域。
在Internal-DeferredReflections 文件中做这样的修改。主要含义是将各种参与 反射计算的坐标和方向 都转到 反射球坐标系(这样可以利用引擎原本的 aabb计算 计算量较小)

记得计算完成过度后 还原后面pbr需要的数据

特别关键

在真正采样反射球前一行,要把采样方向返回到世界坐标系下,当初这里没做对 卡住了2小时。UnityImageBasedLighting.cginc 文件Unity_GlossyEnvironment 函数内

方案2:源码修改方案

在引擎延迟渲染的代码里 对绘制延迟反射的mesh 的矩阵m做与反射球一致的旋转,根据实际需要只做了Y旋转,这里没用全局变量,借用引擎定义的实例变量但没用到的shadow3 矩阵

shader修改和方案1 一样 只是testProbeRotMat 改成 unity_WorldToShadow3,采样的地方也不需要多一个反转的矩阵 限制反射球不缩放 直接修改2个数字就可以反转

为什么只对13,31取负 看下图我们是Ry 当角度反向时 cos不变(偶函数) sin取反(奇函数)

PS:因为参与到项目是 延迟渲染 所以 forward的小伙伴请自己对照修改

3d旋转相册代码源码_实现可旋转的Reflection Probe(原创)相关推荐

  1. 3d旋转相册代码源码_原生 JS 实现 3D 立方体

    访问该URL可查看效果:http://is666a.gitee.io/javascript3d_cube/ 项目源码已上传码云:小朋友/JavaScript 3D立方体 原生 JS 实现 3D 立方体 ...

  2. 3d旋转相册代码源码_如何使用CSS开发精美3D旋转相册?

    借助CSS所提供的animation动画属性及2D.3D变换属性,我们可以摆脱对JavaScript的依赖,设计开发各类效果优秀的前端动态效果,在之前文章和视频中我们也介绍了不少基于CSS与JavaS ...

  3. 3d旋转相册代码源码_用代码制作3d相册签到墙(附源码)

    七夕就要到了,不管是单身狗的小伙伴还是已经有狗的小伙伴都比较焦虑了,单身的小伙伴着急怎么尽快脱单,不是单身的小伙伴又纠结该送点什么礼物好哄男(女)朋友,呐,在买香水口红的同时,也不要忘记花点小心思,心 ...

  4. 抖音3D旋转相册 (源码下载)

    先来看效果 模板效果 上面这个是模板的预览,包括下面的代码制作和代码下载都是模板,自己替换照片就好,下面的图片是我的自己的制作,需要找我单独发! 自己实现步骤(当然你可以下载我提供的替换一下里面的照片 ...

  5. 相册java源码_电子相册java源码

    电子相册java源码 import java.awt.*; import java.awt.FlowLayout; import java.awt.event.*; import javax.swin ...

  6. HTML-网页-3D旋转相册-创意相册

    HTML-网页-3D旋转相册 代码: <!DOCTYPE html> <html lang="en"> <head><meta chars ...

  7. HTML5七夕情人节表白网页_(唯美满天星)多功能展示(网状球状)3D相册_HTML+CSS+JS 求婚 html生日快乐祝福代码网页 520情人节告白代码 程序员表白源码 抖音3D旋转相册

    HTML5七夕情人节表白网页_(唯美满天星)多功能展示(网状球状)3D相册_HTML+CSS+JS 求婚 html生日快乐祝福代码网页 520情人节告白代码 程序员表白源码 抖音3D旋转相册 js烟花 ...

  8. HTML5七夕情人节表白网页_生日快乐粒子烟花(自定义文字)_ HTML+CSS+JS 求婚 html生日快乐祝福代码网页 520情人节告白代码 程序员表白源码 抖音3D旋转相册 js烟花代码

    HTML5七夕情人节表白网页❤生日快乐粒子烟花(自定义文字)❤ HTML+CSS+JS 求婚 html生日快乐祝福代码网页 520情人节告白代码 程序员表白源码 抖音3D旋转相册 js烟花代码 css ...

  9. HTML5七夕情人节表白网页_圣诞节3d相册(含音乐)_HTML+CSS+JS 求婚 html生日快乐祝福代码网页 520情人节告白代码 程序员表白源码 抖音3D旋转相册 js烟花代码

    HTML5七夕情人节表白网页❤圣诞节3d相册(不含音乐开关)❤ HTML+CSS+JS 求婚 html生日快乐祝福代码网页 520情人节告白代码 程序员表白源码 抖音3D旋转相册 js烟花代码 css ...

最新文章

  1. 张恩民 php,php100视频教程第11讲(制作PHP+MYSQL留言板 上)中,张恩民老师提到的php100-11.txt文档...
  2. 2017-4-26 winform 菜单和工具栏
  3. 数据加载很慢_Vaex真香!几秒钟就能处理数十亿行数据,比Pandas、Dask更好用
  4. C++中OpenCV应用
  5. 数据开放平台的配置管理
  6. mysql 唯一约束 多字段_mysql多字段唯一约束
  7. 陶哲轩对数学学习的一些建议
  8. 双继承_在Python中使用双下划线防止类属性被覆盖!
  9. ArcSDE服务入门
  10. iOS页面间跳转的方式
  11. linux软件索引损坏,linux – 突然大量文件系统损坏的原因? (“root inode不是目录”)...
  12. scratch编程记忆力小游戏
  13. html 网页公式编辑软件,LaTeX 公式编辑器网页版
  14. 手机签到应用的设计与手机定位方法浅析
  15. 互金累计融资近千例 借贷行业融资数量居首位
  16. 如何用Java写出热门大鱼吃小鱼游戏
  17. android光照传感器,Android 传感器--光照传感器详解及使用
  18. Linux(一): 磁盘分区
  19. 用java写一个图书类book
  20. mac键盘上符号的快捷键_Mac键盘符号实际上是什么意思?

热门文章

  1. iOS--OCR图片识别
  2. Outlook for Mac v15.36(170606)发布:新增收藏夹功能
  3. jQurey 的选择器
  4. [JavaWebService-axis]-环境搭建
  5. 2013——M笔试南京——程序
  6. ANDROID BITMAP内存限制OOM,OUT OF MEMORY
  7. 你有没有成为技术作家的潜力
  8. python字典多层嵌套
  9. 力扣(LeetCode)刷题
  10. springboot整合mybatis分页插件