using UnityEngine; using System.Collections; using UnityEngine.UI; using System.Collections.Generic; using System.IO; //------------------------------------------------------------------------ //Perlin Noise Agents v1.0 - Map Behavior Class //--Class Controls the enabling and disabling of the Behavioral Map Texture and display--Class is a component of the Map_Geometry Game Object which contains a single mesh quad //Mode Lab - Written by Luis Quinones //------------------------------------------------------------------------ public class MapBehavior : MonoBehaviour { public GameObject planeBehavior; private Renderer rend; public Texture2D texture; public Scrollbar toggleImage; private bool turnOn; private float toggleImageVal; public string updatePath; public bool runIt; void Start () { if (runIt) { runIt = false; turnOn = false; planeBehavior.GetComponent<MeshRenderer> ().enabled = false; //Turns off mesh rendered component to keep mesh hidden rend = GetComponent<Renderer> (); texture = new Texture2D (1024, 768); //Creates a new texture with the specified pixels toggleImage.onValueChanged.AddListener (delegate { toggleImageVal = toggleImage.value; //Checks if we changed the scrollbar to display the mesh and texture }); if(updatePath.Length != 0){ var bytes = File.ReadAllBytes(updatePath); texture.LoadImage(bytes); //Loads image rend.material.mainTexture = texture; //Assigns it to instance of material turnOn = true; //Turns on the mesh and texture }else{ return; } } } void Update () { if (runIt) { Start(); } //turns on and off the mesh based on the display scrollbar value which has a listener attached to it in the start function if (Mathf.RoundToInt(toggleImageVal) == 1) { planeBehavior.GetComponent<MeshRenderer> ().enabled = true; //plane.GetComponent<MeshCollider> ().enabled = true; } else { planeBehavior.GetComponent<MeshRenderer> ().enabled = false; //plane.GetComponent<MeshCollider> ().enabled = false; } } } Update