Details
| Title | Распределённая система рендеринга анимаций Blender на основе параллельного выполнения кадров на кластере серверов: выпускная квалификационная работа бакалавра: направление 09.03.02 «Информационные системы и технологии» ; образовательная программа 09.03.02_02 «Информационные системы и технологии» = Development of a distributed rendering system for Blender animations based on parallel frame execution on a server cluster |
|---|---|
| Creators | Сафонов Андрей Игоревич |
| Scientific adviser | Хасанов Дмитрий Салимович |
| Organization | Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности |
| Imprint | Санкт-Петербург, 2026 |
| Collection | Выпускные квалификационные работы ; Общая коллекция |
| Subjects | blender ; golang ; kafka ; rest api ; websocket ; параллельный рендеринг ; docker ; parallel rendering |
| Document type | Bachelor graduation qualification work |
| Language | Russian |
| Level of education | Bachelor |
| Speciality code (FGOS) | 09.03.02 |
| Speciality group (FGOS) | 090000 - Информатика и вычислительная техника |
| DOI | 10.18720/SPBPU/3/2026/vr/vr26-2660 |
| Rights | Доступ по паролю из сети Интернет (чтение, печать, копирование) |
| Additionally | New arrival |
| Record key | ru\spstu\vkr\42548 |
| Record create date | 8/21/2026 |
Allowed Actions
–
Action 'Read' will be available if administrator prepare required files
Action 'Download' will be available if you login or access site from another network
| Group | Anonymous |
|---|---|
| Network | Internet |
Данная работа посвящена решению задач ускорения рендеринга анимационных сцен, создаваемых в программном пакете Blender, за счет распределённых вычислительных ресурсов. Целью данной работы является разработка распределенной системы рендеринга анимаций Blender, которая позволит: • Сократить время рендеринга путём параллельной обработки кадров на нескольких вычислительных узлах; • Освободить графический процессор локальной машины для других задач. В рамках работы были проанализированы существующие подходы к распределённому рендерингу, а также рассмотрены особенности пакетного рендеринга анимаций в Blender. По результатам анализа была спроектирована архитектура распределённой системы на основе модели master–worker. Внешний интерфейс системы и связь с основным сервисом маршрутизации (API Gateway) построены на базе REST API. Для обмена данными между микросервисами используется брокер сообщений Kafka. Для обеспечения воспроизводимости среды выполнения применяется сборка контейнеров с помощью Docker, а для их развертывания и управления локальной сетевой инфраструктурой используется инструмент оркестрации Docker Compose. В результате выполнения выпускной квалификационной работы был разработан прототип распределённой системы, позволяющий выполнять рендеринг анимаций Blender на кластере серверов с автоматическим распределением нагрузки, сборкой результатов рендеринга и формированием итогового видеофайла.
This work is devoted to solving the problems of accelerating the rendering of animation scenes created in the Blender software package by using distributed computing resources. The aim of this work is to develop a distributed animation rendering system for Blender that will allow: • Reduce rendering time by processing frames in parallel across multiple compute nodes; • Free up the local machines GPU for other tasks. This work analyzed possible approaches to distributed rendering and examined the specifics of batch animation rendering in Blender. Based on this analysis, a distributed system architecture based on a master-worker model was proposed. The systems external interface and communication with the main routing service (API Gateway) are built using a REST API. A Kafka message broker is used for data exchange between microservices. To ensure a reproducible runtime environment, containers are built using Docker, and Docker Compose orchestration tools are used for deployment and management of the local network infrastructure. As a result of completing the final qualification work, a prototype of a distributed system was developed that allows rendering Blender animations on a server cluster with automatic load distribution, compilation of rendering results, and generation of the final video file.
| Network | User group | Action |
|---|---|---|
| ILC SPbPU Local Network | All |
|
| Internet | Authorized users SPbPU |
|
| Internet | Anonymous |
|