ASCII City: Traffic and Detail Update - https://www.youtube.com/watch?v=DSRooHo_HSI
ASCII City Update: Interiors, Elevation and Skyscrapers - https://www.youtube.com/watch?v=UCKEDWowc0o
It looks really good in the video uploaded, but when I tried it myself it didn't look the same and was hard to tell what was going on. Not sure what the issue is.
This makes me deeply nostalgic. Starlight Zone from Sonic the Hedgehog is my favorite game level of all time and the aesthetic of this city is basically like stepping into the background of Starlight Zone.
Is the GitHub project the same as the videos? Seems like no.
Wouldn't it be better to use blocks (219 in ASCII) as the main paint unit and use some other half-block and "hashed" characters (ASCII 220, 223, 176-178) to implement dithering?
Wow, that's interesting. It's a good start, and it would be interesting to see how the project develops.
From the video description:
“I wanted to build a city that feels alive, but is made entirely from ASCII characters.
This is a small custom engine built with JavaScript and Canvas — no Unity, Unreal, 3D models, textures, or shaders. The world is a grid-based city with roads, buildings, trees, cars, and pedestrians.
Every frame, the engine raycasts from the camera to work out perspective, depth, collisions, and what should be visible, then draws it all using letters, numbers, and symbols.
In other words: it’s a tiny 3D city made from blocks, viewed through a screen of ASCII characters.
Still a work in progress, but I’m going to keep pushing the atmosphere, detail, and interaction further.”
If you want to get into fixed-width character art, I highly recommend doing it in the browser like OP did rather than trying to old school it in the terminal. I have done a little ascii[0] and unicode[1] graphics, and the browser is such a better tool. You can set fonts and proportions and know exactly how things will render for the user. Mouse input, performance profiling and a bunch of other things are just better in the browser. Both of my projects work in the terminal but were browser first.
It is kind of shocking to me how TUIs are enjoying a bit of dev tool renaissance right now when the browser is such a capable platform.
[0] https://aleyan.com/projects/ascii-side-of-the-moon/ [1] https://ytirnity.com/play/hexwalker