예제 #1
0
        public void GenerateHaltonSequence()
        {
#if UNITY_EDITOR
            HaltonSequenceData data = new HaltonSequenceData(3000);
            HaltonSequence     seq  = new HaltonSequence();
            for (int i = 0; i < 3000; i++)
            {
                Vector3 value = seq.m_CurrentPos;
                while (value.x + value.z > 1f)
                {
                    seq.Increment();
                    value = seq.m_CurrentPos;
                }
                data.xArray[i] = value.x;
                data.yArray[i] = value.z;
                seq.Increment();
            }
            using (System.IO.MemoryStream ms = new MemoryStream())
            {
                BinaryFormatter bf = new BinaryFormatter();
                bf.Serialize(ms, data);
                byte[] bytes = ms.ToArray();
                File.WriteAllBytes("Assets/Tutorial/Pathfinding/Resources/HaltonSequence.bytes", bytes);
            }
            AssetDatabase.Refresh();
#endif
        }
예제 #2
0
        private void Start()
        {
            TextAsset       haltonSeq = Resources.Load <TextAsset>("HaltonSequence");
            BinaryFormatter bf        = new BinaryFormatter();

            haltonSeqData = bf.Deserialize(new MemoryStream(haltonSeq.bytes)) as HaltonSequenceData;
            path          = new NavMeshPath();
        }