Найти в Дзене
RUST

RUST

Боль и унижение
подборка · 27 материалов
2 месяца назад
Разработка игры RDS на языке Rust: Начало
В подготовительных выпусках я разобрался с механизмами хранения игровых объектов: Теперь можно начать делать конкретную игру, я назову её условно RDS. Это ремейк игры Paratrooper 1982 года (на БК-0010 была переделка под названием Diversant). Вкратце, игрок управляет неподвижной пушкой, у которой можно поворачивать ствол. По экрану летают вертолёты, которые сбрасывают парашютистов, и самолёты, которые бросают бомбы. Задача игрока, управляя пушкой, сбивать всё что движется. Если парашютисты приземлятся с любой стороны пушки в количестве более 3-х, то они взорвут пушку и игра закончится...
2 месяца назад
Проектирование игры на языке Rust: Арены, кладовки, жилые массивы
Я решил разработать игру на Rust, но не буду ничего писать, пока не решу общие проблемы. Несмотря на то, что в предыдущих частях были достигнуты определённые успехи: Эти успехи быстро заканчиваются, когда мы переходим от единичных тестов к промышленному использованию. Показываю пример: Вот я создал объект GameObject с поведением BehaviourMove. Теперь я хочу этот объект поместить в список, потому что в игре мне нужен список объектов: let mut gmo_vec: Vec<GameObject> = Vec::new(); gmo_vec.push(gmo); Я создал вектор и положил туда объект...
2 месяца назад
Проектирование игры на языке Rust: Работа со списком объектов
Я решил сделать игру на языке Rust, но только при условии, что сначала разберусь со всеми проблемами. Какая конкретно это будет игра, пока не важно, так как проблемы общего плана. В предыдущей части удалось разобрать несколько вопросов: Там в подробностях описаны концепции и структуры данных, а тут я вкратце напомню, что игровый объект типа GameObject имеет у себя индекс элемента массива, в котором хранятся объекты типа StageObject, отвечающие за отображение на экране. Массив объектов stage_objects должен отвечать определённым требованиям...
454 читали · 2 месяца назад
Язык программирования Rust: Снова-здорово
После разработки игры Apple я зарёкся что-либо писать на Rust, потому что это банально неэффективно. У меня в коде нет утечек памяти, чтобы Rust от них оберегал. А вот написание кода становится настоящей пыткой. Нашёл хорошее обобщение опыта (это значит, не стоит понимать его буквально): Умеете ли вы конструировать сложные библиотеки или приложения с нуля так, чтобы после 10 тысяч строк кода не получить ужасную красную волнистую линию, которая потребует переделать весь проект? Ужасная красная волнистая линия: Но всё же мне не давал покоя этот прошлый опыт, как будто я что-то не понимаю...
2 года назад
Музыкальный ретро-плеер на Rust
Начало здесь: и здесь: В общем, я дописал парсер музыки. Всё это делается полукустарным способом, так как нужно пока только для игры GMO Apple, а сама музыка достаточно простенькая. Итак, я беру ноты из музыкального редактора: И просто руками переношу их в текстовый файл: Это довольно легко и просто. Затем с помощью написанного на PHP парсера преобразую данное текстовое представление в статически инициализированные структуры на Rust: Здесь вместо названий нот уже подставлены конкретные звуковые частоты...