nomadrealtime.blogg.se

Unity 3d terrain
Unity 3d terrain












unity 3d terrain

We quickly approach the limitations of modern hardware if we store all of these values in our active memory.As voxels are stored values representing our world, those values must be stored somewhere. Our world is a large, planet-like, environment.As we are generating terrain for a game, it is important to load terrain quickly but also throttle operations as to not overload the user’s hardware and reduce FPS to an unplayable level.

unity 3d terrain unity 3d terrain

We must leverage Unity’s Job system for multi-threading to maximize the performance of our terrain generation.Due to the number of math operations that occur when our terrain is generated or modified, performance is the primary concern of this implementation.Your browser does not support the video tag.įor our terrain to function in our environment, we constructed our systems with several priorities in mind: The end result can be seen in the following video. It is a relatively simple, fast, and efficient algorithm that has been used in many applications. This algorithm is used to generate triangles for a mesh from a density field. The marching cubes algorithm is a fast way to generate a polygonal mesh from a height/density field. With our goal being to make terrain, we used these values to determine the density of the terrain at that point.ĭensity for our volume means it exists in one of two states, filled (part of the ground), or empty (air). These values exist on a 3D grid, and have each point in that grid set to a value. While pixels are representative of data in a small area, voxels are representative of data in a small volume. Voxels are a volumetric representation of a point in 3D space. Inspired by Astroneer, we decided to implement a similar method of terrain generation and deformation for our project. While we were brainstorming ideas for our new, year-long game project, we encountered many interesting videos showcasing voxel techniques, such as procedural world generation and deformation. It’s a sandbox game set on a large planet, where the player hunts, digs, and upgrades their equipment to challenge the core at the center of the world. Project Cleanser is a year-long team game project that we’ve been working on together. We are Computer Science students at the DigiPen Institute of Technology, and have been working on game projects together for several years. Jonathan Bourim: Graphics Engineer & Engine Programmer














Unity 3d terrain