Level Creation - OBJ Conversion?

Kurt91

Member
I was wondering if there's any possible way to import a level built in SketchUp or some other 3D Modeling software, and convert it into something that would be useful. I'm pretty good at SketchUp, and have taken classes on 3D Animation using 3DS Max (although that seems overkill for something like this). I thought it would be easiest if I could use what I already know to build the structure of a level, and then use something like Zone Builder to add things like enemies, Rings, and such, rather than having to learn an entirely new process from scratch.
 
Short answer: no, at least not right now.

Long answer:

One thing to keep in mind is that SRB2 and other Doom-style levels don't actually use 3D geometry in the traditional sense at all; they use top-down projections, and some complicated math to render "floor over floors" along with, as of 2.1 and in 2.2 vanilla, slopes. The rendering engine isn't even 3D as much as a "two point perspective" drawing of the scene, believe it or not.

This means in zone builder you're not using 3D geometry at all, as much as drawing a ton of top-down sectors to define regions of floor and ceiling space. It's really weird, and not at all like traditional 3D. Most of the really good level geometry artwork from 2.2 vanilla is by abusing slopes to make curved surfaces like the waterfalls in Deep Sea Zone.

This is important to keep in mind because of something you might notice *looking* at those slopes. You know the rocks in Arid Canyon that tilt? Notice anything about the sides of those platforms?

unknown.png


Note the blue lines.

The rock is slanted, but the vertical lines are all COMPLETELY vertical, not angled like a 3D model would be.

This is because of how SRB2, and especially DOOM level geometry fundamentally works. There are walls and there are floors, and these are distinct--this is why there's a difference between flats textures by the way (the exact reason why i don't know). Slopes as they are shouldn't really be a thing, and yet, here they be.

This is important because it means you can't exactly translate a 3D model to an SRB2 map 1:1. The game's just not built that way. If you were to rotate a 3D model at all, and try to convert its mesh data into a *thing* in SRB2's level format, you'd have an absolute mess of floor-over-floors, slopes, and other things just to get level geometry to conform to the shape of your 3D model, and nearly NONE of that geometry would be "walls." More to the point, if you even considered texturing that model, forget it. You can't exactly UV-map map data like you can a 3D model, which means--to my knowledge--you can't arbitrarily stretch texture data to fit stage data.


BASICALLY, SRB2 map data is NOT a 3D model.


If you've been around long enough you might be familiar with SRB2's OpenGL mode, which I'm not sure if it's been depreciated or not. Either way, OGL mode actually *did* turn SRB2's level data into geometry for rendering purposes (or interpreted it as such, something like that), but that's a one-way path. It's much, much more difficult to take a 3D shape made out of triangles and convert it into sectors for an SRB2 map.

That doesn't make this impossible... just, as far as I'm aware, not something someone has done yet. The logic behind this isn't that complicated, just kinda silly, in that you'd do a top-down trace of a 3D model for every triangle and convert that into a sector, with whatever floor-over-floor properties are needed to put that mesh data where it needs to be. But again, this would be wildly inefficient, and might even be a hit for performance if not optomized (since models tend to be triangulated, you'd run into a case where you have 25+ sectors making up an amorphous shape that only needs ONE sector).

I've thought of something like this forever ago but it's really not worth it, unless you're trying to make something avant-garde with complicated stage geometry that *is doable* in Zone Builder, but much easier to convert a 3D model into DOOM terrain, like slanted/broken buildings or something. If you're just trying to get your feet wet with level design.... It's really not worth.




You say you've gotten some Sketchup and 3DS Max lessons--by chance have you messed around with Blender at all? If you don't mind going back to 2.79, this program "Level Buddy" is built around using a Doom-style workflow to make 3D levels, with actual 2D sector drawing. To get accustomed to the workflow, I think this is a great start, because it introduces Zone builder concepts in a 3D level creation pipeline. If you can get something done with this, THAT could potentially be brought over to Zone Builder, provided you make sure everything's still just sector-based. Ideally, it would also get you more used to the Zone Builder workflow to where you don't need to use this to just make something playable.

https://matt-lucas.itch.io/level-buddy

Either way, highly recommend.

Hope this helped!
 

Who is viewing this thread (Total: 1, Members: 0, Guests: 1)

Back
Top