Well there’s two different approaches to do that kind of 3D with textured walls with vanilla features.
One is the raycast method. That’s what that link and template do. Logic wise it’s a raycast per vertical line and depending on the distance each ray is to a wall you set the visual height of that slice. You can use the tiledbackground object to draw slices of a texture to do that.
Floors and ceiling would need to done via an effect.
The other method is to use distort meshes with a sprite. Rufus’ example does this. Basically you need a sprite per face and you set the xyz of the corners to make a cube. Then you can use some math to rotate and move the points from a camera point of view.
Construct makes this a bit more complicated though. You can’t set the zelevation of a mesh point to negative value, and the xy positions are relative to the sprite’s bounding box. Probably can get how to work around that from rufus’ example.
Otherwise 3D shapes aren’t usable because you can’t rotate them. But there is a third party plugin you could use that does do that.
Sorry I’m not really good at writing step by step solution stuff.