☰ Menu

Scene.hu

Magyar demoscene portál – grafikusok, zenészek, programozók alkotói közössége

Home Forums A Demokészítés művészete Programozás Matematikusoknak kérdés.

  • This topic has 6 replies, 4 voices, and was last updated 9 years ago by avatarblala.
Viewing 7 posts - 1 through 7 (of 7 total)
  • Author
    Posts
  • #1458
    avatararchee
    Member

    Olyan véletlen szám sorozat generáló kéne, aminek hosszú a periódusa, de ha akarok, tudok többet elöre lépni. Mondjuk N-et vagy akár fixen 65536ot ugorna.Több állapotváltozós megoldás kell, mert különben rövid a periódus.Jelen esetben úgy müködik a dolog, hogy meghívom N-szer a random szám generálót, ami túl lassú.Egy különleges animáció tömörítö algoritmushoz kéne amúgy.

    #6643
    avatarBery
    Member

    Mondd mennyit lépjek előre random számsorban, és elküldöm e-mailben az eredményt! ;)

    #6644
    avatar-SP-
    Member

    Nem értem pontosan, mi az, hogy “tudjon előre lépni?”. Az N+1. futás eredményéül kapott random számot köpje ki, az előtte levő N darabot meg tárolja el valahova?

    #6645
    avatararchee
    Member

    Az a lényeg, hogy a demo többszöri futtatásakor ugyanazok a számsorozatok kerüljenek elö. A rossz sorozatok, amiket az offline calculáló kidob, azokat ki kell hagyni. Tehát kell egy nagyon hosszú sorozat, amiböl én kiválogatom a jó részeket, és csak azt mentem le pár 32bit intben, hogy mikor mennyit kell átugrani, (amivel nem müködött a fizikai efekt következö része)

    #6646
    avatarblala
    Member

    LCG-k (linear kongruencia generator) latszolag ilyenek, de jo szar minosegu szamokat adnak, meg nagy periodushoz nagy modulus kell. Sokkal bonyolultabb generatorokban nem remenykednek hogy steppelheto…

    #6647
    avatararchee
    Member

    Most azt találtam ki, hogy 64K hívásonként újraindítom egyel nagyobb seed-el, és párszor meghívom. Így ha a sorozat N-edik tagját keresem, akkor seed = n>>16; es meghívom n & 0xffff szer. Álltalában egész részsorozatok kellenek, néha van csak skip, tehát nem egyesével hívogatnám.

    #6648
    avatarblala
    Member

    Ez jo otlet, es egyszeru. Ha nem eleg jo minosegu esetleg a generator, akkor egy hash-t meg ranyomhatsz a seedre.

Viewing 7 posts - 1 through 7 (of 7 total)
  • You must be logged in to reply to this topic.
Ugrás a lap tetejére Ugrás a lap aljára