I've gotten this comment a few times in the past and never explained it very well. If you just skip the ImGui stuff and blit the framebuffer to the window that's basically all you need to do. That explanation probably isn't very useful though, so I made a commit in the main repository with all the changes to ship just the game without the editor :) You can check it out here github.com/codingminecraft/MarioCZcams/commit/481392aa5bc0890519b7926ff7897423c3ef5422
@@GamesWithGabe hey thanks for the reply - I figured it would be something like this - i made it a challenge to myself to implement a "Export" button once im at that stage.
Shouts out to everyone who's been watching since day 1. Eventually I'm gonna create a game engine that allows for practically everything. But for now just sticking to side projects.
Thank you, Gabe! I was stuck with OpenGL during my game engine development on Java. Your videos helped me to make this done. Also these videos helped me a lot in understanding of different game development concepts. Good luck to you!
Just want to say thank you for making this incredible series. I really learned a lot from here! I spend about 2 months watching this series, but you spend 2 years on this series, respect.
Lol yea, it's definitely still missing some features, but I wanted to wrap up the series since it was beginning to feel more like a "watch me code" than a "here's how to do this conceptual thing" kind of series :)
I'm so excited to follow this series. I'm going to start watching the full playlist soon, and will write back as soon as I'm finished. Thanks for the upload!
First of all great job, loved the editor and game play. And finishing such a long great series (first video for me) [Right into my heart, made a Mario clone in college, using VS basic, and DirectX I think.] I wanted to share a bug I saw, feature? Change. Anyways at 0:45 Mario jumps on a turtle and kicks it shell into a Goomba. This causes the shell to come back, in the full game, the should would have continued on, until it hits a block. Thanks for making this, found you through your minecraft, C++. While am a Unity developer sorta, I studied C++ in college and have been thinking about doing a refresh on the skill.
Yea, I've had the same problem with tutorials. I've also had the problem where I feel like I don't absorb anything and really learn the stuff. So I guess I'll see if this next series works and it teaches the material better :)
I just recently discovered this series, at episode 1 now but wanted to see if this is a completed series or not, thank you so much for finishing this series and not abandoning it like some other youtubers ^^"
Hey Voylin, thanks for the comment! I'm glad that you found this, and there's still a lot of value in some of the half completed series from other CZcamsrs. So they're definitely worth checking out when you get some time as well :D
Thanks for watching Angel! And Java is a pretty nice language to use for game programming, but if you're already using a language like C++ or Rust, I would say it's worth it to stick with those languages :)
hey, is the discord active? where can i get a link? im looking into making an engine for a big 2d rpg with an isometric pov, is this series suitable? how much would the principles differ
Congrats on completing the series, and thank you so much for your hard work. So, are there any plans to add user-defined scripting support to the engine in the future? For example, importing luajava so that the engine supports Lua. Hence users can use Lua scripts to write enemy AI instead of writing java source code directly. Also, all resources are now imported directly via java code using AssetPool. So maybe it would be a better option to put a button on the window's menu so that users can use the ImGui interface to import the resources they want?
Hey Air! I don't have any more plans for this code, the tutorial series was just meant to teach how you could approach coding an engine like this, and the code is there to aid the tutorial series. I think your ideas are great and if you want to implement them I think it would be worth your time :). It would also be interesting to add a scripting language to the engine, however I feel like that is better suited for C++ engines. It looks like luajava is coded in C, then accessed through the JNI. This means you're going through two layers of indirection which could be costly for performance. It would probably work a lot better in C++ since you have no indirection when accessing a language like lua :)
I think what people mean by separating the engine from the game, is creating a standalone game without the Engine Editor.. So the game is a standalone application with no editor interface. How would you go about doing that?
It could've been really helpful to see a full font rendering integration inside the engine, since there is no common method or library built in in lwjgl3 to do that.
Yes, that is one thing that I should have considered adding. I may update the code in the future, so you can star it in Github if you want to follow the updates. If I get some time I will definitely try to add the font rendering integration so it is there for reference :)
One note: Want the Minecraft series to be as comprehensive as this one. This style of teaching will be better so the watcher will get something that works not just theory
@@adham5149 thanks! I'm considering making a code-along series besides the concept series, but I don't want to show all the code step-by-step. I feel like people will learn a lot more by actually experimenting with the concepts themselves and trying to implement it their own way :)
Series going on for a year now, Is really looking forward to the Minecraft series in c++, Btw umm can you please make a video on how to setup the clone and run it, cause i am having a lot of issues ith it
Thanks Buggy! And you're having trouble with running the Minecraft clone? I haven't done much testing to ensure that it works on different systems yet. You should be able to follow the instructions in the latest Readme in the master branch though, and I have a lot of logging set up so it should give you useful error messages if it messes up. You will have to have Github and some sort of C++17 compiler installed, and it only works on 64-bit Windows right now :)
@@GamesWithGabe Memory leak detected. Allocated from: 'C:\dev\StreamMinecraftClone\Minecraft\src\world\Chunk.cpp' line: 78 There is a memory leak, and i got from like 5mb to 1.2gb in a second
@@buggybaka It will say memory leak detected if it crashes because it doesn't have a chance to free all the memory that was allocated properly. You don't have to worry about that because it will free all that memory once the application closes. But it should take up around 700 mb in it's current state, because it's just loading all the chunks around the player into RAM. Minecraft takes around 2-3 GB depending on the chunk radius as well. Like I said before though, the master branch is currently being changed quite often right now, and will be until I get the game to a playable state. Once I begin creating official releases in the repository you can expect the master branch to be more stable :)
Unfortunately Android isn't my area of expertise. I've only ever used Android Studio for creating those kinds of apps, I do know that you would have to switch to OpenGL ES, which may require using some different features of OpenGL than the ones I used
@@GamesWithGabe I am developing for android. For OpenGL no difference in your opengl rendered code and android 3.0 ES code at all. Was just wondering how people make port possible because its so complicated .
@@Destroyer19941995, in regards to your other comments thanks! Some of the other series probably should have had a more well-defined scope of what to cover haha. But that's what I was thinking for OpenGL ES. I purposely chose OpenGL 3.3 for this series because I know ES doesn't support OpenGL 4+ yet, so I was hoping it would port pretty well. But in terms of how other people port it to different Android devices, I have no idea what they do to make that happen :/
How would you separate the game as in distribute the game you made separate from the editor and engine, just the playable game.
I've gotten this comment a few times in the past and never explained it very well. If you just skip the ImGui stuff and blit the framebuffer to the window that's basically all you need to do. That explanation probably isn't very useful though, so I made a commit in the main repository with all the changes to ship just the game without the editor :) You can check it out here github.com/codingminecraft/MarioCZcams/commit/481392aa5bc0890519b7926ff7897423c3ef5422
@@GamesWithGabe hey thanks for the reply - I figured it would be something like this - i made it a challenge to myself to implement a "Export" button once im at that stage.
This is an amazing series! Thanks for putting in the time to provide this free course.
No problem! I appreciate the comment, and all the content you provide as well freeCodeCamp :)
@@GamesWithGabe I contacted you about a collaboration. Did you see the e mail from beau [at] channelname?
It looks like the email ended up in my spam, but I found it and sent a response. Thanks for letting me know!
Shouts out to everyone who's been watching since day 1. Eventually I'm gonna create a game engine that allows for practically everything. But for now just sticking to side projects.
Congrats on completing the series, and thanks for introducing me the the wonderful work of game engine development
Thank you, Gabe! I was stuck with OpenGL during my game engine development on Java. Your videos helped me to make this done. Also these videos helped me a lot in understanding of different game development concepts. Good luck to you!
thank you so much, this series taught me alot of notions about how graphics works in general,keep up with the good work!
Just want to say thank you for making this incredible series. I really learned a lot from here! I spend about 2 months watching this series, but you spend 2 years on this series, respect.
I'm very excited to follow this series man!! Will build my own game engine soon for the first time in my life! :) Thanks!
Cant believe it. First finished game engine playlist on youtube. At least for Mario but it can easily be extended. Gratz.
Lol yea, it's definitely still missing some features, but I wanted to wrap up the series since it was beginning to feel more like a "watch me code" than a "here's how to do this conceptual thing" kind of series :)
@@GamesWithGabe Yeaa but still its finished. I cant find one channel with finished stuff.
@@GamesWithGabe Also gratz on 3k+ subs. Last time I was here it was at 1.95k??
Wow, great series, i am hyped for the Minecraft one! :D
Hey Gabe , just Finished The tutorial And I Have To Say That I'm So Excited For The Minecraft Series !!!
I'm so excited to follow this series. I'm going to start watching the full playlist soon, and will write back as soon as I'm finished. Thanks for the upload!
Are you still working on this..?
@@samochreno had to take a break until my classes are finished
Its been a great run! Thanks a bunch for the series Gabe!
Hey DevNugget! It's great to see you were able to hang around for the whole series, and thanks for sticking with me :)
@@GamesWithGabe :D
I know that you probably get this a lot, but you should have more views! The lessons learned from this series are priceless. Bravo!
Thank you for all dude!!
First of all great job, loved the editor and game play. And finishing such a long great series (first video for me)
[Right into my heart, made a Mario clone in college, using VS basic, and DirectX I think.]
I wanted to share a bug I saw, feature? Change. Anyways at 0:45 Mario jumps on a turtle and kicks it shell into a Goomba. This causes the shell to come back, in the full game, the should would have continued on, until it hits a block.
Thanks for making this, found you through your minecraft, C++. While am a Unity developer sorta, I studied C++ in college and have been thinking about doing a refresh on the skill.
Can't wait for the next series
Quite hyped fir the mc series, i dont like tutorials which are basically “heres a specific way to do this thing”
Yea, I've had the same problem with tutorials. I've also had the problem where I feel like I don't absorb anything and really learn the stuff. So I guess I'll see if this next series works and it teaches the material better :)
@@GamesWithGabe gl then
I just recently discovered this series, at episode 1 now but wanted to see if this is a completed series or not, thank you so much for finishing this series and not abandoning it like some other youtubers ^^"
Hey Voylin, thanks for the comment! I'm glad that you found this, and there's still a lot of value in some of the half completed series from other CZcamsrs. So they're definitely worth checking out when you get some time as well :D
YOU ARE THE MAN, GABE!
I really love the Imgui implementation :O)
Thanks a lot, Gabe! 非常感谢! :)
You are a legend my bro ❤❤❤❤
What a ride!
Thanks Gabe
Gracias Gabe, muy bonita serie de vídeos. Gracias a ellos estoy considerando más usar Java para programar videojuegos.
Thanks for watching Angel! And Java is a pretty nice language to use for game programming, but if you're already using a language like C++ or Rust, I would say it's worth it to stick with those languages :)
hey, is the discord active? where can i get a link? im looking into making an engine for a big 2d rpg with an isometric pov, is this series suitable? how much would the principles differ
Congrats on completing the series, and thank you so much for your hard work. So, are there any plans to add user-defined scripting support to the engine in the future? For example, importing luajava so that the engine supports Lua. Hence users can use Lua scripts to write enemy AI instead of writing java source code directly.
Also, all resources are now imported directly via java code using AssetPool. So maybe it would be a better option to put a button on the window's menu so that users can use the ImGui interface to import the resources they want?
Hey Air! I don't have any more plans for this code, the tutorial series was just meant to teach how you could approach coding an engine like this, and the code is there to aid the tutorial series. I think your ideas are great and if you want to implement them I think it would be worth your time :).
It would also be interesting to add a scripting language to the engine, however I feel like that is better suited for C++ engines. It looks like luajava is coded in C, then accessed through the JNI. This means you're going through two layers of indirection which could be costly for performance. It would probably work a lot better in C++ since you have no indirection when accessing a language like lua :)
is there a way to modify some things and send it to some people as a engine?
I am running this on gradle 8.2.1 and the command gradle fatjar is not working giving me an test compile() ERROR
Please can you recommand a course or a book of how to build a 2d game engine in javascript . Thank you very mush this serie was fantastic
Man dude I have no idea what's going on. But I love it!! It could easily sleep me to a coma 🤤
You're dead to me
I think what people mean by separating the engine from the game, is creating a standalone game without the Engine Editor.. So the game is a standalone application with no editor interface. How would you go about doing that?
Could you show us java 3d game engine Dev at some point too? Maybe after Minecraft is done?
thanks
It could've been really helpful to see a full font rendering integration inside the engine, since there is no common method or library built in in lwjgl3 to do that.
Yes, that is one thing that I should have considered adding. I may update the code in the future, so you can star it in Github if you want to follow the updates. If I get some time I will definitely try to add the font rendering integration so it is there for reference :)
You are the Boss
One note:
Want the Minecraft series to be as comprehensive as this one.
This style of teaching will be better so the watcher will get something that works not just theory
@@adham5149 thanks! I'm considering making a code-along series besides the concept series, but I don't want to show all the code step-by-step. I feel like people will learn a lot more by actually experimenting with the concepts themselves and trying to implement it their own way :)
Idk how to download the files
Series going on for a year now, Is really looking forward to the Minecraft series in c++, Btw umm can you please make a video on how to setup the clone and run it, cause i am having a lot of issues ith it
Thanks Buggy! And you're having trouble with running the Minecraft clone? I haven't done much testing to ensure that it works on different systems yet. You should be able to follow the instructions in the latest Readme in the master branch though, and I have a lot of logging set up so it should give you useful error messages if it messes up. You will have to have Github and some sort of C++17 compiler installed, and it only works on 64-bit Windows right now :)
@@GamesWithGabe Memory leak detected. Allocated from: 'C:\dev\StreamMinecraftClone\Minecraft\src\world\Chunk.cpp' line: 78
There is a memory leak, and i got from like 5mb to 1.2gb in a second
@@buggybaka It will say memory leak detected if it crashes because it doesn't have a chance to free all the memory that was allocated properly. You don't have to worry about that because it will free all that memory once the application closes. But it should take up around 700 mb in it's current state, because it's just loading all the chunks around the player into RAM. Minecraft takes around 2-3 GB depending on the chunk radius as well.
Like I said before though, the master branch is currently being changed quite often right now, and will be until I get the game to a playable state. Once I begin creating official releases in the repository you can expect the master branch to be more stable :)
Wondering tho if you know how to port this to android? That is how to make this engine create .apk and .aab files?
Unfortunately Android isn't my area of expertise. I've only ever used Android Studio for creating those kinds of apps, I do know that you would have to switch to OpenGL ES, which may require using some different features of OpenGL than the ones I used
@@GamesWithGabe I am developing for android. For OpenGL no difference in your opengl rendered code and android 3.0 ES code at all. Was just wondering how people make port possible because its so complicated .
@@Destroyer19941995, in regards to your other comments thanks! Some of the other series probably should have had a more well-defined scope of what to cover haha.
But that's what I was thinking for OpenGL ES. I purposely chose OpenGL 3.3 for this series because I know ES doesn't support OpenGL 4+ yet, so I was hoping it would port pretty well. But in terms of how other people port it to different Android devices, I have no idea what they do to make that happen :/
Gabe what will be your next project ?
Hey Luan! I'll be working on a Minecraft clone tutorial next :)
Did you ever code in networking ? Shouldn't be that hard even if you didn't
When is the 3D series coming? :o
I'll be doing a Minecraft tutorial series starting mid-November or early December :)
@@GamesWithGabe Looking forward! My maternity leave starts from December so great timing 😁✨
Come back ;(