Tomb Raider on the Nintendo Game Boy Advance is incredible | MVG
ฝัง
- เผยแพร่เมื่อ 23 ธ.ค. 2024
- The open source Tomb Raider engine known as OpenLara is running on the Nintendo Game Boy Advance. In this episode we uncover how this impossible port was achieved. And indeed how it runs at good speeds on the GBA.
Huge thanks to XProger for taking the time to answer my questions about this incredible port!
► Support the Channel - / modernvintagegamer
Music:
► Tomb Raider I, 1 featuring Lara Croft (1996)
► Tracks by: Nathan McCree
► Eidos Int. Limited / Core Design
Credits/Sources/Links:
► Download OpenLara for the GBA - github.com/XPr...
► Hard4Games : Tomb Raider on 3DO!!! What?! - • Tomb Raider on 3DO!!! ...
► Tomb Raider N-Gage - EKA2L1 Emulator - • Tomb Raider N-Gage - E...
► Rodrigo Copetti - www.copetti.or...
Social Media Links :
► Check me out on Facebook : / modernvintagegamer
► BandCamp : modernvintageg...
► Follow me on Twitter : / modernvintageg
#Nintendo #GBA #TombRaider
Of all the "Impossible ports", this is without a doubt the number #1. How he archieve this without FPU and an eighth of the PS1 RAM is mind-boggling
Let's not forget no 3d hardware capabilities, so it's all software rendering on a 16mHz(?) CPU? Insane.
Didn't it have the NEON SIMD extensions? That's had float math support.
At a guess it's probably lookup tables or something.
Or maybe they could do something with fast multiply?
You could sacrifice portability with some assembler, but it seems this openlara is an implementation for many platforms, so I don't know if that could work.
gba is literally just an arm snes, it's really impressive considering that star fox needed a seperate chip to render in like 10 fps or something on snes
Small amounts of ram yes, but you can put lots of look up data on the ROM.
Dunno how fast the ROM is though, probably pretty fast.
This is the most amazing thing I’ve ever seen. Full resolution 3D, 3D modeled characters, good textures, a solid frame rate, AND good sound design. This doesn’t just push the limits of the GBA, it downright breaks them.
If a studio ported it back in the day it would have been a strong seller. I remember being impressed that they managed to cram Wing Commander Prophecy (sans video) into a GBA cart that was not only playable but pretty fun too.
there was a Wing Commander game on GBA? there should have been one on Original Xbox
The legend lon 🙌
I presume you are talking about Raylight and their software based 3D engine called Blue-Roses 😉
⚃⬜⚀
Yes, the company have developed some of the most impressive 3D games ever made for the console.
Unfortunatly some of them (like Street Racing Syndicate) are really too ambitious for the console 😅
Yeah, but the same thing can be said about a lot of games, I'm pretty sure the original Crash Bandicoot would work on GBA if the characters were turned into sprites.
The GBA's low-res screen combined with the static camera angle would've made it hard to notice.
@@nickm5419 There was ! It was pretty good too all things considered - solid space combat.
This port is code optimization at its finest. Im so happy the art of optimizing for weak hardware is still a thing, it seems nobody cares about it in times of limitless RAM and crazy efficient GPUs.
Man, we need such things making a comeback in form of integrated pieces into game engines... Maybe then it will be more widely adopted.
In a way game devs care, being forced to come up with optimizations and work arounds lead to more creativity. But without needing to, they don't bother because they're overworked as is and if everything just works anyway why stress.
However, this is why many people are deemed Nintendo Loyalists, because their systems do need optimization still and have some pretty amazing games as a result, and not simply porting the PC version on low settings.
The story about what became XenoBlade (at least the one I heard) is arguably one of my favourite examples despite being over 10 years old
That's why I Adoooore Nintendo:
They. FORCe optimization.
:D
I love em so much or it.
It's a bit of a shame that going this deep takes so much effort that it can't be used in commercial games.
The Game Boy Advance was essentially used as just a SNES emulator. If only developers were down to write games in assembly it could have been so much more 🤷♂️
This is absolutely insane. Great breakdown.
[insert wumao screeching]
Oh shit it's the man!
CCP has entered that chat
Don’t forget Lao ganma
Love your videos Laowhy86!
Coding in assembly is a lost art. This guy's awesome.
It's actually undergoing a renaissance of sort lately. I notice more and more young people getting into low level programming. I guess things like retrogaming and speedrunning which is popular with young people make them more interested in understanding and writing assembler code.
It depends on where you develop software.
In the embedded realm it's still alive and well and I still use it very frequently.
I'd much rather program everything in assembly than anything else.
Coding is assembly isn’t that bad at all, it these crazy optimizations that some people come up with that it truly genius.
@@ZygalStudios What's the benefit of using assembly, if a higher level language is a viable option, other than bragging rights? Assembly has an inherent disadvantage in readability. It takes a lot longer to comprehend something written in assembly than a higher level programming language like C++. I'm thankful that I don't have to use assembly on modern hardware and even more so that I don't have to read it.
@LocrianDorian More efficient code.
The downsides are in difficulty and portability. Note how Tomb Raider GBA isn't just a matter of "point the compiler at the architecture" like Tomb Raider 3DS is for example.
Those Ram allocation tricks make me smile. Modern developers have no idea how crucial those techniques used to be for performance optimisation. Carefully laying out your data structures to tighten loops and avoid cache misses were a huge part of early game development.
Give me bottlenecks and limitations, and I'll give you miracles and results "
Imagine tossing that into Chromium and it's siblings (Google Chrome, Vivaldi, Opera, Electron, etc)
Images how much performance there is to be gained...
Restrictions can be the pressure needed to turn the raw creative output into gems.
@@TheExileFox why bother with optimization when everyone has 8 core cpu's and 32gb of ram?
I think it's down to the web being very bloated so browsers have to be bloated to support all the features, not to mention the extra features browsers tack on
It still is...we just don't pay attention anymore.
Ubisoft: So what sort of experience do you have in game development?
XProger: I optimised Tomb Raider so much it runs on a Game Boy Advance.
Ubisoft: GET OUT OF MY OFFICE!
"I'm sorry, Mr. XProger, you are overqualified, for all of our jobs..."
😂😂😂😂
I hope the ubisoft exec was wearing an eye patch and spoke with a thick texas accent before firing several shots towards mr xproger
Do you have two to five years experience?
No? We don't care if you programmed Tomb Raider to run on the GBA. Next!
😂
This is absolutely unbelievable! I remember telling my mom almost 20 years ago that the 3D Tomb Raiders aren't in the GBA and all of them (I mean 1 to Chronicles) are on our PS1 only (she really loves the Tomb Raider games even to this day). If I still had my GBA, I'd surprise her with this!
That's so cool. I wish more of my family were acquainted with video games.
Has she ever beaten any Tomb Raider games?
@@deezy81She doesn't really play the game by herself, rather, we usually play as a team. We take turns playing the games often, especially when I was younger. She'd usually help figure out the puzzles (I remember one time that I didn't know that I could use the rope as a tight rope in Chronicles... we had no internet back then to refer to for guides heheh...). I wouldn't be able to figure it out myself back then if she didn't try to keep jumping / walking on the rope! I'd be the one making the difficult jumps and dodging traps. She usually leaves the boss fights to me though, and she usually figures out what part to try to shoot if I'm stuck 😊
Nowadays, we don't get to play as much as we used to since I work most of the time now and our PS1 no longer works. She likes Revelations and Chronicles a lot, and really likes the Old Mill part of Chronicles.
@@merlefi6162 Awesome, glad you have those moments with her.
What you can do is download a playstation emulator for her phone (assuming she has a smart phone) and then she can play the game there. All you would have to do is get some sort of controller because a touch screen really doesnt cut it for gaming.
As someone who programs 3D on the GBA, this is beyond amazing. :)
Indeed this is amazing. Who knows, maybe there is something in the OpenLara GBA source code you might find inspiration on what to do next.
I am looking forward to your video on this game and your comments.
@@james2175 That's a good idea, I would love to talk about this.
Carmageddon 1 running on GBA would blow me away 😇👌
I have a small question for you. How hard is it to make a gba game? I'm going to guess there's not a GBStudio equivalent
Doom on GBA was already impressive, but Tomb Raider on GBA is just mind blowing.
Indeed, and this actually looks more faithful to it's respective game. Gonna have to download this and give it a go!
Yeah but doom hurts to look at on gba
But not really impressive. Why it should be. Doom runs on everything. XD Even on older snes and megadrive consoles that are less powerfull than the gba. (Even with the fx chip on snes.)
@I dont read notfications I have thousands Hmm. And Driv3r? Not the best game in general. But it looked awesome on the gba.
@@SONGOKU02 The GBA is a more playable and better looking port than the SNES port
this is already pretty impressive on its own but i'm not even kidding my jaw dropped when i heard that all of the game's sfx and music were somehow squeezed in there as well. i think this would've made Numbers back when the gba was new
they got better sound effects on a GBA cart than the bloody Saturn port has on CD!
@William On a machine that does audio and graphics IN SOFTWARE.
Speaking of sound compression methods, I think it was today that someone uploaded footage of a Symbian SDK (development kit) inside a Virtual Machine playing some music in AMR format... the entire 3 minute song accounted for 140KB or something crazy... and it sounds decent too, it has that cozy AM Radio feel to it
Those side comparisons made the PS1 version look like a HD game but it's impressive that this even exists.
@Joederbo Though was the PC version better than the PS1 version at the time? I can't remember.
For PS1, Tomb Raider looked fine for the time... but compare the first game with Last Revelation or Chronicles and it's amazing how-much more they could squeeze out.
The Crash Bandicoot series probably have the best graphics overall though, as they literally use a scripted approach where they only draw the polygons needed based on where you currently are.
But later 3D titles on the PS1 like Spyro, Bugs Bunny & Taz: Timebusters, Muppets Mad Monster Mansion and Jinx (Europe only) all looked really-good as they used the "Spyro approach" of removing textures off distant polygons and using gradient-shading instead to keep the framerate up, rather-than using "fog", as games like Gex and Croc 2 were still doing
@@NaoPb the original PC version was 320*240 at 8 bit collor, so its just twice the resolution and data as this version. The later PC glide update was 512*380 something something with 16 bit color depth.This version was superior to the playstation one, mostly due to the better geometry
@@matsv201: I ran the original version at 320x240, it also had a hi-res mode that afaik was 640x480 (but more a slide show on my 486).
@@shinyhappyrem8728 Yea... you probobly need a Pentium 100 or something to run it at 640x480.. and its still only 8 bit.
This was a pain for early 3D games on PC because the highcollor mode was not great.
There is exception. Screamer 2 could use hacked resolution of 320x240 with 15bit color.
That's old fashioned game development where they do everything they can to save every ounce of performance. Developers of bloated web browsers need to pay attention to projects like this!
Your sleeping farts smell of bitters
Projects like this give me hope
There are a lot of reasons web browsers aren't written like this. The main reasons are:
1. Modern web browsers are much more complicated than almost any video game. That's not because of lazy or careless developers; the technical standard for HTML is 1324 pages long, and that's not even the tiniest sliver of what a web browser has to support.
2. It's not feasible to "port" continuously updated software like a web browser. Instead, the vast majority of the code is written for all platforms, and a very thin compatibility layer is maintained for each individual platform. Fine-tuning code for particular hardware is rarely a consideration.
3. Web browsers are attractive targets for bad actors looking to find malware targets: they're ubiquitous, are always used with an Internet connection, and will automatically run any code they download. Because of this, they have to be extremely robust. Corner-cutting that might be appropriate for a video game is unacceptable in a web browser.
But, most imporantly:
4. For everything they do, modern web browsers are _extremely_ fast - until they're forced to load twenty different tracking scripts and fifty different ad scripts, because the modern web is a garbage heap of bloat and bad practices!
@@curtmack Your awake farts smell of wafers and tea.
I've always seen this idea in gaming, limitation breeds excellence. Zelda Wind Waker has a cell shaded art style. it wasn't necessarily something the game cube needed as the cube was pretty powerful, but the cel shading allowed Nintendo to come up with excellent light models, color briliance, and small graphical details like dripping water and swaying grass. that game upscales brilliantly, even without the enhancements made to the HD version. The same could be said of developers who do stuff like this, brilliantly excising what isn't necessary to make a working full PS1 game on a gameboy.
Wow, if the GBA had optimized 3D engines like this early on in it's lifespan games from popular 3D franchises like Tony Hawk, Crazy Taxi, Crash Bandicoot, Spyro, etc, could have been truly amazing for their time. They could have either been quality ports or better yet new games that could stay true to the original games. Heh, the N-gage advertisements would have been like: "Yeah, well we can do 3D... as well... and almost as good too... for a significantly higher price. You also have to remove the battery every time you want to change the ga- aw hell, we're screwed!".
check out the gba port for asterix and obelix xxl, i think that's what you're imagining.
I recommend checking the gba Tony Hawk ports, they actually play and look very well! also the Jet Set Radio port
There were many 3D games on the GBA. Most of the time they were ugly and sluggish. you can find several videos on YT that cover some of them if you want to hurt your eyes. th-cam.com/video/ZNuS14pIOz0/w-d-xo.html th-cam.com/video/Y6QtoZcYhi4/w-d-xo.html th-cam.com/video/w_-airevOwo/w-d-xo.html
The N-Gage would have still kicked the shit out of it in terms of 3D performance... Tomb Raider on N-Gage looks and runs SIGNIFICANTLY better than this port.
Soon the conversation will switch from "can it run Doom" to "can it run Tomb Raider"
𝐒𝐩𝐞𝐜𝐢𝐚𝐥 𝐥𝐨𝐯𝐞 𝐜𝐨𝐧𝐭𝐞𝐧𝐭 𝐨𝐯𝐞𝐫 ❶❽ 𝐲𝐞𝐚𝐫𝐬 𝐨𝐥𝐝
*NUDE-DATTING.ONLINE*
tricks I do not know
Megan: "Hotter"
Hopi: "Sweeter"
Joonie: "Cooler"
Yoongi: "Butter
So with toy and his tricks, do not read it to him that he writes well mamon there are only to laugh for a while and not be sad and stressed because of the hard life that is lived today.
Köz karaş: '' Taŋ kaldım ''
Erinder: '' Sezimdüü ''
Jılmayuu: '' Tattuuraak ''
Dene: '' Muzdak ''
Jizn, kak krasivaya melodiya, tolko pesni pereputalis.
Aç köz arstan
Bul ukmuştuuday ısık kün bolçu, jana arstan abdan açka bolgon.
Uyunan çıgıp, tigi jer-jerdi izdedi. Al kiçinekey koyondu wins taba algan. Al bir az oylonboy koyondu karmadı. '' Bul koyon menin kursagımdı toyguza albayt '' dep oylodu arstan.
Arstan koyondu öltüröyün dep jatkanda, bir kiyik tigi tarapka çurkadı. Arstan aç köz bolup kaldı. Kiçine koyondu emes, çoŋ kiyikti jegen jakşı dep oylodu. # 垃圾
They are one of the best concerts, you can not go but just seeing them from the screen, I know it was surprising
💗❤️💌💘
"can it run cyberpunk77"
Some already do "can it run GTA 3". Or at least they used to before Take Two started being a prick
can it run crysis
GBA runs doom, and doom 2, and duke nukem advance, and Wolfenstein 3D.
All are pretty darn impressive to me.
The things people have been able to do with 3d on the gba are pretty incredible and they never fail to impress me.
OpenLara is becoming the new "Doom" of ports, a lot of systems now is running Tomb Raider and counting!
That and Super Mario 64 De-comp. It's running on DOS!
OpenLara on my pregnancy test ➕👈👀
Any Doom wads/maps running on the tomb raider engine?
But can it run Crysis?
@@BlueSatoshi The way the homebrew community is at the moment it wouldn't surprise me to eventually see games like Far Cry and Crysis running on PS1 and N64
This shows that doing amazing things in even the most "technical" fields such as as coding is much as an art as it is science and the art/creativity part really shines when limitations are imposed!
That's why I am not a huge fan of modern applications built on frameworks on top of frameworks consuming system resources to accomplish simple tasks. I mean I understand why it's that way these days but I feel it chips away at the "art" part of coding.
And wastes ressources. If software was built by people who know their shit, people would not need to buy new devices every 2 years...
beautifully put
@@l3p3 that’s not a waste of resources they’re literally making it with expensive components that break easily so that you’ll have to buy more of the expensive components.
@@xxxhero7275 I do not get your point. Mine was that we would not need to toss away working devices just because mainstream software rejects its support for it.
@@l3p3 I was referring to the fact that you said that it’s wasting resources.Its not a waste for them to use cheap resources(or expensive resources) that break easily so you’d have to buy more parts from them,It makes extra money.it isn’t a problem I have since I know how to fix most technology(screens not included) but most people can’t and don’t have the time or effort to learn how.
Fun fact: The lead developer of OpenLara (XProger) was hired by Saber as the technical director and lead dev of Tomb Raider I-III Remastered.
Imagine spending years on recreating the game's engine, and rather than a C&D, you're hired to do the games' official remasters, with access to the original engines, _and_ hire your own team of devs for it. What a dream.
Now they're doing TR IV-VI, coming next year, and I'm hyped.
'Impossible' ports are fascinating as hell. I've been interested in them ever since I read about the canceled Resident Evil game for the Gameboy Colour in an old gaming magazine.
Resident evil 2, 3d on gba proto exists and virtua fighter 2012
Omg same! I wanted that damn game so badly and was obsessed with reading up about it as a kid.
Wasnt there an alpha rom leak for that one somewhere?
@@kurosan9712 Yep, I've played it.
@@DeathBringer769 what's it like?
That's just incredible. I can't imagine how I would have react to this if that actually came out back in the day. Seeing DOOM on GBA was already impressive, but damn Tomb Raider is another level.
@slam slam Portable version of full Tomb Raider experience would have pleased an immense amount of people back in the day. Of course it's less powerfull if it's portable
Tomb Raider 1-5 on NDS would have been possible back then and such a bliss!
@slam slam LOL, but this clearly plays pretty well. I'm not just guessing, I *KNOW* this would have sold *VERY* well back in the day.
Doom isn't a big deal on GBA because GBA is much faster to render BSP's than Primitives,. But on a printer, Idk
I need more of these *"Impossible Ports"* videos in my life.. Thank You MVG..
Next it will be GTAV on GBA lol
@@jeffstacy6636 My God! If that was possible that would be one of the most unbelievable things that ever came out of TH-cam.. The internet in general..
@@kenrickkahn That would be some Guinness Book of World Records level shit
I'm just dying to see more people tap into the potential of the GBA, technical feats such as this get me so giddy
I've been following Open Lara for a long time, and it is amazing. They deserve all the support they can get. It's amazing work.
I remember the time before GBA was launched and the marketing said "32 bit console" and all the kids thought It will be a PS1 on the go.
In retrospective... It was indeed a PS1 on the go.
Thanks for your videos.
Well, it's a PS1 on the go with SNES sensibilities.
In retrospective, it definitely wasn't a PS1 on the go. A couple of PS1 games on a GBA doesn't make it like a PS.
The PSP is almost a PS2 on the go
@@unisonarcanine kinda only some of psp games look as good as a PS2 game like daxter
I was around back then, got a GBA and later a GBA SP at launch. I remember kids more thinking the GBA would be like a SNES on the go, with a bit of extra oomph, and later the PSP would be the actual PS1 on the go. Also, I remember my friend, when the Nintendo DS came out, making fun of it and saying he would wait for the more "mature" PSP to come out later. Funny how console wars always become a thing with kids. But yea, I always viewed the GBA as more of a SNES on the go, and then later the DS as an N64 on the go, with the benefit of coming out later and having newer technological tricks to utilize despite being handheld.
Totally amazing what can be done with open source code. This is one of several examples.
@medgidia05 Hello!
Fantastic piece of code optimisation, I can’t believe that it would be possible to have that engine running on such an old piece of hardware. Fantastic video! Fingers crossed for the Amiga port
I'm still wating for Atari 2600 port
I don't understand half of the things MVG says, but I could still listen to his explanations for hours
Devs don't get nearly enough credit. This is proof that ALL the older consoles are capable of greatness in the right hands.
@RaniaIsAwesome What code do you write? Oh- none? Go figure you can't see it.
@@Freshbroodhe isn’t wrong, not all the older systems are capable of this, and if it was realistic to mass produce 3D games on the gba it would of been done at the time
This looks like it would exceed what V&D were able to wring out of the system. That's some god tier optimization.
No
@@Einar730 yes
I don't know what V&D is supposed to stand for. I assume a studio, but I'm really not sure.
VDDev was a really good balance between performance and graphics. You should see Raylight's GBA games and tech demos though. They really pushed the 3D on the system. Smashing Drive is a really good example. Here's a side by side I found of the GBA and GameCube versions of Smashing Drive. - th-cam.com/video/xQpTOgE7QDE/w-d-xo.html
@@LakoIsFun I "played" some of raylight's "games" back when they came out. Didn't feel too good to play but looked really impressive considering the system they came out on.
I'd put them so far on that side of the balancing act that I'd call their releases tech demos.
This port is even more impressive than VD.Dev’s efforts with their games, and their games are really impressive.
Hey there!
@@mitsuvolts03 Hi. Fancy meeting you here of all places.
Indeed. Either Driv3r or Asterix & Obelix XXL were their most technically impressive games on the GBA, and they used pre-rendered 2D assets for their characters, vehicles and items, while still also running at an average 15 fps. This Tomb Raider port sports both a fully polygonal Lara and evemies (with, I'm assuming, the same polycount as their PS1 version counterparts). It's mindblowing that this can even run at a semi-decent framerate.
@@KittyMeow1984 Their port of V-rally 3, it´s amazing too. And unlike Driv3r GBA, it has actually good car physics and nice gameplay
That first tune that plays there is burned into my memory. I always want to fire up Tomb Raider 1 when I hear that. This is absolutely amazing to see this running on a GBA, and so obscenely well too, fantastic job by the developers.
It reminds me of south park where they try communicating with the internet digitally again.
Super amazing. Also reminded me about the long forgotten "kkrieger demo" that is only 96kbyte small. Stuff like this should be pushed forward from the gaming industry itself!
i remember downloading that in like 2006 and it blew my mind! so much demoscene stuff was incredible. thanks for jogging my memory with that name
The Dreamcast port by HiStat which released on December 30th is on fire! It even allows mods to work on Dreamcast so we can use this engine to make all new games hopefully such as Duke Nukem Time To kill and Resident Evil or even Uncharted demakes. Interestingly enough HiStat's port of OpenLaura is using the PSX assets, so it is running incredibly well on the console in 480p over VGA.
Anyways, it is an incredible time for homebrew in general like this getting ported to literally ever capable system under the sun. I hope for the project to get back ported to Saturn as well when Tomb Raider 2 and 3 are fully working in the engine. Would be cool to see them on it. Hell now the Dreamcast only lacks TR2 and TR3 out of the early games. 😎
The video said it was using the PC assets
@@IRMacGuyver What are you talking about? The Dreamcast port uses PSX disc, I am not talking about this GBA port which uses PC assets.
Tomb raider open lara project on dreamcast runs at 480p 60 fps which is incredible
@@BFKAnthony817 I assumed you were talking about the same basic thing as this one just the dreamcast version
@@IRMacGuyver Well I am, the Dreamcast version of OpenLaura was made by HiStat but he chose to use the PSX version for assets. But today megavolt85, the person who "ported" the Atomiswave games to Dreamcast compiled the latest version HiStat made the other day, but he is making it use the PC assets now and it is looking much better and running great too. So hopefully in the next few days we get a better version to play with full CDDA and PC assets with working FMV and no more glitched textures on Laura.
This will also mean that there is not a limit on mods that can be made with it. Previously you had to convert PC mods to PSX format to run in this version, and it was limited to 14 levels or rooms as they call it. Now we can go up to 20 levels or rooms. So a lot more can be done with it thankfully.
Wow, I can’t believe the developer pulled this off. I am just thinking how awesome this would’ve been back when the GBA first came out. I mean I can’t believe it now so back then it would’ve blown my mind even more than now 😦
Agreed, if we had just known it was capable of that back then
We should probably talk more about the RAM miracle here, because yes CPU cycles are veery important but that determines how fast the game runs. RAM on the other hand, determines if the game runs at all. You see the problem here, GBA has 32K + 256K total RAM. The original tomb raider on DOS has to use DOS4GW, which means it already had to break the 1MB memory limitation of DOS.
Doom on the PC needed 4MB of RAM I seem to recall, yet it still got ported to the GBA and even the lowly SNES (128K + 64K RAM) which really was a miracle. But Tomb Raider is a later, more technically impressive game due to the fully 3D engine. This version is amazing and the best looking/playing (& sounding?) 3D game on the GBA.
These older consoles had one thing a PC did not: access to fast "read-only RAM" (AKA ROM) meaning the cartridge itself. This is how they could do so much with so little RAM. Also DOS had an artificial limit of 640KB not 1MB, hence all the extenders you mentioned. We can thank Bill Gates for this, since "640K should be enough for anyone"...
My guess is they just stream the textures from the cartage, the bandwidth is sufficient and there is really no conversion needed. The cartage is also true random access.
@@sl9sl9 I think you can run it on 3 MB of ram, but almost nobody had that.
The issue is that if you load high, you pretty much lose 640kB of ram, and if you have drivers loaded high (that was pretty common at this point), you lose even more
Also dos4gw lets you use 32 bit instructions and a flat memory model where you don't need to worry about segment registers.
GBA CPU can directly read from ROM, moreover, it gives an advantage like zero-time levels loading!
Speaking of interesting "impossible" GBA ports, have you ever played the GBA version of Wing Commander Prophecy? That's a game that definitely shouldn't exist.
Nor does the Asterix & Obelix XXL
Or virtua fighter 2012
@@rustymixer2886 what ?
@@GanerioAditya a guy started working on full 3d virtua fighter on gba in 2012, look like this and you can control camera, have 360 matrix affect after hit etc
@@Snowpiercer2 that game is spectacular looking. Unbelievable game running on a GBA.
Honestly amazing. It makes me wish that Resident Evil 2 tech demo on GBA was green lit to see how that could have ended up. At this rate, I almost think that the original RE2 could be done on GBA properly just after seeing this.
My thoughts precisely!
there have actually been many 3-d games on the gba but the fact that a game with this many polygons all with textures that wasnt even built with the gba in mind can have a stable framerate is pretty insane.
This is just incredibly impressive. I can't really comprehend how it's possible that it runs that well and looks that good.
Its mindblowing how back then the smallest changes in hardware would often result in way more perfomance while today its the opposite more power results in minor perfomance steps.
It’s because developers use such high level methods of creating games these days. Now instead of optimising the code they just throw more resources at it for a marginal performance boost.
Back in the day, programmers couldn’t just throw more power at the game so they wrote their entire game in assembly language (literally telling the CPU exactly what to do) as this would result in a smaller, faster game than if they wrote it in a higher level language and let a compiler manage it for them. The level of optimisation that devs did on old hardware was extreme; every line of code matters with hardware as limiting as this. Games aren’t made that way anymore, and they aren’t created to run as efficiently as it would take decades to create games to the scale that we expect. The type of optimisation that this dev is doing requires understanding the hardware, the coding of the engine itself. This stuff is only taught in classrooms as a fun example of what coding used to be
Yeah, I’d say a select few game companies care about this.
I interviewed with Insomniac games last summer and it was the hardest interview of my life.
They wanted a strong understanding of c++ and memory management. They also tested my knowledge of physics and linear algebra.
Although Unreal is super awesome for developers trying to get something out there, there are still developers wanting to stretch the limits of their hardware.
@@tacosmexicanstyle7846 They definitely optimize the crap out of modern game engines but only in key areas. Like you said, the games themselves are so huge nowadays you can't optimize everything to the same extent. It's like complaining that people built a skyscraper out of something other than perfectly laid matchsticks because you saw someone build a house that way over the course of 10+ years.
@@Ehal256 the thing is that a lot of modern games run terribly even on decent computers, and often take up a lot more space than you'd probably expect. Although you can probably attribute that to studios wanting to make their game look good instead of properly optimizing code and assets. Although in more extreme cases even simpler games can have terrible optimization due to taking a lot of shortcuts.
@@Ehal256 yeah that’s true, I was being hyperbolic sorry lol
I guess devs these days are going to focus their efforts on higher level optimisations like hiding objects / unloading parts of the game where they can get away with it. Or reducing level of detail for far away objects. Whereas what old school devs would do is literally write the assembly code themselves because they couldn’t trust the compiler to do a good enough job
This is also a great demonstration of the power of precomputed LUTs for making old hardware do more than people think is possible. Many really old CPUs don't have support for floating point or division, but with a carefully crafted LUT stored on the cart you can still make them do vectors and such. I have a little program I did for the Vectrex which uses a LUT to describe a circle (all you have to do is accept that a circle is subdivided into 256 degrees :p)
I have no idea what you just typed, but I fully agree with.
Indeed
This is both absolutely incredible and highly fascinating. I could never imagine a title like that running on a GBA
I would been obsessed with this as a kid. I remember being so impress by fmvs with 3d graphics let alone full games in 3d.
It's crazy how much more the homebrew scene is getting out of the GBA vs the actual game studios of the time. If this was demod back in 2001, I would have thought it was fake.
GBADoom is another example, it's an actual port of prBoom to the GBA that runs *faster* than the official retail Doom release, and has full feature parity because it's the real Doom engine.
Imagine all the money they could've get if it was released back in 2001. Like everyone would've talk about that one console game you can play on your gba.
@@michaele1654 Metal Gear Solid GBA is what I'm waiting for.
The studios might have plenty of money, but money can’t buy time, and the money would be limited in a game for this platform.
This is actually excessive work for a game studio. This is years of development. Most studios that made games for the GBA had 13 months to complete their games with an average number of 6 developers per game. So yeah you are asking too much.
@@michaele1654 Man sorry to disappoint you but... The GBA's 32-bit ARM CPU is actually way way more powerful than the SNES's 8-bit CPU (yes the SNES didn't have an actual 16-bit CPU only a 16-bit graphics chip). The problem however is that the GBA had only CPU and everything was made through software. While the SNES had dedicated graphics and sound chips. However the GBA's low resolution screen is actually something that made this port easier.. Because SNES games were 240i while the GBA had a 160p screen.
Just imagine this releasing on the GBA back in the day.
Asterix and Obelix runs smoother, has wider areas and no one gave a shit.
So no, I don't think being impressive alone would've been enough because let's be real, as impressive as this is, does it look prettier than Minish Cap? Or play smoother than Mario?
I never bought a GBA back in the day decayed it was so limited compared to a PC; this coulda changed my mind.
@@julianx2rl Yah, but, in fairness… A&O used sprite-based characters, there’s some weird texture warping, and, on a non-technical level, A&O ain’t going to draw numbers like Tomb Raider.
On a positive note, O&A has so much colour and a much busier environment - it is really impressive.
It probably would have completely changed the expectations people had for GBA game fidelity.
@@julianx2rl You have no idea what you're talking about because you're too young. I remember when those games were released and media were hyping up GBA vs Nokia N-gage showdown when it comes to their respective ports of Tomb Raider. It was huge. It was "big" game for the N-gage, pretty much system seller level and one of a few reason why some people chose it over Nintendo console. Simply because Nintendo made a mistake making 2D game on a new engine other than plain simple port of the game like on N-gage. We thought it was due to it being impossible to make on GBA which couldn't handle 3D that well. It turns out it was possible all along. Especially with huge studio involved. 1 guy proved that it's possible. Some official GBA games have worse performance than this demo lol.
I love that your videos come out early and I can procrastinate a few more minutes at work
:D
I was really curious how you could even play this game with so few buttons. The mapping is pretty clever:
A action, B jump, R walk, L+A draw, L+B roll, L+R look.
I really want to play this. I need a GBA.
I just asked about pistols. Thank you for info.
So what button would be to shoot once pistols are drawn?
@@skycloud4802 A
Oh THATS how they got around the lower number of buttons!
truly, the most amazing part is how you were able to show the GBA screen so clearly.
Backlight modification.
To think Velez and Dubail earned a rep for pushing the GBA's limits with their 3D engine.
This guy on the other hand is an absolute madlad.
I had original Tomb Raider for PC back in 96 so I'm very curious to learn about this. You're the best at these man
same. I remember playing it around early 2000s along with the 3d frogger game.
@@poeskey haha boi that's a classic right there
I have fond memories playing Tomb Raider on my Saturn. One of my all time top 10. GBA version looks and sound wonderful and I’d definitely support the developers and definitely purchase a physical copy if ever released. Great info
This is non-commercial, third-party work of fans of the game. This can never be sold, unless they get a license to re-distribute the game and do an official GBA release. I doubt that happens. But you can support the developers by donating.
If you want to play it on an actual GBA, you’d have to produce your own cartrige. (Or buy a bootleg someone does from etsy or whereever, if those become available. But these won’t support the devs, as 100% of the revenue goes to the cartrige manufacturer, who very likely won’t give any revenue away)
"SIR we only have a 16 MHZ CPU, 288 KB of Ram, a 96 KB GPU, no Z-buffer, no FPU, and the option of a bitmap render mode to render this port."
"Break down the code and translate it into assembly, put polygon coordinates in lookup tables, use all our RAM available, crank down the draw distance, draw only visible polygons in sequence, then pray to god we can get 10 FPS and when sounds play the game doesn't halt to a crawl or crash".
Programmers like this and Andy Gavin are God tier with resource managment.
The walls womble almost as much as on the PS1. wholesome and spot on xD
The title music brings me right back, great memories.
Awesome video, and the port looks amazing.
Unless I'm mistaken, at 07:35, Painter's algorithm isn't a culling method (used to remove polygons from the render pipeline) but rather an alternative to depth testing using a z-buffer. The painter's algorithm is literally drawing the screen as a painter would a canvas, start with the background objects and then draw closer objects over the top. This requires an extra sorting step (costs CPU time) but avoids saving extra per-pixel data (saves memory).
Thank you. 👍
This is the sole work of one guy? I can't begin to comprehend how insane this is
This love of the craft, hardware knowledge, and sensible optimizations is what's missing in modern software. This journey was what most highly polished nes/snes games had in order to fit a compelling game into the limited hardware. Today, the hardware we take for granted is capable of so much more than programmers ask of it, instead taxing it with unoptimized junk and sloppy code.
I'm done ranting now
What I'm trying to say is that this project is the gold standard, and it's a shame we don't see more of it from the studios that could and should be putting this level of effort into games demanding $60+ at launch. Bravo!
This is actually insane. Thanks for documenting this.
this makes me wonder that of all consoles we've had, we probably haven't truly seen the technical limits of any of those ....... It never crossed my mind this was achievable on a GBA.
I assumed this to be the case when I looked at early PS2 games compared to late PS2 games. If hardware production ever came to a stop in any console generation, software developers would continue finding tricks to push forward better game development. There is a channel called Coding Secrets that has some cool videos on how some Sega Genesis effects were achieved in games. If the 3DS can run Metal Gear Solid 3, it can probably be pushed much further.
@@frost8077 Wasn't the 3DS version of MGS3 an early 3DS release?
@@DragoonMS
Two years after the 3DS release, so somewhat early.
now we have to wait for someone to port mgs5 to 3ds
@@frost8077 I'll check the channel you mentioned, thanks.
This is really cool. But if he intends to make Tomb Raider to run on "all the systems", then I, as an N64 fan certainly hope I'll finally be able to play Tomb Raider on my favorite system.
N64 would have no problem running the game.
Tomb Raider was planned for the N64, but ultimately playstation got all the Tomb Raider games.
The N64 ran resident evil 2. I'm sure this could be done.
@@VarietyGamerChannel Agreed. Maybe it could even get some nice extra visual effects. I remember that Jet Force Gemini had cast shadows from the protagonists.
would be nice to see. I guess, it is not as easy to port as some might think. Many big textures and also some geometry. Golden Eye like performance and Resident Evil like FMV. But it is a lot of work to recreate the new needed textures. Also the N64 has the limit in texture size per texture. So maybe that is the biggest problem. It could easily endup in a very blurry mess.
This is actually mind blowing
Not really though is it? Looks like a GBA game, so is a compromised port running as well as it can with current optimisations. Hardly an impossible port given that it was ported.
No it doesn’t have the frame rate of the PS1 version, but that’s not the point. Tomb Raider wasn’t ever designed to run on the GBA architecture. As a technical achievement, this is nothing short of phenomenal.
@@X22GJP I'm pretty sure "Impossible" Port is just a hyperbole...
It's a technically respectable port though. It's always a treat seeing someone come up with clever design when presented with a constrained environment.
Is this mind blowing? Maybe to some people, but I certainly think it's worth discussing and appreciating.
Thank you for the technical breakdown on how this was done. This is incredible.
grats on being featured on videogamedunkey
This port is absolutely insane. Once they get a full version up and running, I'm definitely gonna wanna play it.
Completely forgot about this port happening. Give this man a job at a major studio. Imagine what he could do with current generation if allowed to go to the metal.
@@GPOLICE It's an unfortunate fact that good games aren't necessarily marketable, and marketable games aren't necessarily good. Thankfully at least, there are some developers out there who desire to make good games, but it's certainly not the focus of the big studios.
@GPOLICE He would also have a good chance of being told to give Lara "realistic attire and proportions".
Let him have his passion projects.
This would have been insane as a launch title for the GBA in 2001.
Ngl, if this had been a GBA launch title, it very well may have pushed development on the GBA even further than we got.
@@ABVW92 For reals. If nintendo would of had the 32MB carts early on, It would have brought some games close to n-gage or early ps1 quality. This is the proof
@@Oni64 with the right Devs ofcourse...
As they'd still need to get around some pretty hefty hardware limitations, on the console side.
@@ABVW92 it would’ve pushed the boundaries of portable gaming and I’m sure even programming in some way before this present era of technology we live in
lmfao Uhh......yes? hahahahahaha
The title of this video stopped my scrolling immediately. Truly fascinating work here
Wow, this is bloody impressive.
Thank you so much for this awesome video! ❤️
Just tested this ROM on flash cartridge on my own. I'm stunned! This looks really amazing.
Massive props to the creator of this masterpiece!
This is wildly impressive. The developer could just hand a prospective employer a copy of this and they should just hire him immediately.
when I first saw this (i first saw the pic) I thought this was on DS, but running on the GBA thats nuts that it looks that good and running that well
I wonder, since Super Mario 64 got 100% decompiled over a year ago, would it be possible to port that game to the GBA as well or would you need a copious amount of fog?
The Gouraud shading SM64 uses will certainly help, as it's less-stressful on the CPU than having to scale, rotate and draw textures. But with some of the bigger, open stages you would either need fog, or add some walls to areas to reduce what can be seen (as was done in some of the large maps in the DOOM2 port).
Tomb Raider is also built on a grid, where many walls are at right-angles, so that also helps reduce polygon count. As SM64 is more rounded, that could again be an issue.
I'd say overall you've more-chance of seeing SM64 be ported, with tweaks, than something like Banjo-Tooie or Conker's Bad Fur Day.
@@kurisuj1421 I’m sure bits have nothing to do with this, sm64 has been ported to many 32 bit systems (dreamcast, ps2, xbox, gamecube/wii, dsi, etc.)
that said, I don’t think the gba is even remotely capable of running sm64
I always used to day dream about this. It is probably possible if Tomb Raider is but it would be equally impressive and difficult.
Glad to see some love for this game in the comments. Lately with all the "retro" craze I've been seeing lots of people complaining about the game, "controls", "graphics" (S.T.F.U.)
This game has caused such a profound impact when it was originally released. Whoever complains about the game now has no idea about the game's significance or has not lived that period. Golden age of software
It came out after Mario 64, so your entire argument is invalid...
Graphics shouldn't be an issue but I don't think it's bad to point out a games controls haven't aged well. A game can still be good without perfect controls.
@@o00nemesis00o My small town in the middle of nowhere Bumfuck District had Playstations and Win95 PC's in every other household, but no N64's in sight... there were N64 cartridges for rent in downtown stores, but no kid I knew ever had an N64 there... In my view, MSDOS/PS1 was way more prevalent than N64 fanboys ever want to admit
@@judewelos Controls are intrinsic part of Game Design... gameplay, challenge/reward mechanics revolve around how controls work... choices...
@@judewelos just like Resident Evil had the controls it had... it was a Game Design CHOICE... but no one ever bitches about R:E, only about Tomb Raider... selective bitchiness LOL
The homebrew scene is just great. The dedication of people and their knowledge of older hardware is amazong
I remember playing this the day it came out on the original PlayStation and it changed gaming forever. Seeing this run on the GBA gives me a similar vibe to how it was playing the game all those years ago.
Tomb Raider and IV:Last Revelation will always be my favorite Tomb Raiders. I remember climbing all the way up to the top of the high platforms and looking down in amazement at everything beneath me and thinking that it was the coolest thing ever
Never liked this game as a kid, but now ive been screaming "this is F*CKING cool" for 12:40 in my mind
Still have that disc so lets go
As you grow up, your taste in games changes.
@@H53. First Tomb Raiders are poop. Graphics are awful, everything is covered in one texture. Controls are pure AIDS. Platforming is a slow proces of making tiny steps, backstepping and then jumping. Fighting with anything is also braindead bad.
But it's still worth playing once
MVG in 2030: Witcher 3 on the calculator is incredible
Xbox 360 port when? :)
Actually, the thing I really want to see is Witcher 3 on GameCube. I know it'd have to be rebuilt from the ground up, but it would amazing to see either:
A. An open-world game that's actually tailored to the GameCube, and looks/runs better than GUN or Spider-Man.
B. How high the graphical fidelity could be if it used smaller environments (I mean, you could port Geralt's model from W2 straight into the Star Fox Adventures engine with little performance penalty- W3 might be pushing it, though).
This is more technically impressive than any official gameboy game ever. I bet with optimization on this level, DMC5 could run on switch without a sweat.
If Doom 2016 can run on Switch, Devil May Cry 5 might run as well, RE engine is a very optimized engine, is just a question of Capcom if they want to release it or not
dmc5 runs well on budget hardware just as doom 2016
Thank you for the video, I really like those kind of videos where you explore how people optimize resources in order to "make the impossible possible" :) Your explanations are very clear, thanks again!
Wow this is so impressive! Imagine if something like this was released at the time.
when i first saw this, my mind exploded, i honestly cannot believe that it not only runs, but runs so damn well...the only complaint is that the controls are inverted.
I feel like the lower resolution actually makes the imperfections in the rest of the graphics stand out less, making the image look less jarring. Not just the hardest port, but the best looking?
Thanks for the great and informative video! I can’t believe they fit the full resolution textures and sound in there and still have it running as well as it does now. Truly an impressive piece of engineering!
That is so freaking amazing. Thanks for covering this!
This is amazing, and should be an example of game optimization to devs, that they could be doing at least some of these things in modern games to squeeze out the best performance. Also, i would like to see this on n64 to see what it could of done and even maybe remade and optimized on the ps1.
Limitations breed inspirations. Having limits forces you to get creative like with these impossible ports.
@randomguy8196 well thats when their pressured and dont have enough time, but id rather see a good game that runs great, because often times theres features are undercooked, or not fun.
@randomguy8196 alot of the "features" devs add today just end up making the games shittier so maybe more optimization time would be worth it
this looks unreal, very impressed that this was ported to older hardware
it's newer hardware than the 90s PCs and consoles it was released for, but weaker.
optimization has been lost now days. Game companies no longer make games compatible with lower end hardware. It's just lazy coding for the latest hardware and if you have anything less than good luck. Halo infinite being the most recent game I played on a budget build that ran at 15 fps. smh. Please someone hire this guy and learn from him. I love your impossible port series, it's just so fascinating to see how genius these people are to be able to pull this off. Plus you always provide such a clear explanation and details into how they achieved it.
This video was awsome I love seeing ports like this on your channel I would like to see this game ported on n64 or maybe the Atari lynx.
They got so focused on whether they could, they never stopped to ask whether they should.
Amazing how you can run this better in your browser now than a top of the range console could back in the day
Imagine if this port was released on the GBA Era!
I know it's kinda baffling that a 3d tomb raider never happened when the GBA was released, I'm guessing money and time constraints didn't make it happen, but this proof of concept is pretty amazing tho, kudos to him mentioning the Saturn version which a lot of people don't know about, tomb raider started out on sega consoles before PlayStation 😁😁👍👍
Now I want to see someone squeeze the entirety of FFVII onto a single N64 cart, even if it means swapping out all the pre-rendered assets for real-time to save on storage space, just as a fun experiment to see if it’s possible.
Or even better, use a modified cartridge to hold the full data from FFVII. The game itself would be runnable on N64 if they port it from PS1 or PC, both N64 and PS1 are not very different
I don’t understand any of the technical details but I love listening and this is truly impressive!
I'm glad you understand this, MVG. I was struggling!
Thank you for making these. I find them EXTREMELY fascinating. When the GBA released, I was 11 years old, and way younger for the GBC. Throughout their lifecycles I read every Game Informer and Nintendo Power I could, and was nuts about pseudo-3D/3D hacks on the platforms. I have vivid memories of getting adrenaline hits when I saw things like that textureless Resident Evil 1 remake on the GBC that shouldn't have been possible. Or...that one turn-based medieval dungeon crawler on GBA that had what felt like a full-3D developer credit screen showing a ship in a stormy ocean. Even at a young age, you could tell when something was performing above and beyond what it should have been capable of. DOOM on GBA....or Ecks vs Sever...amazing.
This sounds amazing. I would pay to have this cartridge in my collection.
This reminds me of the RE2 and Quake demos for GBA.
That's insane man
I couldn't believe it when I saw it but now I'm looking forward to the full version!
such an amazing port: can‘t believe it! All the best! ☺️✨