Light Lands

August 29, 2018 at 11:04 am | Posted in Computer path | 3 Comments
Tags: , , , , , , , , , , , , , , ,

Light Lands is a peaceful retro inspired exploration and puzzle bedroom coder GAME for PC with procedural algebraic visuals and sounds. Light Lands has CPU pathtraced (raytraced) interactive spectral graphics with full scene realtime global illumination on unlimited dynamic surface/volumetric lights and includes a benchmark option. Has music by Yerzmyey, It’s the second entry of the Hidden History Saga after Vector Vaults and looks like this:

System requirements

The thing to remember is that the CPU core count/speed is what dictates the graphic quality. On the other hand the graphic card has a negligible impact on performance:

  • Operating system: Windows 64 bits.
  • CPU: 4 or more FAST cores, the more the BETTER.
  • RAM: 4 Gigabytes (more RAM may be needed for high core count CPUs).
  • Console style game pad with two analog sticks is HIGHLY recommended (although Light Lands may be played with just mouse and keyboard).
  • Graphic card with OpenGl 3.3 or higher. Does NOT use DirectX, DXR API nor NVIDIA RTX.

Physical copy

The full game is available for free as a download at the end of this post, but if you find yourself compelled to posses a professionally pressed CD physical edition (DRM free) please follow this easy steps:

  1. You are advised to download and play Light Lands before buying it in order for you to asses speed performance on your hardware.
  2. Orders should be directed at alberto.rd.mr@gmail.com with subject ‘Light Lands physical edition’ and clearly specifying name and shipping address. Be sure to write from your PayPal email as this is the payment method. The game costs 21€ with international free shipping.

This is how the Light Lands pressed CD physical edition looks like (please note this is a professional injection mold CD):

Inside Light Lands technology

Light Lands is a photon simulation environment which uses Raydiant++ graphic engine through the lightspectering rendering module. It doesn’t draw each frame, instead they emerge as a byproduct of synthetic photons accumulating on a virtual photographic plate. It’s an ongoing interactive Monte Carlo simulation. Representation quality is linearly proportional to CPU power: Raydiant++ will take all cores/threads and max out your CPU. Light Lands is retro itself in the sense that in order to use this graphic technology at 2018 the display resolution is kept low, not unlike 8 bit games. You may think of the low resolution and noise of Light Lands in a similar way as other retro systems anomalies like ZX Spectrum color attribute clash or Amstrad CPC mode 0 ludicrously wide pixels: the result of technology limitations at the moment of making the games. Light Lands feels retro at 2018 because it uses technology for the future?.

The lightspectering technique has some parallelisms to jpeg compression. The jpeg algorithm recognizes that the lightness (gray scale) information of an image needs far more quality/detail than the color. So it separates both and devotes more resources to represent lightness than to color. Lightspectering is a collection of techniques tweaked to work together to achieve something similar on a interactive stream of images of a live user controlled camera. In this case is proposed that it’s more important to represent in a lagless way the effects of user controlled camera movement on the live image stream than the effects of world change. For world change we mean: lighting conditions change and object movement/morphing. So lightspectering allows for the camera movements to be reflected instantly on the live image stream. Then the lightning and object changes are progressively reflected and updated at a lower rate as allowed by the available CPU power. Thus we can produce interactive 3D games with full scene realtime global illumination on unlimited dynamic surface and volumetric lights on current (2015) hardware. With lightspectering the 3D graphics card is used lightly to keep frame rate constant by artificially increasing inter frame coherence dynamically only when needed depending on the complexity of the scene and the power of the CPU, hence making it possible to raytrace our way trough 30/60/… fps of global illumination game play on an open world without LOD or fog-limit. Lightspectering reduces the computing power needed to real time path trace a scene by orders of magnitude, dynamically. A drawback of lightspectering on not powerful enough CPUs is an added effect similar to motion blur.

Light Lands is tuned to work on an average 2015 i7, so it’s lowres. Still it gives a feel now for what it can be done in the near future. Another way of making this technology available now in HD and without noise would be through a cloud service. Raydiant++ engine is specially suitable for this as its performance grows linearly with server count. Raydiant++ has several rendering modes like global illumination, classic raytracing, preview mode… . The classic raytracer mode is around 30 times faster than the global illumination mode. I considered whether to use classic raytracing for Light Lands because it has no noise, gives realtime good resolution and has good hard shadows. In the end I decided towards global illumination because it’s more of an improvement over traditional hardware accelerated 3D game rendering.

As lightspectering method accurately calculates recursive refraction and reflexion it’s specially suitable for VR. Also lightspectering allows to select image quality on a per pixel basis which may be useful to leverage pupil tracking as a mean to devote more computing power to where the user is looking to on each moment and less to his peripheral vision zone.

On Raydiant++ engine no LOD is needed and light phenomena happen naturally (no need for constant tricks): recursive reflection, recursive refraction, focus, dispersion, caustics, global illumination, iridescence and more. Because of the efficient use of available SMP on current and coming modern powerful CPUs it may be of interest to Intel and AMD for this technology to go mainstream, since it will justify the need to get as many CPU cores as possible thus reversing modern trend to push for better graphics cards and shifting interest to CPU instead.

Raydiant++ is not restricted to drawing triangles, the limit is your imagination. These are some of the graphic specimens currently available:

  • Box.
  • Fractal procedural mountains (with no memory footprint).
  • Superquadric.
  • Superquadric specialized for integer exponents.
  • Solid cylinder.
  • Cylinder surface.
  • Elliptical cylinder.
  • Bit matrix.
  • Solid cone.
  • Cone surface.
  • Elliptical washer.
  • Sphere.
  • Heart.
  • Ellipsoid.
  • Cylindrical helicoid, right handed and left handed.
  • Elliptic cylindrical helicoid, right handed and left handed.
  • Box helicoid, right handed and left handed.
  • Infinite plane.
  • Alberto’s torus box.
  • Triangle mesh.
  • Polygon mesh.
  • Revolution polyline surface.
  • Convex polyhedron.
  • Generic polyhedron (with holes and non connected).
  • Elliptical torus.
  • Alberto’s groove ellipsoid.
  • Alberto’s bumpy sphere.
  • Alberto’s cos ellipsoid.

On the procedural front among the many generation functions the a-maze function family can be heard and seen throughout the game from the menus to the stages.

Development

Light Lands is coded in C++ through an IBM Model M keyboard on a PC surrounded by 8, 16, 32 and 64 bit retro systems and has been possible thanks to:

  • Bjarne Stroustrup: C++ father.
  • GCC: real C++ compiler.
  • Boost: C++ libraries.
  • SFML: nice portable multimedia libraries.
  • Inno Setup by Jordan Russell.
  • Linux: best OS there is.
  • ‘Texture and modeling: a procedural approach’ by David S. Ebert, F. Kenton Musgrave, Darwyn Peachey, Ken Perlin and Steven Worley.
  • Xolonium fonts: by Severin Meyer.
  • Bfxr: by increpare.
  • WinRun4J: rcedit.exe tool.
  • MinGW-w64: GCC Windows compiler.
  • KDevelop: IDE.
  • Ubuntu: Linux flavor.
  • DejaVu Fonts.
  • GDB.
  • Glew.
  • GLM.
  • GNU.
  • Mate: no nonsense desktop GUI.
  • Gnome classic: no nonsense desktop GUI.
  • OpenGl.
  • GIMP.
  • Stack Overflow.
  • gedit.
  • LMMS.
  • Audacity.
  • and many more…

Troubleshooting

  • If you have difficulty launching the game this is probably because you have ‘.js’ files associated to an action different from executing. Just go to ‘Program Files\Light Lands\multi-soliton\build\’, right click multi-soliton.exe and ‘Run as administrator’ (thanks to fibs111 for pointing this out).

Download the full game:

         mirror 1: Light Lands

         mirror 2: Light Lands

3 Comments »

RSS feed for comments on this post. TrackBack URI

  1. […] A zen-like 3D puzzle game utilizing path-tracing called Light Lands is available for download right now. You can download the game Alberto Rodriguez’s blog page. […]

  2. This is interesting. Haven’t played much yet, but required a bit of messing about to get running on Windows. The installed launcher points to a js file, apparently assuming some file type association. On my machine, a .js file launches a text editor. Instead, open location of the js file (Program Files\Light Lands\multi-soliton\build\), right click multi-soliton.exe, “run as administrator”.

  3. A finales de noviembre de 2016, Alberto Rodríguez nos sorprendió con un curioso juego para Amstrad CPC. Vector Vaults se presentaba como la primera entrega de una serie bautizada con el nombre de Hidden History Saga, y su autor había decidido comenzar con un título diseñado y programado para el microordenador de Amstrad. Casi dos años después de aquello, Alberto vuelve a la carga con Light Lands, aunque ahora cambia de registro y nos ofrece un curioso juego que juega entre la tecnología desfasada en el futuro, y los experimentos de renderizado de luz.

    http://www.retromaniac.es/2018/09/tras-sorprendernos-con-vector-vaults.html


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Blog at WordPress.com.
Entries and comments feeds.

%d bloggers like this: