Schifty's Blog

Game Development and Media Reviews

The 4-Hour Workweek Reviewed by a Game Developer

The 4-Hour Workweek is a book by Timothy Ferriss that describes the lifestyle of the New Rich. A member of the New Rich is able to work remotely from anywhere in the world and has developed a system for income automation in order to focus on the important things they actually want to do before they hit retirement. The title of this book promises a lot and I was curious if this book offered any insights that can be applied to the life of a game developer. Here is what I found.

Ferriss starts off by attacking the traditional work / life balance of working +40 hours a week and instead argues that these jobs can be done in a fraction of that time by using the elimination method. His method describes the cultivation of selective ignorance. This line of thinking is based on the principle that 20% of your work achieve 80% of your results and that 80% of your issues stem from 20% your activities. He detailed how he ditched a majority of his labor-intensive clients to only work for his most profiting ones and that he stopped offering time intensive services like international shipping. He was able to cut down his client management time from 5-10h per day to 1hour per month while still generating 90% of his income.

How does this translate to game development? Supporting multiple platforms for a video game is a great way to reach out to more customers but its also a good way to pull your attention away from the things that will make your game great. Every minute you invest in Linux support is a minute you lose on polishing your website, trailer or core features. Analyze what features sell your game and what features are more work than they are actually worth.

The book recommends people to start rejecting meetings without an established agenda and to start checking e-mails only twice a day. This helps you to focus on your previously established goals and not the priorities of others. The processing of e-mails in limited time windows forces you to focus on the important e-mails while ignoring the rest.

How does that translate to video game development? Meetings and e-mails from colleagues are a part in every office environment. Additionally, video games with a social media following tend to create a constant stream of notifications which can be very tempting to react to right away. Try to batch your reaction to Twitter, Facebook and YouTube comments and answer as many as you can in a very limited timeframe. Ignore social media for the rest of your day.

‘Doing the Unrealistic is Easier Than Doing the Realistic’. The book argues that you should aim for the extra ordinary when working on your projects. 99% of people aim for realistic goals with mediocre results. This creates a market where the competition ends up being the fiercest. It is therefore supposed to be easier to raise a $1,000,000 than it is to raise 100,000. Ferriss elaborates further by saying that unusually large goals lead to an adrenaline infusion that help you overcome inevitable trials. Realistic goals are supposedly uninspiring and barely fuel you through the first problems. He describes a process to achieve unrealistic goals that he calls Dreamlining which forces you to create specific steps for goals you think are out of reach.

Ferriss proposes a challenge to overcome a mindset that is limited by mediocre ideas. Contact a celebrity or somebody you would normally think is out of reach and get them to respond to your e-mail. He says that this is typically easier than you might think and entices you to have bigger goals.

How does this translate to game development? As I am a mostly introverted engineer I stuck to creating video games that I knew how to make. I knew about technical limitations and what I was capable of. I rarely left my comfort zone and created a number of games that were generally liked, well designed and technically sound. However, these games failed to attract a larger audience because they were not inspiring as I never dared to venture into the impossible. I came to the conclusion that every project needs realistic limitations but also unrealistic ambitions to become successful. You therefore need to have two driving forces in your team. The game designers and sales people have to think big unburdened by the knowledge of what is actually possible while the programmers have to make it work somehow.

The next chapter focuses on how to build up an automated business that passively generates revenue without requiring more than a minimum amount of work which he calls muses. Ferriss explains that that running a business is not the goal and instead shifts the focus on setting up structures to enable other people to run a business for you. However, instructing people is a difficult and time consuming task that needs training. This training can be cheaply acquired by hiring a virtual assistant that takes over simple tasks for you. You will learn how to communicate deadlines and expectations in the process. Ferriss also writes about the value of writing e-mails in an if/else structure to enable your employees to work on their own. Additionally, frequently asked questions should be addressed in a guide to empower your employees to act without you.

How does this translate to game development? Communicating your expectations to artist or voice actors is sometime pretty difficult and failure to do so might end up being really expensive. I already had my fair share of expensive misunderstandings and missed deadlines. Hiring a virtual assistant to handle social media posts or work through bug reports seems like a reasonable idea to get started with the concept of leadership before committing to your first hire.

Creating a muse is not easy and you might have to test different products until you find the right one to sell. Testing if a muse is viable should be possible for less than $500. He recommends you to simply setup a website with an interesting product that you can order from a factory in China and pay for online ads. The product you are selling doesn’t even have to be already in your hands and your website might simply indicate that the order was cancelled after it was placed. This gives you real data without investing too much money to an unproven idea. If your cost-per-order (CPO) from advertising is decently covered by your profit margin you have found yourself a muse.

How does this translate to game development? Before committing to any project for 2 years you might want to create a Steam page with a couple of screenshots of your fancy looking prototype as early as possible. Everything in those screenshots can be mocked as long as it communicates your vision well. If a significant number of players adds your game to their wishlist your prototype might be worth the effort.

Ferriss goes on and claims that it is easier to sell a product if you are known in your industry. He describes a process of becoming an expert in everything. You start off by becoming a member of multiple trade associations within your field. The next step is to read the most popular books on your topic and to write a short summary about them. Call your local university and offer a free seminar and use posters to advertise for it. Try to do the same thing for well known companies and cite your memberships and your previous seminars at universities as reference. You can also try to write articles for trade publications or offer to conduct interviews with well known experts for them. He references a service that is used by journalists to find experts on specific topics. Your new credentials are supposedly enough to sign up, be found and to be asked for interviews.

How does this translate to game development? Having a following on social media definitely helps you to sell games. Joining game development associations or writing articles for online magazines is certainly useful for that. Holding seminars at universities is a great way to recruit talented people who want to start out in the business. Additionally, creating a network with peers and journalists enables you to share ideas or collaborate with others. While it might be very unlikely to get contacted by a major news outlet to talk about video games, this might work on a smaller scale. It’s a huge opportunity to have a poster of your game featured in the background of your next Skype interview.

Lastly, the book gives very practical advice about building up your muse, negotiating remote-work agreements and about traveling the world. As working on video games does not necessarily require your physical presence in an office, this advice could be useful for solo developers, small teams or even employees of AAA studios. Ferriss claims a lot of things and makes difficult things sound very easy. I see at least some value in his pretty unusual perspective and his knowledge as a salesman, even though I might not be able to replicate any of that.

Hope that helps.

Death Trash Review

Death Trash is an Action RPG created by Crafting Legends that was released on August 5th 2021 in Early Access on Steam. The player gets to control a character who was exiled from a sheltered colony and released into a barren wasteland. This whole premise feels pretty close to the Fallout games with the distinction that the horrors of nuclear war where simply replaced by grotesque meat abominations. Does this make for a good game? Let’s find out.

Big chunks of the game take place in underground bunkers that are reminiscent of the vaults in Fallout.

The game starts off with a short and simple intro sequence that could have used a voice actor. It proceeds with a character creation screen. I was never a fan of picking stats at the beginning of the game as it is absolutely impossible to know which stats and skills are important and which are not. This kind of game design was carried over from pen and paper role playing games and just forces bad decision making by new players.

I put my character points exclusively into ranged weapons just to find out that melee is super important in this game. Some games mitigate this problem by introducing predefined classes or moving the first decisions to level 2 but this game just acknowledges the issue with the ability to invest your points later.

The game continues with an optional and very short tutorial but let’s you completely off the leash after a couple of minutes. That’s pretty cool. You stumble into your first quests by talking to nearby NPCs and visiting nearby locations. These locations can be reached by traveling on a world map.

Some locations are already revealed by quests and some have to be discovered. The world map features random encounters with enemies or merchants.

The basic combat mechanics are pretty easy to learn and the fights have a very pleasant learning curve. Melee and ranged weapons seem to be equally important as you would need way too many bullets relying on ranged weapons only. There is some sort of cyber-magic too that lets you stun and burn enemies or summon meaty allies to the fight. The additional abilities complement the fighting system very well. The number of weapons, armor pieces and abilities feels already generous given that the game is still in Early Access. The game did not do a very good job explaining when to use the different weapons types though. I have yet to understand when the different weapon types work best.

The game already features a lot of different items and crafting options.

There is a stealth element to the game that allows you to sneak up on enemies and to potentially kill them without any resistance. This is especially fun with exploding enemies as this allows you to take out smaller groups with a single hit. It seems that the game is even designed in a way that lets you circumvent some fights completely. However, skipping out on experience points or loot does not sound very entertaining outside of a pacifist run.

Stealth can be really fun in this game and is helpful to conserve health and ammunition.

The dialogue with the NPCs does not feature interesting decisions yet. Most conversations revolve around accepting or closing quests. Empathy is a speech attribute that offers you additional dialogue options. However, it is currently implemented in a way where it lets you skip quests instead of offering you something interesting which does not seem fun at all.

The dialogue options are kept pretty simple.

The main quest ended around two hours with a work-in-progress notification. Exploring the rest of the map took another three with some parts of the world not being accessible yet. The current version of the game features over 20 locations. Some of the locations were closed off by locked doors that could not be opened. The next content update might be able to provide the necessary key. The further I traveled, the more I was presented with the need to come back later. However, at the very edge of the map I encountered two very interesting boss fights.

Teaser for future content updates can be found everywhere in the game.

This game is a lot of fun. I did not encounter a single significant bug in my +6 hours of gameplay. I already can’t wait to give it another go when it’s done. However, the game at it’s current state was in development for 6 years. This might be an indicator that this title won’t be leaving Early Access in the next one.

4/5 – Hope this helps.

The Suicide Squad 2021

The Suicide Squad was directed by James Gunn and stars Margot Robbie, John Cena and Idris Elba. I wasn’t very sure what to expect from this movie as I did not particularly enjoy Suicide Squad from 2016. However, this movie feels like a much needed do-over with a bunch of obscure characters from the DC universe that you have probably never heard of. The movie starts with a completely misleading bait and switch that explains the premise of the movie while also perfectly capturing its tone. The opening felt like an enormous gamble that paid off.

The Suicide Squad is featuring a new team with a couple of familiar faces.

The competitive relationship between John Cena and Idris Elba received a lot of screen time and was easily the most entertaining part of the movie. Idris Elba becomes the relatable protagonist of the story while John Cena leans heavily into the outrageous delivering easily the best lines of the script.

The bickering between these two characters is easily the highlight of the movie.

I was never a fan of Margot Robbie’s portrayal of Harley Quinn in her previous movies. The Brooklyn accent and her overall personality were always a bit too much on the obnoxious site of things. This didn’t change significantly in The Suicide Squad but at least she had a couple of very interesting things to do.

Margot Robbie as Harley Quinn

The rest of the cast did a good job making the more obscure members of the team likeable. King Shark, a mix between a man and a shark, reminded me of a mix between Groot and Drax from Guardians of the Galaxy and worked really well as a comedic relief. I even ended up really liking the Ratcatcher 2 and Polka-Dot Man.

David Dastmalchian as the Polka-Dot Man is not even the most obscure character in the movie.

The most surprising element of the movie was the portrayal of the politics surrounding the Suicide Squad. The story openly acknowledged that the team does not exist to do good but to cover up shady government operations in off the books missions – it was portrayed as straight up evil. I haven’t seen this level of open criticism towards American imperialism and the indiscriminate killing of foreigners in a comic book adaptation before. The Boys had similar critique to offer but usually focused on the private part of the military industrial complex rather than government operations.

Viola Davis reprises her role as Amada Waller.

The movie is R-rated and shows a lot of outrageous violence which was always presented in a light-hearted way. You will see grotesque scenes of people getting stabbed multiple times, ripped apart or eaten while the movie tries to make you lough about it. One scene in particular felt like a killing blow from the video game Mortal Combat.

A lot of people get killed in this movie.

I was thoroughly entertained. The movie made me care about obscure DC characters and a completely ridiculous plot. I would like to see more!

4/5 – Hope that helps.

The Evolution of the RTS Genre

Real-time strategy games used to be a popular genre within the video game industry but somehow faded into the background. Let’s talk about the milestones of the genre and figure out what happened.

Dune II is considered to be the grandfather of all real-time strategy games. It was developed by Westwood Studios and released in 1992. However its predecessor Dune was developed by a different studio and actually more of an adventure game that had strategic elements in it. The Dune games were based on the novels of Frank Herbert and followed a few years after the release of its movie adaptation by David Lynch in 1984.

1992- Dune by Cryo Interactive

Dune II was not the first real-time strategy title but introduced video game enthusiasts around the world to the nowadays fundamental concepts of the genre. The game allowed the player to issue orders using the mouse. It featured a basic base building mechanic that enabled players to unlock and train units. These units and buildings were bought with credits that could be acquired by gathering a resource called Spice on the map. Spice was collected with a non-military unit called Harvester. The player had to explore the map as the level was initially covered by a simple fog of war mechanic. The individual missions were connected by a strategic map which represented the overall progress of the game. This unique combination of features defined the look and feel of the RTS genre for decades to come. Dune II was commercially successful and sold over 250,000 units by 1996.

1992 – Dune 2 by Westwood Studios

The success of Dune 2 inspired competitors like Blizzard to develop their own RTS games. Warcraft: Orcs & Humans was released in 1994. The game expanded the role of non-military units as the player generally required more of them to gather two different types of resources and to construct buildings. One of those buildings was a farm that was necessary to increase the population limit to build up an army. This tied the strength of a players army to the general size of the corresponding base. The game also introduced a random map generator that was utilized for matches against the AI or against another player. The game went on to sell 300,000 copies.

1994 – Warcraft: Orcs & Humans by Blizzard Entertainment

The success of Dune II also enabled Westwood Studios to create Command and Conquer in 1995. The game relied heavily on the technical foundation that was created during the development of Dune II but was not tied to any existing IP. The game introduced cutscenes that featured real actors and the possibility to play online matches with up to 4 players. The game exploded in popularity and sold over 3 million copies. The franchise sold over 30 million copies by 2009.

1995 – Command & Conquer by Westwood Studios

The commercial success of Warcraft led to the to the development of Warcraft 2 in 1995. The game introduced an improved fog of war mechanic that hid enemy units in previously explored areas if no allied unit was in range. A third resource was introduced and water and air units were added to the game. Warcraft 2 sold over 3 million units.

1995 – Warcraft 2 by Blizzard Entertainment

StarCraft was released in 1998 and became the best-selling PC game of the year and an an eSports phenomenon in South Korea. The game and its expansion sold over 10 million copies. This track record established Blizzard firmly in the strategy market and paved the road for the most influential title in RTS history.

1998 – StarCraft by Blizzard Entertainment

Warcraft 3 was released by Blizzard in 2002. The game introduced RPG-Style hero units to the genre. These heroes were powerful units on the battlefield that earned XP, had an inventory, leveled-up and were able to unlock powerful abilities. Additionally, the game included neutral units on the map that dropped gold when they were killed. The game also included a map editor that enabled the community to create new game modes which heavily relied on those features and ended up influencing the game development industry in the decade to come. Warcraft 3 and its expansion sold over 6 million copies.

2002 – Warcraft 3: Reign of Chaos by Blizzard Entertainment

Multiplayer matches within the RTS genre tend to be very stressful as they are typically very reliant on the players ability to multitask. The community started to develop custom game modes that reduced the games complexity by focusing on specific aspects. These new game modes appealed to a more casual audience. Tower defense games automated unit control and let the player exclusively focus on base building. These custom maps started a popular trend of dedicated tower defense games in the late 2000’s. The game mode Defense of the Ancients focused entirely on hero units and birthed the multiplayer battle arena genre. This genre includes League of Legends with over 100 million players alone, DOTA 2 and Heroes of the Storm.

The popularity of the heroes in Warcraft 3 also led to the development of World of Warcraft, the most popular MMORPG ever created. The game had over 12 million subscribers in 2010 attracted the attention of major IPs like The Lord of the Rings (2007), Star Trek (2010), Star Wars (2011) to cash in on the hype.

In the years after StarCraft the popularity of RTS games seemed to steadily decline. The major franchises like Command and Conquer and Age of Empires saw diminishing returns as the cost of making state of the art games rose while the player base stagnated. The template that was created by Dune II was designed for keyboard and mouse input and did not translate very well onto other platforms. The market for RTS games eventually reached its limits while more approachable titles with streamlined mechanics found bigger audiences on multiple platforms. The RTS market didn’t vanish – it just stopped growing while other genres exploded in popularity. Sales numbers of later games are hard to obtain as sales started to shift into to the digital space. The number of reviews on Steam might be used as a general indicator for popularity and sales though.

The data in this table is not perfectly comparable as some games have been released before Steam was available or are sold on other digital distribution platforms. Some titles have been sold in different versions on Steam.

The re-releases of older titles have a lot of reviews while newer games struggle. Age of Empires II was re-released twice in an HD and Definitive version with each iteration gathering a very significant audience. Assuming that 2% of customers review a product, Age of Empires II has been sold 7.5 million times on Steam. The usefulness of this data is somewhat validated by the ongoing development of Age of Empires IV and Company of Heroes 3.

Hope that helps.

The Best and The Worst Things About Army of The Dead

Army of the Dead is a fun zombie heist movie by director Zack Snyder. A team of mercenaries is sent into Las Vegas to kill some zombies and to retrieve a bunch of cash from a casino vault. Here are the best and worst things about this movie.

The 4 Best Things About the Movie

#1 The movie has a lot of fun action scenes that are set in a Las Vegas that was overrun by zombies. There are even different types of zombies. Some zombies are smart and fast, some are dumb and slow. The setting and the different zombie types keep the action scenes fresh and the plot interesting. Expect less of a horror movie and more of a stylized action movie though.
#2 The cast around Dave Bautista who played Drax in Guardians of the Galaxy is doing a pretty decent job. The characters might be a bit cartoony but have interesting personalities that totally worked for me. The Safecracker was especially interesting to watch.
#3 The president of the United States is quoted by a news anchor saying that nuking Las Vegas on the 4th of July would be really cool and actually kind of patriotic if you think about it.
#4 It’s one of the few bigger releases in the past 12 months.

The 4 Worst Things About the Movie

#1 The movie has some jarring script issues. I’m not talking about plot holes and the power of hindsight here – I’m talking about really confusing stuff. Some of the characters seem to be able to just jump around between locations. The main antagonist was even able to keep up with a helicopter on foot at some point. The amount of money that was supposed to be transported weighs around 2 metric tons – that is way more than what a couple of backpacks can handle.
#2 A lot of things were set up that never really paid off. The movie heavily teased the usage of a giant circular saw to fight off the zombies but we never really got to see it. The protagonists even talked about some dried up zombies that get reactivated by rain but we didn’t get to see this either. This leads me to believe that Zack Snyder tried to do another 4h movie but somebody at the studio put their foot down forced some cuts. This felt especially frustrating right at the end of the movie where the fate of one character was not even mentioned.
#3 There was this one scene were a character died and everybody else just stood there like a deer in the headlights. They clearly could have done something about it. The character alone killed like 20 zombies and the whole team collectively decided no to help her against five more. It was just baffling.
#4 The movie played around with a very shallow depth of field. This led to a lot of very blurry scenes that were sometimes completely out of focus. This is an unaltered still from the movie.

The Conclusion

The movie is around 2h 20min long and was a fun time overall. The script had a couple of jarring issues and could have used some more work but you get pretty much what you expect from this Zack Snyder movie. There were a lot of stylized action scenes that felt similar to his previous movies like 300 or Justice League. If you like to see a bunch of zombies getting killed and if you are a bit more forgiving about the script you are going to have a good time.

4/5 – Hope this helps.

Make Your First Game Asset

Have you ever wondered how to make a video game asset from start to finish? This tutorial covers the creation of fully destructible crates using only the freely available tools Blender, Krita, and Unreal Engine.

Step 1 – Make a Crate With Blender

We start by creating the crate mesh in Blender. We do this by slightly insetting all 6 faces of a cube. The new faces in the center of each side have to be slightly extruded inwards after that.

When insetting faces, make sure select every face and to check Individual.
Open the context menu and select Extrude Faces Along Normals.

The crate has be hollow to support the destruction effects within Unreal Engine. Therefore we create a 2nd cube and move it inside our crate. The cube has to be scaled down to be slightly smaller than our crate. We can then use a Boolean modifier to remove the insides of the crate.

The size of the cube inside of the crate (black outline) determines the thickness of its wooden walls. Create a Boolean modifier and select the 2nd Cube as the Object. Apply the modifier to make the change to the crate permanent. Don’t forget to remove the 2nd cube before export.

Uniform meshes can look pretty boring. I recommend you to add imperfections to the mesh by creating a couple of loop cuts and moving some vertices around using proportional editing. This gives the mesh a bit of character which works great in a low-poly environment.

Adding 3×3 loop cuts (CTRL + R) to the cube enables you to slightly deform the crate using Proportional Editing – the sphere of influence can be scaled by using the mouse wheel.

Open up the UV-Editing screen and add a new image with a size of 256×256. Save that image to a file called ‘CrateTex.png’. Select the entire mesh and export the UV-Layout to different file. Create and name a material. Assign it to your crate. Link the base color of the material as a image texture to the newly created image. If you switch the shading mode of your viewport to material preview, your box should appear all black – just like the created texture.

The UV-Layout can be exported under UV -> Export UV Layout.

Step 2 – Use Krita To Make a Texture

Import the UV-Layout into Krita with a canvas size of 256×256. Create a new layer beneath the UV-Layout and fill the background with a darker brown. Select the square areas in the center and paint them in a lighter tone. Feel free to add some details like a text saying ‘FRAGILE’ or paint an arrow pointing up.

Hide the UV-Layout layer before you export the result back into the texture file.
Reload your texture in Blender (Alt + R) and verify that everything looks correct.
Export the crate into an FBX file.

Step 3 – Create a Destruction Effect In Unreal Editor

Create a new First-Person blueprint project in Unreal Editor. Import the created FBX and the texture by simply dragging the corresponding icons into the editor.

Edit the imported material and make sure that the texture is sampled. Set Roughness to 0.9.
Go to the Plugins window and make sure ‘Apex Destruction’ is activated. Otherwise, the option to ‘Create Destructible Mesh’ will be missing.

Click on the imported static mesh and click on ‘Create Destructible Mesh’.

Open up the destructible mesh and play around with the ‘Cell Site Count’ to control the size of the resulting fragments. A higher number means smaller fragments.
Create a new actor called ‘Crate’. Replace its root component with a destructible component.
Link the component to your destructible mesh. Check ‘Simulate Physics’ on the component.
Make sure to apply radius damage to the mesh

Place the box in the level by dragging the actor into the viewport. Shoot at it.

Step 4 – Make It More Interesting

Hope that helps.

How To Get Started With Blender and Unreal Engine

Learning how to create simple models with Blender that you can actually use for game development might seem impossible to a lot of people, especially to programmers who don’t feel like they are artistically inclined. However, after +50h of practice, I found myself having the confidence to create simple game assets myself. Here is how I got started.

I stumbled upon a couple of very interesting Blender tutorials by Grant Abbitt on Youtube. He teaches very simple techniques for absolute beginners and his videos feel more or less like a mixture between painting tutorials a la Bob Ross and Lego instructions. These Beginner Exercises are very easy to follow but often ask you to try things out for yourself first before continuing with detailed commentary.

After finishing the first four beginner exercises, I started to look into creating an actually usable asset. This is when I jumped to the Low Poly Well Tutorial. This tutorial consists of three parts and yielded a very decent result. I especially liked how this tutorial challenged you to create some of the easier stuff yourself. This gets you into the right mindset by forcing you to think and plan ahead when modeling.

The well tutorial teaches you how to add different colors, bumps, and dents to your mesh in order to combat uniformity and to create a visually interesting result with a bit of character.

After finishing the well tutorial, I wanted to move on to something bigger – something that I could export to Unreal Engine, something I could animate and show off. I wanted to create a product that people would like and enjoy. The ideal guide to support that goal was the Sea Shack Tutorial. The tutorial consists of twelve parts but the actual geometry was modelled in the first six. The construction of the shack is briefly explained but you are left on your own after modeling the lower platform. The creation of twelve easy objects in the scene is skipped too. However, the shack and the other minor models should be pretty easy to recreate with the previous tutorials in mind.

The final result in Blender. I added a camera path with a little dip in the back to get the most out of the scene. There are some screen space reflection artifacts remaining that I was not able to fix.

Getting Your Assets Game Ready

In order to make the assets available in Unreal Editor I had to export the scene as an FBX file that can be easily imported. Joining all elements of the scene together enables you to easily transfer the whole scene layout as a single static mesh to Unreal Editor. Make sure to name all the materials you are using because those names are used to create material assets in Unreal Editor during import. Most material assets need at least a little tuning when it comes to shininess. Cloth materials require back-face culling to be deactivated as both sides of the mesh need to be rendered. The recreation of the water material needs most of your attention though.

The most complicated material to recreate in Unreal Editor is the water material. Make sure to set the render mode to Translucent and activate the checkbox next to Screen Space Reflections.
During the modeling process in Blender, some normals might have been flipped. Objects with flipped normals will not be rendered correctly due to back-face culling. You can check your normals by activating Face Orientation. Blue faces are rotated towards the camera and are fine while red faces are not. This can be fixed by pressing Alt + N -> Flip in Modeling mode.

After the initial import of the scene with all components joined together I removed the fish meshes from the Blender scene and exported a single fish mesh separately. I wrapped the fish mesh in a fish actor that is animated via Blueprints. The fish actor was then placed, scaled and rotated multiple times to replace all previously existing meshes. You need to do this for every additional element like the seaweed or the flag that you want to see animated.

The animation blueprint for fish moves and rotates the mesh slightly back and forth. The random time offset is helpful to prevent a uniform animation look.
I presented the final result from Unreal Engine on reddit to figure out the market appeal and received over 600 upvotes. The negative comments focused on the chosen coloration.

While I’m personally really happy with the result I do think that the scene and I might benefit from additional optimization:

  • This little animation currently requires 30 single color materials. This number could be vastly reduced by mapping a texture onto the mesh.
  • The walls of the shack consist of multiple individual boards. The number of vertices could be reduced by using a single simplified mesh and a normal map.
  • Bones and Rigging could be utilized to improve the fish animation.

Hope that helps.

A Beginner’s Guide To Rendering

Understanding computer graphics is hard. It is even harder to figure out where to start. This guide aims to provide a top-level understanding of common terms and processes that make pictures happen. The examples are implemented using Blender and Unreal Editor and do not require any programming or art skills.

Vertices

Vertices are an important building block of computer graphics. A vertex is a single point in a virtual space that can be implemented in multiple different ways. The most basic version of a vertex in a 3d space consists only of the values X, Y, Z that represent its position. Vertices are commonly used to define lists of triangles that represent a 3d mesh because triangles can be easily rendered by GPU programs called shader.

When working with 3d editing software like Blender you will be presented with quads instead of triangles as quads are easier to shape into complex models. The mesh will be automatically triangulated during export to be later used in your game engine.

Back-Face Culling

Triangles have a front-face and a back-face. Usually only triangles facing the player are rendered as this almost halves the number of triangles that have to be rendered on screen. This technique is called back-face culling and leverages the assumption that you shouldn’t be able to see the back-faces of solid 3D objects.

Back-face culling is off: The back-faces of this object are visible and take up valuable resources. This is typically unnecessary as most objects do not have holes in their mesh.
Back-face culling is on: The back-faces of this object are invisible and we render only the outside of the object as we assume that our objects typically don’t let us look inside of them.
The material settings of Unreal Editor allow you to deactivate back-face culling for each material.

UV-Mapping

The first common extension of vertices are a set of texture coordinates usually referred to as UV-coordinates and are used for a process that is called UV-mapping. The two values u and v are ranging from 0 to 1. They reference a point in the 2d space of an image with (0.5, 0.5) representing the center. If you create a triangle in 3d space with 3 distinct UV-coordinates you can visualize that triangle in the textures 2d space. The UV-coordinates for each rendered pixel of the triangle are interpolated and used to look up a specific pixel from a texture in a process called texture-sampling.

UV-coordinates are assigned to a mesh. A shader can use these coordinates to sample the texture.

Normal Maps

The combination of UV-mapping and texture-sampling can also be used to implement normal-maps to create more detailed models without using more vertices. Normal maps are used to ‘bend light with math’. This creates an illusion of bumps and dents that are missing from the mesh.

I created the texture by taking a picture of my coffee table and cropping it into square dimensions. The normal map was based on that texture and created with a process called baking normals using Blender. The added normal map creates the illusion of deep ridges that are not really there. Creating a mesh with that level of detail would require a lot more resources than just adding a normal map.

Texture Masks

UV-Mapping can also be used to implement texture-masks to enable color customization. Masking a texture is similar to setting up the texture itself. You assign texture coordinates to the 3d model and paint the areas you want to mask. The mask acts as a switch between the texture and a dynamically specified color on each rendered pixel. A common RGBA texture mask comes with 4 switches that enable you to blend and combine a total of 5 textures.

The colors of the marked areas of the mesh can be adjusted easily while preserving the rest of the texture. Masking is commonly used in character customization or to color code team members.

Vertex Color

Another common extension of vertices is the addition of a vertex color. A vertex color is usually represented by 1-4 values but can be even higher depending on the use case. Vertex color is used to mix and blend textures on terrains or walls that would otherwise look very stale. This is achieved by associating each value of the vertex color with a different texture and by blending accordingly. This effect works better with models that have lot of vertices as vertex coloring with very simple meshes does not allow for enough details.

The vertex painting tool in Unreal Editor enables level designer to paint right on the mesh.
A Quick Comparison
Vertex ColoringTexture Masking
– no additional texture required
– quality depends on vertex density
– information stored in vertices
– designed to create endless variations
– used for level design
– information stored in texture
– independent of underlying mesh
– typically one mask per object
– designed for dynamic coloring
– used for gameplay features
Vertex Coloring and Texture Masking both implement texture blending but have different use cases.

This was just a quick peak into the world of rendering techniques. Let me know what you want to see next.

Hope that helps.

What’s New with Apple in 2021?

I’m not a frequent user of Apple products but this years marketing event peaked even my interest. Apple introduced new products and focused on 3 talking points. The migration to their very own M1 chipset, colors, and being a company with a strong focus on the environment. Here are the products.

The iPhone 12 in Purple

The event starts off pretty weak. There is a new color for the iPhone 12. Great.

AirTag

The New iMac

Ted Lasso Season 2

We got to see a trailer of the new season of Ted Lasso! It’s a great show and a surprising reminder that Apple is still a content creator. I really enjoyed the first season but I am a little skeptical if the show’s concept can remain interesting throughout another run.

The New Apple TV

There is a new Apple TV with a bigger remote out. It can do 4k. Apple tried to sell the addition of the power button on the remote as an innovation. Yes, it was missing on the current models. What a joke.

The New iPad Pro

Apparently there is a new iPad Pro. It runs on the new M1 chipset and has a wide-angle lens that tracks you during video calls. I’m not sure what professionals are using iPads, but they seem to be out there.

Hope that helps.

Review of ASTRONEER

ASTRONEER is a 3rd person sandbox game that lets you explore seven different worlds with fully destructible terrains and an innovative base building system that lets you link different modules together. You need to collect resources, build up a base and research new technologies. These technologies allow you to travel between worlds, gather new resources, and to build an even bigger base that is capable of manufacturing complex materials. I played this game for over 55h before I reached the official end of the game, here is what I thought.

This is my base on the starting world. There is only a limited number of buildings available in the game with the majority of buildings being dedicated to energy production and resource storage.

Resources

You spent most of your time gathering resources. The terrain is fully destructible and your digging tool can be modified with different power booster for especially hard rock or base building. The digging in underground caverns reminded me a lot of Minecraft. You will find plenty of resources in the terrain which will be transferred into your backpack while digging.

Gathering Resources in ASTRONEER is interesting as it deforms the terrain and you never know how many resources are hidden underground. It leaves ugly holes around your base though.

Your inventory is pretty small and will become even smaller if you researched quality of life improvements like work lights, an O2 tank or batteries as they share the same space. You can involve vehicles on your resource expeditions but they are usually really hard to handle in caverns and only of limited use for resource hauling outside of the beaten path. Drilling with vehicles is an absolute nightmare. This leaves you with the option to spent the majority of your time building reliable roads or requires you to spent a lot of time backtracking. Something like an elevator would have been fun here.

Your final gear ends up using a majority of your backpack space. This leaves you with only 4 free slots.

Base Building

The platform provides large and medium sockets for a furnace and additional storage.

The base building system is pretty neat. There are 3 different socket types in the game. The small sockets store individual resources and items. They are the same ones you have in your inventory. The medium sockets can hold medium items and the the large sockets can hold large items. Each building requires a specific socket and these sockets are provided by platforms you place onto the ground. This socket principle is pretty self-explanatory and it’s pretty fun to ‘click’ your base together. You have to connect your buildings with electrical cables to utilize solar or wind power. Wind generator and solar panels have different output levels on different worlds so you need to adjust your outpost composition according to that. As those energy types do not continuously produce energy you have to store the energy in batteries to consistently provide energy for your base. This makes energy management a lot more interesting as you have to account for spikes in energy consumption. The Factorio vibes are not as strong as in Satisfactory but you can clearly feel the inspiration the first time you build an automatic ARM – and this is despite the lack of conveyer belts. The game offers base automation but the required amount of resources to finish the game does not make it really necessary to go beyond the absolute basics.

Exploration

The early exploration in the early part of the game is fun. Your O2 supply is limited and fresh O2 is provided by a network of tethers. You are therefore limited to the range of your tether network when exploring during the first hours of the game. You can expand your network by placing new tethers which are pretty cheap to make. While some might feel like this is very restrictive I appreciate the tether network to guide me back to my home base. At some point you will have vehicles available that enable you to roam around more freely without tethers as they serve as a mobile supply for O2. The untamed wilderness is a big damper on the fun exploration with vehicles though, as your vehicle frequently flips or gets constantly stuck in the environment. You really have to pave roads everywhere.

The tethers are your lifeline. They provide you with necessary oxygen to survive. They show you where you have already been and how to get back – that is pretty good game design.

There are little ‘puzzle boxes’ sprinkled all over the world that require you to provide a certain resource or a certain amount of energy in exchange for some research points. Crashed space ships have useful resources or items inside. While this is really interesting in the first couple of hours, running around on the surface gets boring rather quickly. As you dig yourself to the core of the 2nd or 3rd planet you will grow increasingly disengaged with the world in front of you. There are huge underground caverns with interesting looking elements that do not offer anything of value to the games progression but a couple of research points. At around 1/3 of the game I just ignored all of that beauty. Games like Subnautica offered new resources at every depth level and this made exploration way more rewarding as you actually had to engage with your new environment.

On my quest to reach the core I usually ignored all caverns by simply digging a long tunnel all the way down to the core. This took a lot of time and wasn’t that fun.

The best part of the exploration aspect is building rockets! It’s a lot of fun to prepare for a trip to another planet or moon. You have to decide what to take with you to get your outpost running as your storage capacity is very limited and crucial resources might not be readily available at your destination. Visiting new planets is necessary to obtain special resources like gases or minerals that are vital to your technological progression.

There are three different shuttles available in the game. They all use the same type of thruster. I actually never used the large shuttle as the medium shuttle had just enough storage space to work with.

Gameplay

The game is guided by missions which tell you what to do next. These missions are optional but seem to be tailored towards an ideal progression. You have to activate a shrine on the planet’s surface and you have to then dig towards the center of planet to activate its core. You do that seven times with little to no meaningful difference. Sometimes the terrain requires a stronger drill. Sometimes there is a hyper aggressive plant. Sometimes there is less wind or more sunlight. Sometimes a crucial resources is a bit rare – that is it. I would have loved some more meaningful variation. ASTRONEER can be played in multiplayer and supports sessions with up to 4 players.

You can create outposts on different worlds to gather and process new types of resources.

Conclusion: 4/5

ProCon
+ fun base building
+ fun power management
+ building rockets
– main quest is very repetitive
– no incentive to explore the majority of caverns
– gathering resources with vehicles is painful
– all worlds feel the same

Hope that helps.

« Older posts

© 2021 Schifty's Blog

Theme by Anders NorenUp ↑