Uniy5.4 实现动态3D图表效果(一)

原本想使用插件来做,奈何囊中羞涩,只能自己写了。通过Value值修改高度。效果图:


image

代码:

using UnityEngine;
using System.Collections;
using UnityEngine;
using System.Collections;

public class cube : MonoBehaviour
{
    private Vector3[] vertices;
    private Mesh mesh;
    [Range(0, 10)]
    public float value = 1;//设置高度值
    // Use this for initialization
    void Start()
    {
        vertices = GetComponent<MeshFilter>().mesh.vertices;//获取Gameobject meshfilter组件
        mesh = GetComponent<MeshFilter>().mesh;//获取meshfilter组件中mesh数组数据
    }

    // Update is called once per frame
    void Update()
    {
        for (int i = 0; i < vertices.Length; i++)//遍历数组
        {

            if (vertices[i].y >= 0f)//判断mesh是否为顶部
            {
                vertices[i].y = value;//设置mesh顶部高度等于高度值
            }
        }
        mesh.vertices = vertices;//刷新
    }
}

项目地址:https://github.com/baishuisr1/Unity-3D-Chart

推荐阅读更多精彩内容

  • 最近大火的一部剧《那年花开月正圆》,很少追剧的我居然断断续续追剧至今。 今晚,剧中那个坏女人,那个叫胡咏梅的女人,...
    晓妮臆空间阅读 745评论 0 0
  • 我从来没有完整的读过一本关于营销方面的书,真的非常感谢压力读书班,带着我们一起成长,一周时间虽然不长,但是坚持下来...
    秦广玲阅读 335评论 0 7