首页 > 代码库 > Unity3D 人形血条制作小知识

Unity3D 人形血条制作小知识

这几天用Unity3D做个射击小游戏,想做个人形的血条,百思不得其解,后来问了网上的牛牛们,解决了,其实挺简单的,GUI里面有个函数DrawTextureWithTexCoords就可以实现图片的裁剪,很方便,裁剪之后,相信大家就都会操作了,话不多说,贴上代码与截图效果。

using UnityEngine;

using System.Collections;

using   UnityEditor;

 

public class drawTexture : MonoBehaviour {

    public Texture back;//背景图

    public Texture fore;//前景图

    private float scale_height = 0.99f;

    private float position_left=500f;

    private float position_top=300f;

    // Use this for initialization

    void Start () {

     

    }

 

    void OnGUI()

    {

 

        GUI.DrawTexture (new Rect (position_left, position_top, back.width, back.height), back);

        //GUI.DrawTexture (new Rect (500, 300, fore.width, fore.height), fore);

 

        if (Input.GetKeyUp(KeyCode.Space)) {

            scale_height=scale_height- 0.01f;

            if(scale_height<0)

                scale_height=0;

                }

        GUI.Label (new Rect(0,0,100,100),"scale_height"+scale_height);

        GUI.DrawTextureWithTexCoords (new Rect (position_left, position_top+back.height*(1-scale_height), fore.width, fore.height*scale_height), fore,

                                   new Rect(0,0,1, scale_height),true);

    }

    // Update is called once per frame

    void Update () {

         

    }

}


效果图:




效果还不错吧,哈哈。

Unity3D 人形血条制作小知识