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 }
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(); }