Diskuze: Náhodné číslo
V předchozím kvízu, Online test znalostí GameMakeru, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 7 zpráv z 7.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí GameMakeru, jsme si ověřili nabyté zkušenosti z kurzu.
To je správné řešení, samozřejmě můžeš také využít gaussovský přístup a napsat si vlastní pseudo náhodnou funkci.
Více info: http://www.design.caltech.edu/…aussian.html
Generátor v Game Makeru Studio je celkem OK, jen je dost pomalý.
( viz výpis z programu ENT, vysvětlivky: http://www.fourmilab.ch/random/ )
Ve starším GM 8.0 je generátor horší a občas vyplivne ne zcela náhodně rozloženou řadu.
/*
GM Studio 1M náhodných vzorků:
Entropy = 7.999818 bits per byte.
Optimum compression would reduce the size
of this 1000000 byte file by 0 percent.
Chi square distribution for 1000000 samples is 252.71, and randomly
would exceed this value 52.88 percent of the times.
Arithmetic mean value of data bytes is 127.4404 (127.5 = random).
Monte Carlo value for Pi is 3.142212569 (error 0.02 percent).
Serial correlation coefficient is 0.000890 (totally uncorrelated = 0.0).
*/
V GM8 jsem nikdy nemusel funkci randomize() používat, čísla byla generována dobře a co se rychlosti týče, přišlo mi to vcelku dobré. V GMS se bez funkce randomize() nic neudělá. Trochu mi vadí mizerná dokumentace funkcí, kde se takovéhle změny nikdo neobtěžuje napsat. Stejně jako když v GMS změnili return funkce window_handle() z decu na hex...
O randomize() jsem nepsal nic. Randomize pouze nastavuje výchozí číslo pro generátor (
zpravidla podle systémového času ), aby se při opakovném spouštění
neopakovala stejná pseudonáhodná řada.
Můj komentář byl ke kvalitě generátoru ( což s randomize nemá mnoho
společného ) a chtěl sem tím říct, že není třeba psát vlastní
generátor. ( tedy alespoň v GMS )
Já vím, byl to můj dodatek a porovnání GM8 a GMS.
Zobrazeno 7 zpráv z 7.