March 2021

Destruction and DNA System refinements, traffic AI, crowd simulations, and Hoomans 2.0.

Destruction Updates

Pigeons fear nothing.

This month we wrapped up some work on our destruction system. Fragments are now more natural looking, with jagged edges and junk sticking out of them. They still have roughly box-like shapes for physics optimization, but once we add in the particle VFX it should be quite convincing.

We use explosive balls of hot garbage to test the destruction engine… cuz why not?

Even at this early stage of development, it’s already a lot of fun to just fly around and destroy things randomly! I can only imagine how awesome it will all be once we finish it.

Nanobots repairing partially damaged buildings (timeframe is shortened for preview)

On the programming side of things, we made some important updates for performance, such as building repairs. After a damaged building is out-of-sight, or far enough away for a time, it will eventually get repaired by the city’s nanobots. (Hey, if Marvel can make silly excuses for inexplicable things, then so can we!)

DNA System

Our “DNA System” in action…

We wrapped up work on something we call the “DNA System.” In a nutshell, this allows us to build super flexible gameplay mechanics—like granting the player fire breath and explosive turds when they eat a spicy burrito, making NPCs gain acid-spitting abilities and moo like cows, or suddenly giving the gift of flight to a garbage can, as seen here.

This is super important because in Pigeon Simulator we plan on having a very wide variety of wacky abilities for you to experiment with, and we needed a way to ensure that all this madness could interact properly. Exploring and discovering new abilities to experiment with may be a big part of the game.

Eventually we’ll put all this power into the hands of an “AI Storyteller” and there’s no telling what might happen then!

Roads & Traffic

Some of our AI drivers are a bit… reckless.

Some of our AI drivers are a bit… reckless.

We made major progress on our road and traffic systems this month! Roads are the first thing generated for each level, and then we spawn everything else based off of that, so getting the roads right is important.

We swapped all of the placeholder meshes with a nice-looking, modular set of tiles that includes proper sidewalks, intersections, and end caps. Getting randomly generated, curvy roads to play nice together was no easy task, but we eventually accomplished our goal and have a nice foundation for expansion.

Pigeon admiring the beautiful, procedurally generated buildings and roads.

Pigeon admiring the beautiful, procedurally generated buildings and roads.

Once the roads were in place, we built an AI Traffic System to push vehicles around the city. Since everything is physics-based, this proved to be far more challenging than we anticipated!

Physics-driven traffic can be full of surprises.  Check out Dean’s awesome write-up about this stuff in the link above!

Physics-driven traffic can be full of surprises. Check out Dean’s awesome write-up about this stuff in the link above!

Our initial traffic AI was full of dangerous drivers. There were crashes and pile-ups all the time. Nobody wanted to stay in their lane… you know, a little too much like real life? As the number of vehicles spawned increased, so did the casualties.

Pigeon laughing at the terrible drivers.

Pigeon laughing at the terrible drivers.

But eventually we got everything under control and they all drive about like good little citizens. We even added in some logic to manage traffic lights, and avoiding random obstacles like debris falling in the streets from massive pigeon mayhem.

100 accident-free cars!

100 accident-free cars!

Crowds

Excuse me… pardon me… excuse me… coming through…

Excuse me… pardon me… excuse me… coming through…

Work has begun on crowd simulations! After all, you can’t make a city feel truly alive without plenty of pedestrians hustling and bustling about.

This is no easy task though. Each pedestrian requires special things, like point-to-point navigation, collision detection, and realtime obstacle avoidance—not to mention more advanced AI features like running away scared or attacking the pigeon that just pooped on them!

Lots more work to be done here, but we’ve already made great strides in being able to render a large amount of characters on screen at once, and give them some basic behaviors.

Hoomans 2.0

Creep factor reduced

Creep factor reduced

We gave the human models a nice facelift this month. We scaled back some of the over-exaggerations, while still maintaining some of the stylized elements we wanted. Most notably the eyes and face. Overall they’ve got much less “creep factor”… but they’re still just asking to be pooped on by a pigeon.

skin materials.jpg

Additionally, we updated their materials to handle any color range and ensure each location feels like it has a diverse population. And we do mean any color, as seen below….

Will there be a city full of little blue men?  Maybe

Will there be a city full of little blue men? Maybe

Drones

Base drone concept

Base drone concept

We prototyped some cool drone concepts this month, and began building some basic AI for flying NPCs. We’re toying with the idea of randomly generating some NPCs like this, or “leveling them up” to be more and more menacing as the game progresses.

Too many guns?  Orrrr not enough

Too many guns? Orrrr not enough

Then we worked on giving these little drones some brains. Our old flying NPCs would just move directly towards a target, driving right into buildings like idiots. Now they have some brains… though we still have a lot of work to do to make them actually attack the player, flee, etc.

3D AI navigation is a complex task, but we’re off to a good start!

Some day the flying enemies will be quite menacing… right now the pigeon just watches and laughs.

Interior Props

I bet there’s at least $2.50 in change under those cushions.

I bet there’s at least $2.50 in change under those cushions.

Right now all of our buildings are full of empty floors, but we aim to change that soon! We’ve started building up a collection of interior props, centered around various themes, such as: office, residential, industrial, etc. These will be spawned into various sets to fill out the building interiors and make them feel full of life.

“How big should the microwave be?” … “I don’t know… big enough to fit a pigeon?”

“How big should the microwave be?” … “I don’t know… big enough to fit a pigeon?”

Most of the props in Pigeon Simulator share a common set of shaders and materials, and have simple collision geometry. This means we can have lots of them in a scene and it can still run fast!

mechanic rigging learning.png

Though some of our industrial props are a little more advanced—and maybe even scary—like this industrial robot arm.

more indoor props.png

What Else?

Well.. I don’t want to give everything away!

We’ve built a unique HUD for the game, with some fun game mechanics around that. I’d show some screenshots, but I feel like even that shows too much right now. We’ve started working on our nature assets as well, to bring a little more green into the urban jungle… and we’ve started designing our storytelling system….

Okay, fine… one more thing… here’s a little snip of some funny ability icons we made.

player cluster doodles 2.png