Bonjours a tous,
encore un petit soucis
alors voila, j’utilise du Gui.TextFiel et j'aimerais utilisé le positionnement selon la résolution de l'application,
voila mon code:
var customSkin : GUISkin;
static var stringToEdit : String = "";
var passwordToEdit : String = "My Password";
var areaWidth : float;
var areaHeight : float;
function Start (){
stringToEdit=(PlayerPrefs.GetString("Player Name"));
}
function OnGUI () {
GUI.skin = customSkin;
// Make a text field that modifies stringToEdit.
var ScreenX = ((Screen.width * 0.5) - (areaWidth * 0.5));
var ScreenY = ((Screen.height * 0.5) - (areaHeight * 0.5));
stringToEdit = GUI.TextField (Rect (ScreenX, ScreenY, areaWidth, areaHeight), stringToEdit, 10);
passwordToEdit = GUI.PasswordField (Rect (ScreenX, ScreenY+50, areaWidth, areaHeight), passwordToEdit, "*"[0], 15);
}
cela fonctionne mais dès que je dépasse le milieu de l'écran ma saisie de texte disparait ? une idée ?
Positionnement Gui.TextFiel
-
- Messages : 163
- Inscription : 30 Juin 2010 00:53
Re: Positionnement Gui.TextFiel
Je suis aussi intéresse par une réponse à ce problème.
Si quelqu'un pouvait nous aider ....
Si quelqu'un pouvait nous aider ....
kealkeal
Re: Positionnement Gui.TextFiel
Perso, pour les différentes résolutions, j'utilise ça :
Sachant que tous mes éléments sont crées selon une résolution de 1920/1080 à la base.
Voilà en espérant que ça t'aide.
Et après, lorsque j'affiche mes textures, je multiplie par mon ratio :private var x : float;
private var y : float;
private var sWidth : float;
private var sHeight : float;
function Start() {
sWidth = Screen.width;
sHeight = Screen.height;
x = sWidth/1920;
y = sHeight/1080;
title.fontSize = 35*y;
}
Code : Tout sélectionner
GUI.DrawTexture(Rect(100*x,50*y,1920*x,1080*y), fondCommun);
Voilà en espérant que ça t'aide.
Re: Positionnement Gui.TextFiel
Salut,
Merci pour ton aide.
Le probleme c'est que j'utilise un GUI Text et que je n'ai pas la possibilité de mettre ce code :
Une autre solution ?
Merci pour ton aide.
Le probleme c'est que j'utilise un GUI Text et que je n'ai pas la possibilité de mettre ce code :
Code : Tout sélectionner
GUI.DrawTexture(Rect(100*x,50*y,1920*x,1080*y), fondCommun);
Une autre solution ?
kealkeal
Re: Positionnement Gui.TextFiel
Tu peux utiliser un GUI.TextField aussi, non ? Pourquoi tu à choisis GUI Text, là ?
Parce que avec un GUI.TextField tu remplace juste :
par :
Parce que avec un GUI.TextField tu remplace juste :
Code : Tout sélectionner
GUI.DrawTexture(Rect(100*x,50*y,1920*x,1080*y), fondCommun);
Code : Tout sélectionner
stringToEdit = GUI.TextField (Rect(100*x,50*y,1920*x,1080*y), stringToEdit, 10);
-
- Messages : 163
- Inscription : 30 Juin 2010 00:53
Re: Positionnement Gui.TextFiel
pour régler mon problème j'utilise les layouts
var customSkin : GUISkin;
static var stringToEdit : String = "";
static var passwordToEdit : String = "";
var areaWidth : float;
var areaHeight : float;
var guiDepth : int = 0;
function OnGUI () {
GUI.skin = customSkin;
GUI.depth = guiDepth;
var ScreenX = ((Screen.width* 0.5) - (areaWidth * 0.5)+50);
var ScreenY = ((Screen.height* 0.5) - (areaHeight * 0.5)+65);
GUILayout.BeginArea (Rect (ScreenX,ScreenY+4, 130, 100));
stringToEdit = GUILayout.TextField ( stringToEdit, 11);
passwordToEdit = GUILayout.PasswordField ( passwordToEdit, "*"[0], 11);
GUILayout.EndArea();
}
var customSkin : GUISkin;
static var stringToEdit : String = "";
static var passwordToEdit : String = "";
var areaWidth : float;
var areaHeight : float;
var guiDepth : int = 0;
function OnGUI () {
GUI.skin = customSkin;
GUI.depth = guiDepth;
var ScreenX = ((Screen.width* 0.5) - (areaWidth * 0.5)+50);
var ScreenY = ((Screen.height* 0.5) - (areaHeight * 0.5)+65);
GUILayout.BeginArea (Rect (ScreenX,ScreenY+4, 130, 100));
stringToEdit = GUILayout.TextField ( stringToEdit, 11);
passwordToEdit = GUILayout.PasswordField ( passwordToEdit, "*"[0], 11);
GUILayout.EndArea();
}