Unity 模型影子显示设置

在有游戏中 模型被打光了就会有影子的出现,那么我们怎么设置让影子不出现在场景内呢?

01.png

其实只需要找到模型的Renderer然后设置 他的shadowCastingMode就行啦
现在的shadowCastingMode 一共有4种分别是

        //     No shadows are cast from this object.
        Off = 0,
        //     Shadows are cast from this object.
        On = 1,
        //     Shadows are cast from this object, treating it as two-sided.
        TwoSided = 2,
        //     Object casts shadows, but is otherwise invisible in the Scene.
        ShadowsOnly = 3

先是第一个off,当把shadowCastingMode 设置为off就关闭了影子就不会在场景中出现影子了

02.png

第二个 on , 当把shadowCastingMode 设置为on 影子就会出现在场景中。


01.png

第三个 TwoSided , 当把shadowCastingMode 设置为TwoSided 影子就会出现在场景中,但是这个渲染体(当前渲染体是武器)就不会接受光照,也就是虽然会投射出影子但是它被 打的光影响。

03.png

仔细对比图片2和图片3,图片3点武器明细暗一些。

第四个ShadowsOnly ,当把shadowCastingMode 设置为ShadowsOnly 影子就会出现在场景中,但是渲染体就消失在游戏里了。


04.png

那么我们具体操作代码如下

 rootRenderer = this.gameObject.GetComponentInChildren();
 rootRenderer.shadowCastingMode = (ShadowCastingMode)shadowType;

我也只是简单的测试一些,有一些地方说的不一定对,如有问题可以评论指出,谢谢大家。

你可能感兴趣的:(Unity 模型影子显示设置)