unity实时保存物体的坐标信息txt



using System.Collections;
using System.Collections.Generic;
using System.IO;  
using UnityEngine;  
  
public class SavePS : MonoBehaviour
{
    private string logFilePath = "positions.txt"; // 保存日志的文件路径  
    private TextWriter writer; // 用于写入文件的对象  

    void Start()
    {
        // 打开文件用于写入  
        writer = new StreamWriter(logFilePath);
        writer.WriteLine("Time, X, Y, Z"); // 写入标题行  
    }

    void Update()
    {
        // 获取当前时间戳(单位:秒)  
        float time = Time.time;

        // 获取该GameObject的WorldPosition(在世界坐标系中的位置)  
        Vector3 position = transform.position;

        // 格式化数据为字符串,并添加到日志中  
        string logEntry = $"{time}, {position.x}, {position.y}, {position.z}\n";
        writer.WriteLine(logEntry); // 写入新的一行数据  
    }

    void OnDestroy()
    {
        // 当脚本所在的对象被销毁时,关闭文件流并释放资源  
        if (writer != null)
        {
            writer.Close();
            writer = null; // 确保资源被正确释放  
        }
    }
}

unity保存物体的位置和旋转坐标为txt-CSDN博客

以前这个代码有问题,相当于文件 一直在创建,只是后面把前面的覆盖了,最后就只保留了一个。

你可能感兴趣的:(unity/blender,unity,游戏引擎)