Skip to main content
 首页 » 资源教程 » Unity3D教程

Unity 5.4大赞:HTC Vive经典The lab渲染器开源

2016年08月28日 20:30:2118500

HTC Vive提供了一个不错的免费VR demo,最近1周仔细体验了一番。

Unity 5.4大赞:HTC Vive经典The lab渲染器开源 Unity3D教程 第1张

仔细看了其安装文件,竟然是Unity 5.4beta版本(通过查log,知道Valve公司用的是最新的5.4.0b11版本开发的),的确令人信心大振:

要知道,某些创业公司为了打差异化竞争,提高技术门槛,对外称Unreal 4的画质比Unity 5优秀很多,这让很多在Unity技术栈下的公司有些郁闷–多年来Unity画质始终不如Unreal逼格高啊。

The Lab

程序路径:Steam\steamapps\common\The Lab\TheLab\win64

Unity 5.4大赞:HTC Vive经典The lab渲染器开源 Unity3D教程 第2张

Secret Shop

程序路径:Steam\steamapps\common\The Lab\SecretShop\win64

Unity 5.4大赞:HTC Vive经典The lab渲染器开源 Unity3D教程 第3张

LONGBOW

Unity 5.4大赞:HTC Vive经典The lab渲染器开源 Unity3D教程 第4张

Unity 5.4大赞:HTC Vive经典The lab渲染器开源 Unity3D教程 第5张

射箭,新破的记录:3565分

上面这3个demo,均符合VR体验沉浸感三要素:

  • 触觉:手柄震动反馈

  • 视觉:画质沉浸感强

  • 听觉

仔细找了一些资料,发现1个月前,Valve把The Lab 渲染器开源了,竟然。

  •  The Lab Renderer (Requires Unity 5.4.b15 or newer)

  • SteamVR plugin for Unity(HTC Vive开发必备)

The lab渲染器有下面几个特点:

  • Single-Pass Forward Rendering and MSAA

  • Adaptive quality

  • Custom Shaders

  • GPU Flushing

    步骤1:场景设置

    • 使用步骤

// Scene setup: 

//    – Enable forward renderer in Player Project Settings 

//    – Set Color Space to Linear in Player Project Settings 

//    – Enable GPU Skinning in Player Project Settings 

//      – Add the ValveCamera.cs script to the main camera 

//      – Add the ValveRealtimeLight.cs script to all runtime lights 

//    – In Project Quality Settings, set Shadow Cascades to No Cascades 

//    – In Project Quality Settings, set Pixel Light Count = 99

步骤2:切换Shader

Unity 5.4大赞:HTC Vive经典The lab渲染器开源 Unity3D教程 第6张

  • 方便转换已有的材质–其实是使用Valve提供的Shaders(代替Unity 5 Standard Shader)

      步骤3:查看HTC Vive运行过程中VR的FPS!

    Unity 5.4大赞:HTC Vive经典The lab渲染器开源 Unity3D教程 第7张

    • HTC 要求的Refresh Rate是90Hz。

      • 核心C#脚本就2个文件,ValveCamera.cs、ValveRealtimeLight.cs

      • 提高VR画质和刷新率的平衡,是设置这2个Unity VR参数:

      VRSettings.renderScale

      VRSettings.renderViewportScale

      其中Adaptive quality的启发思想是,通过观察过去10帧的VRStats.gpuTimeLastFrame平均值,来动态设置。  这个动态的优化思想,从软件算法看,的确很酷:

      • 依据电脑硬件,运行不卡,renderScale设置大一些,画质慢慢变好;

      • 依据电脑硬件,运行卡了,renderScale设置小一些,画质变差就行。

      评论列表暂无评论
      发表评论