Search This Blog

Thursday, June 30, 2016

Weekly Status: 6/30 Current Events

So if you haven't seen it, I've added a new (somewhat popular - finally got to be a top weekly seller) item to the store:

My 1024px High Quality Dungeon Terrain - I got the idea for an isometric top down game and though of this concept where instead of making every single wall you could literally just use terrain to prototype your levels.  It came out better than expected!

Hard to believe this isn't using anything but terrain right?

So I also added another one, a Sci-Fi terrain as shown below:

And added it to a pack as well; so there's a whole mess of new goodies at my store here:

I also have a new tutorial in the works on advanced lighting techniques.  Here's a teaser pic:

This isn't even a good one!

So looking forward to finishing up some of these posts and what not and starting up my own projects again.

Sunday, June 26, 2016

Technique Training: Level building, Basic

Welcome to my first Technique Training - how to build a basic level.  In this example we'll be building a detailed and moderately realistic city scene; specifically a day and night version.  We'll be starting with the day version and moving to night in the second lesson (which will combine an upcoming lesson on advanced lighting techniques).

Objects used:  I have a lot of objects but I wanted to keep it as accessible as possible.  There are some unique elements such as VA's playground set but that can be replaced with whatever you prefer.  The vast bulk of this will be done with TGC's city set, which is a bit dated but fits the bill for a simple and rapid level build which looks like a city.  I also use my 1024px HQ Road Terrain set.

Saving and Build Order

Let's start with the most basic element here; saving.  Unfortunately GG lacks a sophisticated CVS system; so you have to basically do it yourself. The reason for this is because invariably as you are designing you will run into problems.  It's often a lot easier to simply reload a save than it is to try to fix the issue after it's been done.  Some tricks are to use lots of folders.  To save in chunks - like every day, or every major step along the way.  Save them as different filenames so that you can identify each phase of development.
I typically will use:
and Production as my folder names.  The levels are built in that order; specifically Basic models are put down, and shape is put first.  Then detail is added.  After sufficient environmental detail is added, I then will add entities and lighting (in that order).

I try not to make too many as these FPM files can get rather large. As you can see, our example file (shown above) is 57mb.  That's nothing to sneeze at when you're making 10-15 copies of the same file. 

Fleshing out the basics

So when you're beginning at your rather huge, empty canvas you're going to be wondering 'what exactly do I do here?'.  Well, first, you're going to want to have some sort of plan as to what you are doing. In our case, we're making a reasonably believable city scene.  We want to start by laying out all the big pieces first.  Remember that the larger they are, the more it will attract the player's attention.  They will naturally gravitate towards larger pieces so try to set the larger landmarks as a sort of 'endpoint destination' for the player.  In my case, they'll simply be heading 'to the horizon'.  They won't get there of course, but it's important to set that as the goal. 

There.  Now you can see the start marker and a clear line going from one position to the other.  At the far end of the map we have large, low-poly models on an elevated platform.  So let's break this down:
        1) Large models, again, set the destination.
        2) The elevated platform gives a sense of distance and depth.  It also conceals the edge of the world.
        3) Low Poly models ensure that you will not be chewing up vital CPU resources since these objects
            be in the player's vision the entire time.

What is a low poly model?  A low poly model means low polygon count.  Polygons are effectively how models are constructed and the more of them there are, the more detailed they are - but at the expense of vital memory and CPU resources.  On top of that, there's a massive amount of free models available in the Game Guru community but a significant portion are flat-out too old to use as foreground elements.  They make great background elements though!  So never turn down free items and always try to see the intrinsic value to each piece.  

As we continue, we'll be adding more and more larger pieces to help flesh out the player's opening view.

I ended up having to remove the building on the right with the white top later, due to some issues with it disappearing mid-level. As you can see on their own these buildings are very bland.  I also placed some simple cobblestone panels underneath the buildings to help build a sidewalk onto.  All of this is simple level building at it's finest.  The white dashed lines are a set of 'road lines' that go well with my road terrain set and were provided by VA's store.  I paid for them as they're definitely worth it.

Details Matter

One of the problems with a lot of the offerings I see typically produced by the Game-Guru and game hobbyist community at large is a severe lack of focus on details.  Little things matter.  The better you dress up the scene, the more immersive it is for the gamer walking through it.  It's important to provide a consistency in terms of art style, methods, and colors, whenever possible.

As stated before I was using the cobblestone platforms included with TGC City Pack.  They however do not transition well on their own and it's not always suitable to use the included curbs.  
Here you see a typical problem with models not transitioning well.

My solution was to use the terrain system by raising a small corner to slightly overlap...
Then using the leveler tool to give it a nice uniform lip.  I then matched the background to the color of the cobblestone as best as I could (this is using default terrain at this point)

Details like this are small, but really add to the totality of a scene when a player encounters it.

Use small objects really provides a greater sense of realism for the player.  It's one thing to have a city full of large buildings... it's another to have a city street with lines, manholes, sewer grates, curbs, trash bins, etc.

This is only scratching the surface of detailing a level.

Blank areas also can act as a draw, but usually not in a good way.  if you forget to detail a section, it will stand out like a sore thumb as something that just looks unprofessional and unclean.  Use blank areas instead to draw the player's attention to places they should go, directions to explore.

Take for instance the lot to the right.  It's not going to be a player area per-se but I can't just leave it empty.  So I decided to make it an overgrown lot with some weeds, trash, fencing, etc. 

Looks a bit better than a simple green rectangle, but still needs more.
So how about some vegetation?

Note one really important thing here; my terrain is very asymmetrical.  It's not the same two buildings, repeated, in a perfect grid.  The human brain sees symmetry as very false.  Asymmetry is how you can add that extra touch of realism to your games.

Note the slight cant on the upper right box.  This type of thing seems far more believable than a simple 'here's a stack of boxes'.

 Another, more subtle level of asymmetry - lowering the height of the stone platform so the curb sits slightly above it.  This barest of reliefs adds a much greater sense of immersion.

It's important to provide landmarks for the player to gravitate to.  These are typically areas with higher level of detail, variations in object quantity/type, and colors.  You also want to do this to highlight areas of interest not necessarily relevant to the main plot - for instance, a secret. 

The red light on the left draws them in, the right side is the real prize.
Don't forget to add nice finishes like plants, vegetation, cars, etc.

There!  Now we have the perfect area to stash some goodies for the more intrepid player as a reward for their curiosity.

Remember to work with the tools you have.  Extra models can be repurposed for small walkways, fencing, etc.

Now we've setup a very basic scene.  I don't feel this is anywhere closed to finished but we'll get more into it as we progress further through our tutorials in future installments.  Let's take a look at how it seems on the ground.

Not bad for 45 minutes of work!

We still need a lot more work to make this complete, but the basic 'welcome to the area' scene is pretty well set.  We'll continue on in our next installment shortly!  We still have to add more details; more lighting, shadows, and of course enemies/entities.

See you soon!

Wednesday, June 22, 2016

Latest updates

I've got a few things coming:

1) a review of oldpman's carnival set
2) a new Technique Evaluation:  "Advanced lighting"
3) another new Technique Evaluation: "Basic level design"

Expect them within a week or so, maybe even the next few days as time permits.

Thursday, June 16, 2016

Technique Evaluation: GameGuru Interior Lighting.

It's been a while since I've posted something of value to this blog, so I figured it was high time to flex my gamedev muscles, as it were.

Now Game Guru is not breaking any kind of records for most amazing engine, but you can do some very impressive things with it's rather primitive system.  However if you don't know what to do, how to do it, and what buttons to push you're going to end up with something that is about as far from AAA as you can imagine.

For the purposes of this demonstration, I'll be using Voodoo's free Sci-fi wall kit.  You can find it here:  You'll need a game-guru forum account.

I've made as simple rectangular room consisting of a door, a fake door, and 4 corner pieces as you can see:

Not much to see here, yet.

The interior is pretty plain too:

 Definitely not much to look at.

So at this point, like a good little gamedev you add clutter elements and discover, to your dismay, that it looks... tremendously amateurish.

Ah yes, nothing says "Bad indy game" like completely absent shadows.

So you check your default lighting settings in Game-guru and discover, to your shock, that you have shadows turned all the way up!  How can this be?!
Default settings, ahoy!

Now I'm no fan of the default settings; my previous Technical Evaluation "Lighting in Game Guru", specifically went over ways to improve and unify scenes to bring better quality to your games.   


Now let's pretend you read the previous article and configured your lighting settings with some bare bones fog, better ambient/surface levels, etc.

 You can hardly tell the difference, it just looks darker.

While things don't seem to have changed much, you've already set the stage in the most important ways possible.  One major pain of the stock settings is the surface levels being too light and literally reflecting the generated sun's light INDOORS.  Scroll back up and look at that first picture.  See that far left wall... how much brighter it is?  That's because it's reflecting the sun's light, even though it's inside.

To fix this we have to configure indoor lighting.  We start with the above - slight fog, unified settings, better ambient/surface values, etc.

Then we have to configure the component pieces (walls, specifically) to be static objects.  This is because we'll be using static lighting and the built in lightmapper.

Green is not your friend here. 

At this point once you go to the properties on the wall objects you'll see a screen like this.  The green means it's a dynamic object.  Since this is a wall, it should be static.  Choose static and select YES .. then go down to Physics On and choose NO ... this combination will prime the pump, so to speak, for lightmapping.

Next we need to add an interior light.  Go to your 'markers' tab on the left of game guru and choose a light source of the color you prefer.  I chose white. Place these objects carefully within the perimeter of the room.

The editor's tendency to select irrelevant objects can make this a learned skill.

 Make sure at this point you go to the properties on said light object and set it to static as well by setting it's static value to YES.  The process is identical to what you did with the bunker pieces.  One interesting thing about this is even though you see the light in the editor from the static light, running the game right now will have zero interior lighting.  This is because static lights ONLY function in conjunction with the lightmapper.

Please note in the above picture there's still NO INTERIOR SHADOWS. In order for you to get interior shadows, you must use the lightmapper.  All we've done to this point is set the stage for that to happen.

To begin lightmapping, open your level and press F1,F2,F3, or F4.  F1 is the fastest, F4 is the longest.  In order to do proper interior lighting, you must use F3 or F4; F1 and F2 don't seem to do much of anything with respect to interior lighting.

Depending on your level size this can take between a minute or a day and a half.

Hopefully your lightmapping went well the first time and you won't have to do it again.  I had to add an additional light over the chairs and reposition it two or three times before I got the desired result as seen below:

Now we're talking!

As you can see, the lighting is significantly improved.  Shadows add depth and realism, lighting takes on a more natural look.  There's a few caveats - some objects don't produce shadows properly; flashlights never completely get rid of lightmapped shadows, etc.  But overall, it's a massive improvement.  Don't take my word for it - just check out the comparison shot below:

It's not even close. 

This will give you beautiful interior lighting which you can control the intensity of the shadows via the slider on the tab-tab settings screen.   Again, you may need to play with the lighting a few times, or the level color/etc but it doesn't take too much work to further improve it from the above to a finalized version such as the one below:

While you're not going to fight 300 million dollar budgets and win, this certainly is a far cry superior to the initial results; the above is my attempt to create a dark, musty spaceship that seemed like it'd been abandoned for a long time.  Aside from the blood sticking out too much, I'm tremendously pleased with the results.  Hopefully this has been of help to you.  If there's anything you learned here, please feel free to tell me in the comments.

Thanks and see ya soon!


New resource for Game-Guru users.

As always, the small but strong community delivers in spades with GG.

The above link is a work in progress to convert many of the old packs into freely available (with permission) downloads for GG and the old FPSC.  Check it out!

Also - still waiting on my terrain project to get approved.  It's driving me nuts, been almost two weeks now due to an error in the original zip.  SIGH.