Как стать автором
Обновить
62
44
Николай Шалакин @AskePit

Программист

Отправить сообщение

Многопоточность в играх

Уровень сложностиПростой
Время на прочтение16 мин
Количество просмотров7.3K

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

Давайте окунемся в детали реализации этого многообразия игровых событий и выясним, какую роль в этом всем играет многопоточность, и сколько ядер нужно типичной игре.

Читать далее
Всего голосов 22: ↑21 и ↓1+25
Комментарии12

Punk riff generator

Уровень сложностиСредний
Время на прочтение38 мин
Количество просмотров1.6K

В данной статье мы будем воспроизводить звук в браузере на примере небольшого проекта под названием Punk riff generator.

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

Читать далее
Всего голосов 15: ↑15 и ↓0+19
Комментарии13

Игровые паттерны программирования: Game Loop

Уровень сложностиПростой
Время на прочтение19 мин
Количество просмотров7.4K

Это перевод одной из глав книги Game programming patterns Роберта Найстрома. Так как книга по сути состоит из подробного описания шаблонов проектирования, каждая глава может рассматриваться как самостоятельная статья, чем я и воспользовался и перевел, как мне кажется, статью с самым важным паттерном в игростроении — Game loop.

Читать далее
Всего голосов 10: ↑10 и ↓0+11
Комментарии4

Используйте Arc<[T]> вместо Vec<T>

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров6.2K

В этой статье я хотел бы поговорить о том, почему вы могли бы предпочесть использование Arc<[T]> вместо Vec<T> в качестве варианта по умолчанию в вашем Rust-коде.

Читать далее
Всего голосов 16: ↑15 и ↓1+17
Комментарии20

Git в условиях экстремальной атомарности веток

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров4.6K

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

Читать далее
Рейтинг0
Комментарии2

Вороной, Манхэттен, рандом

Уровень сложностиПростой
Время на прочтение34 мин
Количество просмотров18K

Это история про то, как не довести дело до конца, но получить уйму опыта, и вообще ни разу не обломаться.

Итак, у нас был один программист, один художник, абсолютное непонимание рабочего процесса, незнакомый нам игровой движок и желание что-то намутить. Если вам интересно, как в одном месте сошлись карта Вороного, частный случай расстояния Минковского, преобразования над полигонами, процедурная генерация и шумы — и все это в красивой стилизованной обертке, то вам под кат.

Осторожно, очень много картинок!

Читать далее
Всего голосов 160: ↑160 и ↓0+160
Комментарии53

Делаем разработку на Rust еще более потной с помощью git

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров7.2K

Rust же создавали, чтобы держать программиста в ежовых рукавицах? Так почему бы не заставить git скооперироваться с Rust и не издеваться над программистом на пару?

На самом деле статья не сколько про Rust, сколько про git, поэтому если вы не особо знакомы с Rust, не смущайтесь сильно — повествование будет скорее про флоу разработки нежели чем про язык. Rust в статье выбран скорее за его удобный пакетный менеджер cargo, который сделает суть повествования лаконичнее и нагляднее.

Читать далее
Всего голосов 16: ↑13 и ↓3+13
Комментарии13

Что нам недодали в C++

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров24K

C++ последний десяток с лишним лет стремительно развивается. Тем не менее в наших кодовых базах все еще присутствуют многочисленные helper-файлы и классы, которые помогают восполнить пробелы в стандартной библиотеке языка. Как же так вышло, что там в этих ваших helper-файлах, и когда это закончится?

Читать далее
Всего голосов 64: ↑62 и ↓2+81
Комментарии177

Информация

В рейтинге
147-й
Дата рождения
Зарегистрирован
Активность

Специализация

Backend Developer, Game Developer
Middle
От 350 000 ₽
C++
Game Development
Git
Python
Rust
OOP
English