Taking our Boulder Gym graphics to New Heights

New Heights: Realistic Climbing and Bouldering

The ultimate climbing and bouldering simulation game. Explore and climb 250 real world routes, create your own routes and compete against your friends from the safety of your computer.

[img]{STEAM_CLAN_IMAGE}/43535104/bfe298c1ec4f494267538a4f7b1ed9053d1db23c.jpg[/img] Most of the levels in our game are based on real world locations and put into the game using photogrammetry. These photo scanned levels have a high baseline of quality because they so closely resemble real life. The photogrammetry pipeline we have supplies multiple layers of textures we can apply to a physically based rendering (PBR) material in Unity; These texture maps include occlusion, roughness, normal maps resulting in a realistic looking surface. We do have one level that is not based on a real world location: the boulder gym, where you learn the ropes of our climbing system. It's the first level the player sees and experiences and it has been built by hand instead of using photogrammetry. The level is based around the idea of an outdoor climbing gym at an old/abandoned industrial compound. We blocked out the level using some props and buildings. For the climbing walls we used ProBuilder to block out meshes resembling climbing walls. The boulder holds the player uses to climb these walls were made by us (using Blender). [img]{STEAM_CLAN_IMAGE}/43535104/11f03bf286305a37912f1285265290a3d51b4933.jpg[/img] [i]An early version of the boulder gym level[/i] With our photogrammetry process improving over time the boulder gym level quickly fell behind in graphical quality. It did not stand up against the other levels we have in the game. This was problematic for us because the boulder gym is the players' first impression and is also something you see when you watch someone play the game for the first time. With our photoscanned levels being so beautiful the boulder gym needed a graphical lift. [img]{STEAM_CLAN_IMAGE}/43535104/8753bd24e553dc6b5aec06f56164a0ae83148944.jpg[/img] [i]Big quality difference between our boulder gym and photoscanned levels[/i] The first and most pressing items to beautify were the climbing walls themselves. The shapes we made with ProBuilder for the walls were unrealistic looking and had a basic texture on them without any PBR properties. Basically, it was just a block with a simple wooden looking diffuse texture and a basic normal map. We needed better textures to make our climbing walls look more realistic. I took my camera with me for my next bouldering session and took a lot of photos of the walls (also of the holds, more on that later). The next step was making these photos tile properly. I tried some AI assisted tools, but they were mostly prompt-driven for generating textures from scratch. I just ended up making the photos tile in Photoshop. My process was as follows: duplicating the texture on the X- and Y-axis, fixing up the seams, removing glaringly repeating elements and making the shading on the image consistent. [img]{STEAM_CLAN_IMAGE}/43535104/7de41083108ecd69ccb95e5bfda70db0934840c2.jpg[/img] [i]From photograph to the diffuse texture used in game[/i] To create a more photo-realistic and modern look the textures needed to fit into the PBR pipeline. I came across a program called Materialize (https://boundingboxsoftware.com/materialize/index.php) that can take a single photo as input and create all the needed texture maps from there. You end up with a complete PBR material, exactly what I needed! I placed the newly created material on the existing walls and it looked great, but still the wall models were really out of place, so these needed to be updated as well. I modeled some hand crafted looking walls that were supported by beams and planks. It fits great with the industrial boulder gym look that we have. My texture actually has a seam where it repeats but we ended up emphasizing this as it makes a single wall or block appear to be made up of multiple slabs which looks great. [img]{STEAM_CLAN_IMAGE}/43535104/d5991f92fb3a1f7ab864cbf85d19379a064c930c.jpg[/img] [i]The PBR material creation in Materialize[/i] With the texture workflow in place the climbing holds were also updated using Materialize. I had also taken several high resolution photos of climbing holds in our local boulder gym which I converted to PBR materials. Our holds now look like the real ones with great, grippy texture. I did the same thing for the mats beneath the walls as the old mats were very bland and shiny looking which I didn't like. The new mats are actually indoor mats, but since it never rains in our boulder gym they'll be fine! [img]{STEAM_CLAN_IMAGE}/43535104/8218c5df8602776fff896044d7768c12218c4a8d.gif[/img] [i]More realistic looking holds[/i] [img]{STEAM_CLAN_IMAGE}/43535104/8dfc7fa34277b2a8d034957edc87b642432a7f42.jpg[/img] [i]The new walls, with mats and holds[/i] Other changes to the boulder gym include adding in some ground clutter for variation and placing some props around the place to make it more believable. One of these props is a long brush that is used in bouldering to brush the holds clean. These brushes were placed around the level by giving them a collider and physics then copying their position after they fell into place; way easier than placing them by hand! I also put the building’s textures through Materialize to increase the overall graphical fidelity of the level. Additionally we have cats in our levels that the player can find to get an achievement; Unique to the boulder gym level is the dog, which even has its own dog house. [img]{STEAM_CLAN_IMAGE}/43535104/a7fc36415316e0267ba6c5e31d6a8655d8bb8fb0.jpg[/img] [i]Additional props and assets that were added to the level[/i] The end result is a way more realistic looking boulder gym that looks like it has actual climbing going on. The graphics are also more in line with the rest of the game regarding fidelity and level of detail. [img]{STEAM_CLAN_IMAGE}/43535104/38c5876d1ce3b458b51c067d54462cbf860ba51e.gif[/img] [i]Old versus new![/i]