[重点推荐工具]Unity3D如何实现角色透过墙体显示的问题 See-Through System

发表于2016-08-02
评论6 1.55w浏览


   
不管开发手机游戏还是主机游戏,在场景很负责的时候,尤其是上地视角,我们总会遇到美术场景会遮挡角色模型的问题,接下来就跟大家推荐一个能完美解决建筑物遮挡角色的工具。

这个工具不仅仅适用于处理建筑物和角色之间的关系,还能处理所有模型之间的遮挡关系,只要你需要。因为他的原理就是通过不同的RenderTexture 来合并渲染,然后达到最终效果,这样在美术

制作场景的时候,需要对场景中的物件进行标记特殊层级。 



    工具名称:See-Through System1.6b

    下载地址:链接:http://pan.baidu.com/s/1i4QWgG9 密码:vxk6

    工作原理:

        作者集合了 SeeThrough System 所有的功能到这个脚本上,提供了一系列的Shader来实现虚化效果,如下图所示,

一个摄像机渲染遮挡物层级(SolidColor模式),渲染的图像存放到一个RenderTexture上,

一个摄像机渲染被遮挡物层级(Skybox模式),渲染的图像存放到另一个RenderTexture上,

一个摄像机渲染渲染所有物件。

三个摄像机渲染的不同层级的效果:


摄像机名称


遮挡物摄像机渲染参数



被遮挡物摄像机渲染参数


 

See Through System

使用步骤:

1.在一个空的场景里创建一个摄像机

2.添加See Through System 脚本到摄像机上面

3.Layers管理器增加Trigger Obstacle层级。

4.创建一个遮挡物Cube,并标记为Obstacle层。

5.创建一个被遮挡物的Cube,并标记为Trigger

6.调节See Through System相关参数(下文介绍)。

7.运行如下图所示



See Through System介绍

Trigger Layers: 用来设置被遮挡物的层级

Obstacle Layers:用来设置遮挡物的层级

Background Layers:用来设置背景摄像机的层级

Disabled Obstacles 

    用来添加忽略的被遮挡物OBJ

Disabled Obstacles

    用来添加忽略的遮挡物OBJ

Colorize Triggers

    用来设置背景摄像机颜色,类型。

Message Before background rendering

    后面的参数基本都默认即可,

Transparent area range 

    这些参数都是用来调节角色虚化边缘的参数

Force Forward rendering onbackground 强制用Forward类型渲染摄像机背景

Check for transparency 检查透明度

Check render types 检查渲染类型

Use transparency masks 使用透明贴图蒙版

Preserve depth texture 保护深度贴图

Show obscurance/color mask 显示遮挡物蒙版



能用到的功能其实很简单,其他参数默认基本就可以。如有疑问,加我好友吧。919311567

 

 

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引