So I’m sitting here in bed, imagining flowlab logic, and it hits me like a bus, “Hey, I can probably make a 3D Doom Engine in flowlab, and it might actually be pretty easy!”.
I’ll try to explain this as simply as possible.
First, make a 2D top down map.
Say you make a small room with one square wall in the middle.
I…l
I…[_]…l
I…l
I____________l
Now let’s make you a block
I…l
I…[_]…l
I…l
I_____[]______l
That square in the middle is a wall,
Make an object as big as the screen
I…l
I…[_]…l
I…[]…l
I____________l
If the player is right in front on the wall in the 2D map, the full size wall in the 3D game is 100? size
I…l
I…[_]…l
I…l
I_____[]______l
As your 2D player backs away from the wall on the map, the 3D wall object gets smaller, using proximity detection
I…l
I…[_]…l
I…l
I________[]___l
Moving to the right of the wall would make the wall object move left, until it is off screen. You can use off screen emitters to spawn new walls when you move back.
This covers near, far, left and right, for one wall. Each new wall will need a new object, but you can clone behavior bundles. Your 3D player only moves if 2D you can move. If you rotate the player 90, you will need a similar system, but for that direction. You’re basically making objects move around, shrink and grow, based on proximity on your mini map. You can even do this with enemies. As the enemy moves around the 2D map, if the enemy walks in front of you, the 3D mode will emit a 3D enemy, and it will shrink or grow depending on the proximity of where it is near you on the 2D map. If it goes out of view, it destroys the 3D enemy, but the 2D enemy remains. Shooting in the direction of the enemy will have a bullet travel on the 2D map. If the enemy on the 2D map dies, the enemy on the 3D map dies with an animation and destroy.
If you understand what I’m talking about, please feel free to try this out. I will definitely be attempting this when I have time, but after tonight, I won’t really have access to a computer. I have my raspberry pi 3, but until I get a wireless mouse instead of a touchpad, I won’t be attempting to make any games. The touchpad mouse is slow. I’ll also need to attempt to install GIMP or something on Linux, if possible, and install the Debian 3rd party version of flash player.
I also have a few ideas for a SNES style F-Zero game, but all 3 ideas sound like a major pain and aren’t worth the effort. These concepts are neat little ideas that are interesting to accomplish, but are impractical to make a full game out of.
Anyway, let me know if this idea works for any of you.