Home Artists Posts Import Register

Content

Good day everyone! The two blog posts that came before this we’re all about showing new ideas and concepts that we wanted to explore. For the past two weeks, we've been working on implementing said ideas and doing some general polish to the game. Before we dive in, it is important to know that this Blog Post has not been proofread by anybody in the team. I'm taking my chances with this one and I'm not afraid of the potential outcome. Lets go!

Reminder: Gifs do not load on the mobile app.


Mech Enemy type - High Poly

We’ve shown a rough sketch of the Mech a while ago and have continued working on it. Here is what the current high poly looks like


Paper Effects

One thing that I was never quite satisfied with in earlier testing builds, was the way how paper reacts to being shot. Our visual design rules have changed quite a fair bit over the years, so a poorly made 16x16 effect sprite would no longer cut it. It felt out of place compared to anything else in the world and it always felt jarring. I redid the sprite work and made the paper more realistic. It’s also completely interactive!

Behold, pieces of paper!

It doesn’t stop there though! We try to add as many simulations as we can when it comes to special effects and particles. Once pieces of paper have hit the floor, the footsteps of you and your enemy will kick it back up the air.

This was surprisingly challenging. Especially because you want to make sure that the frame rate does not tank once all kinds of particles are flying through the air in combat. With some clever clustering, I think I managed to achieve a look that looks both believable and performance friendly.


Engineer Rework

As mentioned in a previous blog post, we were forced to re-use our enemy models and color swap them in order to make them visually distinct. Now that we have a proper budget, we can make separate models for our enemy types. A WIP shot of the engineer was shown last time, but the model has been completed and is currently being rendered into the game!


Performance

As usual, we try to optimize GZDoom as much as we can to ensure that Selaco runs well on older hardware. Cockatrice has been diving into the engine and made a bunch of tweaks to how lights are handled.

On top of actors now being able to ‘sleep’ (which makes them ignore the tick system of the engine and thus saves a ton of CPU performance), we’ve also made it so that smaller lights no longer cast a shadow by default. For whatever reason, GZDoom makes it so that every light in the scene is attempting to calculate a shadowmap, regardless of whether not said light actually needs to. With our heavy emphasis on dynamic lights to fill the scenes, this quickly became an issue. We don't want 40 different small lights in a single area to cast a shadow, especially when there is simmply no benefit for it due to a lack of one-sided linedefs to even cast a shadow for, that’s insane! If you can’t see them, why spend precious hardware resources on it? The updated system makes it so that every light source smaller than 48 units automatically ignores shadow map calculations. On top of that, we have updated the editor to allow level designers to disable shadow maps manually from every light source.

We are not entirely sure why GZDoom does not allow level designers this kind of control, especially given how often GZDoom is considered to be ‘unoptimized’ by its users. Perhaps someone can elaborate in the comments.

Here is a framerate comparison between the current Pre-Demo test version and the most recent updated build.

Outdated build (Vanilla GZDoom. this version has no ‘Sleep’ function, outdated janky code and all lights cast shadows at all times):

New build (Selaco’s GZDoom. Added Sleep state for actors, optimized outdated code for improved performance, smaller lights no longer cast shadows):

The gains for this are massive!


Intermission Degradation

(Full resolution shown in our Discord Server. #Patreon-Showcase)

Some artwork of our hero. We have some fun ideas in regards to the Intermission Screen. Hopefully we can show that off in the next blog post!


Stats

We have added in-depth statistics that can be accessed from your wrist computer. The goal is to make it track as much as humanly possible. Want to know how many sandwiches you’ve eaten? How many light switches have you been pressing? Or maybe how often you made your character burp due to eating too much? It’s all here!

Here is what the stat screen (and the wrist computer in general) currently look like. All windows can be closed, resized, dragged around and what not. Just some GZDoom magic done by Cockatrice.

Mind you that this is very WIP. You might see some weird quirks or errors in the stats.


Conclusion

Solid progress on a number of things as usual! My goal for the upcoming two weeks is to further improve AI and do some mapping. Cockatrice is going to continue his on-going efforts to improve GZDoom as an engine and Wrist Computer, the artists will continue to kick all kinds of ass like they usually do. Things are going well! I'm very excited to see what everybody comes up with.

To close things off, here’s the Employee of the Month.

Comments

Anonymous

niiiiiiiiiiiiice :_D

icezolation

*pets the employee of the month*