Esempio n. 1
0
        /// <summary>
        /// Initializes the <c>NativeArray</c> of random generators.
        /// </summary>
        protected override void OnCreate()
        {
            var randomArray         = new Random[JobsUtility.MaxJobThreadCount];
            var randomSeedGenerator = new System.Random();

            for (var i = 0; i < JobsUtility.MaxJobThreadCount; ++i)
            {
                randomArray[i] = new Random((uint)randomSeedGenerator.Next());
            }

            RandomGenerators = new NativeArray <Random>(randomArray, Allocator.Persistent);
        }
    protected override void OnCreate()
    {
        buildPhysicsWorld = World.GetOrCreateSystem <BuildPhysicsWorld>();
        var randomArray = new Random[1000];
        var seed        = new System.Random();

        for (int i = 0; i < 1000; ++i)
        {
            randomArray[i] = new Random((uint)seed.Next());
        }

        RandomArray = new NativeArray <Random>(randomArray, Allocator.Persistent);
    }
Esempio n. 3
0
    protected override JobHandle OnUpdate(JobHandle inputDependencies)
    {
        LbBoard board = m_BoardQuery.GetSingleton <LbBoard>();

        var sRand = new System.Random();

        var job = new MovePlayerCursorJob
        {
            Seed          = sRand.Next(int.MaxValue),
            Size          = board.SizeY,
            CommandBuffer = m_EntityCommandBufferSystem.CreateCommandBuffer().ToConcurrent()
        }.Schedule(m_PlayerQuery, inputDependencies);

        m_EntityCommandBufferSystem.AddJobHandleForProducer(job);

        return(job);
    }