Вопрос Освещение Actor

Участник
Статус
Оффлайн
Регистрация
28 Июл 2018
Сообщения
549
Реакции[?]
573
Поинты[?]
160K
Доброго времени суток господа, вопрос следующего характера:
Есть ли возможность получить % освещения Actor будь это основное освещение в Level или лампочка

Суть вопроса и для чего:
В фермерстве необходимо просчитать % освещения растения , чтобы создать усложненные условия для его роста

Пример конечно не от UE , а на Unity:
Информационная-панель-растений-в-Rust.jpg


Иные способы решения приветствуются , желательно на C++ , но можно и на принтах
 
Покинул портал. Не писать.
Легенда форума
Статус
Оффлайн
Регистрация
1 Авг 2016
Сообщения
4,353
Реакции[?]
5,674
Поинты[?]
175K
Это делается не за счет освещения. Его ты никак не посчитаешь.
Нужно подвязывать переменную float и на ее основе уже пляшешь.
 
Участник
Статус
Оффлайн
Регистрация
28 Июл 2018
Сообщения
549
Реакции[?]
573
Поинты[?]
160K
Это делается не за счет освещения. Его ты никак не посчитаешь.
Нужно подвязывать переменную float и на ее основе уже пляшешь.
Откуда переменная будет брать данные , из воздуха не получится , мне же надо к чему то привязать ее
Это делается не за счет освещения. Его ты никак не посчитаешь.
Нужно подвязывать переменную float и на ее основе уже пляшешь.
Допустим я могу получить % от лампочки в счёт того как близко к центру находится растение, я не вспомню как это называется, но на основе этого я делал звук чем ближе к источнику тем громче

Но как мне быть с глобальным освещением
 
Покинул портал. Не писать.
Легенда форума
Статус
Оффлайн
Регистрация
1 Авг 2016
Сообщения
4,353
Реакции[?]
5,674
Поинты[?]
175K
Откуда переменная будет брать данные , из воздуха не получится , мне же надо к чему то привязать ее
Создаешь изначально растение (например как БП) с значением переменной 0, при попадании на него line trace от твоего бп с светом делаешь ++ к изначальному значению переменной. При достижении нужного значения - профит. Как один из вариантов решения твоей задачи. Если подумать, можно придумать что-то поинтереснее.
 
Участник
Статус
Оффлайн
Регистрация
28 Июл 2018
Сообщения
549
Реакции[?]
573
Поинты[?]
160K
Создаешь изначально растение (например как БП) с значением переменной 0, при попадании на него line trace от твоего бп с светом делаешь ++ к изначальному значению переменной. При достижении нужного значения - профит. Как один из вариантов решения твоей задачи. Если подумать, можно придумать что-то поинтереснее.
Хм, я не The Expert, но вопрос задам, Если я сделаю Лантрейс во все стороны в тик аля от "солнца" разве это не вызовет нагрузку посильнее мстителей
 
Покинул портал. Не писать.
Легенда форума
Статус
Оффлайн
Регистрация
1 Авг 2016
Сообщения
4,353
Реакции[?]
5,674
Поинты[?]
175K
Хм, я не The Expert, но вопрос задам, Если я сделаю Лантрейс во все стороны в тик аля от "солнца" разве это не вызовет нагрузку посильнее мстителей
Тут смотря что именно тебе нужно. Если каждое растение будет индивидуально расти, то лучше использовать сферы или подобное и реализовывать через begin overlap например. А так делаешь просто дилей 0,1 после тика перед лайнтрейсом и ложить комп не должно.

Так-же есть такая группа: https://vk.com/unreal_engine_4 советую задать вопрос там, возможно предложат что-то интереснее.
 
Участник
Статус
Оффлайн
Регистрация
28 Июл 2018
Сообщения
549
Реакции[?]
573
Поинты[?]
160K
1652263520911.png
Насколько я понял из твоих слов из за трехмерной системы координат мне понадобится:
Условно шар который будет крутиться вокруг "планеты" (LVL), откидывать лантрейс во все стороны с дилеем?)

Карта будет очень большая и врятли я оверлепом от actor смогу достать до каждого растения
 
Покинул портал. Не писать.
Легенда форума
Статус
Оффлайн
Регистрация
1 Авг 2016
Сообщения
4,353
Реакции[?]
5,674
Поинты[?]
175K
Насколько я понял из твоих слов из за трехмерной системы координат мне понадобится:
Условно шар который будет крутиться вокруг "планеты" (LVL), откидывать лантрейс во все стороны с дилеем?)
Я исходил из скриншота, т.е. создаешь за окном искуственный источник света через бп, где сам источник света это просто визуал. Шар вокруг планеты будет сильно грузить.
Карта будет очень большая и врятли я оверлепом от actor смогу достать до каждого растения
Если у тебя это вне помещения (openworld) то тут нужно брать координаты солнца (его текущее местоположение) и исходя от этих данных плюсовать. Тут надо уже будет высчитывать.
В общем задачу не из легких ты себе нашел, попробуй поспрашивать еще, возможно найдется вариант удобнее и проще.
 
Участник
Статус
Оффлайн
Регистрация
28 Июл 2018
Сообщения
549
Реакции[?]
573
Поинты[?]
160K
Ладно примерно я понял что мне надо, если оверлепом делать, у меня будет лишь в дневное время расти растение, а значит надо будет высчитать время суток
А так же сделать динамическую смену освещения День-Ночь
К примеру брать за основу 6 утра то actor типа искусственного света появляется затрагивая все посаженные растения вне зданий и до 19 часов вечера будет условно 100% освещенности у растений которые находятся вне здания
Логика в здании если будет растение то оно будет обязательно в грядке и необходим будет местный источник освещения (лампа) от которой, как я сказал ранее будет свой оверлеп с % освещения
1652264676816.png

По сути мне от каждого растения над будет кинуть лентрейс вверх и если он ловит любое твердое (не контроллер) то свет из мира ему будет ограничен
И он будет принимать уже свет от лампы
Все загадка Жака Фреско решена, спасибо за идею
 
Последнее редактирование:
Покинул портал. Не писать.
Легенда форума
Статус
Оффлайн
Регистрация
1 Авг 2016
Сообщения
4,353
Реакции[?]
5,674
Поинты[?]
175K
По сути мне от каждого растения над будет кинуть лентрейс вверх и если он ловит любое твердое (не контроллер) то свет из мира ему будет ограничен
И он будет принимать уже свет от лампы
Все загадка Жака Фреско решена, спасибо за идею
Как вариант, да. В общем тут вариантов много, вопрос только в том, какой будет проще в решении и менее затратнее по железу.
От себя добавлю, что если будешь трейсы в большом количестве использовать, проверяй сразу на билде нагрузку. Возможно придется увеличивать дилей или искать другое решение.
 
Участник
Статус
Оффлайн
Регистрация
28 Июл 2018
Сообщения
549
Реакции[?]
573
Поинты[?]
160K
Возможно придется увеличивать дилей или искать другое решение.
Проверка крыши над головой растения будет раз в 5 минут (1 при спавне и дальше по нарастающей я думаю вряд ли я нагружу этим игру)) Дилей на посадку растений тоже сделаю от 5 сек
Оверлеп от искусственного солнца будет статичным боксом (в нем будет находится уровень) это тоже врятли нагрузит игру
Оверлеп от лампы будет шар, не думаю что это сильно повлияет на игру, я постараюсь сократить до минимума необходимость в установке большого кол-ва освещения в доме + если все же в будущем возникнет угроза - сделаю лимит на установку

Хотя если вспомнить майнкрафт, там столько факелов можно расставить что всем мои 64 гб озу вред ли сожрет
 
Покинул портал. Не писать.
Легенда форума
Статус
Оффлайн
Регистрация
1 Авг 2016
Сообщения
4,353
Реакции[?]
5,674
Поинты[?]
175K
Проверка крыши над головой растения будет раз в 5 минут (1 при спавне и дальше по нарастающей я думаю вряд ли я нагружу этим игру)) Дилей на посадку растений тоже сделаю от 5 сек
Да, с такими значениями сильно грузить не будет.
У меня в одном из проектов от персонажа во все стороны трейсы были с дилеем 0,1 и все работало отлично.
 
Участник
Статус
Оффлайн
Регистрация
28 Июл 2018
Сообщения
549
Реакции[?]
573
Поинты[?]
160K
1652308190460.png
Из сегодняшнего разговора, я сделал набросок пока что на принтах, вот такой вот
Значения:
10 - глобальное освещение его принял цветок который не задевает Pawn
100 - локальное освещение (пока что грубо но и так сойдет) (плавный нарост до 100 сделать и пайдет)
Задел крышу - соответственно лантрейс от цветка который задел Pawn

В будущем доработать:
Глобальную смену дня и ночи - к ней подвязать "Искусственное солнце" - дающее 10 (думаю что в будущем сделаю от времени суток нарост освещения до 80)
Сделать наконец виджет... А то только набросок есть
 
Пользователь
Статус
Оффлайн
Регистрация
15 Май 2021
Сообщения
208
Реакции[?]
92
Поинты[?]
16K
Кст может будет проще сделать растению eqs который будет расчитывать растояние о т солнца которое будет как накладывающий матерьал на небо и прощитаное растояние через плюсы
 
Участник
Статус
Оффлайн
Регистрация
28 Июл 2018
Сообщения
549
Реакции[?]
573
Поинты[?]
160K
Кст может будет проще сделать растению eqs который будет расчитывать растояние о т солнца которое будет как накладывающий матерьал на небо и прощитаное растояние через плюсы
От этого не особо вижу смысл , ведь весь уровень и так находится в коллизии мнимого солнца (колижен бокс на всю карту) - который спавнится только когда утро и до вечера и все растения которые находятся не под крышей получают "мнимый свет"

Я написал логику на принтах по такому образу, там принтстрингом выведены значения , там где "здание" с окошком в нем посажено растение и над ним лампочка
 

Вложения

Последнее редактирование:
Пользователь
Статус
Оффлайн
Регистрация
15 Май 2021
Сообщения
208
Реакции[?]
92
Поинты[?]
16K
От этого не особо вижу смысл , ведь весь уровень и так находится в коллизии мнимого солнца (колижен бокс на всю карту) - который спавнится только когда утро и до вечера и все растения которые находятся не под крышей получают "мнимый свет"

Я написал логику на принтах по такому образу, там принтстрингом выведены значения , там где "здание" с окошком в нем посажено растение и над ним лампочка
а учитывать наклон солнца и сколько света растение должно получить?
 
Участник
Статус
Оффлайн
Регистрация
28 Июл 2018
Сообщения
549
Реакции[?]
573
Поинты[?]
160K
а учитывать наклон солнца и сколько света растение должно получить?
Это делается из обычной логики - День/Ночь, ну из % соотношения, что днем 100%, а ночью соответственно 0%

Можно сделать вообще статичные значения освещения опираясь на активность:
1652722087191.png
Тогда освещение на растении будет плавно перетекать
100% - День
и между ними просчитать % прибавления и наоборот по сути стадий меньше чем 12
0% - Ночь


Но игра у меня не завязана на фермерстве, а является лишь дополнением к игре, так что особо смысла в этом не вижу

Ещё б сказал, просчитать растению, что оно растет в тени и получает нехватку света))

P.S. за основу фермерства в игре взята игра RUST, но с большими изменениями (в плане динамики роста растения и увеличенными усложнениями) - в расте в основном рассадой занимаются в помещениях, а не на улице (делай выводы) ))
 
Последнее редактирование:
Пользователь
Статус
Оффлайн
Регистрация
15 Май 2021
Сообщения
208
Реакции[?]
92
Поинты[?]
16K
Это делается из обычной логики - День/Ночь, ну из % соотношения, что днем 100%, а ночью соответственно 0%

Можно сделать вообще статичные значения освещения опираясь на активность:
Посмотреть вложение 203930
Тогда освещение на растении будет плавно перетекать
100% - День
и между ними просчитать % прибавления и наоборот по сути стадий меньше чем 12
0% - Ночь


Но игра у меня не завязана на фермерстве, а является лишь дополнением к игре, так что особо смысла в этом не вижу

Ещё б сказал, просчитать растению, что оно растет в тени и получает нехватку света))

P.S. за основу фермерства в игре взята игра RUST, но с большими изменениями (в плане динамики роста растения и увеличенными усложнениями) - в расте в основном рассадой занимаются в помещениях, а не на улице (делай выводы) ))
я предложил eqs потому что например если солнце будет под наклоном и растение будет под крышей то оно тоже будет расти так как солнце светит под наклоном я просто думал тебе нужно что то типо процидурки
 
Участник
Статус
Оффлайн
Регистрация
28 Июл 2018
Сообщения
549
Реакции[?]
573
Поинты[?]
160K
я предложил eqs потому что например если солнце будет под наклоном и растение будет под крышей то оно тоже будет расти так как солнце светит под наклоном я просто думал тебе нужно что то типо процидурки
Нет, мне над было грубую механику, как в расте
 
Сверху Снизу