Search

Designing Void as a Playground

Updated: Jun 8

Games are usually played on a solid surface. That surface is mostly a plane. Both that plane and the objects on it function like the matter in modern physics. They are touchable, observable, and interactable. A continuum of this kind of playground is essential to make a satisfying game.


On the other hand, modern physics taught us that when there is matter, there is also anti-matter. You can not touch, observe, or interact the anti-matter. It is accepted that only a very small percent of universe is matter. In fact, our existence is based on a playground surrounded with a huge void, and yet, all the fun is on those matter part of this universe.


Matter in the universe is mostly in form (or variants) of a sphere. A sphere represents perfect playground for games. When using a 1000 x 1000 plane, your playable surface is only 1 million units square. Having a sphere with a radius of 1000 units, your playable surface area increases to 4 x 3.14 x 1000000 unit square (from area of sphere). With constructing your game on a sphere, you increase your playable area by 4 x 3.14 times (which is 12.56 times).


You can always make a 12560 x 12560 plane to compensate that, but, yet, this might not be an easy path. Computers depend on floating number for lighting calculations, and when your camera goes further away from the origin, which is 0, 0, 0 coordinates in 3D space, lighting calculations become faulty. This is known as floating point precision error in computer graphics. The visual result of this phenomena is flickering visuals when too far away from the origin point. In Unity, 6000 units away from the origin is a safe threshold to be safe from this phenomena in standard render pipeline. This threshold further expands to (and over) 10000 units in HDRP. So, the maximum distance you can travel on your playground would be 6000 units in one direction from the origin, in standard render pipeline. 6000 in one direction, 6000 in the opposite, 12000 in total. Almost there!


But, what if we double the radius of the sphere in the spherical playground setup? Since area of sphere if proportional with the square of the radius, x2 of radius will increase the area by x4. Suddenly, you have 4 times of what you are limited to with a slight touch, and you are still in the safe threshold for the floating point precision errors.


Ok, you may still insist on planar setup, deciding to use floating point correction techniques, that is, when player approaches to the threshold, you take the player, along with your playground, back to the origin. You can repeat this forever. However, an infinite world is not interesting enough for gaming, mind likes to determine a body, thus, a finite world, to identify the unique areas and pin their position on a visual object. This leads us to the spherical setup, again, where we can use floating origin correction techniques for a better cause: to show the entire playground as an object to the player, when they look from far away enough. Moreover, we can provide many of these spheres separated with some distance from each other, increasing the area of playground while still being very functional for the mind.


If you are convinced at this point, you are probably thinking about how to handle player rotation on sphere, as well as, how to apply gravity, or measure the spherical distance between given two points on sphere. In fact, these, and many that will rise after adapting to a spherical playground setup, are solvable problems; googling is just enough to reach the solutions. Applying optimized solutions is another story, but, for now, let's ignore that part.


The beauty of this system is, you can even turn the space between spheres into a game area. In our game, CYOU, we provide the opportunity to conduct a space flight between points. The character of this flight may vary according to your technology level. If your engine is weak, the gravity may alter your course, as it happens in today's space flight; but if your engines are high tech enough to produce a small warp bubble, you can directly go from one point to another without the gravity altering your trajectory. However, great power comes with great responsibility. As you approach the position, you have to be at a safe speed to exit the bubble.


Failure to do so may damage your ship and leave you with the deadly nature of the void. You still have things to do at that point if ever it happens to you. You can initiate a distress signal and wait for help and deconstruct parts of your ship to feed life support systems to increase the chance of your survival. Maybe, this will require a space walk. Yes, it is dangerous. But, waiting may not guarantee your survival in that situation.


Void is like silence in music. Absence of it is frustrating, while its presence brings many opportunities into consideration for various functions.


6 views0 comments