• Register
Post news RSS ARTIFICIAL - Devlog 04

ARTIFICIAL is a single-player first-person puzzle game which takes place in an underground colony on asteroid 2031 XT.

Posted by on


Welcome to another bi-weekly ARTIFICIAL devlog!

I've decided to release a short playthrough of one of the early levels as it nicely demonstrates different aspects of ARTIFICIAL's gameplay. In this case - simple platforming combined with dynamic obstacles (lasers & turrets) and environment-based puzzles. Everything you can see in the video is still work in progress. Because this level takes place around the start of the game, it shows just the most basic gameplay mechanics. There are many more which are gradually introduced throughout the game.

As you could see in the video above, one of the many obstacles you can encounter in ARTIFICIAL is security turrets. They scan their surroundings and shoot any biological entity they pick up with their scanners. You can either sneak around them or disable them by tipping them over.


Several models went through various visual improvements. Here you can see an example. I've decided to add a little bit more detail to the "drum antenna" model in the form of a beveled edge. It's just s small change, but environments which are using this model now look much more detailed.


Models also went through some performance improvements. Many of the prefabs were causing unnecessary draw calls, so by merging together meshes which were using the same material, I managed to reduce overall draw call count by around 30%.
Messy models can get performance heavy really quickly.


Here is a quick description of draw calls from official unity3d.com documentation for better understanding.

To draw a GameObject on the screen, the engine has to issue a draw call to the graphics API (such as OpenGL or Direct3D). Draw calls are often resource-intensive, with the graphics API doing significant work for every draw call, causing performance overhead on the CPU side. This is mostly caused by the state changes done between the draw calls (such as switching to a different Material), which causes resource-intensive validation and translation steps in the graphics driver.


The other day I ran into GRAPHY - Stats Monitor & Debugger which is a free asset on the Unity asset store. It's a quite reliable and handy tool for checking the performance of your game and seeing how various graphics options affect your game's performance.


While playing around with this tool, I found out that enabling shadows for secondary lights (which are mainly used to subtly light up darker areas of the game) has a really small effect on the overall performance. I've decided to add the possibility to have the shadows enabled in the game and I have to say that environments now definitely look much better. I also decided to make overall shadows a little bit darker as in some cases they were not quite visible.


Adding dust particles to the game was something that I had on my mind for quite a long time. I finally decided to work on them last week. After a few iterations, they turned out to be a nice little touch to the overall atmosphere of the game and this is how they look like in action.

ARTIFICIAL is mostly a one person Indie game and that's why I'm often relying on opinions of people from my Discord community. Feel free to join in if you would like to chat, or just see more screenshots and videos from development!





Thank you for reading this far and see you again in two weeks!

Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.