Jump to content

Raycasting demo

Recommended Posts

  • 4 weeks later...



I found that simply changing some constants allows me to dither the wall or ceiling, so that allows some more variation. I've also increased the unit height of walls from 8 to 36 (the height when the wall is exactly one unit away from the viewer). This makes walls appear square, which makes them look a lot better when dithered. It would also be necessary if/when I add texture mapping. Also managed to eke out a little more speed from the engine to try to make up for the overhead from dithering. Getting more speed is important since texture mapping would add even more overhead.

  • Like 4
Link to comment
Share on other sites

John, about sprites, how do you plan to implement scaling and clipping ?

The most effective way (from the visual point of view) would be to use MOB for far distance and software sprites for close distance.

But this would be also the most clumsy and expansive way to implement sprites.

Essentially you should develop two engine to manage sprites...  


Probably the simplest thing to do is to start with the SW sprite engine

For each sprite frame, I would store pre-computed data in rom for all scales and the four pixel alignments (in color square mode).  

In this way one could build four fast column renderers able to mix data from the walls and from the selected scale of the sprite frame   


Link to comment
Share on other sites

I've started looking at the Wolfenstein 3D source to try to understand how software sprites are done. It seems to be computationally expensive so keeping it fast will be tricky. I also looked at a ton of Wolf3D gameplay videos to understand what features are desirable. First I think I need to try to squeeze as much speed out of this new implementation as I can.

  • Like 1
Link to comment
Share on other sites

  • 1 month later...
  • 2 months later...
  • 9 months later...
On 8/14/2020 at 2:25 PM, JohnPCAE said:

Been sitting on this for a while. The movement logic had some bugs that would let you walk through walls under certain circumstances. This fixes those bugs.


raycast_20200709.zip 87.8 kB · 35 downloads

Hi. Have you had a chance to look at this further, maybe incorporating @artrag's ideas?


Link to comment
Share on other sites

  • 2 years later...
  • 3 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...