https://turbowarp.org/1055331786/fullscreen?fps=60 (I recommend RES=6, RenderAccuracy=10) A slightly faster, better version of my block engine. Note it is still pretty laggy WASDEQ to move Arrows to look around Space to jump How it works: I basically took the idea of a Doom Engine but instead of having a set map of 1s and 0s or whatever I just used a custom block that inputs lists with positions of blocks. The ray is shot out and scans the lists and if it is "touching" the block, it draws it, but after applying the proper Y position to it. While a Doom Engine can't have rooms on top of rooms, this can (though the rooms are primitive textured cubes) and you can look up and down. If something says (NEW) it means it wasn't in the old engine Pros: - Use cubes to create a simulated 3D environment - 2D sprites can be added (NEW) - Cubes and sprites can be positioned on the Y axis with decimal points for exact measurements (sideways, however, you cannot due to how it renders so no sliding doors or anything like that unless it is vertical) - Cubes have textures (NEW) - Skybox background Cons: - Kinda slow (as most 3D rendering on Scratch is) which means making up for it with low scan accuracy, low render distance, and low resolution textures - Blocks are chunky but at least they can be given depth with textures - Blocks cannot be positioned on the X or Z axis using decimal points (due to the way the raycasting is done. If I did that I would actually get smaller blocks, which isn't bad, but it isn't what I want right now. - 2D objects sometimes have a hard time with the elevation script Things that will be added: - Gravity and player physics - Only putting what is in your POV into the block lists to lower load and increase quality and render distance The texture scanner is by Griffpatch and I was inspired by his videos, which taught me the basics of raycasting, which in turn allowed me to think of things like this