Material/Texture woes…

I’ve been working with the extremely awesome material generators from InfinityPBR.  However, I can’t quite figure this issue out.  In the demo scene provided with the generators (and sitting inside my staging project), the walls looks great.  When I export them, bring them into my game project and attach them to my walls, they look awful.  So…  now I need to figure out what I’m doing wrong.

In staging:

screen-shot-2016-10-25-at-11-01-06-am

In game project:

screen-shot-2016-10-25-at-11-27-16-am screen-shot-2016-10-25-at-10-25-38-am screen-shot-2016-10-25-at-10-26-22-am

Gelatinous Cubes – Congealing and Melting

As soon as I started understanding BlendShape options for some of these models, I really wanted to dig into programmatically using them for some interesting effects.  First up is a gelatinous cube that starts out melted and waits for a player to get into proximity.  Currently, it only moves to its idle animation, but there will be FIERCE combat eventually.  And not all gel-creatures will start in this state.  Some will likely roam around, hungry for adventurers.  Some might fall from the ceiling with a plop, or squish out of a hole.  And this is just one type of critter that will be around to sway our Labyrintheer from his or her mission.

Big Changes, Small Update

So, after a considerable amount of back and forth, I’ve decided to go with a fully 3D world and a fixed isometric camera.  The 2D method was intriguing, but ran up against a few issues:

  1. Physics in 2D isn’t quite as…  real?  I’m sure 2D physics can be made to feel real to some degree, but our worldly physics exists in a 3D world, and I just wasn’t a fan of the flat feeling.
  2. Art in 2D is harder to make and get made.  This one surprised me the most.  It seems far easier to create and find 3D models and assets than 2D.  It’s even easier to find 3D modelers than it is to find sprite artists.
  3. Partly related to #1, lighting, LoS and other similar bits are much more difficult in 2D (for me, at least).  These things sort of exist naturally in 3D worldspace.  They seem very shoe-horned into 2D.

So, I’ve found some tools and assets that are helping me move this along.  After spending months (literally) trying different methods to create the levels, I’ve settled on a tool crafted by Code Respawn called Dungeon Architect.  It’s a fairly extensible dungeon/level generation tool that is giving me playable spaces out of the box.  Over time I will need to modify the underlying code a bit, but for now it is a HUGE time saver.  If you’re interested in checking it out, they also make a version for the Unreal Engine here.

One of my other struggles was art.  I am not an artist.  I can modify art like crazy, but aside from my past experience as a semi-professional photographer, creation of new art is difficult for me.  That led to a big concern; I could pay thousands of dollars that I don’t currently have to artists to create fresh new content, or I could find cheap, existing assets and have a game that looks like other games that use those assets.  Neither are great options.  Lo and behold, a third option presented itself via the absolutely amazing and customizable assets from InfinityPBR.  Tons of 3D models, materials and substances that are extremely malleable right inside the Unity engine.  The brick wall in the image below is created from their Brick Generator.  The options are incredible enough that I spent an entire evening – literally hours – making, remaking, and fine-tuning a wall just the way I wanted it.  The image below isn’t great (it’s not runtime, it looks better in the game), but it’s a fine example of some of the stuff from InfinityPBR.  The torch is also theirs, with a few particle effects and a point light added for effect.

If you are trying to break into game development and need assets, I cannot recommend InfinityPBR highly enough.  The assets range from US$45-60 each, but each asset isn’t a static thing – it’s a small library of things.  They also offer a $25/package option to pick up every new package (seems like a couple each month) at a HUGE discount the day they come out, before they are available on the Unity store.  Even if you get some assets you might not use now, it never hurts to have a great 3D library, and at that price you really cannot go wrong.

Wood Torch with Particles
Wood Torch with Particles

Another day, another sizetest

So there’s been some refactoring to how rooms are created, a new set of room tiles made a couple of weeks ago, the addition of some more realistic torch placement in the deep dark cave and it seemed like it was time to run my ‘SIZETEST’ map again just to get a feel for things.

The ‘SIZETEST’ is set to a base of 2500 rooms, far larger than anything expected in the finished game.  Currently, it ends up being 2674 rooms in the cave biome.  The base size is used to generate a rough estimate of a given maze/dungeon size, but other factors and randomizations will throw that off by a factor.  At any rate, clearly the refactoring has been good.  With only general logging enabled, it now only takes ~3 seconds to create that 2674 room behemoth pictured below.

That leads me to another thing that my day job should’ve taught me, but that somehow had been slipping my mind of late – logging is a resource hog.  Turning on the full compliment of logging nearly doubles the generation time.  Still, even with logging now, it takes ~6 seconds with logging.  Previously, the SIZETEST was taking closer to ~35-45 seconds to generate.  This is pleasing.

SIZETEST

Same map without the room-stage color coding, so you can see the lighting placement.

Screen Shot 2016-08-14 at 8.26.19 PM