При создании собственных контролов в нативном UnityGUI зачастую используется метод GUIUtility.GetControlID(FocusType.Native), чтобы получить новый ID.
Однако данный способ имеет два существенных минуса, делающих код непредсказуемым.
Статья
@Devion: alexprey: Добавь в контрол поле ID и записывай туда GUID Извини алекс, но коммент не к теме. Это не винформс, нативный гуишник устроен иначе. Так делать не нужно. Это к теме о GUILayout и подобном, в котором объектной модели нет вообще, все рисование зависит от "проходов". Классы ты там не строишь, и гуи отрисовываешь функционально. Layout проход жует id в обязательном порядке чтобы автоматически рассчитывать макет. Активность объектов жестко завязана на int'e Скопировать в буферGUIUtility.hotControl GUIUtility.keyboardControl HandleUtility.nearestControl HandleUtility.AddControl() Event.current.GetTypeForControl() и все такое. Так же есть целый ряд методов, которые "жуют" ID для рисования, формирования новых эвентов и т.п. В силу неконтролируемости данных и возможности изменять их извне налету об объектной модели даже нельзя заикаться, это будет неудачная попытка. Потому все эти GUID'ы для этой системы - не подходят, они ж вообще стринговые и не информативные. Вот скажем есть задача - нужно строго заставить редактор выделить третью точку в массиве меша - либо ты просто юзаешь так как сказал я, либо зачем-то заводишь служебный класс с гуидами и пытаешься синхронизировать его с объектами (и в результате все равно обламываешься, если юзер непредвиденно подменил меш). Конечно проблему можно решить, начав запихивать эти данные в игровой билд, специальные классы делать для массивов и так далее, чтобы везде можно было поймать гуиды, под любым индексом, для любых данных, которые потом переводить в хеш. Но я считаю это дико некультурно и неправильно, тем более когда есть вот такое элегантное решение ) 2 2.9K
Во время рисования через Handles/Gizmos/GL вы можете столкнуться с проблемой, которая заключается в том, что нарисованные треугольники и линии начинают "играть" на находящемся рядом меше.
Помимо этого, эффект не статичен, линии начинают прыгать при изменении параметров обзора камеры.
Статья

Разработка редакторов - это просто!

Данная статья - самоучитель от меня в мир редакторов Unity.
Да, не сказать, что я все вопросы для себя там устаканил и знаю точно как всё сделать правильно - но опыта в них у меня достаточно, чтобы рассказать о том, как устроен этот процесс
Хочу заметить, что данная статья не рассматривает способы взаимодействия с…
Статья

25 книг для разработчика

Предлагаем подборку всегда актуальных книг по программированию, геймдизайну и концепт-арту для новичков и бывалых бойцов геймдева. Конечно, во главе профессионального развития стоит практика, но эти книги сэкономят ваше время и позволят не выдумывать велосипед заново.
Статья
@DasBro: Вот ещё интересная книга: //www.ozon.ru/context/detail/id/7577936/ 9 8.7K

Безумно короткий самоучитель по C#. Часть 1 из 2.

Пусть это будет пособие для студентов ПТУ, вчера жевавших семки, а сегодня решивших МНЕ СРОЧНО НУЖНО ОСВОИТЬ ЯЗЫК ПРОГРАММИРОВАНИЯ. Короче, как я.
Warning! Это самоучитель:
  • Без разжевывания
  • Поверхностный
  • Не полный
Статья
@Devion: DasBro, может быть когда-нибудь :) 27 18.4K
Всем привет, сегодня я пришел с легенькой темой, которая, однако, требует некоторых усилий на реализацию.
Когда программируются редакторы мы повсеместно используем нестандартные иконки (если, конечно, хотим сделать качественный продукт - нужно поработать над оформлением).
Предположим, что на выходе вы хотите получить некоторый редактор одним DLL файлом. Но вот иконки, которые вы вынуждены хранить в одной папке с проектом ну просто портят всю картину!
Все мы знаем, что есть стандартная возможность "пришить ресурсы к DLL". Именно это и делается с картинками.
Но вот о том, как с ними взаимодействовать - я сегодня и расскажу.
Статья
Данная статья призвана рассказать начинающим пользователям про Generic-типы и их использование в языке C#.
Вряд ли я смогу охватить весь тот объем, который позволяет реализовать нам данная фича, все рассказать не хватит и статьи - однако здесь содержится основная информация по Generic-типам, которой может быть достаточно, чтобы начать программировать с их использованием.
Статья
Если вы находитесь на стадии обучения языку C# - данная статья как раз для вас! Она расскажет вам о том, как использовать одну из синтаксических фич языка - методы расширений.
Статья
@alexprey: Msey, спасибо, исправил 26 9.7K
`
ОЖИДАНИЕ РЕКЛАМЫ...
Scroll Lock - быстрая модерация