Я создал сцену в Unity, используя VR, и я хочу отследить положение пользователя и сохранить его в файл CSV.Так как я хочу только Положение для определенных задач, я не хочу запускать сценарий для всей сцены.Поэтому был создан сценарий, который включает и отключает сценарий с помощью простого события OnClick для кнопки.
Итак, я создал скрипт, который включает и отключает скрипт через простое событие OnClick для кнопки.Проблема, с которой я сталкиваюсь, заключается в том, что каждый раз, когда я отключаю сценарий и включаю его снова, не будет другого созданного CSV-файла.
Это мой код:
public class Eins : MonoBehaviour
{
string filePath = @"";
string filename;
string fullPath;
string delimiter = "\t";
StreamWriter sw;
string[] output;
string finalOutput;
public GameObject Camera;
private float timer = 0f;
// Start is called before the first frame update
void Start()
{
filename = "Results_" + DateTime.Now.ToString("yyyy-mm-dd-hh-ss") + "_" + ".txt" + "";
filename = filename.Replace("/", "_");
filename = filename.Replace(":", "_");
filename = filename.Replace(" ", "_");
fullPath = Path.Combine(filePath, filename);
sw = new StreamWriter(fullPath, true);
}
// Update is called once per frame
public void Update()
{
timer += Time.deltaTime;
output = new string[]
{
timer.ToString(),
Camera.transform.position.x.ToString(), Camera.transform.position.z.ToString()
};
finalOutput = String.Join(delimiter, output);
sw.WriteLine(finalOutput);
}
Итак, я уже выяснил, что проблема в функции запуска.Поскольку он вызывается только один раз во время работы Scene, мой файл будет создан только один раз.Но на самом деле я понятия не имею, как решить эту проблему, так как я не знаю, как получить функцию, которая будет создавать CSV-файл каждый раз, когда скрипт снова включается.
Я был бы очень признателен, если бы кто-нибудьмог бы помочь мне.