I think... I finally found an okay-ish mic? And an okay-ish video editor? This is the fourth editor I've used, it's crashed the least times so far. (Edit: I don't need more editing/audio advice, please stop pinging me!)
@@Swampmog Difficulty is, I've also got to edit out my stutter. The original recording was 20 minutes long, almost 50% of which was me stuttering and stumbling over my lines! No alternative than to painstakingly go through the whole thing with Audacity to edit them out.
A "couple" of months, and you passed from a red triangle that slides in a level full of extremely warping textures ... TO THIS. Pure programming wizardry, BRAVO !!!
When you were explaining shadows I was like “why not use dithering like Asterix and Obelix” but then you reminded me SM64 has transparent water. Absolutely insane you got that to run at all, let alone without killing performance
it is insane what decades of information and optimizations can bring to old consoles. this is absolutly beyond what i could have ever thought the gba was capable of
@@Cybertronic72388 IIRC the PS5's GPU is, on paper, about as powerful as an old RX 580 plus some extra ray tracing cores. Now imagine what people could pull out of current high-end PC hardware if they really, really tried...
The last 3 weeks have been a circular process of writing a script, implementing something new, needing to rewrite the script to fit it in, etc. I'm feeling better about making videos though, it's getting more fun the more I do it. Making in-video graphics is less painful now. I think I'm slowly gearing up for an hour-long technical deep-dive or something!
This is possibly the most impressive videogame project I've seen, plus, this is what some of us dreamed back on the early 2000's, the "super mario advance 64". Really thank you for that effort!
I never knew the GBA had no floating point support *at all*. That's so insane to me considering everything I've ever seen on it, let alone this project, congrats for getting it to run this well dude.
A lot of modern developers of older consoles have the advantage of hindsight and modern tools. Still, this is insanely impressive work and I couldn’t replicate it if I tried.
Don't want to seem too negative, but the answer is nothing. They would have done nothing. There were plenty of 3D games on the GBA (as well as platformers, check Asterix & Obelix XXL) but nintendo only ever saw the GBA as a 2D console only. Nothing 3D would have ever come out of them unfortunately.
@@Tr4ns1st0rYeah this is the biggest reason as to why Nintendo wouldn’t have been able to make this back then, yet alone make a new non-Mario 64 game that required the same features. Joshua does have the benefit of working with modern technology including emulators, IDEs, etc, as well as the 20 years in information of how to design + develop 3D game engines efficiently, and how to use GBA hardware to its fullest. He also has the benefit that this project only has to be able to include everything that was in the final release of Mario 64, even if just barely. It doesnt need extra overhead to test new features or levels, or increase / decrease the scope of the game, which is something the original Mario 64 dev team had to work around - they didn’t know what the game had to include until it was fully developed. This doesn’t make being able to run this game any less physically impressive, nor does it make Joshua any less knowledgeable.
@@Lo-SirMore like the final nail in the coffin. They started killing their reputation releasing the sega cd and sega 32x. Wouldve fared way better if they never released those 2 addons.
What's so fascinating about projects like these is. I remember many developers telling us that oh this game was impossible to court or you can't do this graphical function on said system and then like 10 years later someone like this would come along and is blow everyone. One of the main reasons why we need to preserve Homebrew communities and game preservation and I honestly look forward to see similar impossible things to happen for what we consider modern video games now. Be someone in 8 years will bring full-on Ray tracing at 30 frames per second to Nintendo Switch? Who knows!?
@@Krutonium Ray tracing is a relatively ancient algorithm, and can be done on any computer. The only question is "what object are you rendering" and "how soon do you want it."
this is honestly the coolest demake project ive seen, especially with how much progress is being made considering the sheer scope of it all, legendary stuff.
I bet you feel like the mad scientist who created Frankenstein, except it is a monster of a game ported into hardware thought to be incapable- if not impossible- doing this.
@@TomatoRadio And coding is both an art and a science. Therefore, I'd like to consider this to be 'mad' not in a horrible sense, but as a "it works!" sense But you're also right, I was kinda wrong in that regard
The amount of people in the comments sying that theres no reason to make this, is astonishing. Like have some of you guys never done anything just for the fun & challenge of it?
It's insane this was just a red triangle just 4 months ago. I really do feel you'll find a brilliant way to optimize for enemies and see this project to the end. It really deserves recognition.
i like to imagine how just absolutely monumental and earth shattering this wouldve been if this actually came out during the time of the GBA's peak like everybody's minds wouldve been absolutely blown to peices
That's the cousin of my imaginations of "how the heck would people in the 8bit days even react if they just randomly saw a time traveler with a Switch?"
When mario jumps under water I was absolutely blown away. I've never seen any gba game come close to this and I was obsessed with collecting all the FPS games and 3d games that pushed the console to its limits.
I didn't understand 60% of that but what I did understand blew my mind. Everything needs to be overengineered because that's the only way it can be done, and that makes every bit of progress incredible.
If anything, the opposite! Under-engineering is the way to go. Do as little as possible, as quickly as possible. It's the Soyuz of the development world, not the Artemis.
the LUT trick for transparency was also used in DOOM's partial invisibility effect... this is extremely awesome, love seeing your progress in the project!
Heh, TIL. It's a neat little trick, and - if you're careful with memory - you can even use an array of LUTs to achieve textured transparency, just about.
@@jsbarretto doom actually didn't do textured transparency, even though the effect looks like it. it kinda used the frame itself as a sort of lut as part of the "animation" in the transparency effect.
I'm still in disbelief in what I'm witness. This is absolutely mindbogglingly amazing! Understanding 3D programming makes one appreciate the challenges you have over come even more so! Keep it up!
From the POV of an intrigued outsider with very limited game dev knowledge like myself, this already looks mad impressive. I can imagine actual devs and programmers feeling like they just rediscovered fire upon watching this unfold.
I like how at the beginning of the video you basically explain how it's impossible to make a SM64 port to the GBA and then show how you did it. Honestly this is crazy though and I never though any complex 3d, beyond something like a spinning cube, was possible. These crazy optimisations by finding other ways to process things that give the same result are just insane. Whenever I try to make any games I get a 2d platformer to barley run on a modern cpu! This is so interesting and inspiring!! Keep up the good work!!!
At some point I want to do an hour long deep-dive into some of the more interesting parts of the game's code, so watch out for that if you're interested.
3d has always been smoke and mirrors, its just became more advanced with accelerated graphics. at the end of the day you are using one dimensional memory to project 3 dimensions on a 2 dimension screen.
The particle effects really do make it feel a bit more alive. Utterly fantastical and magical project. So much skill on display. Thank you for sharing!
Amazing!!! This has to be one of the coolest technical demonstrations of pushing GBA's hardware. I was really impressed by the Elite port to GBA where they fit an entire universe star systems, trading and combat into a GBA rom, but true to source, none of it was textured, shaded, and to be fair, im not 100% certain it culled geometry behind the camera (cant remember, i need to give it a play again). This has all of that, and resembles the source material so well!!!
This man is the living proof that, if we try hard enough, we can do anything at anytime. So keep up doing your best and don't listen to those that say it's impossible. Keep working until you finally fulfil your dreams! Impressive work here, as always!
Genuinely crazy how far you are pushing the GBA, this is past the level of stuff like Doom and Driver 3. Had you asked me 6 months ago what a version of Super Mario 64 would look like on the GBA, I would imagine an isometric platformer like Banjo-Kazooie: Grunty's Revenge
Goddamn this game just looks more and more insane with every update. Working slides? All the characters from 64 DS? Swimming? Damn at this point, it's pure wizardry that the GBA can even run it. Great job! Super excited to see what else you add to the project in future!
You, sir, are not just some wizard. You are the whole Lord of the rings, Harry Potter and D&D worlds combined together level of wizard. My jaw is on the floor
Every upload I am hopeful that you will have made things even MORE efficient, and I am never disappointed. I hope this stands as a case to many people about how exciting and liberating optimization really is. Oh btw, I know you can't just make it more efficient EVERY single upload... and when that time comes, I promise, I will NOT be disappointed! This is the coolest hobby project ever
I didn't expect the waterfall animation. Nice! Also, it's amazing that you're adding so many elements and still maintaining the same performance, I can only imagine how challenging it is every time.
@@jsbarretto If keeping everything at very low sample rates is the plan, you could try low pass filtering out the higher frequencies from the sounds before they are downsampled, which should tame some of the more egregious aliasing artifacts.
This is such a cool project. I really hope it doesn’t get cut short like portal 64 did recently. A Nintendo game on a Nintendo console should cause less problems but only time will tell
This is so impressive! It's so interesting to see Mario 64 on GBA. I remember when this project started out when Mario was just a red triangle, and that was impressive as it was. It's amazing to see how much progress has been made since then, and how good this is!
This is absolutely incredible! I've long known this is possible in theory with enough skilled programming, but I'm thrilled to see someone finally making it a reality!! I just have one small suggestion I'd like to see implemented in the next update: The long jump seems a bit shorter and faster than it should be. Not quite the floaty lunging motion that the SM64 long jump is known for, Mario just sort of jolts forward a bit. I feel the long jump would benefit from being slowed down both in animation speed and in forward velocity.
@jsbarretto That's awesome to hear! Totally random follow-up idea, it would be so cool if the previously playable characters (Luigi, Yoshi, Wario) had their physics and abilities as they did in SM64DS. The flutter jump, for example, or Luigi's water-running
I was very impressed with the GBA Tomb Raider conversion demo and thought it would not be topped. However, I was wrong, and this is on a whole new level! Very impressive work!
This is absolutely charming. But you have to do the boot screen with the giant Mario head. Also have you considered simplifying the skyboxes. Simplification (reduction in pixel count/colors) along with probably blurring/reducing details could reduce memory usage further.
@ Thanks for the reply. I was thinking in terms of memory bottlenecks, specially if you’re trying to load additional assets, enemies, etc. But you’re way more ahead in this than I am. Incredible how you’ve manage to run in software. I’d be curious if you could run the first level of MGS1 on a gba.
bloody brilliant, man. this stuff is an absolute blast to watch. it's clearly and easily the furthest everyone has seen the GBA been pushed, and it kinda just proves that you can essentially "port" anything to anything with enough time, effort, and compromises would you say the ECS follows a sorta Data Oriented Design approach to things, or is that different?
The advantages of the ECS are diminished compared to modern hardware, given that there's no cache and so no real cost for non-contiguous memory access. I mostly just enjoy implementing and using ECS architectures. They're much more dynamic and I think in a naturally data-oriented way anyway. OOP just isn't for me.
Amazing optimization work, it's super interesting. The swimming movement does indeed show how good of a 3D engine this is for a GBA. Truly impressive work, well done :O
I think what impresses me the most is this look... legitimately playable. Like I could picture being given this when GBA came out, and enjoying playing it.
I really want to see what a Smash Bros Advance would be like if it came out around the time Melee did as like a handheld companion game to it. Someone made a Smash for Gameboy fan game a few years ago so why not for GBA too?
@@wlb277 I can’t believe that in all these years especially with the homebrew scene around GBA that nobody has made Smash Bros Advance yet. I always thought it was the perfect handheld for it even more than the DS
I don't own a GBA right now, but if this conversion gets finished and somehow produced on original cartridge, I would instantly buy it without a second thought. It's a true marvel what is being achieved here.
This is unbelievable i was here since mario was a red triangle the amount of work completed on the GBA! Might as well call it Super Mario Advance 5: Super Mario 64, also this shows how much more the DS is then the GBA
Great work Joshua !! ❤ Keep improving the code. But don't ad more objects than the graphic engine can handle (maybe add a bunch of moving enemies). The actual frame rate is pretty good considering the complexity of the environments.
This is one of those perfect examples of how hardware limitations made for better optimised games back in the day. The fact that Mario 64 can be optimised to run this well on GBA hardware is insane, and quite honestly, a technical marvel. The fact that it's not just Mode 7 trickery makes it so much more impressive. As a Senator of Naboo turned Supreme Chancellor once said: "We will watch your career with great interest"
I've been subscribed since your first Mario 64 gba video and I cannot even come close to wrapping my head around it. I do not know how everything can be such high fidelity and run smoothly.
@@willcubemakes from what I've seen 3DSage's projects look more like tech demos, but Mario 64 GBA looks like it could be passed off as an actual port at the rate it's going in my opinion. In fact, the entirety of SM64 could probably be recreated using this engine once it's in a complete state, that is if the Nintendo ninjas don't swoop in
@@HedgeRobo Agreed! I'm talking mostly about his GBA engine (doom-style renderer) with a built in map editor! Maybe it's just because I like 2D map editors but making maps ON THE GBA and then playing them seems awesome.
I'm hoping the same. Still: if they do go after it, I've still got a pretty capable 3D engine that is entirely separate from anything Nintendo-related that I can use to make other GBA games.
Dont release anything til you’re happy with it potentially being snuffed out that day, assume you’ll get one shot at releasing anything, and as long as one build gets out, it can never be removed from the internet. 😊
@@jsbarrettoIf you can't release this game. (Still a big shame, it would've been a blast!) Would you release the 3D engine for GBA homebrewers? It's just an engine, it doesn't infringe on existing IPs.
@@mcgrog I think he just doesn't want legal trouble, we all know how Nintendo loves doing that. A bigger problem for him personally than the ROM being snuffed out online if that's what you're saying.
This is incredible. I always wanted SM64 on GBA. Got SM64 DS for Christmas but accidentally returned it to Walmart with my DS as it had some defects out of the box. By the time I realized my mistake and reached out to Walmart, the game had “disappeared” from the DS so I never did get to play that version.
I think... I finally found an okay-ish mic? And an okay-ish video editor? This is the fourth editor I've used, it's crashed the least times so far. (Edit: I don't need more editing/audio advice, please stop pinging me!)
the mic sounds good, and the edting is awesome
I personally use clipchamp, does what i need to do. It is very intuitive, and i reccomend it.
@@Swampmog Difficulty is, I've also got to edit out my stutter. The original recording was 20 minutes long, almost 50% of which was me stuttering and stumbling over my lines! No alternative than to painstakingly go through the whole thing with Audacity to edit them out.
the mic sounds much better!
What editor?
Pure wizardry
Wow it's Intern 2
hi Jack, glad to see you've found this masterpiece of a project
It’s Johnathan Movies
you you small man
Holy crap, didn't expect you to be here! I love your YIAY series!
i literally would spend hours thinking about how a mario advance 5: sm64 game would work as a kid. thank you for validating my childhood
I was the same. It's why I did it!
@@jsbarretto could you put the name Mario Advance 5: SM64.
Thanks project.
More like Super Mario Advance 8 to me
Super Mario advance 64.
@@lessi5_uamore like super advance mario advance :D
Incredible work as usual!
Hey Nathaniel!
Ain’t you Nathaniel B
Can't wait to watch you speedrun it when BoB finally becomes playable >:)
I don’t care for you, sir
Nathaniel is an AI bro unfortunately
1960: In the future we will have flying cars.
2024: We have Mario 64 on the GBA. This is way more impressive.
Flying cars are just helicopters. Can helicopters play Mario 64? Didn’t think so.
Do you really want people having flying cars over your house 😂?
@@harmhoeks5996 We already shouldn't be letting some people on the road, forget letting those mfs fly
@@blu3260 Comedy sketch: EVTol soccer mom
Well... 2015: WE GOT PS1 ON GBA 4 REAL
Extremely well done!
As a games programmer who worked on GBA titles back in the day, this is light years ahead of anything we were doing :)
Oh, interesting! Work sort of things did you work on?
@@jsbarrettohe's probably a lier
@@fazeslasher7927😂😂😂😂😂
@@fazeslasher7927*liar
@@jsbarretto he's working on lying and escaping when asked to elaborate
After this, he's going to port Elden Ring to the Sega Genesis.
this guy is going to port doom into the real world
He’s gonna port pokemon to the game and watch
@@Roberttscy he's gonna study demonic summoning and shit in that case
LMAO
Would probably run better too.
This is humanity's greatest achievement. I love this so much
Heya, I recognize you! Good to see you here! SM64GBA is indeed an awesome project!
currently praying for you to play this on your channel if Joshua sends you a copy
The transistor but ok
Since the TV dinner
Maybe someone will even mod Sonic into it…..
I mean, if this ever releases, which I don’t see happening because of Nintendo
A "couple" of months, and you passed from a red triangle that slides in a level full of extremely warping textures ... TO THIS.
Pure programming wizardry, BRAVO !!!
When you were explaining shadows I was like “why not use dithering like Asterix and Obelix” but then you reminded me SM64 has transparent water. Absolutely insane you got that to run at all, let alone without killing performance
Random mothersbasement appearance, gotta love it
im amazed how non jittery the ground now looks! amazing!
See the last video (if you haven't already) if you want to know the technical details behind how it got less jittery!
@@jsbarrettoHow "less jittery" can it go? Have we hit the ceiling or do you have even more insane wizardry left? Lol
it is insane what decades of information and optimizations can bring to old consoles. this is absolutly beyond what i could have ever thought the gba was capable of
Imagine what we can do with modern hardware if developers were free to do it without management pressuring them with other things
we stand on the shoulders of giants
@@Cybertronic72388 IIRC the PS5's GPU is, on paper, about as powerful as an old RX 580 plus some extra ray tracing cores. Now imagine what people could pull out of current high-end PC hardware if they really, really tried...
@@SkyyySi The PS5 shares the same characteristics and architecture as the RX 6700 10GB, so you're quite far off.
an 11 minute mario 64 gba video? this feels like a very early christmas present.
The last 3 weeks have been a circular process of writing a script, implementing something new, needing to rewrite the script to fit it in, etc. I'm feeling better about making videos though, it's getting more fun the more I do it. Making in-video graphics is less painful now. I think I'm slowly gearing up for an hour-long technical deep-dive or something!
@@jsbarrettoI'm so down for a deep-dive on this 👀
Christmas keeps happening earlier and earlier every year...
@jsbarretto well your doing a great job, I am watching it for a second time now.
@@jsbarretto Please do a deep technical dive on this! The longer the better! This is absolutely amazing work! Thank you so much for doing this!!
This is possibly the most impressive videogame project I've seen, plus, this is what some of us dreamed back on the early 2000's, the "super mario advance 64".
Really thank you for that effort!
I never knew the GBA had no floating point support *at all*. That's so insane to me considering everything I've ever seen on it, let alone this project, congrats for getting it to run this well dude.
imagine the stuff nintendo would have been pumping out on their ancient handhelds if this guy worked at nintendo back then
A lot of modern developers of older consoles have the advantage of hindsight and modern tools. Still, this is insanely impressive work and I couldn’t replicate it if I tried.
Don't want to seem too negative, but the answer is nothing.
They would have done nothing.
There were plenty of 3D games on the GBA (as well as platformers, check Asterix & Obelix XXL) but nintendo only ever saw the GBA as a 2D console only. Nothing 3D would have ever come out of them unfortunately.
@@Tr4ns1st0rYeah this is the biggest reason as to why Nintendo wouldn’t have been able to make this back then, yet alone make a new non-Mario 64 game that required the same features. Joshua does have the benefit of working with modern technology including emulators, IDEs, etc, as well as the 20 years in information of how to design + develop 3D game engines efficiently, and how to use GBA hardware to its fullest. He also has the benefit that this project only has to be able to include everything that was in the final release of Mario 64, even if just barely. It doesnt need extra overhead to test new features or levels, or increase / decrease the scope of the game, which is something the original Mario 64 dev team had to work around - they didn’t know what the game had to include until it was fully developed.
This doesn’t make being able to run this game any less physically impressive, nor does it make Joshua any less knowledgeable.
@@Lo-SirMore like the final nail in the coffin. They started killing their reputation releasing the sega cd and sega 32x. Wouldve fared way better if they never released those 2 addons.
@@Tr4ns1st0r And no crunch.. oops I meant Miyamoto's "Mario Time!"
What's so fascinating about projects like these is. I remember many developers telling us that oh this game was impossible to court or you can't do this graphical function on said system and then like 10 years later someone like this would come along and is blow everyone. One of the main reasons why we need to preserve Homebrew communities and game preservation and I honestly look forward to see similar impossible things to happen for what we consider modern video games now. Be someone in 8 years will bring full-on Ray tracing at 30 frames per second to Nintendo Switch? Who knows!?
I am a homebrew maximalist, I completely agree. Archive and preserve all the things!
@@jsbarrettofrfr
I had no idea blowing everyone was also part of this project, you're really going above and beyond.
This may be of surprise to you, but raytracing *has* been done - On the SNES.
@@Krutonium Ray tracing is a relatively ancient algorithm, and can be done on any computer.
The only question is "what object are you rendering" and "how soon do you want it."
this is honestly the coolest demake project ive seen, especially with how much progress is being made considering the sheer scope of it all, legendary stuff.
I bet you feel like the mad scientist who created Frankenstein, except it is a monster of a game ported into hardware thought to be incapable- if not impossible- doing this.
Frankenstein was the mad scientist
@@TomatoRadio And coding is both an art and a science. Therefore, I'd like to consider this to be 'mad' not in a horrible sense, but as a "it works!" sense
But you're also right, I was kinda wrong in that regard
The amount of people in the comments sying that theres no reason to make this, is astonishing. Like have some of you guys never done anything just for the fun & challenge of it?
If they could, they wouldn't be commenting.
great point. no they haven’t. salty af youtube commenters.
@@DerMeisterEditsthat’s why NASA isn’t in the chat
It's insane this was just a red triangle just 4 months ago. I really do feel you'll find a brilliant way to optimize for enemies and see this project to the end. It really deserves recognition.
Just thinking that there is the possibility that a game back then could look like this is crazy..
I really wonder how people would've responded. I think it would've blown people's minds
@@MaxOakland
Right?!
I remember being shocked that the DS could run Super Mario 64.
Hi Christian 👋
Nintendo hätte einfach alles gekillt, wenn sie Super Mario 64 so aufs SNES und den GBA gebracht hätten.
i like to imagine how just absolutely monumental and earth shattering this wouldve been if this actually came out during the time of the GBA's peak
like everybody's minds wouldve been absolutely blown to peices
I would’ve been blown away and I wasn’t even born yet
Your parents would be too busy playing m64 on the GBA!@@KingPringles12
I bet it would have like 1hr of battery life with all the work the GBA has to do.
@@Cybertronic72388what are you waffling about?
That's the cousin of my imaginations of "how the heck would people in the 8bit days even react if they just randomly saw a time traveler with a Switch?"
I'm really impressed with how far you have been able to push the limits of the GBA. Congratulations! Looking forward to seeing more :)
Guinxu!!???
Wth?!? Its Guinxu!!!
This is insane. Getting any 3d without even native floating point support, no matter how potato is extremely impressive
I mean, the PS1 managed to pull it off.
As a proper game developer, this is fucking crazy.
What studio do you work for?
I used to be a proper game developer, but became an improper one after I stopped wearing pants to work
@@davidlane1248 I never wear pants to work, mostly because I work from home. Does this make me an improper game dev?
@@Swampmogif anything it makes you more proper 😅
Only British devs are proper ones
At 7:35 it looks like Luigi has two middle fingers up going down the slide. No disrespect just thought that was funny. This is insane.
I can't unsee that now. Ironic, really, given that his entire hand is composed of just 4 triangles.
"THATS RIGHT MOTHERFUCKERS, IM ON THE GBA RIGHT NOW"
@@jsbarrettomake it as a fun gag easter egg
Average Luigi behavior
Add the luigi death stare from mk8 💀
It's the endless list of tiny ideas that solve problems make your work seem magical. Finding look up tables to add believable transparency is genius.
This was my main reason for moving to the paletted mode originally so it's nice to see it finally paying its way.
When mario jumps under water I was absolutely blown away. I've never seen any gba game come close to this and I was obsessed with collecting all the FPS games and 3d games that pushed the console to its limits.
I think the exact thing as you.
And i have your same obsession since 2007.
Don't forget, you're watching this gameplay on big screen. Image how good it will look like on an actual gba screen
This will look beautiful on an Analogue Pocket too, which is where I will be choosing to play it
Im watching this on my phone tho
@@trippivey I mean even then it is still a big screen compared to the original GBA screen, unless you are on an iPhone 4 or something that small.
@@GreenLeefMusic in vertical mode the sceen is pretty similar to gba in screen size
It was shown on the GBA in a previous video, and it looked fantastic.
Imagine if this came out in 2002. That would have been crazy! (Yes, it was impressive in 2004 on the DS.)
I can't believe how far this project has come since the first video when Mario was just a triangle, absolutely stunning work!
Honestly, it’s bonkers how well this is working. Can’t wait to see you add enemies and stuff to some of the levels.
Jolly Roger Bay on a gba is the greatest thing i've ever seen. Bravo man, this is great
I'm so attached to this project
Snepy¿?¿?
I didn't understand 60% of that but what I did understand blew my mind. Everything needs to be overengineered because that's the only way it can be done, and that makes every bit of progress incredible.
If anything, the opposite! Under-engineering is the way to go. Do as little as possible, as quickly as possible. It's the Soyuz of the development world, not the Artemis.
Wow, these transitions are similar to our ga- Oh, similar to previous games too, got it, we're still keeping an eye on you Joshua.
- probably a Ninja
I can't believe how far this has come.
This is beyond impressive. This almost looks and runs like Super Mario 64 DS. Well done! You've achieved the otherwise impossible.
the LUT trick for transparency was also used in DOOM's partial invisibility effect... this is extremely awesome, love seeing your progress in the project!
Heh, TIL. It's a neat little trick, and - if you're careful with memory - you can even use an array of LUTs to achieve textured transparency, just about.
@@jsbarretto doom actually didn't do textured transparency, even though the effect looks like it. it kinda used the frame itself as a sort of lut as part of the "animation" in the transparency effect.
seeing the game running on a GBA with actually playable looking graphics is absolutely wild, never would've thought this is possible until now
This is beautiful. I love hearing the compressed audio as well XD. Up there with Portal 64, and Kaze's stuff. Keep it up dude!!
I'm still in disbelief in what I'm witness. This is absolutely mindbogglingly amazing! Understanding 3D programming makes one appreciate the challenges you have over come even more so! Keep it up!
From the POV of an intrigued outsider with very limited game dev knowledge like myself, this already looks mad impressive. I can imagine actual devs and programmers feeling like they just rediscovered fire upon watching this unfold.
I like how at the beginning of the video you basically explain how it's impossible to make a SM64 port to the GBA and then show how you did it.
Honestly this is crazy though and I never though any complex 3d, beyond something like a spinning cube, was possible.
These crazy optimisations by finding other ways to process things that give the same result are just insane.
Whenever I try to make any games I get a 2d platformer to barley run on a modern cpu!
This is so interesting and inspiring!!
Keep up the good work!!!
At some point I want to do an hour long deep-dive into some of the more interesting parts of the game's code, so watch out for that if you're interested.
@@jsbarretto yeah that would be an interesting video
3d has always been smoke and mirrors, its just became more advanced with accelerated graphics. at the end of the day you are using one dimensional memory to project 3 dimensions on a 2 dimension screen.
@@turtlefrog369 yeah true. Even us humans perceive our 3d universe (not including time) as 2nd image and our brains fill in the gaps to create depth.
@@stevenlee3661 well we perceive depth through colour shades/contrast and by having two eyes.
Imagine if this guy traveled back into the past. He would have made a lot of money porting n64 games to the Gameboy. Truly impressive stuff here.
holy optimisations Jesus, I'm more than impressed, this is insane!
This is genuinely the coolest work i've ever seen inside of this community.I'm so glad this is why the internet exists
The particle effects really do make it feel a bit more alive. Utterly fantastical and magical project. So much skill on display. Thank you for sharing!
Amazing!!! This has to be one of the coolest technical demonstrations of pushing GBA's hardware. I was really impressed by the Elite port to GBA where they fit an entire universe star systems, trading and combat into a GBA rom, but true to source, none of it was textured, shaded, and to be fair, im not 100% certain it culled geometry behind the camera (cant remember, i need to give it a play again). This has all of that, and resembles the source material so well!!!
This man is the living proof that, if we try hard enough, we can do anything at anytime.
So keep up doing your best and don't listen to those that say it's impossible. Keep working until you finally fulfil your dreams!
Impressive work here, as always!
Genuinely crazy how far you are pushing the GBA, this is past the level of stuff like Doom and Driver 3. Had you asked me 6 months ago what a version of Super Mario 64 would look like on the GBA, I would imagine an isometric platformer like Banjo-Kazooie: Grunty's Revenge
Goddamn this game just looks more and more insane with every update. Working slides? All the characters from 64 DS? Swimming? Damn at this point, it's pure wizardry that the GBA can even run it.
Great job! Super excited to see what else you add to the project in future!
You, sir, are not just some wizard. You are the whole Lord of the rings, Harry Potter and D&D worlds combined together level of wizard. My jaw is on the floor
Every upload I am hopeful that you will have made things even MORE efficient, and I am never disappointed.
I hope this stands as a case to many people about how exciting and liberating optimization really is.
Oh btw, I know you can't just make it more efficient EVERY single upload... and when that time comes, I promise, I will NOT be disappointed! This is the coolest hobby project ever
I didn't expect the waterfall animation. Nice!
Also, it's amazing that you're adding so many elements and still maintaining the same performance, I can only imagine how challenging it is every time.
The sound being so bit-crushed is both hilarious and charming
8 KHz, wooo
@@jsbarretto If keeping everything at very low sample rates is the plan, you could try low pass filtering out the higher frequencies from the sounds before they are downsampled, which should tame some of the more egregious aliasing artifacts.
@@savagedregime8176 Look at this comment, important thing to notice!!
@@savagedregime8176That might be too much for the hardware
@@DryPaperHammerBro The SNES managed to pull it off, so _hopefully_ it would work out okay.
This is such a cool project. I really hope it doesn’t get cut short like portal 64 did recently. A Nintendo game on a Nintendo console should cause less problems but only time will tell
This is so impressive! It's so interesting to see Mario 64 on GBA. I remember when this project started out when Mario was just a red triangle, and that was impressive as it was. It's amazing to see how much progress has been made since then, and how good this is!
This is absolutely incredible! I've long known this is possible in theory with enough skilled programming, but I'm thrilled to see someone finally making it a reality!! I just have one small suggestion I'd like to see implemented in the next update:
The long jump seems a bit shorter and faster than it should be. Not quite the floaty lunging motion that the SM64 long jump is known for, Mario just sort of jolts forward a bit. I feel the long jump would benefit from being slowed down both in animation speed and in forward velocity.
Yep, I'm not happy with several of the movement mechanics yet. There's still quite a bit of work to be done. It's a moving target, don't worry!
@jsbarretto That's awesome to hear! Totally random follow-up idea, it would be so cool if the previously playable characters (Luigi, Yoshi, Wario) had their physics and abilities as they did in SM64DS. The flutter jump, for example, or Luigi's water-running
Kaze underwent mitosis to create this guy. Insanely incredible work, keep it up!
Kaze wishes he was this ADVANCED
I mean imagine kaze helping, would be crazy
Kaze hates Original hardware though. This Dev doesn't! which makes he 1 bazillion times more respectable than Kaze!
I was very impressed with the GBA Tomb Raider conversion demo and thought it would not be topped. However, I was wrong, and this is on a whole new level!
Very impressive work!
This is absolutely charming. But you have to do the boot screen with the giant Mario head. Also have you considered simplifying the skyboxes. Simplification (reduction in pixel count/colors) along with probably blurring/reducing details could reduce memory usage further.
ROM space is actually not a major constraint at all, and the game runs fairly easily within the GBA's RAM limitations.
@ Thanks for the reply. I was thinking in terms of memory bottlenecks, specially if you’re trying to load additional assets, enemies, etc. But you’re way more ahead in this than I am. Incredible how you’ve manage to run in software.
I’d be curious if you could run the first level of MGS1 on a gba.
Just wanted to congratulate this impressive work, that brings back so many childhood memories, thank you!
Dang, this is getting pretty good man! Huge props to the sheer audacity to get this far, and to take it even further beyond!
you're a legend man
I haven't seen this mentioned much but I appreciate the improved quality of your voice over audio. It sounds very nice to listen to.
Yoshi is so adorable in this low resolution form! His eyes look so big lol 8)
The progress you've made on this is incredible! Seeing the DS characters, now all I can think about is Mario Kart DS demake for the GBA 😂
ive been watching all your videos on this port, good job on the progress!
Seeing other characters being applied with SM64 Mario animations is so surreal
bloody brilliant, man. this stuff is an absolute blast to watch. it's clearly and easily the furthest everyone has seen the GBA been pushed, and it kinda just proves that you can essentially "port" anything to anything with enough time, effort, and compromises
would you say the ECS follows a sorta Data Oriented Design approach to things, or is that different?
The advantages of the ECS are diminished compared to modern hardware, given that there's no cache and so no real cost for non-contiguous memory access. I mostly just enjoy implementing and using ECS architectures. They're much more dynamic and I think in a naturally data-oriented way anyway. OOP just isn't for me.
Amazing optimization work, it's super interesting.
The swimming movement does indeed show how good of a 3D engine this is for a GBA. Truly impressive work, well done :O
I think what impresses me the most is this look... legitimately playable. Like I could picture being given this when GBA came out, and enjoying playing it.
I can't believe how good this looks. Watching your previous videos, I was excited & impressed but I never expected it to look *this* good
Most incredible work I’ve ever seen in game development. You gotta shoot for Smash 64 after this. My hat goes off to you
I really want to see what a Smash Bros Advance would be like if it came out around the time Melee did as like a handheld companion game to it. Someone made a Smash for Gameboy fan game a few years ago so why not for GBA too?
someone has been making models for a hypothetical DS Smash Bros as a hobby, don’t think he’s going to turn it into a game
@@wlb277 I can’t believe that in all these years especially with the homebrew scene around GBA that nobody has made Smash Bros Advance yet. I always thought it was the perfect handheld for it even more than the DS
I'm just trying to imagine the button mapping for a GBA smash game. how would it work?
@@jclkaytwoA and B would do what they normally do, jump would have to be up on the dpad, L could be shield and R could be grab
I don't know if this would have been possible at the time of the GBA's release, but it's certainly possible now, as you're proving! Incredible work.
I don't own a GBA right now, but if this conversion gets finished and somehow produced on original cartridge, I would instantly buy it without a second thought. It's a true marvel what is being achieved here.
This is absolutely crazy work that no one else is brave enough to do, thank you for your service to the gaming community
This is unbelievable i was here since mario was a red triangle the amount of work completed on the GBA! Might as well call it Super Mario Advance 5: Super Mario 64, also this shows how much more the DS is then the GBA
Great work Joshua !! ❤
Keep improving the code.
But don't ad more objects than the graphic engine can handle (maybe add a bunch of moving enemies).
The actual frame rate is pretty good considering the complexity of the environments.
This project is incredible! You have been working so fast too!
This project is going so fast and smoothly. I can't believe how much better it got in such little amount of time
The new sounds and music really help making these worlds feel alive, as usual, amazing work !!
Your work never ceases to make my day. Incredible! When you're done with this...How about Halo on the GBA? HAHA
Don't tempt me, Frodo!
@@jsbarretto Consider yourself tempted.
every single new update is just more and more impressive!
This is one of those perfect examples of how hardware limitations made for better optimised games back in the day. The fact that Mario 64 can be optimised to run this well on GBA hardware is insane, and quite honestly, a technical marvel.
The fact that it's not just Mode 7 trickery makes it so much more impressive.
As a Senator of Naboo turned Supreme Chancellor once said: "We will watch your career with great interest"
cringe
I've been subscribed since your first Mario 64 gba video and I cannot even come close to wrapping my head around it. I do not know how everything can be such high fidelity and run smoothly.
This is what in programming we call a "wizard", someone that can make the impossible a tuesday
omg the techniques used here are so smart this is so cool i love this project
This project has been insane so far, im excited to see where it goes from here!
2:28 *"NOW THE REAL GAMEPLAY STARTS"*
This is insanely high quality! 3D on the GBA still blows my mind. This project has come so far from when Mario was depicted as a series of triangles.
In fairness, he's still a series of triangles. It's just that N = 143 instead of N = 1
the amount of things you have been able to pull off in only 4 months is just unfathomable to me, you sir are incredible !!
This madlad makes rambus go vroom vroom on a machine that doesn't even have rambus.
My guy is definitely the king of GBA game development 😭🙏
it's close between him and 3dsage but I think he takes the crown
@@willcubemakes from what I've seen 3DSage's projects look more like tech demos, but Mario 64 GBA looks like it could be passed off as an actual port at the rate it's going in my opinion. In fact, the entirety of SM64 could probably be recreated using this engine once it's in a complete state, that is if the Nintendo ninjas don't swoop in
Real
@@HedgeRobo Agreed! I'm talking mostly about his GBA engine (doom-style renderer) with a built in map editor! Maybe it's just because I like 2D map editors but making maps ON THE GBA and then playing them seems awesome.
It’s insane just how much you’ve managed to push the GBA so far! Hopefully Nintendo doesn’t decide this project hurts them somehow and shuts it down
I'm hoping the same. Still: if they do go after it, I've still got a pretty capable 3D engine that is entirely separate from anything Nintendo-related that I can use to make other GBA games.
Dont release anything til you’re happy with it potentially being snuffed out that day, assume you’ll get one shot at releasing anything, and as long as one build gets out, it can never be removed from the internet. 😊
@@jsbarrettoIf you can't release this game. (Still a big shame, it would've been a blast!) Would you release the 3D engine for GBA homebrewers? It's just an engine, it doesn't infringe on existing IPs.
@@mcgrog I think he just doesn't want legal trouble, we all know how Nintendo loves doing that. A bigger problem for him personally than the ROM being snuffed out online if that's what you're saying.
@@I.V.G He doesn't even plan on releasing a ROM anyways but rather the source code for the project, which is even better.
This is incredible. I always wanted SM64 on GBA. Got SM64 DS for Christmas but accidentally returned it to Walmart with my DS as it had some defects out of the box. By the time I realized my mistake and reached out to Walmart, the game had “disappeared” from the DS so I never did get to play that version.
that underwater movement (and camera movement) is INSANE…. this is the coolest
Great work! Loved the extra info about the hardware limitations at the start.
It’s you