Falco Girgis's banner
Falco Girgis's profile picture

Falco Girgis

@falco_girgis13,432 subscribers

Sega Dreamcast developer on a quest to correct the timeline of video gaming history. Working on the modern, open-source indie DC SDK and library OS, KallistiOS.

Shorts

Meanwhile... the fog, smog, and clouds be looking pristine in our Sega Dreamcast ports of Grand Theft Auto 3 and Vice City.

Meanwhile... the fog, smog, and clouds be looking pristine in our Sega Dreamcast ports of Grand Theft Auto 3 and Vice City.

30,029 görüntüleme

OH GOD, WHAT HAVE I DONE!? Was going to post about sweet FPS gainz I just made tonight for our Grand Theft Auto 3 and Vice City ports to the Sega Dreamcast... buuuut... Apparently I breathed on a scale matrix the wrong way trying to accelerate it, and now we have Stretch Armstrong Tommy! 😂

OH GOD, WHAT HAVE I DONE!? Was going to post about sweet FPS gainz I just made tonight for our Grand Theft Auto 3 and Vice City ports to the Sega Dreamcast... buuuut... Apparently I breathed on a scale matrix the wrong way trying to accelerate it, and now we have Stretch Armstrong Tommy! 😂

27,196 görüntüleme

Guess what game this is, running as an extremely early port to the Sega Dreamcast with no textures, barely fitting into 16MB of RAM, only tested on an emulator, and running slowly... DRIVER FREAKING 2 FROM THE PS1! @nihaomawoq asked me not to put him on the spot, because it's still so early, but... the fact that it's over 2FPS and everything isn't purple means that it's quite a bit further along than GTA3 was at this stage! This is how all great ports start out!

Guess what game this is, running as an extremely early port to the Sega Dreamcast with no textures, barely fitting into 16MB of RAM, only tested on an emulator, and running slowly... DRIVER FREAKING 2 FROM THE PS1! @nihaomawoq asked me not to put him on the spot, because it's still so early, but... the fact that it's over 2FPS and everything isn't purple means that it's quite a bit further along than GTA3 was at this stage! This is how all great ports start out!

21,363 görüntüleme

Videos

falco_girgis's profile picture

It's finally time for the massive update I know EVERYONE has been eagerly waiting for... Presenting to you over 6 straight minutes of spliced footage directly captured from my actual physical Sega Dreamcast... RUNNING THE LATEST BUILD OF OUR SONIC MANIA PORT!!! I can't even begin to describe to you how polished and fantastic it's starting to feel... as though it belonged on the Dreamcast all-along... Thanks to the hard work of jnmartin, sonicfreak94, and a few others, not only is the Dreamcast port nearing completion, but... wait for it... THE 3D STAGES THAT STRUGGLED ON EVERY UNOFFICIAL PORT ARE NOW ALL RUNNING FULLSPEED!!!! Trust me when I say that this took an absolutely ENORMOUS amount of effort from jnmartin and the crew to pull off, considering the low-end for this game was the original Nintendo Switch, and ports running on consoles with twice our processing power struggled to run these levels fullspeed. The first and most obvious thing is that the 3D software renderer was ditched and all rendering was done natively with our PowerVR GPU... which actually wasn't as simple as it sounds. The tilemaps for these levels have had to be tessellated into a bajillion PVR quads and transformed and rendered as individual polygons to look correct and run faster than a slideshow. Mr anonymous Ocarina of Time chad developer came up with a pretty slick LoD scheme for drawing tiles closest to the player at 1x1 pixel sizes with sizes increasing with distance up to 2x2 and 4x4 pixels, allowing them to reduce the overall number of tile vertices that have to be transformed by the SH4 CPU and submitted to the PVR GPU, by strategically keeping the majority of the polygon detail closest to the camera, with detail decreasing as the tiles get further away. Next, the 3D geometry was preprocessed and converted from being triangle-based to being triangle-strip based, drastically reducing the number of vertices per model that our 200Mhz SH4 CPU had to transform (with plain integer arithmetic and no FPU vectorization, since this is all slow-ass fixed-point integer math)! Finally, it was discovered that the lighting was a disproportionately significant contributor to the TnL load on the SH4 for processing vertices. Jnmartin came to the realization that 99% of the time only the Y axis direction is considered for lighting equation intensity with just a white color. So this simplified lighting model got baked into the renderer, which gave another round of gainz. So in the end, after all of this work came together, a draw distance of 75% the distance of the retail Sonic Mania versions was achieved for the decorations, plus the character models have their full geometry count and have not been simplified on a freaking Sega Dreamcast with a 200Mhz SH4 CPU and only 16MB of RAM! 🔥

Falco Girgis

87,298 görüntüleme • 2 ay önce

falco_girgis's profile picture

This is a direct hardware capture of our Grand Theft Auto 3 port running on the Sega Dreamcast... which I'm still constantly receiving questions about to this day... So what's the deal? Do we ever plan to revisit it, or have we called it a day and moved on? What about all of these gainz that I keep posting about, surely they could be applied to our GTA3 and VC ports? The truth is... No, I'm not done. I constantly think about the day when SH4ZAM is ready to be pulled back into the codebase for what will hopefully be another round of epic gainz. GTA3 and VC on DC were probably the most exhilarating, satisfying projects I've ever worked on as an engineer--academically, professionally, and personally. SH4ZAM literally started out as hand-optimized inline ASM routines I was whipping out of my ass to optimize the physics and TnL for these ports... but I decided to extract the routines and develop SH4ZAM in isolation for a couple reasons: 1) I saw a gaping hole in the DC homebrew community and KallistiOS ecosystem, which prevented indie developers from truly harnessing the power of the DC's SH4 CPU and its epic FPU, due to us having no good generic software solution to democratize the hardware... I felt like my work on GTA3 and VC could help fill that void. 2) The linear algebra math and low level SH4 ASM was starting to get complex enough that continuing to work within the main game codebase when implementing these optimizations became unrealistic. It became too easy to break the game in obscure ways that weren't immediately apparent without playing the game for hours, which was not a very ideal workflow... I needed an isolated environment where I could rigorously unit test and profile my routines. In addition to SH4ZAM, though, there's all kinds of other stuff I wanted for the game... We have yet to implement mouse + keyboard support for the PC control scheme, also enabling players enter cheat codes. We had some cool goodies planned for the VMU, and we didn't support any rumble or haptic feedback either, just to name a few. Finally, we have one more super secret weapon we've kept hidden for many months now... A certain 3D modeling wizard, who goes by Andrea Lotito, has been working on asset-side gainz, by reducing polygonal complexity of pedestrian models among others, while astonishingly still managing to get EVEN MORE DETAIL out of the models as well?!

Falco Girgis

34,216 görüntüleme • 1 ay önce

falco_girgis's profile picture

SURPRIIIIIIISE!!! The beta release of our Grand Theft Auto Vice City port to the Sega Dreamcast is finally here! Here's an actual hardware capture of raising some hell in the beautiful streets of Miami taken straight from my DC to celebrate! We've now added graphics settings for 2xFSAA to give it a less jagged, more smooth look and have added a video mode for rendering to a 24bpp framebuffer, which adds extra depth and vividness to the colors! While we still have plenty of work to do regarding features, assets, and performance, I am extremely proud of our team after what we've accomplished within just a few short months with this port that, for the last two decades, was considered literally impossible for the console to handle. It has been an absolute honor and privilege to work beside you crazy and talented bastards! I also want to thank the Sega Dreamcast and Grand Theft Auto communities for rallying around this cause and coming together to help us test and debug this release along with the previous GTA3 release over the last several months. Your support and diligent work has been vital for ensuring that the games have been fully playable on the DC, and your constant support and feedback has been an inspiration to the team. We couldn't have done it without you! For instructions on how to convert your (LEGALLY EFFING PURCHASED) PC versions of GTAVC into a image which can be played on the DC, the instructions can be found here: PS: No, this is not an April Fool's joke, but we're going to love everyone thinking it is! Guess you're gonna have to try it to find out!🤣

Falco Girgis

145,261 görüntüleme • 1 yıl önce