Тёмный
No video :(

Is super-fast Pixel Perfect Collision Possible? 

Coding Secrets
Подписаться 103 тыс.
Просмотров 74 тыс.
50% 1

Опубликовано:

 

5 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 231   
@Darxide23
@Darxide23 4 года назад
I love this one because it's a great example of an impressive feat that didn't require any code wizardry like using hardware to do things it was never meant to do or exploiting a quirk of the machine code. This was accomplished through understanding the hardware you were working with and not being lazy. Pure and simple.
@GustafStechmann
@GustafStechmann 2 года назад
"Hardware never meant to do" isnt quite right.... The pixel collision register was put there to do exactly that.
@BuckyOhYeah
@BuckyOhYeah 4 года назад
This, my friends, is why you read the manual...
@tzuyd
@tzuyd 4 года назад
As good as the Amiga hardware manual was, it wasn't perfect. For instance, there is no indication that reading the collision flag would reset the flag. That's just the sort of thing you had to find out through trial and error. The hardware was full of interesting intricacies like this, and it's why the demo scene was so consistently prolific.
@gravious
@gravious 4 года назад
i'd love to hear a deep-dive into leander, it's history and some development stories
@pnvgordinho
@pnvgordinho 4 года назад
I´d love a remake/port for the new consoles. It was a cool game and the graphics still hold today.
@Nikku4211
@Nikku4211 3 года назад
I want a SNES port of Leander.
@swine13
@swine13 3 года назад
I believe it sounds something like this: **splooshhhhhh** **glub glub**
@EikottXD
@EikottXD 3 года назад
You can't emulate it?
@lev7509
@lev7509 4 года назад
Feels good when a person with actual experience of programming a console is explaining what it can do.
@giampaolomannucci8281
@giampaolomannucci8281 2 года назад
the amiga isn't a console
@dusanpiscevic6213
@dusanpiscevic6213 3 месяца назад
​@@giampaolomannucci8281yeah, but, this coder, judging by his chanel, worked on lot console games also!
@originalm3233
@originalm3233 4 года назад
*Some games, like King of Fighter's on the NEO*GEO would use one collision box per frame per character, then, if there was a collision in those 2 larger boxes between the characters, it would then start to check smaller sub boxes for greater accuracy.*
@marscaleb
@marscaleb 4 года назад
I believe that most of the Unreal Tournament games did something like this too; because when you view the collision in game there is an extra box around players. I could be wrong though, but it makes sense.
@ArpeggioPegasusMusic
@ArpeggioPegasusMusic 3 года назад
That's most fighting games actually.
@originalm3233
@originalm3233 3 года назад
@@ArpeggioPegasusMusic Actually, it's not, Street Fighter 2 does not do that. It maintains multiple collision boxes on each frame instead of just one like the King of Fighters. Can you name some examples to support what you said?
@BoletusDeluxe
@BoletusDeluxe 3 года назад
That's usually the difference between broad and narrow phase collision and is used in modern day collision systems too. Simple collision is used to query whether a proper collision check is necessary, then more precise collision is done between the two overlapping objects.
@BrainSlugs83
@BrainSlugs83 4 года назад
On the 486 we did it all in software. It's a much more powerful PC than the Amiga, but still very ancient, and pretty much a potato by today's standards. Basically we would do a "broadphase" box check, and if the boxes were colliding, we'd find the overlap and do a per-pixel check -- which was actually pretty fast if you do it cleverly. What we did was precompute a 1bpp collision mask of each sprite as we loaded them in (and for rotating sprites, we'd precompute 256 versions of it). It was a pretty small increase to loading times, and RAM usage. Then you could just find the offset between any two sprites and perform a a Bitshift and a Bitwise-And to compare the two of them; letting you compare up to 32 pixels at once. It was blazing fast. 😉
@marscaleb
@marscaleb 4 года назад
That's amazing! What games did this?
@CodingSecrets
@CodingSecrets 4 года назад
What speed was the processor you were using? The 68000 was 7.68 MHz for comparison...
@yudosai
@yudosai 4 года назад
reading this while setting up my 486 is getting me hyped up
@Nikku4211
@Nikku4211 3 года назад
I've got to try this on my 3.58 MHz 65c816...
@melody_florum
@melody_florum 3 года назад
@@CodingSecrets Wikipedia says “16 MHz to 100 MHz” for the i486
@zdanee
@zdanee 4 года назад
So, basically it was HW accelerated collision detection built-in in the Amiga.
@alpyre
@alpyre 4 года назад
Amiga's hardware and software design were ingenious. All the respect to the engineering team. It's so depressing that the management screwed up and went bankrupt.
@sirkastic
@sirkastic 4 года назад
No, and you're stupid for thinking this
@BrainSlugs83
@BrainSlugs83 4 года назад
It was exactly that. He literally describes it as such in the video.
@zimtak6418
@zimtak6418 4 года назад
@@sirkastic You're the only smart one in this comment thread. It's sad we live in a world where there are more stupid people than smart people and the stupid demonize smart people for speaking truth just because it's negative truth. Worse yet they use smart people's inventions, like computers and internet, to make themselves seem right because there's more of them and they'll supporting each other with likes and shoot down the smart person with dislikes and rude unjustified comments. They like to think it's 'majority rules' with anything in life, even being right or wrong, but it's not, right is right wrong is wrong no matter what the ratio of right to wrong people is, simple as that.
@zimtak6418
@zimtak6418 4 года назад
No, otherwise this wouldn't count as a coding secret, which is what this video and this entire channel is all about. That's like saying making unique and efficient code for the CPU counts as "hardware acceleration". This is unique hardware utilization coding, not simply hardware acceleration. Otherwise every single Amiga game would have pixel perfect collision detection, and that's definitely not the case.
@ThisuraDodangoda
@ThisuraDodangoda 4 года назад
I never get tired of watching this
@paulkerrigan9857
@paulkerrigan9857 4 года назад
I love this. Constraints lead to creative solutions. Game development is one long history of cheating to make something appear a certain way, without actually having to simulate it realistically. It’s all sleight of hand magic tricks. Thanks.
@EduardoRubioLogan
@EduardoRubioLogan 4 года назад
It's amazing how much a dev o dev team need to find ways to push the envelope on x or y areas, great video as always
@chrislaws4785
@chrislaws4785 3 года назад
I have been an avid gamer since my first NES back in the early 90s. Even today I still love playing games and even my son is a huge gamer who is just starting to get into coding himself. I would LOVE to pick the brain of someone like yourself that has been in the industry for as long as you have. Everyone of your videos are just gold to me, to learn how all these things were done. Keep the videos coming.
@xmobilisx
@xmobilisx 4 года назад
Oh Leander! I remember playing it on A1200 and that it was the first game I tested with audio connected to a stereo :-). Such a beautiful game.
@AndersonReis42
@AndersonReis42 3 года назад
I remember seeing this game being studied in another video about pixel perfect detection collision. It's nice to see the original creator adressing it
@mielthesquid6536
@mielthesquid6536 4 года назад
This channel cold start a trend of devs sharing their secrets about their old jobs. This is really interesting and exciting.
@Tremoneck
@Tremoneck 4 года назад
What are those channels called?
@gregorysharp
@gregorysharp 3 года назад
I think it slips our minds at times just how much goes into a game. Especially back in gaming infancy. Great video. Thank you
@kri249
@kri249 2 года назад
This is why I love watching videos like this. I love ingenuity and problem solving that went into the days of limited hardware. And as stated even the graphics designer was able to make awesome backgrounds with the limited colour palate.
@damianmarkland8543
@damianmarkland8543 2 года назад
Genius. I love the way the inherent restrictions of the consoles forced developers to think so creatively and become extremely intimate with the hardware. This was great and so satisfying to see the solution.
@guttsu
@guttsu 4 года назад
I'M LEARNING SO MUCH. So happy I found this channel, it's blowing my mind.
@RealRedRabbit
@RealRedRabbit 3 года назад
My uncle had an Amiga and I, unfortunately, never really got too much into it as a child. As an adult, the Amiga is my favorite platform for playing retro games.
@Tiptup300
@Tiptup300 4 года назад
PLEASE PLEASE PLEASE do one about 3d character movement, it seems like everyone is just adding force to physics systems these days and there's no good videos on how to do quality character movement.
@lucasgreer1736
@lucasgreer1736 3 года назад
Adding forces to physics systems is actually the best way to do things. If you want better movement than that, you could (in unity) calculate the exact player speed and use a coroutine to smoothly use rigidbody.moveposition. Just my idea. (I am not an expert, I once wrote a raycaster that barely worked and that was all I did that was not in an engine).
@MovingTargetTez
@MovingTargetTez 3 года назад
I was getting to the point where I didn't even know if this game actually existed. I used to play the Mega Drive port Galahad and fricking loved it, I am so glad I have started watching your videos. Totally oblivious that you actually created one of my favourite (albeit a port) Mega Drive games.
@desiv1170
@desiv1170 4 года назад
Awesome content! Also, thanx for Leander! As an original owner (and yes, I mean I bought it back in the day), this was one of my favorite games. Not that I was above a bit of piracy from time to time (sorry..), but not for games I really wanted to play. And Leander was one of my favorites! I'll eventually re-buy it as I have been rebuying most of the games I used to own, but it is going for crazy prices still. Which is justified. Great game!!! And this video makes me appreciate it all the more...
@smartroadbiker
@smartroadbiker 4 года назад
I'd so love you to do a series on programming for the Amiga :D
@CallousCoder
@CallousCoder 3 года назад
I never knew about this feature! And very clever application. How I miss those old days with the good ole copper!
@RikMaxSpeed
@RikMaxSpeed 3 года назад
Amazingly satisfying series for a developer who’s always been more interested in how games work than in actually playing them. And as you’ve shown here, a lot comes from using every trick the hardware supports! Fantastic.
@rayredondo8160
@rayredondo8160 4 года назад
I actually implemented pixel-collision into my game engine because of the first version of this video. That was a mistake for a lot of reasons. Anyways, I love to see this stuff explained! I feel like this video had a lot added since the first version; may just be my awful memory, don't know. In any case, keep it up; I always look forward to these videos!
@rayredondo8160
@rayredondo8160 4 года назад
@@StarlightLumi My game engine was for the PC. That's reason 1 why it was a mistake.
@cbmeeks
@cbmeeks 4 года назад
I would love to see some Amiga specific coding examples from you. Great video.
@poptimist5566
@poptimist5566 3 года назад
clever use of the hardware, and even if there was limitations, I like that you acknowledged that the limitations on the colour scheme was overcome by excellent graphics work. Must have been an interesting conversation you had with the artists
@ali32bit42
@ali32bit42 4 года назад
so was pixel perfect collision part of the promotion for this game ? i imagine you would make sure people knew you had such a cool feature.
@bes03c
@bes03c 4 года назад
I doubt many people understood how collision works in video games in 1991. I don't think many people really cared that Super Mario World used collision boxes.
@2beJT
@2beJT 4 года назад
We just played the games and if it was good we rented them more than once back then.
@Formedras
@Formedras 4 года назад
@@2beJT Or in the Amiga's case you just bought them, and if they were good, you copied them and gave the copies to your friends.
@Nikku4211
@Nikku4211 3 года назад
@@bWWd0 Pixel-perfect collision would prevent these cases where people think the game is unfair due to things not visually touching and yet registering damage anyway.
@BrainSlugs83
@BrainSlugs83 3 года назад
@@Nikku4211 even with pixel perfect, people still think it's unfair. A good way to ensure the player thinks it's fair is to actually cheat on their behalf and use slightly smaller collision rectangles, that way, when they do lose, it's super obvious and it can't be argued with. (There've been studies on this, believe it or not.)
@willbill808
@willbill808 8 месяцев назад
Porting games between consoles was a huge deal back then because the hardware was so different. It wasn’t all standardized x64 or 86 architecture
@MatONeill
@MatONeill 4 года назад
Incredible! It's a joy to look under the hood of these games that loom so large in our memories.
@MonteMusicChannel
@MonteMusicChannel 4 года назад
I've just came along this channel and found this video after watching the SEGA Sonic videos you have made, not knowing that YOU coded one of my favorite games from psygnosis back then and probably my first purchases ! Thank you so much for this channel, absolutely love it. The music was escellent with the harp ish lead sound in he first level if i remember correctly. There were ,at least for me, not much resources available on how to program the amiga hardware or 68000 assembly in general so i went the AMOS route. Anyways, i'm glad i've found this channel and i hope to see more of this. Perhaps a tutorial on how to make a pong clone in assembly for the amiga and then go on to a more graphics driven simple platform game, or perhaps a line by line explenation if possible. Anyways, thank you for this, kudos, big ups !
@Yupppi
@Yupppi 2 года назад
Just recently finally completed Shatterhand on NES. Brilliant game that played super well, but with one small caveat. Your robot helper's weapon could in some occasions seemingly pass through a boss without hitting. A good example of how often times in games the hitboxes were generous in good and bad, but in rare occasions just the slightest bit annoingly off and you found just the way to get punished.
@nicholas3354
@nicholas3354 2 года назад
That's awesome. What a clever way to do it, very ingenious.
@rylodinson6100
@rylodinson6100 4 года назад
I loved that game and became an instant fan of Traveller's Tales ... I remember showing it and playing it with my high school friends back then ^^ to this day I still had the music in my head :)
@vedi0boy
@vedi0boy 4 года назад
Wow, this is a great example of knowing the technology you are working with and using it to it's maximum potential. As my comp sci teacher would say: "RTFM!"
@swine13
@swine13 3 года назад
*groan* While the sentiment is an accurate and fair one, I absolutely hate when people use this as a catch-all for basically every issue they come across. Especially if you have a nuanced question with many variables and only a few of which you want to tweak, or a unique set of constraints in which to consider a certain problem.. ..and then this kind of person usually doesn't listen to the context, cuts you off halfway and goes "yup! RTFM" and they usually back it up with this smug face of like "I know the answers you want but im not going to give it to you because I have a superiority complex" - ok that last part was an exaggeration but the rest i swear is true. The IT industry is full of people like that and they make me wanna strap them into some kind of saw contraption... and when they scream to be let out ill get right up in their sweaty little face and be like _"RTFM! Why don't you just RTFM??"_ And then I'd laugh as I watched them die in a furious cloud of rust-tainted blood and tattered sinew. .... Oh dear ive gone a bit mad again, haven't I? Sorry about that- Im sure your teacher is probably a great person. 🤐
@vedi0boy
@vedi0boy 3 года назад
@@swine13 haha no he wasn't. It's okay, it looks like I hit a trigger point for you! I do think that, especially lately, devs don't take the time to read thoroughly into the tech they are using. I am guilty of that being a new grad. But seeing videos like this helps me see that taking the time to read documentation can take my work to another level.
@TheWeatherManFtw
@TheWeatherManFtw 4 года назад
i fucking love this channel, keep it up my man
@magreger
@magreger 4 года назад
Brilliant!
@lev7509
@lev7509 4 года назад
These BG-sprite collision flags remind me of the Sprite 0 hit flag on the NES/Famicom/SUBOR/Dendy.
@julianrandall3550
@julianrandall3550 3 года назад
Still have fond memories of the Amiga and its games
@alanbalan3539
@alanbalan3539 4 года назад
Just when I think I couldn't possibly like you more than I already do, I learn you made leander.
@AnExPor
@AnExPor 3 года назад
I love this kind of problem solving. Nice work.
@nehehehgraylois
@nehehehgraylois 2 года назад
i never would have guessed there were so few colors on the screen if it wasnt pointed out
@karehaqt
@karehaqt 4 года назад
And now I know why this game felt so good to play back then.
@vergil114
@vergil114 4 года назад
Can we talk about how badass the cover art for leander is though? Who drew that?
@MagikGimp
@MagikGimp 4 года назад
Tim White www.mobygames.com/game/amiga/leander/credits
@ericsbuds
@ericsbuds 4 года назад
amazing.
@Caesarschannel
@Caesarschannel 4 года назад
Fantastic video. Makes me realize how spoiled I am. The engine I use (Unity) does all of the things you talk about for me
@SECONDQUEST
@SECONDQUEST 4 года назад
Just program in assembly lmao
@ciaragarrity6425
@ciaragarrity6425 4 года назад
Small world. You helped make a lot of my fav games. Wow, my mind is moved, you helped with crash bandicoot, sonic and lego star wars, thats boss. Subscribed.
@sieyk
@sieyk 3 года назад
So basically CLXCON was an AND function that ran alongside the sprite drawer? Pretty handy!
@entity8019
@entity8019 4 года назад
I remember this game being previewed on TV as a kid. Bought it, loved it. LTUS was the code for the last level if I remember rightly? Still waiting on Tigrander/Tigranda
@geckoo9190
@geckoo9190 2 года назад
Pixel perfect collision are very resource heavy, normally I just make square boxes smaller than the sprites, simple approach, but I found another way, instead of checking every object against other object, check every object against a 2d array, makes things way lighter.
@dusanpiscevic6213
@dusanpiscevic6213 3 месяца назад
Did you code Atari ST version of Leander as well! If this amount of code trickery through special Amiga chips was required to run Leander, than ST's Leander, which runs preety good for ST terms, is a work of miracle. Anyway, Leander was one of my favourite games on Amiga, and although I play lot of Amiga games on emulation, I don't play Leander because it is to hard without joystick with "push down auto-fire" that I played on back in the day. See, when auto-fire is on, Leander can move and jump but since his sword is hiting constantly, no anoying off screen enemies can hit me cheaply! Since it was push-fire button and hold to auto-fire, as soon as you release it, auto fire stops. Without it, playing Leander on standard joypad these days, for me, is unplayable!
@HowToComputeMore
@HowToComputeMore 3 года назад
So basically this collision overlapping is probably just sprites rendering in a playfield, when a pixel is drawn on a location where already a pixel is located the flag goes to 1. Combining this with hitbox collision is brilliant. Then its only a question if the player is looking into the right direction... otherwise it could hit boxes with his back :P
@ArneChristianRosenfeldt
@ArneChristianRosenfeldt 4 года назад
coarse to fine! First you do boxes then pixels! Also seems like the Amiga did not improve over the 8-bit family here. I guess on 68k people expect slopes and loopings like with Sonic.
@MarcinWojciechowski
@MarcinWojciechowski 3 года назад
I remember playing this game on Amiga 500 till this day. It is in my opinion one of the best platform games for A500. Have you also worked on Shadow of the Beast 1-3? Could you please share some more stories about game development on Amiga?
@scribb
@scribb 4 года назад
I still remember the poem from a magazine at the time. Christmas comes but once a year And each one’s even grander But this one is the best of all Cause you can buy Leander
@Mviews-hb4ib
@Mviews-hb4ib 3 года назад
Beautiful memories
@careca0000
@careca0000 3 года назад
wait you worked on Leander? I loved the Genesis port, Galahad, still take it out for a spin once in a blue moon to this day :D
@AcornElectron
@AcornElectron 3 года назад
Holy shit. I wanna see the whole Leander process start to finish.
@LoveDoctorNL
@LoveDoctorNL 2 года назад
Man I loved Leander!
@davidvfx
@davidvfx 3 года назад
interesting about the collisions knew more or less the idea the techniques for this; but I am curious about a console created by the same ones that made the Amiga PC and it is the techniques that were used in the Atari Lynx that its Sussy processor had a very special function which was the "collisions of particles and Sprites", I suppose thanks to This processor saved a lot in writing programming code; And it is still not clear to me if it was something that made a big difference since none of the consoles of the 16-bit era used anything similar; I also remember that this processor had functions such as the deformation and redrawing of Sprites that I have seen scaled, stretched and even rotated these Sprites. I suppose that this was a great help when the memory of the Rom cartridges was very expensive and also in the use of Ramen the console ... it would be interesting if you did a report on the uses of that console since many say it was the based on what we say today are graphic accelerators.
@scotts918
@scotts918 4 года назад
Today: Psst, hey kid, wanna download some Physx? Amiga: Oh yeah, it's just built into the hardware. Pixel perfect.
@Formedras
@Formedras 4 года назад
PhysX: Hardware-based collision detection.
@DrJ3RK8
@DrJ3RK8 3 года назад
Absolutely loved this game! Cool topic too!
@williamrutherford553
@williamrutherford553 2 года назад
I'm surprised this wasn't more common... For sprite-based games, this seems like it would be a MUST have on any console. Otherwise, you slow down the console using a bunch of separate animated boxes, or you just make them oversized with large invisible hazards. Why not make it so specific sprites set a flag when they overlap? Why did it have to be an obscure mode on the coprocessor?
@cr1m3scoding22
@cr1m3scoding22 4 года назад
I really enjoyed playing this game at the time it was released on amiga.
@jagc2206
@jagc2206 4 года назад
Wow, this is amazing
@JM-co6rf
@JM-co6rf 3 года назад
This man is a literal genius
@random_precision_software
@random_precision_software 3 года назад
Wow psygnosis they were based at the pier head if I remember right?(Liverpool) I used to work in bits and bytes in Liverpool and a few of them used in come now and again.
@jhoughjr1
@jhoughjr1 4 года назад
the double olayfueld technique is elegant
@xr.spedtech
@xr.spedtech Год назад
Imagine SDL being taken for granted rn
@alexandernichols413
@alexandernichols413 4 года назад
Clever.
@torokun
@torokun 3 года назад
Why did I find this channel just now?
@zetsuyoru662
@zetsuyoru662 3 года назад
Awesome I played game this as a kid on my friends amiga. Thank you for the memories
@melficexd
@melficexd 4 года назад
That sounds like the occlusion queries or the stencil buffers of the current gen graphics hardware
@wedusk
@wedusk 3 года назад
Love your content. Thank you 🙏
@tulsatrash
@tulsatrash 3 года назад
This is really cool.
@Izzythemaker127
@Izzythemaker127 4 года назад
Title: Is super-fast Pixel Perfect Collision Possible? Scratch(coding engine): Am I a joke to you?
@Mr-yg7jl
@Mr-yg7jl 4 года назад
Yes, it is a joke to me
@skip2682
@skip2682 4 года назад
scratch isn't fast lol
@repussified
@repussified 4 года назад
That's interesting. I didn't know any game system other than Atari VCS had hardware collision detection.
@RahhmiPoofs
@RahhmiPoofs 4 года назад
woah. Just woah.
@olanmills64
@olanmills64 4 года назад
That's a very clever usage of a platform feature. What made the Amiga's pixel-perfect detection so fast? Also, we're you able to detect whether it was the character's swinging weapon or its body that was overlapping with something?
@upthebuffer1921
@upthebuffer1921 2 года назад
The Amiga was great wasnt it. Loved the copper back in the day.
@robintst
@robintst 3 года назад
This was very very cool, I LOVE Leander! Played it to death back in the day! Also have the Galahad port for the Genesis. Why exactly was the name changed for that?
@tychothefriendlymonolith
@tychothefriendlymonolith 3 года назад
Oh man this game. So many hours.
@pepitaux13
@pepitaux13 4 года назад
Great episode! So was collision detection managed the same way in Legend of Galahad on Megadrive?
@CodingSecrets
@CodingSecrets 4 года назад
pepitaux13 Great question! I didn’t code the port so I have no idea (or can’t remember)
@alanbenson1505
@alanbenson1505 4 года назад
Very interesting. Thank you. Could you do a video on how you coded the scrolling routine in this game?
@TheBoxyBear
@TheBoxyBear 4 года назад
Wouldn't it been a lot easier to ignore copper and if a collision happened with the score, do a box check without giving the score a box? If no collision boxes overlap, ignore the collision
@CodingSecrets
@CodingSecrets 4 года назад
Joujoubox if you’re fighting a large enemy, they might overlap the score (or the mountains in the distance as they were also sprites) as well as being in range of your hit box
@AesculapiusPiranha
@AesculapiusPiranha 4 года назад
I always loved what a cool hack this video described.
@silentdebugger
@silentdebugger 4 года назад
How would it handle, say, two enemies colliding with each other? Or an enemy walking over a powerup or something like that? I assume that's handled in the box-check routine?
@ussenterncc1701e
@ussenterncc1701e 4 года назад
As I understood it, the enemies were all part of the same layer, and the collision was determined between layers not within. So enemies crossing each other wouldn't flag.
@gam85191
@gam85191 4 года назад
So basically when we play it's the character but a bunch of boxes crashing into eachother.
@FunkyMonkMan
@FunkyMonkMan 3 года назад
Love it!
@devil4hunt
@devil4hunt 4 года назад
Looks like a promising game for its time, likes the graphics
@captainspongeboy
@captainspongeboy 3 года назад
Puggsy!! I loved Puggsy!
@vexvesper
@vexvesper 3 года назад
this was one of my favorite games when i was little. like REALLY little
@victorluchitz7907
@victorluchitz7907 2 года назад
Did this also mean that collision detection in your game had one frame of latency since you had to wait for the graphics chip to have completed rendering to be able to check the flag?
@111riffi
@111riffi 3 года назад
What about the character touching the HUD? In many games, it's sometimes possible to get to the very top of the level...
@xenobytek9583
@xenobytek9583 4 года назад
Ohhh ... I see Galahad on Sega Genesis is Leander on Amiga. So its the same kind sorcery there? hehe. Amazing video as ever.
@annickecuyer2966
@annickecuyer2966 4 года назад
The Genesis / Mega Drive is vastly different to the Amiga: same CPU, but different architecture and dedicated chips. For a collision testing example : huguesjohnson.com/programming/genesis/collision-vdp/
@SullySadface
@SullySadface 4 года назад
I'm a simple man. I see Leander, I watch.
@ArnaudMEURET
@ArnaudMEURET 2 года назад
I hate to hear of nice features that were in hardware of the olden days and we don’t have today in all the “fantasy machines” today (Pico8, Pyxel, etc.)
@Chubbuluss
@Chubbuluss 4 года назад
Please give us some more stuff on Leander!
@billybobjoe198
@billybobjoe198 4 года назад
Seems like you'd have issues with multiple objects near by with this. If your flag was set on by you pixel pefectly slashing an enemy, another enemy with an overlapping box that's not pixel touching would count as a collision on that frame, right? Not a real issue, and nothing something the player would probably encounter, or notice if they did. But still something in the back of your mind.
@annickecuyer2966
@annickecuyer2966 4 года назад
Yes, it could be a problem with a high sprite density. But as sprites were limited in numbers on the Amiga (as it was a personal computer and not a dedicated game console), they likely rarely overlapped in the game, so the issue didn't occur or wasn't noticeable to the player. And with most other games using collision boxes, even in worst cases it was still as fair as the ones using multiple collision boxes by characters, and still faster at detecting collisions (as boxes were checked only when the sprite-playfield flag was set, and not on every frame).
Далее
Sonic R's "Impossible" Fading
5:15
Просмотров 103 тыс.
Moto Trial vs Moto acrobática 🏁
00:29
Просмотров 2,4 млн
How a Laser-Shot Disk Defeats Hackers & Pirates
5:08
So umm... Minecarts can delete players from the game.
5:42
Crushing Sonic to an Impossible Size
4:49
Просмотров 78 тыс.
Weird maps win elections - Gerrymandering explained
11:40
Sonic R's code the Hardest in the World?
7:08
Просмотров 100 тыс.
Doom didn't kill the Amiga...Wolfenstein 3D did
16:58
Просмотров 781 тыс.
No One Can Find This "Creepy Dinosaur" Game...
30:01
Просмотров 456 тыс.