Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / Unity (проблемы, решения, перспективы) (82 стр)

Unity (проблемы, решения, перспективы) (82 стр)

Поделиться

Страницы: 1 2 3 4 ... 42 ... 81 82 83 84 Следующая

flatingoПользовательwww9 авг. 201711:41#1215
Ребят, вопрос меня боком поставил, что при использовании большего кол-ва аниматоров на сцене, начинает все подлагивать. Это потому что комп (i3, gt540, 4ram) слабый или с юнити именно загвоздка? После 2-3 перезапусков, игра идет идеально, 60 кадров. Буквально 6-7 аниматоров, и начинает приседать.

Делаю это примерно вот так (видео мое)

Правка: 9 авг. 2017 11:42

fornetjobПостоялецwww9 авг. 201711:46#1216
flatingo
> Буквально 6-7 аниматоров, и начинает приседать.
А что говорит профайлер?
TiarweПостоялецwww9 авг. 201712:25#1217
Подскажите, как лучше организовать посадку на табуретку? Табуретка (красный куб) находится перед персонажем (зеленый куб), персонаж развёрнут лицом на неё.
Example | Unity (проблемы, решения, перспективы)

Проблема в том, что в момент проигрывания анимации позиция персонажа не меняется (остается в области зеленого куба). После завершения воспроизведения объект отбрасывает обратно в исходное положение.
Example3 | Unity (проблемы, решения, перспективы)

А нужно, чтобы персонаж оставался в конечной точке воспроизведения анимации.
Example2 | Unity (проблемы, решения, перспективы)

В самой анимации установлены такие параметры:
Example4 | Unity (проблемы, решения, перспективы)

Вариант прибавлять руками нужное расстояние в момент завершения воспроизведения мне не очень нравится, ведь точка посадки может быть и слева / справа от объекта. В интернете везде натыкаюсь на сплошные примеры перемещения, либо посадку в текущей точке.

FireFenixПостоялецwww9 авг. 201714:02#1218
Tiarwe
> А нужно, чтобы персонаж оставался в конечной точке воспроизведения анимации.
Root Motion

Правка: 9 авг. 2017 14:02

WISHMASTER35Участникwww9 авг. 201717:48#1219
Заметил одну странность:
EaseFunction ease = null;
EaseFunc func = ease.EvaluateIn;
Debug.Log( func?.Method );
На 3й строчки Unity 2017.2 подвисает и через секунд 10 вылетает с ошибкой.
func != null.
zlosПостоялецwww9 авг. 201718:50#1220
2017.2 это бета, там могут все возможные типы проблем.
seamanПостоялецwww9 авг. 201719:02#1221
А как у Вас вторую строчку проходит? Должен быть NullReferenceException, т.к. в первой строке Вы задала ease - null.
WISHMASTER35Участникwww9 авг. 201719:31#1222
seaman
Сам удивляюсь. Надо бы bug report сделать.
UPDATED
Делал репорт
https://fogbugz.unity3d.com/default.asp?941391_kc249iv5mljh0qam
Уже Closed. Я еще не тестировал.

Правка: 2 сен. 2017 23:41

alexzzzzПостоялецwww22 авг. 20170:22#1223
В 2017.2 заметил, что в билдах размер управляемой кучи динамически меняется, в том числе иногда в сторону уменьшения, чего раньше вроде никогда не наблюдалось. Даже Commit Size у процесса уменьшается.
[DllImport("__Internal")]
private static extern long mono_gc_get_heap_size();
WISHMASTER35Участникwww2 сен. 201723:46#1224
Кто-нибудь делал поддержку полиморфизма в сериализации?
С появлением ISerializationCallbackReceiver это стало возможно, только надо использовать обычную .net сериализацию.
С сериализацией почти не работал, по этому возник вопрос: как сделать чтобы при сериализации Object, сохранялся его id? С DataContractSerializer и IDataContractSurrogate надо сдружится?
UPDATED
В Unity проблематично получить Object по id. В редакторе есть метод: EditorUtility.InstanceIDToObject( id ), но даже он не работает во время OnAfterDeserialize. Для рантайма и того нет. Ну получить найти все объекты и найти объект с нужным id, и то я не верен, что это заработает во время десериализации.

Остается делать обычный компоненты и скрывать их в инспекторе.

Правка: 4 сен. 2017 15:15

HomeshipПостоялецwww4 сен. 20179:55#1225
Тут случилось мне обновиться до 2017.1.0f3 personal (64bit). И началось...
1.  Студия "не видит" половину классов и assembly в проекте - кажет красным, intellisence и resharper не пашут. Хотя при этом ошибок не показывает (т.е. референсы все в порядке) и проект собирается. Удалял напрочь все из папки проекта кроме Assets, Library, ProjectSettings. Юнька пересоздала sln и csproj'ы - помогло частично - что-то стало "видеть", что-то так и остается красным.
+ Показать

2. При попытке собрать под Андроид возникает ошибка : "CommandInvokationFailure: Unable to convert classes into dex format."
Полный текст:

+ Показать

Гуглил - из внятного нашел, что такое из-за дубликатов "сторонних" aar'ов \ jar'ов в проекте - нету у меня такого.

Кто-нибудь подскажет-посоветует чего?

UPD: по второму пункту таки вроде заборол беду - поставил jdk-8u144-windows-x64.exe (JRE оставил какое было). В общем - конфликт версий Java. Правда пришлось перезапустить Unity и почистить папку Temp проекта.

А вот первый пункт все еще актуален.

Правка: 4 сен. 2017 10:26

WISHMASTER35Участникwww25 окт. 201721:37#1226
Homeship
У меня тоже с VS какая-то фигня.
Использую InternalsVisibleTo( "Assembly-CSharp-Editor-firstpass" ) чтобы internal были видны для редакторов и тестов.
Сегодня VS перестала реагировать на этот аттрибут. Хотя в Unity все нормально работает.

В папке \Temp\UnityVS_bin\Debug\ есть Assembly-CSharp-firstpass.dll.dll. Почему дублируется расширение?!! А Assembly-CSharp-Editor-firstpass.dll.dll там вообще нету.
Добавил .dll в атрибут: InternalsVisibleTo( "Assembly-CSharp-Editor-firstpass.dll" ). Теперь в VS все работает, а в Unity нет.
WTF?
И вообще 2017.2 постоянно вылетает.

alexzzzzПостоялецwww25 окт. 201723:00#1227
WISHMASTER35
> В папке \Temp\UnityVS_bin\Debug\ есть Assembly-CSharp-firstpass.dll.dll.
Она появилась в результате компилирования этого проекта в Visual Studio.

> Почему дублируется расширение?!!
Потому что Visual Studio Tools for Unity с какого-то перепугу решили что "Assembly name" (на первой закладке в настройках проекта в Студии) должно оканчиваться на «.dll»

> А Assembly-CSharp-Editor-firstpass.dll.dll там вообще нету.
Вероятно, с момента запуска Unity именно этот проект ты в Студии ещё не компилировал.

> Добавил .dll в атрибут: InternalsVisibleTo("Assembly-CSharp-Editor-firstpass.dll" ). Теперь в VS все работает, а в Unity нет.
Пока VSTU не исправятся, добавь два атрибута:

[assembly:InternalsVisibleTo("xxx.dll.dll")]
[assembly:InternalsVisibleTo("xxx.dll")]

> И вообще 2017.2 постоянно вылетает.
У меня беты вылетали, а 2017.2.0f3 вроде ничё так, не падает. Правда, я в ней делаю совсем не то, что делал в бете.

Правка: 25 окт. 2017 23:11

alexzzzzПостоялецwww25 окт. 201723:18#1228
Хотя столкнулся в 2017.2.0f3 с проблемкой:

Есть объект с LineRenderer:

+ Показать

Если настройку Alignment переключить с View на Local, объект пропадает. Его не видно. Gizmo висит, самого объекта нет. Переключаешь обратно в View ― объект появляется. То ли это баг, то ли я что-то не упускаю.

WISHMASTER35Участникwww25 окт. 201723:38#1229
alexzzzz
> Она появилась в результате компилирования этого проекта в Visual Studio.
Я Code Map открывал. Видно в этом случае VS компилирует свое, а не использует существующие.

> > А Assembly-CSharp-Editor-firstpass.dll.dll там вообще нету.
> Вероятно, с момента запуска Unity именно этот проект ты в Студии ещё не
> компилировал.
Видно из-за нерабочего InternalsVisibleTo не смогло скомпилировать эту сборку.

> [assembly:InternalsVisibleTo("xxx.dll.dll")]
> [assembly:InternalsVisibleTo("xxx.dll")]
А это хорошая идея)

Страницы: 1 2 3 4 ... 42 ... 81 82 83 84 Следующая

/ Форум / Программирование игр / Общее

2001—2017 © GameDev.ru — Разработка игр