• Spine学习九


    想象这样一个效果,一个人被冰霜攻击命中,然后这个人整个就被冰冻了,那么spine动画要如何实现这个效果呢?

    1.首先需要一个Spine动画,这个动画应该是相对静止的,因为人物已经被冰冻了,那么这个人儿应该就没法动了,所以冰冻的时候就播放这个动画。

    2.需要改变这个spine的颜色,因为spine使用的是mesh renderer组件渲染,我们想要改变spine的颜色,可以使用MaterialPropertyBlock来实现,具体代码如下:

    public Color freezeColor;
    public Color freezeBlackColor;
    
    public string colorProperty = "_Color";
    public string blackTintProperty = "_Black";
    
    MaterialPropertyBlock block;
    MeshRenderer meshRenderer;
    
    void Start(){
    
        block = new MaterialPropertyBlock();
        meshRenderer = GetComponent<MeshRenderer>();
    
        block.SetColor(colorProperty, freezeColor);//设置颜色
        block.SetColor(blackTintProperty, freezeBlackColor);//设置背景颜色
        meshRenderer.SetPropertyBlock(block); //将颜色应用于网格渲染
    }  
  • 相关阅读:
    Socket网络编程--简单Web服务器(4)
    GCC学习笔记
    字符分隔符'1'(u0001)的困惑
    g++编译时遇到问题undefined reference to
    ROS学习笔记(三)
    cJSON笔记
    ROS学习笔记(二)
    ROS学习笔记(一)
    ffmpeg推流方式采用TCP协议
    Android OS的image文件组成
  • 原文地址:https://www.cnblogs.com/leiGameDesigner/p/9115230.html
Copyright © 2020-2023  润新知