Size: a a a

RU Rust GameDev — русскоговорящее сообщество

2020 September 21

R

Roman in RU Rust GameDev — русскоговорящее сообщество
А не глядя на текстуру поищешь где она используется
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
Так что лучше конвертнуть для юнита указатель на текстуру из Arc в Weak, и если она нигде сейчас не нужна и надо освободить место - выгрузить
источник

q

qthree in RU Rust GameDev — русскоговорящее сообщество
Для этого нужно всех юнитов обрабатывать, и видимых, и невидимых. А можешь только видимых рендерить, и попутно при рендере у используемой текстуры timestamp обновлять. А потом раз в 10 секунд по текстурам проходить и самые давно использованные выгружать.
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
Ты в любом случае обходишь всех юнитов
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
Хотя бы что б понять, что он невидимый
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
Да даже если ты и не обходишь этого инертного-невидимого юнита.
Когда ты сделал его невидимым - пометил что он пока текстуру не использует и все
источник

q

qthree in RU Rust GameDev — русскоговорящее сообщество
Roman
Ты в любом случае обходишь всех юнитов
Эм, нет? Если использовать внешнее btree с мортон индексом.
источник

q

qthree in RU Rust GameDev — русскоговорящее сообщество
> Когда ты сделал его невидимым
Тогда нужно для всех юнитов хранить инфу о том были ли они в прошлм кадре видимы
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
А от чего он стал невидимым?
источник

q

qthree in RU Rust GameDev — русскоговорящее сообщество
А он не невидимым, он просто в зону видимости давно не попадал.
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
А откуда ты знаешь, что на следующем кадре не попадет?
источник

q

qthree in RU Rust GameDev — русскоговорящее сообщество
А откуда я знаю что на следующем кадре появится юнит с текстурой которую я еще ни разу не загружал?
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
Обычно знаешь
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
Зависит от игры конечно
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
В стратегии юнит строится перед тем как появится
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
В другой игре у тебя на уровне фиксированное множество типов юнитов и ты все их загружаешь вместе с уровнем
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
Если у тебя стриминг, то все равно заранее грузишь кусок уровня, пока игрок до него не добрался
источник

q

qthree in RU Rust GameDev — русскоговорящее сообщество
Мы не ищем легких путей. Онлайн песочницы они такие.
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
Вообще по идее, при большом мире из ECS надо выкидывать на мороз все что далеко от игрока
источник

q

qthree in RU Rust GameDev — русскоговорящее сообщество
Ну да, просто иногда не хочется выкидывать совсем всё, некоторые компоненты всё еще нужны.
источник