Полезное

Мы Вконтакте

Discord канал

#
След.
Модератор: icms
Аватара пользователя
Пользователь
Сообщения: 2319

_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 48
Забыл, что на хабре есть бородатый пост на эту тему. Как раз для геймдейва.
_________________
by Starter
Аватара пользователя
Пользователь
Сообщения: 2319
jeka3d , еще один важный момент! Я вчера хоте л написать но забыл...
может в данном случае и не критично НО нужно знать.
Изображение
вот один из участков в принте который вызовется с самого начала более 8 раз. и она тут не одна такая.
тоесть одно и тоже значение будет посчитано при каждом обращении к этой ветке.
Pure - функции(без явного вызова) при каждом обращении выполняются по новой. Из которых полностью вся функция вычисления и состоит.
по сути там где ты плюсуешь веторы от туда идет вызов, по всему дереву, пока не упрется в постоянные переменные.
результат "возрата" функции запоминается только если у функции есть непосредственный вызов. Сам проверял.
тоесть есть смысл в таких ситуациях результат постоянно повторяющегося участка вычисления записывать в переменную и обращаться к ней.
постепенно перезаписывая ее по ходу вычислений до нужного значения.
такая вот неочевидная особенность при работе в принтах.
_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 138
Один из подводных камней на которые и не ожидаешь наткнуться)
Простым решением будет отключить Pure ?)
Аватара пользователя
Пользователь
Сообщения: 2319
эм нет
сложение умнножение и прочая математика в анриале- тоже pure функции, они считаются каждый раз когда к ним обращаются.
нужно принять как данность.
как я сказал в данном конкретном примере это совсем не страшно, матан простой, но при более сложном уже имеет смысл сохранять результат вычислений в локальные переменные.
и в дальше при вычислении обращаться к ним.
наример корень квадратный на сркрине будет считаться дважды, потому что его значени нужно дважды, тоесть к нему два раза обращаются.
и вся цепочка до это корня тоже будет считаться два раза. и это только если взять момент получения корня и две ближайшие операции...
значени полученны после его использования тоже используются не по разу...
_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 138
понял спасибо)


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

UEngine.ru © 2017
Все права защищены. При копировании материалов с сайта, ссылка на первоисточник обязательна.
Яндекс.Метрика
Главная страница