资源简介
Unity3d使用Meth实现温度云图,看了网上有几个使用Shader实现的温度云图,基本都是写死的,并且代码都有毛病出不来效果,所以就用Meth实现了一个,温度点位能动态。行列动态创建,只需要自己给一个数值。创建一个空物体然后附上代码,再把空物体添加MethRenderer和MethFilter即可出现效果,本人亲自调试过,如果有问题可以问我一块探讨。
代码片段和文件信息
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class MethTest : MonoBehaviour
{
public Vector3[] vertices = null; //顶点取样个数
public Color[] colors = null;//每个定点对应的颜色 会自动进行插值
private int[] m_yellow = { 10 11 12 13 17 18 19 20 21 22 25 26 27 28 29 30 34 35 36 37 };
private int[] m_blue = { 0 1 2 3 4 5 6 7 8 16 24 32 40 41 42 43 44 45 46 47 };
private int[] m_Red = { 18 19 20 21 26 27 28 29 };
public Transform jigui_s;
private float Wendu = 50;//设置温度
private float time = 2;
//定义行和列
public int hang;
public int lie;
//行和列的间距
public float hjj;
//定义三角形定点数的数组
public int[] triangles = null;
void Start()
{
DelegeteToUpdate();
}
void Update()
{
time -= Time.deltaTime;
if (time<=0)
{
time = 2;
DelegeteToUpdate();
}
}
void DelegeteToUpdate()
{
Listject> jigui_Name = new Listject>();
List list_pos = new List();
//获取所有机柜的坐标保存到list集合中
foreach (Transform item in jigui_s)
{
Vector3 jigui_pos = item.transform.position;
list_pos.Add(jigui_pos);
}
int tCount = 0;
//三角形数量
int triangleCount = hang * 2 * lie;
//三角形顶点数量
int triangleCountPoint = hang * 2 * lie * 3;
vertices = new Vector3[(hang + 1) * (lie + 1)];
triangles = new int[triangleCountPoint];//三角形的定点索引
colors = new Color[(hang + 1) * (lie + 1)];
MeshFilter filter = gameobject.GetComponent();
MeshRenderer render = gameobject.GetComponent();
Shader shader = Shader.Find(“Sprites/Default“);
render.material = new Material(shader);
filter.mesh = new Mesh();
Mesh mesh = filter.mesh;
//全部画在第一象限
for (int i = hang; i >= 0; i--)
{
for (int j = 0; j <= lie; j++)
{
vertices[tCount] = new Vector3(j * hjj 0 i * hjj);
tCount++;
}
}
int point = 0;
for (int i = 0; i < hang; i++)
{
for (int j = 0; j < lie; j++)
{
triangles[point++] = i * (lie + 1) + j;
triangles[point] = i * (lie + 1) + j + 1;
int a = triangles[point++];
triangles[point] = a + lie;
int b = triangles[point++];
triangles[point++] = a;
triangles[p
- 上一篇:c# / VB 调用refprop.dll
- 下一篇:C#+xm
l通讯录
相关资源
- unity3d脚本学习教程
- 愤怒的小鸟unity3d279320
- PureMVC for Unity3d Demo
- Unity3dMYO肌电臂环二次开发例程(保证
- Unity 3D Paint in 3D 最新版(1.56)
- Unity3D应用嵌入到WPF应用
- WinForm嵌入Unity3D并实现交互
- unity3d小游戏,见缝插针2d
- Unity3D NGUI Next Gen UI 最新版插件
- Unity 2D横版冒险跳跃游戏 带源码
- unity3d 登录注册界面功能实现 c#
- unity3d创意的手机消除游戏源码
- unity3D赛车游戏项目源代码
- Unity3D脚本编程 使用C#语言开发跨平台
- RealSky Unity3d实时动态天空球插件
- Unity in Action Multiplatform game development
- Unity3d开发案例(坦克克星游戏,C#版
- Unity3D与Winform交互
- CubeAttitudeShow.zip
- Unity3D射击游戏《全民飞机大战》源码
- Unity3D飞机大战
- unity3d2018插件NGUI
- unity3D外星风格射击游戏完整项目源码
- unity3D神启全套源码资源
- Unity3D脚本编程 使用C#语言开发跨平台
- unity3d多人联机赛车游戏完整源码
- Unity 3D脚本编程——使用C#语言开发跨
- Unity3D 街机捕鱼游戏源码
- Unity3D《farm business》农场模拟经营游戏
- 手把手教你用C#制作RPG游戏__罗培羽著
评论
共有 条评论