ANALYSIS OF PROCEDURAL GENERATION METHODS FOR 3D GAME CONTENT
DOI:
https://doi.org/10.32782/KNTU2618-0340/2021.4.2.2.13Анотація
Thanks to the powerful development of the modern gaming industry, the creation of video games is increasingly perceived by authors and users as a separate form of artistic creation. Like any other cultural industry, video games have a huge market full of publishers and developers who create high-budget products. The problems existing in the gaming industry include the speed of creating game content and the quality of processing game objects, that is, displaying the game object in the most realistic or desired form. In light of this, we can say that procedural generation is an indispensable tool in game design.
In the presented work, one of the problems of procedural generation is considered - procedural generation of premises. The first section provides an overview of some of the most current procedural content generation techniques that can be used to generate rooms and levels in video games, and analyzes methods for generating building plans automatically. In particular, well-known algorithms and approaches to using procedural generation of structures are analyzed. Based on the analysis of methods for generating houses, a tool for procedural generation of house plans with their three-dimensional display has been developed. In the implemented software system, the ability to adjust various settings of the created objects, as well as the ability to change the house models by the user, has been added. This feature of the system opens up the possibility of generating a building using the constructor method from pre-designed parts. As a result, the variability of buildings increased both externally (building shapes) and internally (floor plans), as well as significantly reduced person-hours spent on creating a more detailed game object of the building. Testing has shown that the developed software system is optimal for use in the game editing mode.
Also in the work, various methods of optimizing the display of a building in 3D are investigated and analyzed. The developed system uses such optimization methods as combining building elements into a single mesh networks, correctly creating playable modular parts of the building, as well as using the Poolobject design pattern for multiple repetitions in building houses. Based on the results of the work in the future, it is possible to accelerate the development of games, for example, to generate a procedurally created city or create city models.
Завдяки потужному розвитку сучасної ігрової індустрії створення відеоігор все частіше сприймається авторами і користувачами як окремий вид художньої творчості. Як і будь-яка інша культурна індустрія, відеоігри мають величезний ринок, повний видавців і розробників, які створюють високобюджетні продукти. До існуючих в ігровій індустрії проблем відносять швидкість створення ігрового контенту і якість обробки ігрових об'єктів, тобто відображення ігрового об'єкта в найбільш реалістичному або потрібному вигляді. У світлі цього можна сказати, що процедурна генерація - незамінний інструмент в геймдизайні.
У представленій роботі розглядається одна з проблем процедурної генерації - процедурна генерація приміщень. У першому розділі проведено огляд декількох найактуальніших методів процедурної генерації контенту, які можуть бути використані для генерації кімнат і рівнів у відеоіграх, крім того, проаналізовані методи створення планів будівель автоматичним способом. Зокрема, аналізуються відомі алгоритми та підходи використання процедурної генерації споруд. На основі проведеного аналізу методів генерування будинків розроблено інструмент для процедурного генерування планів будинків з їх тривимірним відображенням. В реалізованій програмній системі додана можливість коригувати різні настройки створюваних об'єктів, а також можливість зміни користувачем моделей будинку. Дана особливість системи відкриває можливість генерування будівлі методом конструктора з заздалегідь розроблених частин. Як наслідок, збільшилася варіативність будівель як зовні (форми будівель), так і внутрішньо (плани приміщень), а також значно зменшилися витрачені людино-години на створення більш детального ігрового об'єкта будівлі. Тестування показало, що розроблена програмна система оптимально підходить для застосування в режимі редагування гри.
Також в роботі досліджені і проаналізовані різні методи оптимізації відображення будівлі в 3D. У розробленій системі використані такі методи оптимізації, як об'єднання елементів будівлі в єдину меш-сітку, коректне створення ігрових модульних частин будівлі, а також використання патерну проектування Poolobject для багаторазового повторення в побудові будинків. На основі результатів роботи в майбутньому можливе прискорення розробки ігор, наприклад, для генерування процедурно створеного міста або створення моделей міст.
Посилання
Togelius, J., Shaker, N. & Nelson, M. (2014). Procedural Content Generation in Games: A Textbook and an Overview of Current Research. Berlin: Springer.
Browne, C. (2011). Evolutionary Game Design. Berlin: Springer.
Short, T. & Adams, T. (2020). Short T. H., Adams T. Protsedurnaya generatsiya v geym-dizayne. (Procedural generation in game design). M.: DMK Press.
Mezhenin, M.G. (2015). Obzor sistem protsedurnoy generatsii igr. (Review of procedural game generation systems). Vestn. SUSU. Ser. Subtract. mat. Inform., 1, 4, 5–20.
Protsedurnaya generatsiya urovney (Procedural level generation). Retrieved from: URL: https://habr.com/post/418685/.
Algoritm protsedurnoy generatsii podzemeliy (Algorithm for procedural dungeon generation). Retrieved from: URL: https:// https://www.progamer.ru/dev/procedural-dungeon-generation.htm.
Dykeman, I. Procedural Worlds from Simple Tiles. Retrieved from: URL: https://ijdykeman.github.io/ml/2017/10/12/wang-tile-procedural-generation.html.
Procedural Map Generation. Retrieved from: URL: https://www.gridsagegames.com/blog/2014/06/procedural-map-generation/.
Andersson, S. (2019). Detailed Procedurally Generated Buildings [master's work]. Sweden: Linköping University.
Pádua, L. (2019). Procedural Modeling of Buildings Composed of Arbitrarily-Shaped Floor-Plans: Background, Progress, Contributions and Challenges of a Methodology Oriented to Cultural Heritage. Journals Computers. 2, 8, 1-10.
Kužel, V. (2018). Procedural building reconstruction from building outlines [master's work]. Prague: Charles University.
Camazzato, D. (2015). Method for growth-based procedural floor plan generation [master's work]. Rio Grande: Pontifical Catholic University of Rio Grande do Sul.
Silveira, I, Camozzato, D. & Marson F. (2015). Real-time Procedural Generation of Personalized Façade and Interior Appearances Based on Semantics. Conference 14th Brazilian Symposium on Computer Games and Digital Entertainment. (Brazilian, 2015). Brazilian. pp. 1-8.
Robert, E., Wyk, V. & Christopher J. (1988). An O(n log log n)-time algorithm for triangulating a simple polygon, SIAM Journal on Computing. 1, 17, 143–178.
Aichholzer, O., Aurenhammer, F. & Alberts, D. (1995). A novel type of skeleton for polygons. Journal of Universal Computer Science. 1, 752–761.