Size: a a a

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

2021 July 07

AZ

Alexander Zaitsev in Rust GameDev — русскоговорящее сообщество
вроде bazel задумывался как "модульный" и "расширяемый". мб на нём можно будет чего-нибудь придумать. Но да, не ржава
источник

IL

Ilya Lakhin in Rust GameDev — русскоговорящее сообщество
Вообще говоря, можно сделать наверное утилиту, которая будет собирать все скриптовые файлы из src через build.rs, и статически класть их в билд крейта, предоставляя в публичное API этого крейта функцию для подключения этих скриптов. А затем пользователь крейта будет этой функцией их и подключать.
источник

IL

Ilya Lakhin in Rust GameDev — русскоговорящее сообщество
Возможно, это будет меньшее из зол ) Я понимаю, что карго не для этого делался, но, с другой стороны, поддерживать версионирование в параллельном пакетном менеджере ведь тоже неудобно.
источник

MS

Mikola Summer Duck in Rust GameDev — русскоговорящее сообщество
А, стоп, речь о папке со скриптами? Есть же include/exclude, можно через него указать.
источник

MS

Mikola Summer Duck in Rust GameDev — русскоговорящее сообщество
А, перечитал, всё таки скрипты в другом крейте.
источник

MS

Mikola Summer Duck in Rust GameDev — русскоговорящее сообщество
Я бы просто из бинарника чекал несколько путей — папку крейта, папку где-то в /usr/, подпапку в cwd.
источник

MS

Mikola Summer Duck in Rust GameDev — русскоговорящее сообщество
В современных коммерческих редакторах скрипты обычно распространяются с помощью копипаста или хранятся в репах с проектами использующими эти редакторы.
источник

L

Lain-dono in Rust GameDev — русскоговорящее сообщество
@eliah_lakhin можешь сделать как в golang. Там что-то вроде

include (
  alias "example.com/packet"
)


Так что встречаешь инклуды в виде URL, качаешь их в папочку и оттуда достаёшь. Тотжи гит вполне себе пару строчек займёт. Примерно вот так вот: https://docs.rs/git2/#cloning-an-existing-repository

На счёт версий можно не париться. Кому надо, те запилят себе костыль поверх гита
источник

IL

Ilya Lakhin in Rust GameDev — русскоговорящее сообщество
Да, это то самое, за что в своё время все ругали Go, и я сам тоже намучился :) С другой стороны, это ненамного хуже C/C++, а он как-то живет
источник

L

Lain-dono in Rust GameDev — русскоговорящее сообщество
Ну можешь вынести это всё в условный package.toml. Версии обрабатывать не нужно
источник

L

Lain-dono in Rust GameDev — русскоговорящее сообщество
В любом случае с точки зрения скриптов лучше простое минималистичное решение. Завязывать это всё на cargo может в будущем стать плохим решением.
источник

П

Пашечка in Rust GameDev — русскоговорящее сообщество
Я особо не вчитывался, что на это тебе отвечали, но, посмотри на Slackware Linux. Там родной пакетный менеджер это несколько относительно простых скриптов на баше. А сама репа лежит в фтп.
источник
2021 July 08

AI

Alex Ilizarov in Rust GameDev — русскоговорящее сообщество
Читать баш это особое кунгфу
источник

AI

Alex Ilizarov in Rust GameDev — русскоговорящее сообщество
У пакетного менеджера потенциально миллиард различных проблем. Вполне понятно нежелание делать это в одиночку самому
источник

AI

Alex Ilizarov in Rust GameDev — русскоговорящее сообщество
Во многих играх это решается через steam workshop. С соответствующим вендорлоком
источник

AI

Alex Ilizarov in Rust GameDev — русскоговорящее сообщество
Хотя я не знаю как там с зависимостями, вроде никак но это не точно
источник

MS

Mikola Summer Duck in Rust GameDev — русскоговорящее сообщество
Наверное нужно как-то абстрагировать свои минибитсеты.
источник

MS

Mikola Summer Duck in Rust GameDev — русскоговорящее сообщество
А то документировать каждое использование неприкольно.
источник

MS

Mikola Summer Duck in Rust GameDev — русскоговорящее сообщество
Интересно есть ли что-то такое на крейцио.
источник

MS

Mikola Summer Duck in Rust GameDev — русскоговорящее сообщество
Что мне нужно - абстракция над битмапами, определенная для u8..u128
источник