Website powered by

Cosmic Colonizers DEMO

Cosmic Colonizers started as a collective idea within my start-up, UQUO. My partners and I wanted to create a video game demo that would showcase a new human society evolving on the moon after Earth's collapse. With this vision in mind, I began recreating a section of the moon's surface in Unreal Engine. I used maps provided by NASA and the PCG plugin for UE5 to place rocks and asteroid debris across the terrain. To make the ground texture look more natural and less repetitive, I applied macrotexture variations.
For the building system, I developed a Structural Blueprint, a Data Table, and an Enumeration to organize and categorize the buildable items. Then, I used the Data Table to populate a Variable of the Array type with these items.
This project is still a work in progress and will be for a while, but I decided to start sharing my creation process to document my progress and learning journey with Blueprints and Unreal Engine fundamentals. I hope you enjoy following along! I plan to post updates every two weeks, so keep an eye out for more.

I began building my level using a section of the moon's surface, along with the color and normal maps from the CGI Moon Kit provided by NASA. You can check out the kit yourself at this link: https://svs.gsfc.nasa.gov/4720/.

I began building my level using a section of the moon's surface, along with the color and normal maps from the CGI Moon Kit provided by NASA. You can check out the kit yourself at this link: https://svs.gsfc.nasa.gov/4720/.

Here, you can see the part of the blueprint that adjusts the tiling of the ground texture based on the camera's distance. The texture tiles appear larger when farther from the camera and smaller when closer.

Here, you can see the part of the blueprint that adjusts the tiling of the ground texture based on the camera's distance. The texture tiles appear larger when farther from the camera and smaller when closer.

You can also take a look at the various textures used in the layer blend method for the ground.

You can also take a look at the various textures used in the layer blend method for the ground.

The textures you saw in the previous image are blended together using this blueprint. It seamlessly combines multiple textures using a way that you can compair with masks .

The textures you saw in the previous image are blended together using this blueprint. It seamlessly combines multiple textures using a way that you can compair with masks .

This is the Procedural Content Generation (PCG) tree used to scatter rocks and debris across the moon's surface.

This is the Procedural Content Generation (PCG) tree used to scatter rocks and debris across the moon's surface.

And this is how my terrain looks like now.

I also developed a health and damage system for my character. In the future, this system will be used to apply damage to the player from various factors, such as accidents or lack of oxygen.

I also developed a health and damage system for my character. In the future, this system will be used to apply damage to the player from various factors, such as accidents or lack of oxygen.

this is a test of what was mentioned previously.

Now, let’s talk about the build system. I’ll share some of the data elements I used to organize and categorize buildable items, which helped me implement various functionalities in my Actor Component Blueprint.

Now, let’s talk about the build system. I’ll share some of the data elements I used to organize and categorize buildable items, which helped me implement various functionalities in my Actor Component Blueprint.

Enumeration: Here, I defined all the categories for my buildable items. This will be really helpful when I implement different types of walls and floors, as it allows me to organize them under specific categories.

Enumeration: Here, I defined all the categories for my buildable items. This will be really helpful when I implement different types of walls and floors, as it allows me to organize them under specific categories.

This is my Data Table, which contains a list of all my buildable items. It includes details for each buildable, such as its mesh, blueprint, name, and category.

This is my Data Table, which contains a list of all my buildable items. It includes details for each buildable, such as its mesh, blueprint, name, and category.

This blueprint handles placing the mesh of the object the player wants to build.

This blueprint handles placing the mesh of the object the player wants to build.

Here, you can see the blueprint that displays a green hologram preview of the buildable item before you place it.

Here, you can see the blueprint that displays a green hologram preview of the buildable item before you place it.

And this is how the demo looks right now. There’s still a lot of work to do, but I’m really happy with the progress so far. I hope to share more updates soon, especially about material reduction and resource collection.