alexzzzz
> Теперь можно. До версии 4.1 дефайны задавались глобально для всех шейдеров
> через Shader.EnableKeyword / Shader.DisableKeyword, в недавно вышедшей 4.1
> появились индивидуальные дефайны отдельно для каждого материала:
о, спасибо за инфу. это как раз вовремя)
alexzzzz
> Сетка объекта ограничена 65к вершинами. Если надо больше, приходится делить
> большой объект на несколько меньших, чтоб вписаться. Мне не сложно (всё равно
> такие большие сетки я генерирую программно), но напрягает про это всё время
> помнить и учитывать.
для больше чем 65к вершин понадобятся 4-байтные индексы, это занимает память и увеличивает время их обработки. ИМХО, решение нормальное, просто против выстреливания себе в ногу.
alexzzzz
> 2. У структур, описывающих вершины в сетке, нельзя изменить типы полей или
> добавить дополнительные поля к тем, что есть. А есть там position, normal, uv1,
> uv2, color и tangent.
>
тоже бесит. особенно когда почитаешь, как крутые чуваки умудряются всё паковать: http://www.humus.name/Articles/Persson_CreatingVastGameWorlds.pdf
Mephisto std
> Клиент должен к серверу 1 раз коннектиться - на входе в приложение, а затем
> постоянно, все з-ти от сцены, получать данные?
Объекты, которые должны пережить смену сцены, можно пометить при помощи Object.DontDestroyOnLoad. Я не пользовался сценами в рилтайме, тонкостей не знаю.
Mr F
> position, normal, uv1,
> > uv2, color и tangent.
А что, 64-байтная вершина, все ок. В 32-вам все равно ее не упаковать.
А есть ли способ паковать по 4 байта в один float, чтобы потом в шейдере распаковывать и использовать? Я пробовал вызывать функцию unpack(...), но шейдер с ней не компилировался.
PlayerDark
position, normal, uv1, uv2, color, tangent = 12 + 4 + 4 + 4 + 4 + 4 = 32
Mephisto std
> При scene-based архитектуре мне лично непонятно, как это без костылей
> реализовать.
а там можно менять сцены оставляя загруженным то что тебе нужно
http://docs.unity3d.com/Documentation/ScriptReference/Object.Dont… oyOnLoad.html
правка: alexzzzz уже ответил, я пропустил:)
XProger
Почему нормаль, uv и тангент занимают по одному флоату?
PlayerDark
float3, byte4, short2, short2, byte4, byte4
XProger
это не про юнити
Mr F
нутк, о том то и речь
добавлю баттхерта, пока не забыл:
ддски импортятся, но им нельзя менять режим адресации. нельзя юзать clamp (а border вообще движок не умеет никак и никогда).
можно насильно менять им режим скриптом, но это не сохраняется. при повторной загрузке сцены слетает. после компиляции даже не проверял.
выходит юнити можно юзать только с встроенной быдлогенерацией мипмапов, а она куда менее гибкая чем нвидия ддс плагин для фотошопа. особо я запарился с тем чтобы на всех мипах был бордер прозрачный с краёв. встроенный генератор не умеет его делать.
Можно написать свой постпроцессор текстур: http://docs.unity3d.com/Documentation/ScriptReference/AssetPostpr… sTexture.html
А так делал, когда понадобилось, чтобы у текстур травы альфа плавно затухала на удалении от камеры.
byte4 для нормали? это как?
half float x, half float y, а z считать?
Это Не Лаги,
Это Не Баги,
Просто мы юнити
Собрали в дебаге,
Потому у тебя там в игре тормоза,
И графика, блин, выедает глаза,
Но ты не горюй,
В новом двиге будет новенький гуй,
Дебагу мы скажем пошел ты на х*й,
Жди юнити пятый
И не горюй.
(c)
ASD
> Дебагу мы скажем пошел ты на х*й,
В каком смысле? Про что речь?
Тема в архиве.