Raycasting game engine with ASCII display

preview_player
Показать описание
Simple 3D engine that renders to system console. Features:
-wall and floor/ceiling textures (procedurally generated)
-dynamic lighting
-bump mapping
All in 216 lines of C++ code.
Рекомендации по теме
Комментарии
Автор

This is an amazing project you're working on! I downloaded your source code and can't wait to get to understand it better! :)

Rottingflare
Автор

Amazing. I imagine there must be some complicated maths involved in rendering these. And somehow you managed to pack it in 200 lines. Good job

filipaugusto
Автор

Very impressive, especially in only 216 lines, good job !

imperial
Автор

thank you for your excellent video and informative comments you’re awesome

certifiedcoverboy
Автор

I like a lot tge style of 3D ascii rendering, but there aren't many games like this

Noidentity
Автор

I'm really confident with basic programming(OOP, loop, method etc), but just stuck on basic terminal stuff you learn at CS class. Do you know what to learn to advance to this level? Like what you need to understand and do you have resource recommendation? Been really interested in stuff like Ascii 3d but don't know where to start.

ary
Автор

Doing it pixel by pixel is easier but slower than calculating line by line as the original raycasters did. Even for 1600×900 resolution (not in console, of course, on GPU), I'm not sure how to properly accelerate the pixel by pixel algorithm. I just do scan lines for both walls and floor / ceiling, then create and render a rectangular mesh with textures.

yds
Автор

Hi. Where can I start learning this? It works on all programming languages? Im starting now 🙏🙏

galDVS
Автор

Having issues with my own 3d Console Game Engine, output to the console is way too slow. Im currently copying an entire buffer at the same time with WriteConsoleOutput(), but it takes almost an entire second to print 60 frames, just the printing itself, without the calculations. I see you're making over 120fps here, calculations included, how? Are you a wizard?

xdskroot
Автор

Is this style of rendering faster than the classic, Wolf3D style? If it is, then, damn, maybe - just MAYBE - the Amiga500 COULD have had its own Wolf3D or Doom back in the day, after all...

BluntEversmoke
Автор

did you use open gl what did u use to create this engine ive been wanting to create my own game engine but could not find a tutorial on how to do it

Sklly
Автор

Can i use this in a terminal emulator?

GuyThatCREATESRandomStuff
Автор

How does it render to the console so fast? In C# and Windows console, you cannot fill a screen of text at 60 fps.

Xonatron
Автор

Dude this is awesome! Can you link the source code? i wouldve done the same task in like 5x more code at best, i'll get better at programming just by reading it!

fishcanroll
visit shbcf.ru