Raycasting 3D render -- Blocks Edition

Hi all
This is a preview of a optimized edition, faster walls rendering by bisearch, instead of row-by-row before. This algorithm try to found all in-screen walls by bisearch for less rows calculating. So the less walls in the screen, the faster it will be. Has its advantage for small tilemap(maybe 32x32), not suit for large tilemap.
press “menu” button will switch within these two, and the score showing micro seconds taken. You can download onto your console for testing.

  • no anti-alias yet
  • wall positions changed a little for fixed a texX calculating bug in the original rendering codes
6 Likes

Very Good Keep It Up Man.

1 Like

@AqeeAqee I really admire your skills in programming, how did you find the time to make all of the raycasting extention and its demos? I’m also curious about how is the extension is able to make the flat images stand up or turn a 2D tilemap to a 2.5D tilemap?

I have found a bug where if you spawn too many projectile sprites and move backwards against a wall, you clip into the wall.

Whoops! Just now found out that you fixed it already. Thanks!

1 Like

Hi @LDJ101 !
Thanks very much for you like this extension. I just start up from @mmoskal 's 3d map project, which is wonderful, and bring our into 3d world. Than I add sprites and some feature to make it easy to use in blocks.
To take care kids sometime, I have to work at home, so I have more spare time to do stuffs I am interesting. But our school and kidgarden are closed temporarily due to the COVID, I have to look after them whole day recently, so updates of this extension and replies have to delay.

If you are interesting on raycasting, this artical can help.
If you are interesting on my implementation details, feel free to ask me and we could discuss together.

2 Likes

I made a game with raycasting :smile:, hope you like it!

Controls and gameplay:

  • Arrow keys to move
  • Menu button to toggle view mode
  • Every 30s you take 1 damage, find the chest before you die!
2 Likes

And, I have forgot to say @kwx also make many amazing 3d projects, which you will like and could learn a lot.

Just now updated It’s A-maze-ing, here are the new features:

  • Press and hold A to sprint and release to stop sprinting, it’s harder to turn while sprinting but makes you go much faster.
  • Added a floor that disappears when in tilemap mode and reappears when in raycasting mode.
1 Like

CAN I SUGGEST THAT YOU can jump on tiles

thats probably not gonna happen bro…

how do i add ui?

Hi, @CuteMrMerp

Basically, you can add UI as usual, this extension can work with most other extensions, but I can’t garentee all of them. If they can work well in a 2D project, but has any issue working with this one, let me know pls.

1 Like

Pretty easy, make a sprite/your ui, then set the sprite to “related to camera” and the sprite will become camera ui.

I have tried using that flag and it did not work

@CuteMrMerp & @AqeeAqee, I was having the same issue with the extension. I figure there must be an issue with the latest build of the extension. I loaded 3.13 onto my project, and UI was working just fine.

Someone else referred to the same issue in your repo, I have a more in-depth solution there.

Try putting the z(depth) to a high level (Idk what the z layer of the raycasting screen is though)

Hi !

Thanks @CuteMrMerp for report this issue, and thanks @Unique for the hint for debuging. And thanks @CyberPulse and @Kiwiphoenix364 kindly helping.
This should come from the “fake screen” for supporting particle effects.
I will debug and try to fix it ASAP recent, maybe in a week.

3 Likes

Hi @CuteMrMerp and @Unique
This issue has been fixed in new release v0.3.15.
Have a try and let me know the result pls.

1 Like

It does work!
Thank you so much!

:slight_smile:

2 Likes