Abstract
The article explores a method for creating game content using procedural generation based on the wave function collapse. It has been determined that using this method with the basic approach yields relatively acceptable results. In some cases, anomalies are encountered, or spaces with a low level of diversity are generated. At the initial stages of generation, zones where generation is impossible using the basic method have been identified. One way to address this issue is through repeated generation, which requires additional resources. A modification of the method has been proposed using repeated passes. In some cases, this method has proven to be quite effective. To improve the method's efficiency, the space has been divided into zones to verify the correctness of the generated area. The most effective application of the basic method has been determined – traversing the space with another algorithm and post-processing after generation. One such algorithm allows for the preparation of samples to be substituted into closed zones that appear. Preparing generation materials significantly speeds up the operation of the wave function collapse. Preliminary traversal of space to identify probable problem areas occurs separately from the main generation. The algorithm has been modified for the automatic recognition of compatible samples, significantly reducing the time for generation preparation and the number of problem areas created. Enclosed spaces that restrict access to parts of the map have been identified. Depending on the size of the restricted area, several solutions have been proposed. For small areas, replacement with decorative content, for large areas – regeneration with samples designed to create internal content, or replacement of certain blocks with passable ones. Based on the research results, it is concluded that the generation of game space using the wave function collapse method is more efficient when auxiliary algorithms and constraints are applied at the initial and final stages of generation. Also, the idea of dividing generation into visible and invisible parts is proposed: the visible part is created during scene preparation, and the invisible part is generated during level traversal.
Published Version
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have