Jump to content
XCOMUFO & Xenocide

Battlescape Design


dteviot

Recommended Posts

I know UE3 supports quite a bit in terms of destructible environments (http://www.udk.com/features-destructible.html), but it all depends on what we need it for. Are we looking for destructible buildings and structures (which I believe it should do) or deformable terrain (cratering, which I'm unsure of)?

Correct, we're looking at destructable walls, ceilings floors and anything else. When I say terrain, I mean anything in the environment that influences how the soldiers and aliens can move, lines of sight and fire etc. Prehaps I should have said, we want a fully destructable environment, rather than terrain, which most people seem to take to mean the ground. (Incidentally, that link is just tools to build individual destructable objects in the environment, not what we are looking for.)

 

While I love the idea of working with XNA some more, and switching engines again could be a difficult move, I have to wonder if more developers could be attracted to this project by using UE3.
I have no plans to change the game engine at this point in time.

 

Nope, that's the basics of a 2D terrain (like an RTS). I'm already familiar with this.

 

Nope, that's changing the above 2D terrain on the fly in the GPU. I'm also familiar with the technique, and again as it's 2D, it's not helpful to us.

 

Basically, generating the 2D terrain mash from a mathematical function, which allows generating a high resolution mesh for the near detail, and a lower resolution mesh for distant detail. Sometimes known as procedural terrain. Interesting, but unfortunately, not what we're looking for.

 

Looking at it's feature list, http://www.delta3d.org/article.php?story=2...&topic=docs, it doesn't appear to have what we're looking for.

 

Thanks for your efforts Kafros, I think the problem is, you looked for "destructible terrain", the magic phrase is "destructable environment"

Link to comment
Share on other sites

I think this is more what you are talking about. However the fact it uses OGRE again doesn't suit us.

 

http://www.thermite3d.org/joomla/index.php

Yup, that's the sort of thing we're looking for. Will definitely investigate further.

 

Another document:

http://wwwlehre.dhbw-stuttgart.de/~hees/IB..._Fritz-2009.pdf

Link to comment
Share on other sites

  • 2 weeks later...
Question, If there isn't really an engine now for a fully destructable environment, can we not get away with individual destructable objects? If we make all models we put in destructable can this not solve the problem? What more do we need to do?
Link to comment
Share on other sites

Question, If there isn't really an engine now for a fully destructable environment, can we not get away with individual destructable objects? If we make all models we put in destructable can this not solve the problem? What more do we need to do?

It kind of depends on what you mean by "destructable objects".

Let me try and describe the problem. At the moment, we have a number of 3D models for the facilities making up and X-COM base.

Each facility is a single model, with walls, floor, stairs, furniture, etc.

So, first problem would be to take that model appart into individual pieces that can be destroyed.

Second problem is that the "battlescape game engine" (as opposed to the "rendering engine") has no understanding of the model. All it knows is that the model is a "soup of polygons". It has no idea that this polygon is part of a wall, that one is a stair, the other one is part of the ground, etc.

That is, the game engine we have is not able to analyse the model and determine legal movement, pathfinding, line of sight, etc.

 

To put it another way, the 3D models we have of facilites are, from XNA's viewpoint, a "polygon soup" that it can render, but it can't reason with.

Games like Quake solve this problem by having an "environmental model" that's then analysed and converted into a structure (usually a BSP tree) that can be used by both the "game engine" and the "rendering engine".

The game engine is responsible for figuring out, based on where the player is, which diretions the player can move in, which opponents can be seen, shot at, etc. The rendering engine actually draws what the player can see.

e.g. Both engines know where the player is. The player tries to move forward. The game engine looks up the BSP tree, sees there is a wall in front of the player and prevents the player from moving. The render engine looks up the BSP tree, sees there is a wall in front of the player, and draws the wall.

 

I'm hoping that with the Cube2 engine, we can have one data structure that can be used to both render the landscape, and control movement, line of sight, line of fire, etc. And get a free tool that makes it easy to build battlescapes.

Link to comment
Share on other sites

×
×
  • Create New...