Комментарии •

  • @megacherv
    @megacherv 7 лет назад +67

    "If you look, the screen is mirrored, which gives us double the frame rate"
    Absolute filth, I love it

  • @liliambean
    @liliambean 7 лет назад +556

    Having played this game countless times, I had never noticed the screen was mirrored. To me, that is the best trick in this bag full of tricks.
    Would love to see sister episodes for stuff like the special stages in Sonic 3D and the rotating tower in Mickey Mania.

    • @Kazuo1G
      @Kazuo1G 7 лет назад +12

      Yeah, someone made a game for Macintosh (I forget which) and they used the same technique there. They mirrored the top/bottom of the rooms, and then drew the game objects over everything as another layer.

    • @JamesStocks
      @JamesStocks 7 лет назад +13

      It looks like there's at least some custom exceptions to the mirroring - towards the end of the video we see a wall texture with the alien toy on it

    • @Karanthaneos
      @Karanthaneos 7 лет назад +21

      James Stocks that's not a texture on a wall thats a sprite that just scales up and down depending on distance. And its always facing the player

    • @ZackBogucki
      @ZackBogucki 7 лет назад +3

      Not only that, the alien sprite is also completely horizontal and floating halfway between the floor and ceiling. So in this case, everything on-screen is still 100% mirrored horizontally.

    • @diribigal
      @diribigal 7 лет назад +12

      Zack, you're talking about a different thing than James and Karanthaneos. At 6:11 there's the potentially mirrored spinning thing. But at 6:07 there is a non-mirrored thing that looks like it could have been a wall texture, but wasn't.

  • @BlobVanDam
    @BlobVanDam 7 лет назад +613

    While assembly code is a bit beyond me, I loved the breakdown of how it was coded, and how it was optimized for the hardware. A very well put together video. Please do more!

    • @RiainRamblez
      @RiainRamblez 7 лет назад +5

      BlobVanDam holy shit! You're that LEGO Doctor Who guy! I love your stuff!

    • @Duif420
      @Duif420 7 лет назад +2

      BlobVanDam what the hell you're that guy who made that Sonic 3 3D video 7 years ago

    • @BlobVanDam
      @BlobVanDam 7 лет назад +7

      Riain, thanks! I don't expect to get recognized. :D

    • @BlobVanDam
      @BlobVanDam 7 лет назад +3

      SonicPigeon, have you had that video pop up in your recommendations lately like apparently everyone else? lol

    • @Duif420
      @Duif420 7 лет назад +4

      BlobVanDam no actually it was already a few years ago, but somehow it's a really memorable video

  • @gm112
    @gm112 7 лет назад +66

    Definitely wasn't expecting you to follow this video up with a literal tutorial on how to do raycasting on a Sega Genesis. This video is as impressive as the graphical effects it covers. Also, only 6 and a half minutes it took for you to explain these things too. That is awesome, man. Thank you for this :)

    • @3lH4ck3rC0mf0r7
      @3lH4ck3rC0mf0r7 6 лет назад +1

      gm112 The Genesis would take forever to do anything resembling raycasting. This is unlit 3D the likes of DOS and 16-bit Windows.

    • @Jono997
      @Jono997 5 лет назад +7

      @@3lH4ck3rC0mf0r7 He said raycasting, not raytracing.

  • @dcvk6250
    @dcvk6250 7 лет назад +124

    Traveler's Tales truly is one of my favorite game companies just because of the stupid stuff they could do with the hardware

    • @justsomeone5314
      @justsomeone5314 4 года назад +4

      I was really hyped for LEGO Worlds when I saw TT developed it.
      I'm not sure where it stands in technical achievement, but the usability and controls were very underwhelming. Company names stay, but the developers change.

    • @justsomeone5314
      @justsomeone5314 4 года назад

      @
      I don't really know what's the power of any iPhone, but the better ventilation that the switch has allows it to work a lot harder.
      Although this may not be an objective observation; personally I don't find TT's LEGO-themed games all that complicated. Surely there's some serious math involved in optimizing which pieces need to get rendered, but it's rather simple compared to other AAA games, and the hardware is much more forgiving for various small inefficiencies that they could make. The only company that really amazed me lately for its runtime efficiency is Id.
      And again, as a PC user I was let-down by the controls and contents rather than image quality (graphics weren't that marvelous, but I don't care much for that - LEGO is all blocky anyway).
      Maybe I grew cynical of good-old companies after observing some of them going down dark paths. Maybe TT has incredibly talented programmers. For now I just think that their products are barely worth mentioning in conversations with my friends.

  • @QuestionBlockGaming
    @QuestionBlockGaming 7 лет назад +36

    What a fascinating video! I love seeing behind the scenes stuff like this! When you mentioned that the screen was mirrored, i had a jaw-dropping "OH MY GOD" moment! I had no idea, it didn't look mirrored and i never would have noticed had you not pointed it out!

  • @noahhall2302
    @noahhall2302 7 лет назад +87

    Currently blowing my mind

  • @GarArtStudios
    @GarArtStudios 7 лет назад +9

    Wow, this was awesome! Great work, Jon. So glad you're sharing these super cool and innovative old tricks that were used on those old systems. Keep it up, sir. Great work. Would love to see more of this in the future. :)

  • @Ohverture
    @Ohverture 7 лет назад +15

    More! That was fabulous. I'm a 38 year old engineer, so I'm old enough to remember playing, and now smart enough to understand it - it's like the Goldilocks zone for enjoyment of this stuff. :)

  • @ColoniaContraAtaca
    @ColoniaContraAtaca 7 лет назад +173

    more more!
    Thats Awesome!

    • @GeovanVenancio
      @GeovanVenancio 7 лет назад +8

      "Isso é muito AWESOME!"

    • @Thalesperes
      @Thalesperes 7 лет назад +4

      Que vídeo sensacional mano! Foda demais! Nunca tinha reparado que era espelhado a tela, eu sempre fale desse game em discussões de mega vs. Snes.

    • @gorin2178
      @gorin2178 7 лет назад +4

      Senhor virso. O senhor por aqui.

    • @gtPacheko
      @gtPacheko 7 лет назад +1

      Stop speaking Spanish

    • @GeovanVenancio
      @GeovanVenancio 7 лет назад +1

      Pacheko Spanish?? WTF

  • @dreamer72
    @dreamer72 7 лет назад +83

    3:57 *franticly points* LEGO Star Wars UI Reference!

    • @FairPlay137
      @FairPlay137 7 лет назад +4

      JaCoB'S cLuB Glad I wasn't the only one who noticed it!

    • @theobserver4214
      @theobserver4214 6 лет назад +1

      JaCoB'S cLuB Now we just need someone to make the Gamehut logo a Lego figure

  • @Number_055
    @Number_055 7 лет назад +372

    I miss the days where programmers had a responsibility to ensure that their code ran at a decent framerate. Nowadays it's just "Our game runs at 10fps? It's clearly your fault for not having a ten thousand dollar computer."

    • @sasdagreat8052
      @sasdagreat8052 7 лет назад +49

      Yeah, I'm pretty sure most of the games nowadays can be optimized to run much faster than they do.

    • @Caraxian
      @Caraxian 7 лет назад +66

      In those days you built a game to run on a certain config. Now there are hundreds of thousands of confide that games have to work on

    • @reNINTENDO
      @reNINTENDO 7 лет назад +41

      +Retro Frontier I only have the utmost respect for programmers who dealt with those limitations, but I wouldn't belittle the achievements of modern programmers to that degree. The hardware may have gotten considerably more powerful but what players demand of their games have also skyrocketed.
      Plus you mention Game Maker, a program I feel I'm an expert at but not one I'd consider myself a programmer from. GML isn't C++, which is actually used in nearly every modern video game. They share some similarities and lord knows both are easier than assembly, but pretending they are on the same difficulty level would be quite misleading. And even then while a terrible programmer could make a game in a few hours with Game Maker, an expert of the program could pull off things in the same amount of time that the other programmer wouldn't think Game Maker was even capable of.
      Also if you're aware of lower level modern programming languages like C and C++, you'll know that there are still many problems like the ones seen in these videos you still have to contend with. The ease of tackling them may be mitigated and the amount of memory you have to work with may sometimes seem infinite, but that doesn't mean having issues where you have to count specific numbers of bytes don't happen.

    • @moth.monster
      @moth.monster 7 лет назад +21

      If you look at Nintendo, you'll see this spirit is not gone. Just look at MK8 and BOTW on the Wii U. Nintendo always saves a buck on the hardware and spends it on making the software that much more efficient for their consoles!

    • @happyspaceinvader508
      @happyspaceinvader508 6 лет назад +18

      This is only the case in PC land. Console developers still have a responsibility to make sure their code runs at a decent framerate on the platform they're developing for. And, just like in the old days, they meet that challenge with varying diligence and success.

  • @AURORAFIELDS
    @AURORAFIELDS 7 лет назад +108

    Gotta love unrolling loops. A friend made a generator, which generated 68k source files containing huge unrolled loops, to render each scanline of a scaled image at any scale factor (imperfectly, there were a few bugs), and I created the code that will scale vertically by skipping or repeating some lines, and it turns out, I can scale 4 images simultaneously where 1 image is generally large and 1 is very small, and DMA all the art in 30fps! And on top of that, because it was for a menu, and the code was just small enough, I was able to Kosinski compress the code (Actually, I also wonder what Kosinski compression would have been called back in the day?). It did create for some very awesome effect, and again show how much a beefy CPU can do.
    Also, really liked the high production value of the video, keep it up! More technical effect videos would be cool to see.

    • @TheSpace928
      @TheSpace928 6 лет назад +3

      Yeah, when writing shaders, I often unroll my loops and I remember when I started in scratch (many years ago) we would manually unroll loops for faster 3D rendering (though it was very primitive).

    • @thetriggeredone3461
      @thetriggeredone3461 2 года назад

      @@TheSpace928 imagine if Sega used a 680020 processor this game would have looked even better

  • @schtive81
    @schtive81 7 лет назад +8

    "Write in the comments if you want more or less of this kind of thing."
    Who would want less? These videos are fantastic. Wow at the tricks you used to get this demo to run up to 58.4 fps! Especially that macro trick.
    Really would like to see more on Genesis Toy story if possible. The game is a technical marvel on the Genesis. You guys did some neat audio mixing tricks with that game too.

  • @solarflare9078
    @solarflare9078 6 лет назад +1

    Looking back into this, this is probably the best Coding Secrets video I have ever saw. The music, length, and best of all, the Lego HUD all combine to make this the most detailed and beautiful video on your channel! I would LOVE to see more of this editing (whenever possible)

  • @CowabungaCat555
    @CowabungaCat555 7 лет назад +32

    I don't pretend to understand all of this but please do more stuff like this. Anything is nice, but this is great. Also if you have anything on Toy Story 2 you'd be pressing some of my oldest gaming nostalgia buttons. And if not, thanks anyway just for being part of the company that made it.

    • @battleonfan1
      @battleonfan1 7 лет назад +5

      FUCK YES I WANT TOY STORY 2 CONTENT.

    • @GoldenGrenadier
      @GoldenGrenadier 7 лет назад +2

      Me three. I want to know if there's some kind of story behind buzz losing his mind in the demo mode on Dreamcast.

    • @sparkside217
      @sparkside217 4 года назад

      @@GoldenGrenadier What? What happened on the demo mode?

    • @GoldenGrenadier
      @GoldenGrenadier 4 года назад

      @@sparkside217 On one of the demos, Buzz will Start running into a wall and the rest of the demo won't sync up.

  • @RiainRamblez
    @RiainRamblez 7 лет назад +6

    More of this would be really cool. Idk what exactly I want explained, but seeing this was really neat

  • @greenpuffle
    @greenpuffle 7 лет назад +1

    This channel is gold. You're a genius, Jon! Often times for me, lack of funds for certain projects calls me to be more creative, but in this case, hardware limitations really pushed you guys to push the boundaries and create something amazing from very little. Very very impressed!

  • @terrythe2dmaniac71
    @terrythe2dmaniac71 7 лет назад +1

    Amazing video and it's super informative, absolutely if you get enough requests other than myself please publish more of these, the scene really needs more ppl like you my friend.

  • @BdR76
    @BdR76 7 лет назад +34

    4:30 Wow, actually I hadn't even noticed that it was mirrored. That is such a simple yet clever trick.
    But then there's still a non-symmetrical wall at 6:07 ..

    • @myg4youtuber697
      @myg4youtuber697 6 лет назад +26

      BdR76 The non-mirrored wall is not a wall, these toys are on the background layer

    • @Mizu2023
      @Mizu2023 2 года назад

      it's just 1 wall that gets to draw its full texture
      wouldn't slowdown so much

  • @chrismurray9401
    @chrismurray9401 7 лет назад +1

    I really like how writing a huge amount of code instead of a loop, WAS the solution back then, as cartridge space and cycle times were much more important to consider. Now-a-days it's perfectly fine for code readability to cause a slight "performance" hit at run-time.
    Just goes to show how platform limitations really have an impact, and that modern clock speeds and memory are insanely higher now.
    Really enjoyed the video, would love to see some more of this "breakdown" type of video.

  • @bakaattack6186
    @bakaattack6186 7 лет назад

    It was one of my childhood favorites.
    That mirroring trick was AWSOME.
    Please, more of this!

  • @sandakureva
    @sandakureva Год назад

    I actually really enjoy these dedicated code walks. Assembly isn't something I use a whole lot of today, but it's always fascinating to learn about.

  • @johnbewty
    @johnbewty 7 лет назад

    This is absolutely fascinating. I'm a developer in another industry and I find tales of 16-bit development to be interesting and actually... inspirational. You guys (the people that coded the games of my youth) are actual heroes to me.

  • @Emuraman
    @Emuraman 7 лет назад

    I actually never noticed that half of the screen is mirrored in order to save space, that IS pretty clever.

  • @Jenovi
    @Jenovi 7 лет назад

    I really enjoyed this video. It makes me so happy to see in-depth content from the people who worked on these games.

  • @ZVAARI
    @ZVAARI 7 лет назад

    It seems so simple when explained that way, but someone had to look at the issues they were facing and come up with all of these solutions. This is pretty crazy, I love how this channel presents its content.

  • @Drerhu
    @Drerhu 6 лет назад

    It was one of the best fps sequences because the smooth moves and detail. Nice to see this!

  • @PaulandoUK
    @PaulandoUK 7 лет назад

    Loved this. Always wondered how tricks like this were pulled off on 16-bit hardware. Blown away at how clever it all was. I don’t know any code, but his explained it in a way I could understand, so thank you!

  • @akapype
    @akapype 7 лет назад +3

    Super cool to have first-hand comments on programming techniques of that era ^_^
    Please keep up !_!

  • @RFC3514
    @RFC3514 4 года назад +1

    1:31 - Ultima Underworld did it first (in fact, John Carmack has mentioned that Wolfenstein 3D was inspired by an Ultima Underworld demo), although they didn't simplify it quite so much (it supported other types of deformation).

  • @flashn00b
    @flashn00b 6 лет назад +6

    It still seems more impressive than the SNES version of the 3D section

  • @smmoom1212
    @smmoom1212 7 лет назад

    this stuff is just facinating!!! you sir are responsible for many of my favorite childhood games. I'm so glad you're willing to share this incredible insight into what you were thinking!

  • @Introbulus
    @Introbulus 7 лет назад

    I LOVE this kind of thing!!!! I do like how some of your later videos break things down in a way that is easier to understand for non-programmers, but as a programmer this stuff just speaks to me in a wonderful way - these days, it's always about writing the least number of lines of code to accomplish things for ease of maintenance (It is for me, at least!) but it's fascinating to see how things used to be, when space and runtime were both extremely important and had to be managed when writing this stuff.

  • @parabellum09
    @parabellum09 7 лет назад

    Have to say, amazing videos. Cannot believe I've not seen anything else like this before on youtube.
    I find it incredibly interesting, especially with the limitations of the technology at the time and you are very articulate and explain things so well. I haven't the foggiest how to write or understand code by I fully understand what you are doing and trying to achieve with your videos.
    Great work!

  • @FurEngel
    @FurEngel 7 лет назад

    This is what games in the 8bit/16bit era so much fun. The developers were always facing hardware limitations and had to come with hacks or other ingenious ways to overcome them. This led to great games, as the effort would really shine through.

  • @kcowolf
    @kcowolf 7 лет назад

    As a programmer, I enjoy learning about how the games of my childhood actually worked under the hood. Thank you for sharing this.

  • @SniperDiplomat
    @SniperDiplomat 4 года назад

    Such a cool video. The part about the macro that generates thousands of lines of code just to bypass the cost of looping was crazy.

  • @DumDoDoor
    @DumDoDoor 7 лет назад

    This is getting better! Assembly code is something beyond my understanding but I love the secrets to achieve the desired effect.

  • @darkdoescosplays
    @darkdoescosplays 7 лет назад

    I'm currently learning Python as my first programming language, and although the code in this was at a much lower level it helped me understand why code is programmed a certain way at a higher level. This is brilliant stuff, thanks.

  • @Pixoshiru
    @Pixoshiru 7 лет назад

    I'm discovering your channel and as a younger developer but raised by an Amiga 600, I'm craving these first-hand stories of 16-bit game development. Thanks a lot for sharing, hoping to see more!

  • @LuigiXHero
    @LuigiXHero 7 лет назад +13

    This is a great video and can't wait to see more like it.

  • @ChristopherEggison
    @ChristopherEggison 7 лет назад

    Fascinating video, please keep producing more. Really enjoy hearing about how effects were made and then optimised for older systems.

  • @TakenTooSeriously
    @TakenTooSeriously 7 лет назад

    Man, I take memory for granted on all my projects. This really gives some perspective.

  • @MrGloverDude
    @MrGloverDude 7 лет назад

    Gosh it just incredible how yourself and other got around some of the hardware limitations of the time. It's remarkable

  • @gmwznhnt3
    @gmwznhnt3 7 лет назад

    Yo, this channel is THE hidden gem of RUclips. Love these videos. Please keep it up!

  • @CyTic5
    @CyTic5 6 лет назад

    PLEASE DO MORE! This is great at teaching valuable coding and logic usage! Keep up the Awesome work!

  • @SegaKid_V
    @SegaKid_V 7 лет назад

    More! I don't know about the technical side of games but watching your videos over and over helps me to understand more and more, a "byte" at a time, lol.😃

  • @nixel1324
    @nixel1324 7 лет назад

    More, please! As an IT student, it's really interesting to see what advanced code looks like, and what the reasoning behind it is.

  • @Thalesperes
    @Thalesperes 7 лет назад

    Woooow! So the screen was mirrored! Mindblow!!!!
    I loved so much this game as a kid! And I still do!! I always bring Toy Story when i'm talking about Genesis vs. Snes! Also, that mod player is amazing too! AMAZING video! I would love to see more about the development of this game! Subscribed!

  • @JM-Games
    @JM-Games 4 года назад

    That is insane, I had somewhat of an idea how the old 3D games used to work but I never knew each pixel was being manipulated individually and then it's mirrored too >.< . Mind blown.

  • @nooodisaster
    @nooodisaster 7 лет назад

    WOW! Just discovered Coding Secrets, and I can't stop watching! Definitely please make more, it's so interesting to see this type of gaming history

  • @TorstenGrust
    @TorstenGrust 7 лет назад

    This throws me back sooooo many years. Thanks a lot, Jon. Please, if you have more of this, by all means post it! Cheers and thanks a lot!

  • @AlsoMeowskivich
    @AlsoMeowskivich 7 лет назад

    Being a fresher programmer, I'd like to see more of this sort of thing. It always boggles my mind watching the coding of far more limited systems than the luxurious ones we have these days.

  • @happyspaceinvader508
    @happyspaceinvader508 6 лет назад

    I find it far more interesting watching analyses of how developers managed to squeeze incredible visuals out of the 16-bit consoles than any "behind the scenes" of modern games.

  • @dpaint
    @dpaint 7 лет назад

    More of this kind of content please. Great use of visuals to explain complex ideas simply. Well done.

  • @ControlAllDa1337
    @ControlAllDa1337 7 лет назад

    This kinda stuff makes you appreciate old school coders

  • @feosTAS
    @feosTAS 7 лет назад

    Oh god this is just brilliant!
    Early 3D was so tricky to implement that it wasn't possible without all sorts of hacking around. Even for PC during the years when Megadrive was around, Doom and System Shock were about as much as you could ever get, for 16-bit consoles it was even stricter.
    Also awesome job with revealing the trickery of game engines. There will always be interest in that kinda stuff just like people still keep releasing Megardive demos (Overdrive and others). And since code breakdowns of old games are so rare (I can only remember 1 dev for megadrive ever sharing his code - Chris Shrigley), such content is always unique and insanely valuable among us enthusiasts.
    There are also emulator developers who are always interested in insider info, so don't be afraid to dive as deep into code geek stuff as you can or wish, there will always be interest!
    Thanks for your channel, keep on kicking ass!

  • @mo0nred
    @mo0nred 7 лет назад

    This kind of stuff is so amazing and interesting to me. I know nothing about coding but I feel like you wouldn't see things like this anymore with modern games because machines are so much more powerful and memory space isn't so low. Awesome to see the tricks in the background to make these techincal scenes with such limited technology of the time.

  • @That_Ifrit_Guy
    @That_Ifrit_Guy 7 лет назад

    Mirroring the screen was such a cleaver trick!

  • @tylerwerrin41
    @tylerwerrin41 7 лет назад

    this is great! very informative - always wondered how Toy Story pulled off so many graphical tricks that I had never seen on a Genesis before!

  • @fenderShreder
    @fenderShreder 7 лет назад +4

    this is the gaming stuff i really enjoy. it would be cool if you did some videos just rambling about your experience making a particular game, and any memorable coding challenges or other notable stuffs. like your opinion on Sonic 3D and if you think criticism is just misunderstanding the game or etc
    not too many (i've seen nobody else) genesis devs are on youtube, so this is a great channel you got going indeed

    • @feosTAS
      @feosTAS 7 лет назад +1

      I agree, there is a video of Genesis Aladdin developer playing his game while commenting all sorts of stuff about it, and a similar one with Symphony of the Night. It is always very enjoyable to watch such stuff.

    • @GordonAitchJay
      @GordonAitchJay 6 лет назад

      Agreed. The entire Dev Plays series by Double Fine is worth watching.

  • @mindtreat
    @mindtreat 7 лет назад

    You're like the Vsauce equivalent within gaming science, showing and telling in such a way that a lot of people understand the concept of what you're talking about. love your content, keep it up :)

  • @osga21
    @osga21 7 лет назад

    Not only do I want more, I'd love it if you did a tutorial series on 6800 assembly, so we'd learn to make a simple game along with you from start to finish

  • @AesculapiusPiranha
    @AesculapiusPiranha 7 лет назад

    Amazing channel. I wish there were more 16 bit vets like you who did this kind of thing.

  • @jjbpenguin
    @jjbpenguin 7 лет назад

    holy smokes! the mirroring makes so much sense. I always felt it was strange how the aliens rotated around the vertical axis but were sideways. It was all about mirroring!

  • @resistancefighter888
    @resistancefighter888 7 лет назад +5

    Please do more videos like this, it was very interesting!

  • @jimmyjimbo72
    @jimmyjimbo72 7 лет назад

    No, you give _yourself_ a pat on the back. Those optimisations were ingenious!

  • @maxdelayer
    @maxdelayer 7 лет назад

    Holy hell I love that breakdown of optimization, really neat to hear about. Would love too see more practical stuff like this to spark the imagination

  • @DavidslvPT
    @DavidslvPT 7 лет назад

    Wow! It only took me 22 years to get to know how some parts of the Toy Story game were made :D. I must say that the first time I saw that level I was very confused of what to do, nothing in that level made sense to me for a while. What great memories this brings :D Thanks for sharing, please do more :)

  • @Dirk1Steele
    @Dirk1Steele 7 лет назад

    Incredibly interesting. Please share more of these types of videos. Back in the day, there was certainly a bit of an obsession with games players about the special effects seen in games from yourselves, Treasure, Konami and other great coding houses that seemed to border almost on witch craft compared to what most developers put out.

  • @onlyeyeno
    @onlyeyeno 4 года назад

    A sincere thanks for choosing to share Your knowledge, and taking the effort to make these videos in order i to do so.
    And I personally appreciate how You "get to the gist" and present the general principles in an easy and relatable way, it almost feels as if You could have figured it out Yourself ;)...
    Best regards

  • @hrnekbezucha
    @hrnekbezucha 6 лет назад

    And that's when assembly is at its best. Good job man. Really impressive

  • @ahums16
    @ahums16 7 лет назад

    ABSOLUTELY MORE
    You break everything down nicely, please be as technical as you wish. This stuff is incredibly fascinating.

  • @Existensmaximum
    @Existensmaximum 7 лет назад

    I love it! It's very illuminating, seeing the actual assembly code! Super interesting!

  • @BuckeyeStormsProductions
    @BuckeyeStormsProductions 7 лет назад

    Subbed. It amazes me how you guys tweaked everything to push hardware to its limits when space and CUP cycles were at a premium.

  • @Omnituens
    @Omnituens 6 лет назад

    I would love a video on how the position of the walls are stored and calculated. I know it's probably way beyond what is normally covered here, but I remember being very impressed with Toy Story as a kid and would love to know more.

  • @fen7662
    @fen7662 7 лет назад

    I love your videos. I'm not saying modern games don't use any kind of trickery to make things work, but you all had to be so much more inventive with such intense constraints. Nowdays a lot of publishers don't even require devs to compress the file size for digital downloads of console games. It's fascinating how much engineering goes into some effects we took for granted as just technological evolution as if it's something people didn't work on.

  • @PolkaTrapeze
    @PolkaTrapeze 6 лет назад

    I love that you show the assembly, this is really good information.

  • @fromwithinuk
    @fromwithinuk 6 лет назад +2

    I remember seeing this when you'd first got it up and running, but that version hilariously had Mickey Mouse hands holding a minigun.

  • @mikkusu
    @mikkusu 7 лет назад

    Definitely more of this please! I love this sort of thing along with all your other videos. Keep up the great work!

  • @seanloughran6714
    @seanloughran6714 7 лет назад

    More, definitely more of this. I'm loving the behind the scenes looks!

  • @TotallyGoodatGames
    @TotallyGoodatGames 7 лет назад

    Love this video! A novice-level tutorial series on Genesis programming would be very appreciated!

  • @prfo5554
    @prfo5554 7 лет назад +13

    It is impressive how you were able to figure out how to get high frame rates on by using coding tricks. The frame rates are a lot more better in your game than some Sega Genesis games that attempted 3D.
    On another note, from your experience do you know why some 3D games, like PGA Tour 96, on the the Sega Genesis had such a low frame rate and took forever to render?

    • @genstarmkg5321
      @genstarmkg5321 7 лет назад +3

      They did need to it not be mirrored and also, didn't scale but instead used flat polyogons (some even with textures) which are slower to draw than scaling strips. Also, it's a golf game, even some Windows 95 games were really slow just to look nicer. There are faster flat polygon games in the Genesis like LHX Attack Chopper, and even Hard Drivin' and Race Drivin'.

  • @punkjediguy
    @punkjediguy 7 лет назад

    I'm loving this CODING SECRETS series!

  • @Chaofanatic
    @Chaofanatic 7 лет назад

    This was super interesting, I'd love to see more about this kind of stuff

  • @drsPascalsArchive
    @drsPascalsArchive 7 лет назад

    The screen is mirrored. That's so clever. I bet even Sega themselves were jealous of what Traveler's Tales could do on the Mega Drive.

  • @THEmuteKi
    @THEmuteKi 7 лет назад

    Nothing crazy about loop unrolling, but (as you imply) it's always better to have whatever's compiling your code to do that for you. Very clever stuff here!

    • @GameHut
      @GameHut 7 лет назад

      the_muteKi it was more the scale of unrolling hundreds of separate routines, one for each length of line that (at the time because of limited memory) seemed crazy.

  • @GibranMalikRecordings
    @GibranMalikRecordings 6 лет назад

    i love this channel answering all my childhood wonders.

  • @DanielMonteiroNit
    @DanielMonteiroNit 7 лет назад

    This is pure gold! I'm currently struggling with the floor on my own raycaster (using C++14-ish for DOS). The mirroring trick might give me some extra time for each frame =)
    Oddly enough, Wolf3D also employed code for each wall scale - but generating it on the fly

  • @null1023
    @null1023 6 лет назад

    I'm impressed at the simplicity of some of the techniques to get a whole 10x improvement. Unrolling is something I'd have definitely gone for, but I don't think I'd have thought of mirroring it vertically, haha.
    also, I never really thought about why all the "3d" stuff I've seen on the machine (like here, or Zero Tolerance, or Ranger-X's wireframe cutscenes) all plotted in half horizontal resolution until you mentioned that the colors are packed 2/byte (which I probably should have noticed beforehand, since you get 16 colors per tile)

  • @Domarius64
    @Domarius64 6 лет назад

    I love your videos. So much. Crazy things don't seem so mystical anymore.

  • @EveBatStudios
    @EveBatStudios 7 лет назад

    I love this kind of content and wish more ex-developers would make channels going into detail on old projects.

  • @inretention
    @inretention 7 лет назад

    This is a fantastic demonstration of the thought process you had to go through to squeeze every frame from the Sega. Can we have more coding examples of your other work? I have just got back into Assembly language after a 30 year break and remember why I never became a game Dev.

  • @Siosal01
    @Siosal01 4 года назад

    I loved this. I am a huge fan of the mega drive and seeing this is just mesmerising. Thanks so much.

  • @a1exh
    @a1exh 6 лет назад +9

    I'd be curious to understand how the "mirroring" was achieved. Presumably the CPU still has to program the DMA to perform the copy? Certainly a lot less CPU intensive than rendering the full screen.

    • @GameHut
      @GameHut 6 лет назад +14

      Mirroring was effectively free as the hardware allowed mirroring of any graphics already in VRAM

    • @a1exh
      @a1exh 6 лет назад +1

      Are we talking DMA VRAM copy? Using the source/destination address to implement the mirroring?

  • @HasXXXInCrocs
    @HasXXXInCrocs 7 лет назад

    God, i love good ideas. I think all programmers can appreciate the mind fuck moments you have when idea like mirroring the image comes into play. Great video.

  • @alejogrigerasutro9278
    @alejogrigerasutro9278 7 лет назад

    Awesome! You blew my mind. Would love more of these. Feedback: consider dialing down the music- you have a great voice. Let it shine!

  • @CosmicEternityCD
    @CosmicEternityCD 7 лет назад

    This was so cool! I feel like ASM makes a tad more sense to me now than it did before, haha. Definitely appreciate the rundown! Would love more techy stuff like this in the future!

  • @donutdude4174
    @donutdude4174 6 лет назад

    I can't believe I didn't realise it was mirrored such good design