Vuforia结合Skyshop: Image-Based Lighting Tools & Shaders插件实现真实的光照效果

rss"/>

Skyshop: Image-Based Lighting Tools & Shaders 插件地址:https://www.assetstore.unity3d.com/en/#!/content/8880

相关使用教程:http://www.narkii.com/club/thread-300367-1.html

http://blog.sina.com.cn/s/blog_6364792d0102uys6.html

这些基本上都是使用了HDRI 高动态范围图像 作为场景中的天空实现天空的光线照明,而在AR中,如Vuforia等是实时拍摄现实中的场景的,所有要动态更改天空的光照效果。

首先导入Skyshop的插件,然后在场景中创建带有Sky和SkyManager脚本空物体或直接右键创建。

把场景中的灯光都删除掉。

调节Sky脚本中的相关属性。

把模型的Shader设置为Marmoset下的Shader,譬如Bumped Specular IBL

在场景中绑定一个脚本,实时更新Sky的SkyboxCube属性和SpecularCube属性。

using UnityEngine;
using System.Collections;
using mset; public class SkyTest : MonoBehaviour { public Cubemap testCubmap; // Use this for initialization
private Cubemap cubmap;
private Camera textureCamera;
private GameObject textureCameraObj;
private Sky sky;
void Start () {
sky=GameObject.Find("Sky").GetComponent<Sky>();
cubmap = new Cubemap(, TextureFormat.ARGB32, false);
} // Update is called once per frame
void Update()
{
if (textureCameraObj == null)
{
textureCameraObj = GameObject.Find("TextureBufferCamera");
}
if (textureCameraObj!= null)
{
textureCamera = textureCameraObj.GetComponent<Camera>();
}
if (textureCamera != null)
{
textureCamera.RenderToCubemap(cubmap);
sky.SkyboxCube = cubmap;
sky.SpecularCube = cubmap; //textureCamera.RenderToCubemap(testCubmap);
//sky.SkyboxCube = testCubmap;
}
}
}

Cubmap可以自己New一个也可以使用属性面板中传过来的Cubmap。

最后通过摄像头识别图片进行相关属性和Shader的调节来打到你想要的效果。

Vuforia结合Skyshop: Image-Based Lighting Tools & Shaders插件实现真实的光照效果的更多相关文章

  1. Skyshop: Image-Based Lighting Tools & Shaders插件调整反射光不明显的模型

    在Skyshop插件中,使用类似不锈钢等材质的模型,实时反光效果非常好,如果是其他反光不明显的模型,如砖头,建筑等,这时候就需要调整模型的Shader的高光贴图了. 如官方例子中的用砖块组成的柱子,反 ...

  2. eclipse 安装spring tools suite插件

    之前使用idea进行springboot项目的开发学习,但是由于idea是收费的,总是用着用着说验证码到期之类的,总之还是很不爽,于是就想重新采用eclipse开发springboot项目,为了方便s ...

  3. Image Based Lighting In UE3

    "IBL"全称为"Image-based Lighint",是一种伪装全局光照的方法.使用该方法可以获得较好的视觉效果并且可以达到实时渲染的目的. 实现的方法之 ...

  4. Implementation Notes: Runtime Environment Map Filtering for Image Based Lighting

    https://placeholderart.wordpress.com/2015/07/28/implementation-notes-runtime-environment-map-filteri ...

  5. [Tools] Vim插件管理

    我们在使用插件的时候,都不希望插件安装的很杂乱,它不是一个看不见的黑盒,也为了下次方便在其它地方安装. 由于要方便插件管理,于是有了 Vundle,以下做些介绍: 1. 一个插件管理器, 自己本身也是 ...

  6. eclipse使用Hibernate tools反向工程插件遇到的几个问题

    1,在eclipse使用hibernate工具,生成hibernate配置文件时,可能会提示not parse ....xml错误 参见 加载本地dtd 2,反向工程中,生成配置文件时,一般要填写其默 ...

  7. Hack Tools

    Tools 2011-03-17 13:54:36|  分类: Security|举报|字号 订阅     Packet Shaper:Nemesis: a command line packet s ...

  8. 基于预计算的全局光照(Global Illumination Based On Precomputation)

    目录 基于图像的光照(Image Based Lighting,IBL) The Split Sum Approximation 过滤环境贴图 预计算BRDF积分 预计算辐射度传输(Precomput ...

  9. 搭建开发环境1)安装VMware Tools

    1.安装Vmware Tools 安装VMware Tools ,在虚拟机中装Linux 一般都不是默认全屏这个就需要安装VMware Tools的插件或者写个脚本文件每次启动的时候自动调整分辨率的大 ...

随机推荐

  1. 如何搞定IE+google双内核的360浏览器表单自动回填兼容问题

    最近开发中碰到一个关于表单问题,在用户提交表单时候浏览器会提示是否保存帐号 如果点击保存,在退出帐号切换其他帐号时,浏览器会自动为表单填充数据,为了解决这个自动填充问题时, 主要分2个思路来解决,一个 ...

  2. 建表过程-列名&列类型&修改表小试题C

    #新增数据 INSERT INTO goods VALUES(10,'豆豆','男',85.2,'2016-12-14',5000.36,'2016-12-14 12:05:06','高') INSE ...

  3. GroupBy(..)的四种声明方式的理解及调用

    这里我们以 List<Student> studs作为 source,但是注意,studs中的学生可以是分别属于不同的班级和年级 先看GroupBy的第一种声明: public stati ...

  4. 搭建自己的LAMP

    LAMP的搭建说简单也简单,说难也不容易,如果采用一键安装也是比较容易的,但想配置自己需要的版本等等也是比较麻烦.前段时间我分别在自己的电脑和阿里云上部署了Lamp环境,以下是步骤和常出现的问题的解决 ...

  5. postgresql 设置只读用户

    postgresql 设置只读用户 ` CREATE USER readonly WITH ENCRYPTED PASSWORD 'ropass'; alter user readonly set d ...

  6. PHP 二维数组根据某个字段排序

    二维数组根据某个字段排序有两种办法,一种是通过sort自己写代码,一种是直接用array_multisort排序函数 一. 手写arraysort PHP的一维数组排序函数: sort  对数组的值按 ...

  7. 比较完整的WebView的用法

    WebView, WebChromeClient和WebViewClient加载网页基本用法 webview是android中的浏览器控件,在一些手机应用中常会用到b/s模式去开发应用,这时webvi ...

  8. NoSql数据库初探-mongoDB读操作

    MongoDB以文档的形式来存储数据,此结果类似于JSON键值对.文档类似于编程语言中将键和值关联起来的结构(比如:字典.Map.哈希表.关联数组).MongoDB文档是以BOSN文档的形式存在的.B ...

  9. Android 6.0 - 动态权限管理的解决方案

    Android 6.0版本(Api 23)推出了很多新的特性, 大幅提升了用户体验, 同时也为程序员带来新的负担. 动态权限管理就是这样, 一方面让用户更加容易的控制自己的隐私, 一方面需要重新适配应 ...

  10. angularJS- $http请求

    angular使用post.get向后台传参的问题 一.问题的来源 我们都知道向后台传参可以使用get.put,其形式就类似于name=jyy&id=001.但是在ng中我却发现使用$http ...