Jun 21 2013

Another Digression…

GrenadeMagnet

Not going to comment on it right now other than to say it turned out to be harder than it looks:

 

Results from a naive 2d iso surface generator.  Lines are properly closed loops with normals.

Results from a naive 2d iso surface generator. Lines are properly closed loops with normals.


Nov 5 2012

Context Switch: Minor Progress on Tile Slider

GrenadeMagnet

I decided to switch gears again — definitely the mark of a successful developer, no?  Here’s the Tile Slider game prototype in action:

It’s got a couple of gameplay element indicators present.  First is the color change for crossing a tile, an “enemy” moving about the playfield, and the ability to speed up the player object.

Since I’ve made some progress, it’s only fair that I  do something drastic like moving off of the XNA library for this game.  I considered going to Unity or even Moai but decided to man up and start putting my own 2D engine together.  I’m doing this for a couple of reasons:

  1. Get an entity/component system up and running.  This will be used for everything from the player object to the UI, so I need to get it going now.
  2. XNA isn’t supported in the latest MSFT toolchains.
  3. Reasons.

I’ll be porting to C++/DirectXTK as an interim step and then modifying/replacing DXTK with something that can run on non MSFT platforms in the future.


Sep 4 2012

Making Mountains

GrenadeMagnet

In the spirit of actually getting to gameplay and making it look good (not necessarily in that order), I put together a spline-based mountain/volcano generator.  The first results were encouraging but rather sterile:

Initial results for spline based terrain feature creation.

First attempt. Recognizable but too smooth.

In order to make it look a bit more natural, I added a couple of sets of simplex noise based offsets to the spline data.  Looking better:

More variation but still not a good looking play-scape.

Added some noise. Looks more like what I’m after but needs adjustment.

I considered adjusting the spline interpolation itself using another set of 1-d noise to be applied according to the angle from a reference angle to make it a bit less circular.  I may still do that in the future but I was able to get a proto-typable level just by adjusting the spline control points:

Add noise, adjust the "beach" area of the spline a bit, and voila!

Expanding the distance between the mountain base and shoreline made a lot of difference.

Next up is getting a smooth surface fitted to the data for both the mountain generator and the previous abstract terrain generator.  Then comes feature (forest, cave, resource) generation followed by a better camera with collision detection.

 


Jun 25 2012

I Seem to Have Gotten Distracted…

GrenadeMagnet

I set aside the tile-slider game for a little bit so I could get a fresh look at it and started tinkering around with Minecraft-esque terrain generation. Pretty primitive right now. It’s enough to validate geometry generation and to start looking at performance.

Textures are a stand-in from the Spahx PureBDCraft texture pack (http://bdcraft.net) until I get my own put together.  For now I’m using the Ogre3D TutorialApplication framework.  That’ll probably change as I move to allow a lot of the work to be done on the GPU via DX11 compute shader and/or OpenCL.

I’m not sure where I’m going with this but I’m thinking a cross of Castles II and DwarfFortress right now…


Apr 13 2012

First Prototype Screen

GrenadeMagnet

Not a lot of action yet, but the game engine is reaching some level of functionality:

Prototype Screenshot

Right now, the player object (the arrow)  will proceed around the track segments which can be moved like a simple sliding tile puzzle.  The tiles with a tan background can’t be moved.  If you reach a dead end, the board and player object reset themselves and you start again.

I’m currently investigating possibilities for actual gameplay objectives.  A few possibilities are:

  1. Traverse every track section as quickly as possible.
  2. Cross a series of stationary checkpoints.  Checkpoints could be on the locked-down tiles or on movable tiles.
  3. Collect objects on the tracks.  Could be stationary, could be moving.
  4. Avoid the enemy.  A set of other objects moving along the tracks must be avoided.

Or some combination there-in.

In the immediate future, I’ll be looking at the following:

  1. Multiple objects moving along the track.
  2. Stationary objects on track sections (checkpoints, powerups, etc)
  3. Collision detection for items 1. and 2.
  4. First re-write of the tile array and moving object code.  Their interaction is “suboptimal” at this point and I need to detach them from one another a bit.
  5. As part of the tile array rewrite, I’d like to add a track highlight that shows the active track pieces starting from a tile/track/direction combination to show the current path to be followed by an entity.

This should cover most of my time to work on this project for the next six weeks or so.  Let’s see if I can hold to the schedule…


Mar 7 2012

[Standard I’ll Get To This Later Boilerplate]

GrenadeMagnet

This temporary blog will track my progress in creating a game from the first prototypes (currently in progress), gameplay brainstorms, all the way through debugging and honing the game to something releasable.

I’m currently prototyping using XNA but will be moving to something cross-platform compatible after gameplay starts to come together. I might resurrect the  XNA version for windows phone/XBLIG at some point) as well.

That’s all until I get a chance to update with something substantial (which may never happen).