GuiRatioFixer
From Unify Community Wiki
(Difference between revisions)
(→Usage) |
(→Usage) |
||
Line 8: | Line 8: | ||
Place this script on a GameObject with a GUIText and/or GUITexture component. Then scale the object to the correct screen size in a Game View that has aspect set to 4:3. When you run the game, the object's scale will be changed to match the actual screen ratio. | Place this script on a GameObject with a GUIText and/or GUITexture component. Then scale the object to the correct screen size in a Game View that has aspect set to 4:3. When you run the game, the object's scale will be changed to match the actual screen ratio. | ||
− | If you prefer working in a different aspect ratio, adjust the Native Ratio value to your native aspect ratio desired. This is | + | If you prefer working in a different aspect ratio, adjust the Native Ratio value to your native aspect ratio desired. This is horizontal / vertical. |
==C# - GuiRatioFixer.cs== | ==C# - GuiRatioFixer.cs== |
Revision as of 16:46, 1 December 2005
Author: Jonathan Czeck (aarku)
Contents |
Description
This script will adjust the aspect ratio of a GUIText or GUITexture object by scaling it horizontally to fit the proportions.
It does not know how to align groups of GUI objects after it adjusts their aspect ratio.
Usage
Place this script on a GameObject with a GUIText and/or GUITexture component. Then scale the object to the correct screen size in a Game View that has aspect set to 4:3. When you run the game, the object's scale will be changed to match the actual screen ratio.
If you prefer working in a different aspect ratio, adjust the Native Ratio value to your native aspect ratio desired. This is horizontal / vertical.
C# - GuiRatioFixer.cs
using UnityEngine; using System.Collections; // Use this on a guiText or guiTexture object to automatically have them // adjust their aspect ratio when the game starts. public class GuiRatioFixer : MonoBehaviour { public float m_NativeRatio = 1.3333333333333F; void Start () { float currentRatio = (float)Screen.width / (float)Screen.height; Vector3 scale = transform.localScale; scale.x *= m_NativeRatio / currentRatio; transform.localScale = scale; } }
Boo - GuiRatioFixer.boo
import UnityEngine # Use this on a guiText or guiTexture object to automatically have them # adjust their aspect ratio when the game starts. class GuiRatioFixer (MonoBehaviour): public m_NativeRatio = 1.3333333333333 Start (): currentRatio = (Screen.width+0.0) / Screen.height scale = transform.localScale scale.x *= m_NativeRatio / currentRatio transform.localScale = scale
JavaScript - GuiRatioFixer.js
// Use this on a guiText or guiTexture object to automatically have them // adjust their aspect ratio when the game starts. var m_NativeRatio = 1.3333333333333; currentRatio = (Screen.width+0.0) / Screen.height; transform.localScale.x *= m_NativeRatio / currentRatio;