Seamless Interior/Exterior

Feedback on past, current, and future development.
Locked
User avatar
lgromanowski
Site Admin
Posts: 1193
Joined: 05 Aug 2011, 22:21
Location: Wroclaw, Poland
Contact:

Seamless Interior/Exterior

Post by lgromanowski »

Shodex wrote: One of my biggest gripes about Morrowind, the Elder Scrolls series in general (especially you, Oblivion), is the loading time between travelling in/out of a building.

Perhaps Open Morrowind could run all the places in one map, so the door just swings open and da-da-da-daa!

What do you think?
Chris wrote:
Shodex wrote:One of my biggest gripes about Morrowind, the Elder Scrolls series in general (especially you, Oblivion), is the loading time between travelling in/out of a building.

Perhaps Open Morrowind could run all the places in one map, so the door just swings open and da-da-da-daa!
That's not really possible. Doors and the like are really just teleports. You activate a door, and you teleport to the destination marker. It's not really that simple to figure out that 'this door matches this other door' since there is no such link defined in the game data. Also, the inside of a building doesn't have to, and usually doesn't, fit properly in the outside model.

Something OpenMW could do, though, is allow modders to create such seemless areas. The biggest hinderence to doing that is how outside weather (rain, ash, etc) will just go through walls and ceilings. Perhaps after 1.0, it could add the ability to improve particles so that they can be blocked by solid surfaces.
nicolay wrote:
Chris wrote:That's not really possible. Doors and the like are really just teleports. You activate a door, and you teleport to the destination marker. It's not really that simple to figure out that 'this door matches this other door' since there is no such link defined in the game data.
I don't really agree that it's impossible. If the biggest problem is just linking the doors together, then that's really not a huge problem at all. At worst it can be done manually, and preferably by some simple one-time heuristic run on the data. Granted, I have no idea how we would handle the rendering or the rest of the problem though.
Also, the inside of a building doesn't have to, and usually doesn't, fit properly in the outside model.
That's true, so that rules out simply loading the interior cell into the exterior scene directly. OTOH there might be other solutions that makes it appear as if they are linked. And unless two exit doors are really close to one another I doubt anyone would even notice the size differences in most cases.
amos wrote:
nicolay wrote:
Also, the inside of a building doesn't have to, and usually doesn't, fit properly in the outside model.
That's true, so that rules out simply loading the interior cell into the exterior scene directly. OTOH there might be other solutions that makes it appear as if they are linked. And unless two exit doors are really close to one another I doubt anyone would even notice the size differences in most cases.
Wouldn't it be possible to use portals for this?
No idea if this is supported in Ogre at the moment, if not we would have to come up with our own implementation. So yes, should be possible in some way or another.
Chris wrote:
nicolay wrote:I don't really agree that it's impossible. If the biggest problem is just linking the doors together, then that's really not a huge problem at all.
That's not the biggest problem. As far as the game's concerned, the "door" is just a static, non-animating object that, when activated, teleports the activator to the specified map marker. It may look like a door, but there's no real difference between that and, say, a tree or wall. There can be scripts on doors that are expected to run without you getting back outside. There's no way to guarantee that the target map marker will be near a door, or that it won't be near multiple doors. Doors can be disabled/replaced, and moved around. Multiple doors can even reference the same map marker.

The actual rendering wouldn't be all that difficult, technically-speaking.. it could just use some kind of portaling techniques like you see in Prey (not sure how you'd do that in Ogre, but..). It just needs something a bit more than what's provided by vanilla Morrowind to work properly, to guarantee a proper link between two points. The vanilla game just isn't designed for it, regardless of how simple it seems on the surface there's a lot of potentially complicating details.
pogzy wrote: Hi,

It is quite sad that doors betwwen exteriors and interiors act as portals whereas interors doors act as real doors, so they move, you can see what is behind the door if it is half opened (even sometimes legs of monster walking through the closed door :lol: r ).

I know that it look like like a real post v1.0 dev, but real doors between interiors cells and exteriors cells could be a real plus to the game, such little improvement that could greatly change the way a user feel the game.
sir_herrbatka wrote: but note that exterior models of buildings do not match the size of interiors.
Shodex wrote:
amos wrote:Wouldn't it be possible to use portals for this?
Now you're thinking with portals. :)
In Oblivion, there was a mod called Open Cities, that made cities seamlessly integrated in to the world. Although that might not work, seeing as the cities had a faked low quality interior. So we know they fit.

Metroid Prime has a ghost loading system, where it would load the other side in the back ground as you approached them, allowing seamless entry. With the help of portals, if they work in Ogre, the loading could be masked to look like they're seamless.

It adds so much atmosphere, even in games like Fable, it just did so much for the game with seamlessly integrated interiors. Sadly the exteriors were what was seamed. But anyways, I think, in theory it could work, with a bit of time.

And this is a game right? We can bend the laws of physics so to speak, right? You know in Harry Potter, they had a tent that opened up to a huge house? Why not try that, the outside doesn't fit, but when you open up everything seems like it would. Since Morrowind already does a decent job at scaling a building to match the interior.
Greendogo wrote: We can't do what you are suggesting.

However, maybe we can meet halfway and pre-load the models/textures of the interiors linked to doors within some arbitrary radius of the player. So you don't have to wait at a loading screen. The scripts would commence after you actually decided to go into an interior.
delta17 wrote: it's not impossible, yes, but no doubt it will be hard to implement. This will definitely be post-1.0, as others have pointed out already.

So how will it look from the player's perspective? Let's take a Mages Guild door from outside for example; you activate the door and it swings open like any other door in the same cells (due to some clever rotating-hinge script, not animation), allowing you to walk in and out just like that and leave it hanging open?

Perhaps the door should, depending on what kind of building the door leads to, shut by itself after a few seconds of delay (after detecting there isn't any PC, NPC or other object in the way or locus of the closing door)? What about NPCs interacting with the doors? Setting their behavior to prefer to have certain doors closed if they don't intend to traverse through it themselves, particularly if they "own" the building ("damn outlanders popping in and out of my house and leaving the door open-- fetcher... they even picked the lock!")?

And perhaps also modifying the Wander state of a select number of NPCs so that they don't accidentally wander too far from where they should be and end up in inappropriate exterior/interior cells (especially those related to quests that need to be at a certain location, unless we're adding NPC schedules as well here). Heck, imagine seeing Caius Cosades strutting around topless outdoors in Balmora just because some s'wit (not necessarily a prospective Dunmer-warlord incarnate) forgot to shut the damn door after him!

In short, playing with seamless movement between exterior and interior cells may require more changes to different parts of the game system than just the doors themselves...
willrandship wrote: What about instead of trying to make it work with the current Morrowind esm, someone makes a mod for it, that makes buildings larger and fits everything in them. Then, you only have an outside area, period.
Star-Demon wrote: interiors and exteriors are treated very differently at many levels.
Locked