i am making a fuel meter GUI for a game, but i’ve run into a problem, the meter fills from the top down, instead of the other way around.
using UnityEngine;
using System.Collections;
public class FuelGauge : MonoBehaviour
{
public float barDisplay; //current progress
public Vector2 pos = new Vector2(20,40);
public Vector2 size = new Vector2(50,250);
public Texture2D emptyTex;
public Texture2D fullTex;
void OnGUI()
{
//draw the background:
GUI.BeginGroup(new Rect(pos.x, pos.y, size.x, size.y));
GUI.Box(new Rect(0,0, size.x, size.y), emptyTex);
//draw the filled-in part:
GUI.BeginGroup(new Rect(0,0, size.x * barDisplay, size.y));
GUI.Box(new Rect(0,0, size.x, size.y), fullTex);
GUI.EndGroup();
GUI.EndGroup();
}
void Update()
{
barDisplay = Fuel.currentFuel / Fuel.maxFuel;
}
}
i would fix this myself, but i’m not sure how to fix it to be honest, not sure what’s wrong either, i think it’s because unity renders rectangles and GUIs from the top right corner, but i don’t know how to remedy that.