0 Members and 4 Guests are viewing this topic.
the "fishbowl effect" is natural. the issue is that a screen is just a much smaller width than the total width visible by a human, so the angle must be much smaller
This program actually has another problem: distance isn't translated to line height properly. The perceived height should be inversely proportional to the distance, i.e. a constant divided by the number of ray iterations, not subtracted.
The behavior of that wall on the left makes me think that you're detecting collision with the block sides parallel to the screen instead of perpendicular (which should be closer).
why are you trying to compensate for that effect? it is natural for it to be there, so removing it will make your program look less natural. you may have to adjust the angular width or the total horizontal space you can see at once, though. one that's used a lot is 60 degrees.