Raakt het DVD-logo ooit de hoek?
Iedereen die ooit naar een DVD-screensaver heeft gekeken, heeft zich hetzelfde afgevraagd: gaat hij de hoek raken, of ben ik mijn tijd aan het verdoen?
De vraag heeft een exact antwoord. Geen kans, geen gemiddelde — een antwoord dat je vooraf kunt uitrekenen uit vier dingen: hoe groot het scherm is, hoe groot het logo is, hoe snel het beweegt en waar het begon. Zo werkt het, in drie stappen.
Stap één: het scherm is kleiner dan het lijkt
Begin bij wat er werkelijk stuitert. Het logo is een rechthoek, geen punt, dus wat reist is zijn linkerbovenhoek — en die hoek kan de rechterrand van het scherm nooit bereiken, omdat de rest van het logo in de weg zit. Zijn bewegingsruimte is het scherm min het logo.
Nu de snelheid erbij. Het logo verschuift per frame een vast aantal pixels — vier is gebruikelijk — dus het kan alleen op elke 4e pixel van dat bereik landen. De pixels ertussen zijn niet gewoon zeldzaam. Ze zijn onbereikbaar.
Verwijder ze en het beeld verandert compleet. Links hieronder is elk kruispunt een pixel en kunnen alleen de cyaankleurige het logo dragen. Rechts diezelfde cyaankleurige punten op zichzelf.
Wat overblijft is het raster waarop het probleem echt leeft, en de omvang daarvan is simpelweg:
- X = (schermbreedte − logobreedte) ÷ snelheid
- Y = (schermhoogte − logohoogte) ÷ snelheid
Een scherm van 3840 × 2160 met een logo van 176 × 80 op 4 pixels per frame is dus geen probleem van vier miljoen pixels. Het is er een van 916 × 520.
Dat is de hele reductie. Elk scherm, elk logo, elke snelheid: een punt dat diagonaal over een raster van X bij Y stapt, vakje voor vakje. Die twee getallen bepalen al het overige.
Eén aanname, meteen vermeld. Dit alles gaat ervan uit dat het logo over een echte diagonaal beweegt — één pixel opzij per pixel omlaag. Zo gedroeg de oorspronkelijke screensaver van DVD-spelers zich, en zo gedraagt de hieronder geanalyseerde clip zich. Start hem onder een andere hoek en het raster valt uiteen, samen met elk helder resultaat op deze pagina.
Stap twee: één getal bepaalt of het ooit gebeurt
Nu het deel dat mensen verrast. Of er ooit een hoek wordt gehaald, heeft niets te maken met hoe lang je wacht. Het ligt vast vóór het eerste frame.
Dit is waarom. Vergeet de hoeken even en kijk alleen naar de randen. Diagonaal stappend over een raster van X bij Y raakt het logo elke X frames een linker- of rechterrand, als een klok, en elke Y frames een boven- of onderrand. Stuiteren verstoort die ritmes nooit, want het stuiteren is het ritme — het is precies wat een rand raken betekent.
Een hoek is niets anders dan beide wekkers die in hetzelfde frame afgaan.
De vraag is dus niet langer meetkundig, maar een vraag over twee terugkerende wekkers: gegeven waar elk in zijn cyclus staat, zullen ze ooit samen afgaan? Twee wekkers kunnen alleen samenvallen als de afstand tussen hun eerste signalen een veelvoud is van wat hun perioden gemeen hebben. En wat X en Y gemeen hebben is hun grootste gemene deler.
Dat is de hele toets. Neem ggd(X, Y). Als het logo naar rechtsonder vertrok, haalt het alleen een hoek wanneer die deler het verschil van zijn startcoördinaten deelt; vertrok het naar rechtsboven, dan alleen wanneer hij hun som deelt. Anders staan de twee wekkers voorgoed uit de pas, en langer laten lopen repareert geen ritme.
Twee naast elkaar gelegen startvakjes, op hetzelfde raster van 12 × 8, waar ggd(12, 8) = 4. Vanaf (0, 4) is het verschil 4, een net veelvoud, en de wekkers lopen gelijk. Vanaf (1, 4) is het verschil 3, en dat zal nooit gebeuren.
Daaruit volgt een regel die je op het oog kunt toepassen: ruwweg één startvakje per ggd werkt.
- ggd = 1
Elke startpositie bereikt een hoek. Allemaal, gegarandeerd.
- ggd = 2
Eén op de 2. De helft is kansloos.
- ggd = 3
Eén op de 3.
- ggd = 4
Eén op de 4.
- ggd = 6
Eén op de 6 — onder de 17 %.
- ggd = 12
Eén op de 12. Ruim 91 % gaat nergens heen.
En dat merk je in de praktijk. Het raster van 916 × 520 uit stap één heeft een ggd van 4, dus in die opstelling zijn drie kwart van alle startposities kansloos voordat het logo ook maar één keer bewogen heeft.
Dus als je al een uur naar een screensaver staart zonder resultaat, heb je misschien geen pech. Misschien kijk je naar een lus die wiskundig niets kan leveren.
Stap drie: een hoek keert alles om
Nog één feit, en daar hangt het slot aan.
Een gewone stuiter verandert maar de helft van de beweging. Raak de rechtermuur terwijl je naar rechtsonder gaat en het horizontale teken klapt om: het logo gaat nu naar linksonder. De verticale helft loopt volledig onaangeroerd door, dus het logo wint nog steeds nieuw terrein.
Een hoek klapt beide tekens tegelijk om. Rechtsonder wordt linksboven — geen nieuwe richting, maar precies het tegendeel van de richting waarmee het aankwam. En beide helften van een snelheid negatief maken is hetzelfde als terugspoelen indrukken.
En dat is precies wat er gebeurt. Elk vakje dat het logo op de heenweg kruiste, kruist het op de terugweg opnieuw, in omgekeerde volgorde. Elke stuiter die het maakte, maakt het achterstevoren nog eens. Het pad is een palindroom.
Een stuiterend logo is dus geen rusteloze lijn die uiteindelijk overal langskomt als je het maar lang genoeg de tijd geeft. Het is een gesloten heen-en-weercircuit met aan elk uiteinde een keerpunt, en die keerpunten zijn hoeken.
Hier komen we aan het eind op terug, want het beslecht de vierhoekenvraag helemaal.
Hoe lang tussen twee treffers
De twee wekkers uit stap twee vertellen niet alleen of er een hoek komt. Trek je ze wat verder door, dan vertellen ze hoe vaak.
Nadat ze één keer samen zijn afgegaan, wanneer kan dat op zijn vroegst weer? Niet voordat een geheel aantal X-cycli is verstreken, en ook niet voordat een geheel aantal Y-cycli is verstreken. Het eerste moment dat een veelvoud is van zowel X als Y is per definitie hun kleinste gemene veelvoud. Meer valt er niet uit te rekenen.
- Voor een start die werkt valt er elke kgv(X, Y) frames een hoektreffer, precies, zonder ooit af te drijven
- En elk pad, of het nu een hoek haalt of niet, sluit zich elke 2 × kgv(X, Y) frames: heen naar een keerpunt en terug, precies zoals stap drie beschreef
Neem de 4K-clip op 60 fps die iedereen deelt. Het logo daarin heeft 317 horizontale en 186 verticale rustposities, dus X = 316 en Y = 185. Die twee zijn onderling ondeelbaar — een ggd van 1 — wat volgens stap twee betekent dat elke startpositie op dat scherm werkt. En kgv(316, 185) is gewoon 316 × 185 = 58.460 frames: 16 minuten, 14 seconden en 20 frames.
Die voorspelling is toetsbaar, en ze klopt. In die video valt de eerste hoektreffer op 13:29:38 en de tweede op 29:43:58 — minuten, seconden en frames. We hebben het nagerekend: 48.578 frames en 107.038 frames, een gat van precies 58.460, tot op het frame.
Waarom je resolutie nauwelijks uitmaakt
Je zult „16 minuten 14 seconden” herhaald zien alsof het volgt uit 4K op 60 fps. Dat is niet zo. Kijk waar het antwoord werkelijk uit bestaat:
kgv(X, Y) = X × Y ÷ ggd(X, Y)
De wachttijd, in frames, tussen de ene hoektreffer en de volgende.
Resolutie verschuift X en Y, en doet dat zachtjes: het scherm verdubbelen verdubbelt beide ruwweg. Maar de ggd staat in de noemer, en een ggd is geen maat. Het is een toevalligheid over welke getallen factoren delen, en hij kan van 1 naar 127 springen tussen twee opstellingen die er identiek uitzien.
Dit is wat dat doet. Hetzelfde logo van 284 × 128 op dezelfde 4 pixels per frame, met alleen het scherm gewijzigd:
- 1080p
Raster 409 × 238. Ze delen niets, dus het kgv is de volle 409 × 238: een hoektreffer elke 27 minuten.
- 4K
Raster 889 × 508. Ze delen een factor 127, die er meteen uit deelt: elke 59 seconden.
Vier keer zoveel pixels, en de wachttijd werd 27 keer korter. Dat is het tegenovergestelde van hoe dit meestal wordt verteld, en het heeft niets te maken met dat 4K groter is — het komt doordat 889 en 508 de 127 delen terwijl 409 en 238 niets delen.
De logogrootte doet hetzelfde, en net zo hardhandig. Houd het scherm op 3840 × 2160 en de snelheid op 4 pixels per frame, behoud de echte verhoudingen van het logo en verander alleen hoe groot het is:
- logo 176 px
Raster 916 × 520. Hoektreffer elke 33 minuten en 5 seconden — vanaf één start op 4.
- logo 204 px
Raster 909 × 517. Elke 2,18 uur, maar wel vanaf elke start.
- logo 256 px
Raster 896 × 511. Omlaag naar 18 minuten en 10 seconden, vanaf één start op 7.
- logo 284 px
Raster 889 × 508, die een factor 127 delen. Elke 59 seconden.
- logo 292 px
Raster 887 × 507, onderling ondeelbaar. Weer omhoog naar 2,08 uur.
- logo 300 px
Raster 885 × 506. Elke 2,07 uur. Geen trend — het springt.
Hetzelfde scherm, dezelfde beeldsnelheid, dezelfde snelheid. Acht pixels logobreedte is het verschil tussen een minuut wachten en twee uur — een sprong van 127 keer, doordat 889 en 508 een factor 127 delen terwijl 887 en 507 helemaal niets delen. En merk op dat de reeks geen trend vertoont. Waarom zou hij ook: hij volgt delers, geen afmetingen.
Het antwoord wordt dus niet bepaald door hoe groot iets is. Verschuif welke instelling dan ook en de rekenkunde ordent zich vanaf nul opnieuw.
Hoe lang dan tot alle vier de hoeken?
Wat ons brengt bij de vraag die mensen echt beantwoord willen zien. Als één hoek zestien minuten kost, zouden vier hoeken ongeveer een uur moeten kosten. Toch?
Nee. Je zult het nooit zien — niet in een uur, niet in een jaar, niet als je het liet draaien tot de warmtedood van het heelal.
Stap drie gaf ons de reden al. Een hoek buigt het logo niet af, hij keert het om: het logo loopt dus zijn eigen pad terug naar een tweede hoek, keert opnieuw om en komt terug. Dat is een gesloten circuit met precies twee keerpunten. De andere twee hoeken zijn niet ver weg of onwaarschijnlijk. Ze liggen simpelweg niet op de route, en niets in het systeem zou ze daar ooit kunnen brengen.
En welke twee je krijgt is evenmin een kwestie van geluk. Net als al het andere hier lag het vast met het startvakje.
We hebben dit gecontroleerd in plaats van aangenomen. Bij het simuleren van 281.250 startconfiguraties — alle rasters tot 26×26, beide diagonale richtingen, elk startvakje — was de uitkomst elke keer 2 hoeken of 0 hoeken. Geen enkele run leverde 1, 3 of 4 op. Daarvan haalden er 205.342 twee hoeken en 75.908 geen enkele.
Het eerlijke antwoord op „hoe lang tot alle vier de hoeken?” is dus helemaal geen getal. Er is geen wachttijd, want er is geen gebeurtenis om op te wachten — en dat lag vast voordat het logo zijn eerste stuiter had afgemaakt.
Probeer het zelf
Onze simulator is de snelste manier om een gevoel voor het stuiteren te krijgen, met één eerlijke kanttekening: hij lanceert elk logo onder een willekeurige hoek tussen 25° en 65°, niet onder een vaste 45°. Dat was een bewuste keuze — het oogt mooier en de paden blijven interessant — maar het betekent wel dat hoektreffers daar hun eigen logica volgen in plaats van de nette rasterrekenkunde hierboven. Die nette rekenkunde hoort bij het geval van de echte diagonaal: de oorspronkelijke DVD-spelers en de clip die wij hebben opgemeten.
Wat je wél kunt doen is elke variabele veranderen waar dit artikel om draait en kijken wat dat met het stuiteren doet. Regel de snelheid en de schaal bij, verhoog het aantal objecten om meerdere logo’s tegelijk over verschillende paden te sturen, en wissel de beeldverhouding tussen 16:9, 9:16 en 1:1 — elk daarvan een anders gevormd probleem.
Exporteer het daarna als GIF, als MP4 of WebM tot 1080p, of als zelfstandig HTML-bestand dat eindeloos doorloopt zonder internetverbinding — als je er een wilt laten draaien om zelf een hoektreffer te zien.
Geen watermerk, geen account, geen kosten. Je afbeelding wordt door je eigen browser verwerkt en nergens naartoe geüpload.
Veelgestelde vragen
Raakt het DVD-logo echt ooit de hoek?
Soms — en dat ligt vast op het moment dat het gaat bewegen. Bij een gegeven scherm, logo en snelheid haalt een startpositie ofwel een hoek, ofwel nooit. Er is geen derde uitkomst en geen greintje toeval. De toets is rekenkunde: neem de grootste gemene deler van de breedte en de hoogte van het raster. Een logo dat naar rechtsonder vertrekt haalt alleen een hoek als die deler het verschil van zijn startcoördinaten deelt; vertrekt het naar rechtsboven, dan alleen als hij hun som deelt. Ruwweg één startvakje per ggd voldoet.
Hoe lang duurt het voordat het DVD-logo de hoek raakt?
Breng het scherm terug tot het raster van posities die het logo werkelijk kan innemen. Is dat raster X breed en Y hoog, dan valt er elke kleinste gemene veelvoud van X en Y frames een hoektreffer. In de veelgedeelde 4K-clip op 60 fps zijn dat 58.460 frames — 16 minuten en 14 seconden tussen twee treffers. Dat cijfer hoort bij die clip, niet bij 4K in het algemeen.
Bepaalt de schermresolutie hoe lang de hoektreffer duurt?
Nee. We hebben hetzelfde logo op dezelfde snelheid op beide gedraaid: het 1080p-scherm gaf elke 27 minuten een hoektreffer en het 4K-scherm elke 59 seconden. Vier keer zoveel pixels, een 27 keer kortere wachttijd. Wat de tijd bepaalt is of de breedte en hoogte van het raster factoren delen, niet hoeveel pixels er zijn — elk antwoord dat simpelweg als „4K op 60 fps” wordt gegeven beschrijft dus één bepaalde video en geen eigenschap van 4K.
Kan het DVD-logo alle vier de hoeken raken?
Nee, en niet slechts omdat het onwaarschijnlijk is — het is onmogelijk. Zodra het logo een hoek bereikt keert het precies om over het pad waarlangs het kwam, loopt dat terug naar een tweede hoek, keert opnieuw om en herhaalt dat voor altijd. De route is een gesloten lus tussen twee hoeken, dus de overige twee zijn vanaf die start nooit te bereiken. Langer wachten helpt niet.
Hoeveel hoeken kan het DVD-logo raken?
Precies twee, of helemaal geen. We simuleerden 281.250 startconfiguraties over alle rasters tot 26×26 in beide diagonale richtingen, en geen enkele run leverde ooit één, drie of vier hoeken op.
Is de hoektreffer willekeurig?
Helemaal niet — hij is volledig deterministisch. Met het scherm, het logo, de snelheid en de startpositie kun je vooraf uitrekenen of er ooit een hoek geraakt wordt, hoe lang het wachten duurt en welke twee hoeken het worden. De onvoorspelbaarheid is een illusie die het stuiteren veroorzaakt.