Haxeで64ビットなXorShiftを実装してみた

Haxeでゲーム向けのXorShiftを実装してみた(概定版)


------[Rand.hx]------

package;


import haxe.Int64;


class Rand {

    static var seed: Int64;


    // Api.

    public static function init () {

            var time: Int64 = 0;


            while (time == 0) {

                time = Int64.fromFloat(Date.now().getTime());

            }

            seed = time;

    }


    public static function next () : Int {

        seed = seed ^ (seed << 13);

        seed = seed ^ (seed >> 7);

        seed = seed ^ (seed << 17);


        // 型変換のための丸めとプラス処理

        return Int64.toInt(seed & 0x7FFFFFFF);

    }

}

kubohisaの『ゲームプログラミングが判らない』

0コメント

  • 1000 / 1000