This is ridiculously good - I just can’t even imagine how this is done (just tuned in to see the gameplay while searching for an ncurses game engine for simple stuff) - this is so far beyond what I thought was even possible. I mean - 🤯
@kw59926 жыл бұрын
Hi Bryce. This is really awesome. Can't wait to see the source. I'm a C++ programmer (Qt) myself and was looking for a retro-ish engine eerily similar to what you have here to create a somewhat different game. Or rather, similar camera control, but an RPG-ish style game that involves exploring. Regardless, I think you should keep going. Are you in school for programming, or is this an aspiration of yours to become a programmer? Just curious :)
@KayOScode6 жыл бұрын
Thanks! My I am making a tutorial series on this engine and it will be done in C++ so you should be fine if you want to follow. Currently I am a computer science student but I have just always had a passion for programming. To me it is a creative outlet and a form of self expression.
@ksawery65685 жыл бұрын
This is absolutely insane
@ilokikoval6 жыл бұрын
Your editor color palette makes my eyes hurt lol. Anyway, this is very cool! You need to do more stuff with this renderer!
@The-Dev-Ninja3 жыл бұрын
You: 3D ASCII ONLY PROGRAMMING GAME WITHOUT A GAME ENGINE me: Hello World (ah yes i have a ERROR) 😁LOL
@cartersirois15553 жыл бұрын
Bro this is insane. Congrats.
@computersstuff96726 жыл бұрын
This is really cool, I can't wait to see more! You definitely deserve more views!
@KayOScode6 жыл бұрын
computers stuff thanks. I am planning on getting started sometime in the near future. I just realized that I am terrible at recording these live so I am working on a new format
@computersstuff96726 жыл бұрын
Ooo, take your time, no need to pressure yourself but that sounds like a good approach
@emilioguevara991811 ай бұрын
I can’t even begin to describe how incredible this is. I wish I had ur skills. One day I’m going to try to make my own engine like this because this is so sick.
@loganmahoney22847 ай бұрын
Nice project man thanks for sharing
@DavidCarrizoGuitarra7 ай бұрын
Awesome!!!
@DboyRough4 жыл бұрын
You're an artist, friend! Great work!
@shieldprose106 жыл бұрын
this is so great. i have just recently started developing, in fact i couldnt say ive finished one game yet lol. i was looking for using ncurses to port to pdcurses and target DOS x.x im still working out the game (since i actually decided this project earlier this night) but im confident i will be using something like this
@KayOScode6 жыл бұрын
Thanks! Are you doing 3D graphics? If so, I would recommend not using ncurses. My game might look good for what it is, but ncurses has it's limitations. Resolution, colors, software rendering, input, other things like that. I have a new demo coming soon. I have been working on an engine that can run games in an actual window and I think it's much better. It also uses the graphics card so many of the previous limitations are gone. If you are just starting with a simple 2D game, I still would not invest too much into ncurses, but it is a nice place to start. Good luck on your future projects.
@shieldprose106 жыл бұрын
@@KayOScode hmmmmm... anyways I have been developing using unity game engine for about a month. my current main game will have an interesting concept of playing games inside of games. so this ncurses project will run inside of the game
@abdulalhazred59245 жыл бұрын
The power of ncurses compels you!
@mmatteii2 жыл бұрын
That's awesome man, thanks for sharing.
@Muck-qy2oo5 жыл бұрын
1:20 Game start. :)
@GTA683456 жыл бұрын
Fascinating. I hope you find some time to make videos besides your studies.
@emilioguevara991811 ай бұрын
Bro and you did this in C I’m done.
@DragonRazor92833 жыл бұрын
insane!!
@alerey43636 жыл бұрын
keyboard input? if so, every keystroke you press is a fixed distance the object moves right? I mean, it's not some quirky delay we see in the movement because of low framerates but instead because there's no way of detecting keydown and keyup events from keyboard while in terminal text mode right?
@KayOScode6 жыл бұрын
Correct. It ran at over 1000 fps on my computer. I could have used other libraries, but I liked this input scheme. NCurses supplies only one input method and that's getch(). It just returns when a key has been pressed on the keyboard. I could not check to see when that key had been released so there was no good way to determine how long the key had been pressed.
@geoffroy4946 жыл бұрын
Wow... Impressive !
@hamza-trabelsi3 жыл бұрын
I have a question please , Why there are gaps between pixels in your game, since it renders to any pixel it should give results like OpenGL right ?
@KayOScode3 жыл бұрын
Its rendering in ncurses, so the output is into a terminal. The bmp output can be used in the same way as opengl, but only if its being output to a window rather than to terminal text. This could certainly be used as a full software renderer if you were to add gpu acceleration
@hamza-trabelsi3 жыл бұрын
@@KayOScode is there any possibility in ncurses , to get a window handle and pass the rendering to it instead of a terminal ?
@KayOScode3 жыл бұрын
Definitely, but if I were doing it, id just stop using ncurses. The win32 api has a function called bitblt which allows you to write raw pixel data to the screen. Its very quick and easy to modify this code to output colors instead of letters and simply use bitblt to draw the framebuffer to the window to render
@alexbrau33114 жыл бұрын
THE SAME THING A WANTED TO SAY. F*****G GREAT!
@dariusduesentrieb6 жыл бұрын
Is it an adapter to OpenGL or all done manually. If done manually only on the CPU or also GPU accelerated?
@KayOScode6 жыл бұрын
The entire thing is software rendered and its done on the CPU. My framebuffer system is done as an array of pixels in the same format you would expect from a bitmap image. Framebuffers also include depth buffers to ensure pixels are written in the correct order. I have 2 framebuffers. One being rendered in a background thread, and the other being presented to the user. It is quite a bit slower to present the framebuffer than it was to render to it. I could have done it on the GPU, but I did it in C, and I did not want to use any external libraries. I had to throttle a lot of the threads to keep my CPU from overheating.
@NatalieBeck-b4p4 ай бұрын
Daugherty Green
@electronicwoe5 жыл бұрын
Is the binary or source for this published anywhere? I;d like to play it/mess with it.
@tekashi59626 жыл бұрын
Teach us more
@StickySli4 жыл бұрын
I swear that I have played a similar game in my childhood around 2003. Anyone knows any similar game where the monkey head is a space ship? The goal was to reach the end too and to avoid obstacles.