Розробка колаборативного веб-редактора 3D-сцен на базі Three.js
| dc.contributor.author | Демиденко, Артем Сергійович | |
| dc.date.accessioned | 2026-07-01T10:08:38Z | |
| dc.date.available | 2026-07-01T10:08:38Z | |
| dc.date.issued | 2026 | |
| dc.description | Демиденко А. С. Розробка колаборативного веб-редактора 3D-сцен на базі Three.js : кваліфікаційна робота магістра спеціальності 122 "Комп'ютерні науки" / наук. керівник К. С. Решевська. Запоріжжя : ЗНУ, 2026. 120 с. | uk |
| dc.description.abstract | UA : Робота викладена на 120 сторінках друкованого тексту, містить 20 рисунків, 3 таблиці, 24 джерела, 1 додаток. Метою роботи є розроблення колаборативного веб-редактора 3D-сцен на базі Three.js, який забезпечує спільне редагування об’єктів сцени в режимі реального часу, централізовану синхронізацію змін між клієнтами, збереження стану сцени та відновлення її актуального представлення після повторного підключення користувачів. Для досягнення мети розв’язано такі задачі: проаналізовано предметну область колаборативних систем реального часу; досліджено моделі подання тривимірних сцен і методи синхронізації стану; побудовано формальну модель сцени та алгоритм узгодження змін; спроектовано клієнт-серверну архітектуру системи; реалізовано програмний засіб і проведено його експериментальне тестування. Об’єктом дослідження є процеси спільного редагування тривимірних сцен у веб-орієнтованому багатокористувацькому середовищі. Предмет дослідження становлять моделі подання тривимірної сцени, протоколи та алгоритми синхронізації змін, а також програмні засоби реалізації колаборативного веб-редактора 3D-сцен на базі Three.js, Node.js, WebSocket і MongoDB. У роботі використано методи системного аналізу, формалізації та математичного моделювання, об’єктно-орієнтованого і клієнт-серверного проектування, програмної інженерії та експериментального тестування. У результаті дослідження розроблено веб-редактор Collab3D, у якому реалізовано централізовану серіалізацію змін на сервері, синхронізацію через WebSocket, підтримку операцій create, delete, transform, color, rename, import_model, механізм попереднього перегляду transform_preview, збереження даних у MongoDB та GridFS, а також відновлення актуального стану сцени через snapshot після повторного підключення клієнта. Новизна отриманих результатів полягає в адаптації моделі узгодження змін до веб-орієнтованого багатокористувацького редагування 3D-сцен і в поєднанні журналу операцій із snapshot-підходом до підтримки undo/redo. Результати роботи взаємопов’язані з дослідженнями у сфері колаборативних систем реального часу, веб-орієнтованої тривимірної графіки та клієнт-серверних застосунків. Вони можуть бути використані в освітньому процесі, під час демонстрації принципів колаборативного редагування, для створення прототипів веб-інструментів спільної роботи з 3D-сценами та як основа для подальшого розвитку системи. Практична значущість роботи полягає в реалізації працездатного програмного засобу, а проведене тестування підтвердило можливість його використання для багатокористувацького редагування тривимірних сцен у режимі реального часу. | uk |
| dc.description.abstract | EN : The work is presented on 120 pages of printed text, 20 figure, 3 tables, 24 references, 1 annex. The aim of the study is to develop a collaborative web-based 3D scene editor based on Three.js that provides real-time collaborative editing of scene objects, centralized synchronization of changes between clients, scene state persistence, and restoration of the current scene representation after users reconnect. To achieve this aim, the following tasks were solved: the subject area of real-time collaborative systems was analyzed; models of three-dimensional scene representation and state synchronization methods were studied; a formal scene model and a change agreement algorithm were developed; a client-server architecture was designed; the software tool was implemented and experimentally tested. The object of the study is the processes of collaborative editing of three-dimensional scenes in a web-oriented multi-user environment. The subject of the study includes models of three-dimensional scene representation, protocols and algorithms for synchronizing changes, as well as software tools for implementing a collaborative web-based 3D scene editor based on Three.js, Node.js, WebSocket, and MongoDB. The research methods include system analysis, formalization and mathematical modeling, object-oriented and client-server design, software engineering, and experimental testing. As a result of the research, the Collab3D web editor was developed. It implements centralized server-side serialization of changes, WebSocket-based synchronization, support for create, delete, transform, color, rename, and import_model operations, the transform_preview live preview mechanism, data storage in MongoDB and GridFS, and restoration of the current scene state through snapshot synchronization after client reconnection. The novelty of the obtained results lies in the adaptation of the change agreement model to web-oriented multi-user 3D scene editing and in the combination of an operation log with a snapshot-based undo/redo mechanism. The results are related to studies in the fields of real-time collaborative systems, web-based three-dimensional graphics, and client-server applications. They can be used in the educational process, for demonstrating collaborative editing principles, for developing prototypes of shared web tools for working with 3D scenes, and as a basis for further development of the system. The practical significance of the work lies in the implementation of a functioning software tool, and the conducted testing confirmed the possibility of its use for multi-user editing of three-dimensional scenes in real time. | uk |
| dc.identifier.uri | https://dspace.znu.edu.ua/items/d5dc7b61-92bc-4ac9-8b48-2563b33217b2 | |
| dc.language.iso | uk | uk |
| dc.subject | алгоритм узгодження | uk |
| dc.subject | вебзастосунок | uk |
| dc.subject | вебсокет | uk |
| dc.subject | клієнт-серверна архітектура | uk |
| dc.subject | колаборативне редагування | uk |
| dc.subject | протокол синхронізації | uk |
| dc.subject | тривимірна графіка | uk |
| dc.subject | three-dimensional graphics | uk |
| dc.title | Розробка колаборативного веб-редактора 3D-сцен на базі Three.js | uk |
| dc.title.alternative | Development of a collaborative web-based 3D scene editor based on Three.js | uk |
| dc.type | Магістерська робота | uk |
Files
Original bundle
1 - 1 of 1
Loading...
- Name:
- diplom_Demydenko_AS.pdf
- Size:
- 1.34 MB
- Format:
- Adobe Portable Document Format
- Description:
- Магістерська робота
License bundle
1 - 1 of 1
Loading...
- Name:
- license.txt
- Size:
- 3.81 KB
- Format:
- Item-specific license agreed upon to submission
- Description: