728x90
각 페이지의 슬라이더 값을 받아오고 Submit 버튼을 누르면 엑셀 파일에 날짜, 값 등이 저장되는 과정입니다.
슬라이더 화면
종료 화면
이런 식으로 슬라이더에 입력된 값을 저장해보겠습니당
1. 게임 오브젝트 SliderValueManager 생성
2. SliderValueMander.cs
using System;
using System.IO;
using UnityEngine;
using UnityEngine.UI;
public class SliderValueManager : MonoBehaviour
{
public Slider page0Slider; // Page 0 슬라이더
public Slider page1Slider; // Page 1 슬라이더
public Slider page2Slider; // Page 2 슬라이더
public Button buttonSubmit; // 제출 버튼
private string csvFilePath;
private int entryIndex = 1; // 저장할 때 사용할 인덱스
private void Start()
{
// CSV 파일 경로 설정 (프로젝트 경로)
csvFilePath = Application.dataPath + "/SliderValues.csv";
// 버튼 클릭 이벤트 설정
buttonSubmit.onClick.AddListener(AppendSliderValuesToCSV);
// 파일이 없으면 헤더 추가
if (!File.Exists(csvFilePath))
{
using (var writer = new StreamWriter(csvFilePath))
{
writer.WriteLine("Index,Date,Time,Page0,Page1,Page2");
}
}
}
// 슬라이더 값과 날짜, 시간 CSV에 추가
private void AppendSliderValuesToCSV()
{
// 현재 날짜와 시간
string currentDate = DateTime.Now.ToString("yyyy-MM-dd");
string currentTime = DateTime.Now.ToString("HH:mm:ss");
// CSV에 새로운 행 추가
using (var writer = new StreamWriter(csvFilePath, true))
{
writer.WriteLine($"{entryIndex},{currentDate},{currentTime},{page0Slider.value},{page1Slider.value},{page2Slider.value}");
}
entryIndex++; // 인덱스 증가
Debug.Log("CSV 파일에 새로운 슬라이더 값이 저장되었습니다.");
}
}
3. Insepector에 적용
각 페이지에 해당하는 슬라이더와, Button Submit을 통해 엑셀에 값을 저장해줄 버튼을 넣어줍시다.
그럼 끝입니다.
각 슬라이더에 값을 넣고 마지막 페이지에 와서 Submit 버튼을 눌러주면
이렇게 각각 슬라이더 값을 적용한 뒤, Submit 버튼을 누르면
Assets 파일 안에 아래와 같이 저장이 됩니다.
끝!
이렇게해서 데이터를 잘 저장해보아요 ^_^
728x90
'HCI > Unity' 카테고리의 다른 글
[Unity] 3D 프로젝트로 AR 구현 (0) | 2024.11.04 |
---|---|
[Unity] Meta Quest 3 Qculus 연결하기 (1) | 2024.10.29 |
[Unity] bHaptics 슬라이더로 강도(intensity) 조절하기 (1) | 2024.10.07 |
[Unity - Arduino] 유니티 - 아두이노간 Serial Port 통신 구현하기 (0) | 2024.09.27 |
[Unity - ThermoREAL Project] bHaptics Unity 연결하기 (1) | 2024.09.24 |