Текстура 2D

Общие вопросы о Unity3D

Текстура 2D

Сообщение artlos 20 май 2012, 18:01

Есть код
Синтаксис:
Используется javascript
    listStyle = new GUIStyle();
    var tex = new Texture2D(2, 2);
    var colors = new Color[4];
    for (color in colors) color = Color.white;
    tex.SetPixels(colors);
    tex.Apply();
    listStyle.hover.background = tex;
    listStyle.onHover.background = tex;
 

Мне нужно сделать чтобы Texture2D получалась белого цвета, как здесь, только на C#. Я не совсем понимаю принцип работы приведенного выше скрипта, а именно почему если присвоить listStyle.hover.background = Texture2D (2,2) получается какая-то радуга, откуда берутся цвета и почему чтобы получить просто белый цвет применяется цикл. Спасибо.
artlos
UNец
 
Сообщения: 15
Зарегистрирован: 15 янв 2012, 19:47

Re: Текстура 2D

Сообщение Belfegnar_ 20 май 2012, 19:01

Текстура состоит из точек, которые называются текселями. В примере этих точек 4 (размеры текстуры 2 на 2). Соответственно создается массив цветов из 4 элементов. Каждому элементу этого массива присваиваем цвет, которым должен быть окрашен соответствующий тексель. Дальше переносим эти цвета в текстуру.
Вызывая new Texture2D(2,2) вы выделяете память под текстуру, а все байты, которые в этой области памяти были читаются как цвета текстуры, пока не заменим их нужными нам (Это мое предположение, может и бред написал :D )
Belfegnar_
UNIт
 
Сообщения: 112
Зарегистрирован: 22 ноя 2010, 14:08

Re: Текстура 2D

Сообщение artlos 20 май 2012, 20:26

А как сие чудо переписать на C#?
artlos
UNец
 
Сообщения: 15
Зарегистрирован: 15 янв 2012, 19:47

Re: Текстура 2D

Сообщение pod4444 20 май 2012, 20:36

artlos писал(а):А как сие чудо переписать на C#?



Синтаксис:
Используется csharp
void SetColorStyle()
{
 GUIStyle listStyle = new GUIStyle();
 Texture2D tex = new Texture2D(2, 2);
 Color[] colors = new Color[4];
 foreach (Color color in colors) color = Color.white;
 tex.SetPixels(colors);
 tex.Apply();
 listStyle.hover.background = tex;
 listStyle.onHover.background = tex;
}
 
Аватара пользователя
pod4444
Старожил
 
Сообщения: 721
Зарегистрирован: 20 янв 2012, 22:02
Откуда: Воронеж
Skype: pod4444
  • Сайт

Re: Текстура 2D

Сообщение artlos 20 май 2012, 20:47

Спасибо
artlos
UNец
 
Сообщения: 15
Зарегистрирован: 15 янв 2012, 19:47


Вернуться в Общие вопросы

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 11