Jump to content
  • Advertisement
  • entries
  • comments
  • views

The damn devil is in the damn details

Sign in to follow this  


I've been dreading a certain aspect of the S3 Engine, which I know I am going to need to solve sooner or later.

So now I'm going to tell my problem to you all =)

The problem is one of Interiors and Exteriors, or indoors and outdoors.

Currently, the S3Engine is exceptionally well suited to outdoor maps; you have a terrain and you can plop stuff down on it, trees, people, cars, houses, whatever.

But indoor maps are going to be somewhat trickier; Flare3 used the same map system for both indoor and outdoor maps and it worked fine in most cases, indoor maps simply had more walls, different scenery, etc. and that is what the problem really boils down to, walls.

all of the sprites in S3 are traditional isometric sprites, they are drawn on carefully aligned billboards so everything lines up.

but when it came to walls, this system seemed exceptionally wasteful, because there is such an 'easy' alternative.

for instance, in 2D isometric a wall would be a specially drawn image in isometric perspective and it would be placed on the map.

due to the nature of isometric graphics this wastes a good amount of space on the image (to account for the angle) and it also means in some cases specialized images are needed for different wall directions.

in 3D however, making a wall is SUPER SIMPLE, it's 3 planes (bottomless rectangular solid) it can be textured with a nice 128x256 texture, and it can be placed anywhere, and lit properly.

So given that I have this power at my finger-tips, I cant quite bring myself to kluding walls by sticking with the old isometric way, it seems very stupid.

however this does complicate the map format a good bit, it will likely use a dedicated geometry for a wall, and will be translated and rotated in place during rendering, though I am still unsure how well these 'real' elements are going to play with the billboarded elements.

thankfully the motion system for S3 will utilize a node network of predefined paths, which characters can walk on based on inference where a player clicks (dijkstra's algorithm will be used for path calculation)

this means we can control where the player can and cant walk, which can remove potential issues dealing with overdraw and such.

so, it looks like I will need to implement extra data about each tile's ability to have a wall on either side.

Sign in to follow this  


Recommended Comments

There are no comments to display.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!