Unity 4.6+ Создание текста с помощью скриптаC#

Место общения программистов C#
Ответить
Anonymous
 Unity 4.6+ Создание текста с помощью скрипта

Сообщение Anonymous »

Я пытаюсь создавать текст динамически, чтобы в зависимости от количества игроков пользовательский интерфейс менялся. Однако, как я написал на данный момент, объекты создаются, и кажется, что все работает, кроме текста, который не виден на экране или в представлении сцены. Объект есть, а не текст. Может ли кто-нибудь увидеть проблему или знает, как ее решить?

Кстати, я использую C#.

public class UserInterface : MonoBehaviour {

public Canvas UI;
public GameObject DamageCounter;
public Color[] colors = new Color[4];

private static List players;
Text uiText;
RectTransform uiPos;

// Use this for initialization
void Start () {

players = PlayerManager.getPlayers ();
float screenHalf = Screen.width / 2;
float screenDiv = Screen.width / players.Count;
Debug.Log ("ScreenDiv = " + screenDiv);

for (int i = 1; i < players.Count + 1; i++)
{

GameObject playerText = new GameObject("Text");
playerText.layer = 5;
uiPos = playerText.AddComponent();
uiText = playerText.AddComponent();
playerText.transform.SetParent(UI.transform, false);
uiPos.sizeDelta.Set(Screen.width, Screen.height);
uiPos.anchoredPosition3D = new Vector3(0, 0, 0);
uiPos.anchoredPosition = new Vector2(10, 10);
uiPos.localScale = new Vector3(1.0f, 1.0f, 1.0f);
uiPos.localPosition.Set(0, 0, 0);
uiText.supportRichText = true;
uiText.fontSize = 150;
uiText.font = Resources.GetBuiltinResource(typeof(Font), "Arial.ttf") as Font;
uiText.alignment = TextAnchor.MiddleCenter;
uiText.horizontalOverflow = HorizontalWrapMode.Overflow;
uiText.verticalOverflow = VerticalWrapMode.Overflow;
uiText.color = colors;
uiText.text = "WORK";
Debug.Log ("HERE:" + (i * screenDiv - screenHalf));
}


Подробнее здесь: https://stackoverflow.com/questions/347 ... h-a-script
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»