Game Development Community

TGB Isometric Add-On Pack - Part 1

by Neo Binedell · 05/11/2006 (2:28 pm) · 74 comments

www.neoji.co.za/neo/gg/logo50x50bc.gif

TGB Isometric Add-On Pack

Just to let everyone know that I'm knee deep in isometric code at the moment for a brand new iso pack written in C++.

For those that saw the quick and dirty atrocious interleaved rendering example I did, relax, this one's written from the ground up to be as clean and simple as it can possibly be.

I have done a lot of research and all the implementations Ive seen are so convoluted not to mention a nightmare to make sense of and mostly just plain suck. They are needlessly complex requiring one to do all calcs in iso space (and some of the ugliest code I've ever seen in my life), etc.

So I started from scratch and I think I just might succeed in making it as simple as it could possibly be.

In short, all movement, collission, etc takes place in a normal simple 3D space (no weird tile stepping crap to try and remember) and automatically gets translated into iso view space.

[push]

I have seen a lot of people arguing that iso tile rendering should be an intrinsic part of TGB.
I think perhaps they are not too clued up on the particulars as while it would be quite easy to
change t2dTileMap to allow interleaved rendering by allowing custom X offsets per row, etc, it
is basically worthless for anything but tile only stuff.

As soon as you start adding moving sprites etc it all falls apart as the sprites will not be correctly
sorted intra tile map and to allow that one would have to rewrite TGB as a 2.5D engine. Also
movement and collision quickly becomes a nightmare.

[pop]

The more I work with this the more I become excited by the possibilities of a generic iso engine.
I am writing it as generic as possible so that it can be used for making anything from one screen puzzle
iso view casual games to large RTS or RPG's like Diablo or even things like e.g. chess, tennis or perhaps
a Marble Blast 2D ;p.

I will break it down some more and list features as soon as I get time and will be updating this plan to
keep everyone in the loop as I progress.

Features will be fleshed out here as I get time

  • Isometric map is basically a scenegraph and contains everything.
  • All movement, collions,etc in simple 3D space, automatically mapped to view
  • Multiple viewports
  • Tiles and items are stackable and items can move between levels
  • Occlussion masking
  • Overlays (non-interactive imagery that just blocks all cells they cover or simple non-world visuals)
  • Basic physics and pluggable physics interface
  • Tile/item datablocks (user extensible)
  • Object mounting, composite tiles/items (allows you to treat it as one object but will still sort/render seperately
  • Tile/item templates and editors, set up a tile/item's info once an apply all over
  • Sloped tiles (and user defined functions for retrieving a surface height, etc)
  • World bounds debug overlay
  • Map and map element editors
  • Generic attribute assignment to tiles/items/elements and templates
  • Bitmap backgrounds with collision overlays
  • Event system
  • Triggers

Misc ideas
  • Projected textures for use as tiles
  • Background map loading for huge maps
  • Full network support
  • Editors and tools to help create or generate isometric tiles
  • Integration of TGB Particle System
  • Integration of TGB Shape 3D to lighten the load for multi directional sprites,etc

Some prototype screenies:

www.neoji.co.za/neo/gg/proto0.jpg www.neoji.co.za/neo/gg/proto1.jpg
[update: 2006-05-13]

Another quick screenie: items sort correctly (the red cylinder) as I move it through the world

www.neoji.co.za/neo/gg/proto2.jpg
[/update]

[update: 2006-05-22]

Another quick screenie: red lines are simple 3D world bounds for all objects

www.neoji.co.za/neo/gg/proto3.png
[/update]


Object/tile stacking in action

www.neoji.co.za/neo/gg/isostack0.jpg
www.neoji.co.za/neo/gg/isostack2.png


~Neo Binedell
Page «Previous 1 2 3 4 Last »
#1
05/11/2006 (2:34 pm)
Very cool. I definatley think this is a great idea.
#2
05/11/2006 (3:05 pm)
Sounds good :) You going to release like a starter kit?
#3
05/11/2006 (3:10 pm)
Cool!
#4
05/11/2006 (3:27 pm)
@Tom: if by starter kit you mean will it have examples, sure...

Editor's and everything too...

~neo
#5
05/11/2006 (3:30 pm)
Awsome!!!

[signing up]
#6
05/11/2006 (4:20 pm)
Dude that may just make me buy TGB
#7
05/11/2006 (6:04 pm)
Looks great Neo!
#8
05/11/2006 (6:31 pm)
Ah, good to see there's some enthusiasm for it!

Btw Tom, been using torsion and it has REALLY upped my productivity, thanks a ton man...
#9
05/11/2006 (11:34 pm)
Unload the soldiers from the ship! Burn the village!!

Lookin good'.
#10
05/12/2006 (2:38 am)
That looks amazing!
Well done. :)
#11
05/12/2006 (4:12 am)
Yeah, very cool indeed! Have you thought of lighting (like in Diablo)?
#12
05/12/2006 (4:23 am)
I've thought of a ton of things including lighting ;p

I am however trying to reign myself in to a generic subset of features for
the core engine pack and once that's done I'll create additional packs that
include specific features e.g. RTS pack, RPG pack, etc, that have lighting,
and e.g. containers, etc.

One would not need lighting for say a puzzle game, as it is more of a
RPG thing (generally speaking).

That way people don't have to shell out a lot of cash if they only want the
base or a selected features set.

I'll chuck a list of what I have planned soon as I've narrowed it all down.

~neo
#13
05/12/2006 (5:11 am)
Good luck then :)
#14
05/12/2006 (6:54 am)
Very nice. :) Can't wait to see more.
#15
05/12/2006 (9:31 am)
Good stuff
#16
05/12/2006 (7:03 pm)
very cool!!!!!!!
#17
05/12/2006 (8:16 pm)
Definitely watching this space!
#18
05/13/2006 (3:15 pm)
This is great!!!! I am very excited about the possibilities with this pack.
#19
05/15/2006 (2:05 pm)
Couple of questions:

have you given much thought into your cost expectations for the differenct packs?

Any idea on a release date, would be good to know as well?

Are you planning a psuedo Z axis to be implemented?

I'm budgeting for things right now, and this is going on the top of the list.
#20
05/15/2006 (4:46 pm)
I'd buy a good ISO pack :)
Page «Previous 1 2 3 4 Last »