: The *original* release of M1A1 contained major modifications to the game
: data, but the Aleph One 1.0 release removes *all* of the major
: modifications – even the much-reviled “Colony Ship” puzzle has been
: reverted to its original status. Aleph One 1.0 is as close as you could
: realistically get to Marathon 1 using the Marathon 2 file format.* If you
: enjoy doing all this stuff yourself, that’s great, but I don’t really see
: the point in repeating work others have done unless you feel like you’re
: learning something by doing it yourself that you couldn’t have learnt more
: easily in some other fashion. The Aleph One 1.0 files should be fine for
: the purposes you have in mind, unless I’ve misconstrued something or you
: haven’t spelled out some of your end goals.
: As for exporting the textures with OBJ files, perhaps you can ask about
: adding that to Weland (or, if you have sufficient programming knowledge,
: write it yourself – since Weland is GPL, the source code is publicly
: available for anyone to modify). Most of these features were just added
: because someone wanted them. The custom grid function was added by one
: dude who just submitted the code for it and then disappeared.
: I still don’t really understand why you’re using OBJs rather than trying to
: get Unity to read the original game data, though. Is it just flat-out
: impossible to adapt MUnity or Forge+ to work using stencil buffer portals?
: I haven’t looked that closely into how any of this works, mostly because
: I’m busy with a bunch of projects of my own, but it seems like it’d be
: less frustrating to adapt one of those projects so it can handle 5D space
: with the original Marathon 2-format files, rather than redoing all of this
: from scratch, unless it’s just flat-out impossible for the code base of
: Forge+/MUnity to handle stencil buffer portals.
: *At least, it’s as close as you can get without employing M1-exclusives like
: glue triggers and ouch polygons, but it doesn’t sound like those are what
: you’re concerned about, and the glue triggers are high-level game
: behaviour that probably only even matters if you’ve got both M1 and M2
: monster behaviour replicated accurately in Unity. And those polygon types
: aren’t available in M2 maps, anyway – they’ve been reintroduced into more
: recent versions of Aleph One.
I did compare A1 1.0 maps with the original maps and found that the maps are different.
The original Arrival map has 1 more polygon compared to A1 1.0 Arrival map.
A1 1.0 has extra polygons added in other levels.
Forge and weland were used to compare.
If I work with MUnity then I want to recreate the portal rendering and collision systems from Aleph One.
An automatic portal system would be compatible with all maps.
I will need to build the regular geometry and the portal walls.
With the collision system each polygon will have a list of neighboring polygons that are active around the player and is updated when the player enters a new polygon.
If the portal is visible then a reference number is assigned to the portal and the polygon also the depth test is the closest polygon is rendered in front of the far away polygon.
Portals and polygons are linked with the portal stencil comparison set to always and the polygon stencil comparison set to equal.
Polygon stencil comparison is switched to always when the player enters a portal.
I can export a obj map and import it to Unity as a prefab.
Edits to the map are saved to a blend file then 5D space is added in Unity.
I only know how to add 5D space using a prefab map.
Unity doesn't have the same kind of clipping as Aleph One does.
Portal rendering with the stencil buffer is the other way I found that works like A1 clipping.
The polygons are only rendered from behind the portal until the player enters the portal then its rendered normally.
In Unity I can do things with triggers, layers, and tags.
Another way to do 5D space in Unity is each sector contains a list of visible sectors and it updates what is visible with each sector you enter, but this won't work with some maps.
I'm using simplified portals with polygon groups in Unity.
I would like to make a Weland plugin that reads the texture coordinates from lines and polygons then displays the coordinates.