반응형
유니티에서 게임을 개발하고 마켓에 등록하려면 게임소개등 여러가지 이미지들이 필요합니다. 이럴때 간편하게 유니티 게임 화면을 캡쳐하고 이미지파일로 저장하는 기능이 필요합니다. 'S' 키를 눌렀을 때 게임 화면의 스크린샷을 찍고 지정된 파일 경로에 저장하는 스크립트입니다. 저장 경로나 이름등은 자유롭게 변경해서 사용하면 됩니다.
유니티 게임화면 스크린샷
using UnityEngine;
public class ScreenshotTaker : MonoBehaviour
{
public string screenshotDirectory = "Screenshots"; // 스크린샷이 저장될 폴더
public string screenshotFileName = "screenshot"; // 스크린샷 파일 이름
private int screenshotCount = 0; // 파일 이름에 추가될 번호
void Update()
{
// 'S' 키를 눌렀을 때 스크린샷을 찍음
if (Input.GetKeyDown(KeyCode.S))
{
TakeScreenshot();
}
}
private void TakeScreenshot()
{
// 폴더가 없으면 생성
if (!System.IO.Directory.Exists(screenshotDirectory))
{
System.IO.Directory.CreateDirectory(screenshotDirectory);
}
// 파일 경로 생성 (Screenshots 폴더 안에 저장)
string filePath = System.IO.Path.Combine(screenshotDirectory, screenshotFileName + "_" + screenshotCount + ".png");
// 스크린샷 저장
ScreenCapture.CaptureScreenshot(filePath);
screenshotCount++; // 파일 번호 증가
Debug.Log("Screenshot saved: " + filePath);
}
}
스크립트 설명
- screenshotDirectory: 스크린샷이 저장될 폴더 경로입니다. 기본적으로 프로젝트의 Screenshots 폴더에 저장되도록 설정되어 있습니다.
- screenshotFileName: 스크린샷 파일 이름의 기본값입니다. 각 스크린샷 파일은 이름 뒤에 숫자가 붙어서 저장됩니다.
- screenshotCount: 스크린샷의 번호를 관리하는 변수로, 스크린샷 파일명이 겹치지 않도록 도와줍니다.
- TakeScreenshot(): 'S' 키를 누르면 이 메서드가 호출되어 스크린샷을 찍고 파일로 저장합니다.
이 스크립트를 빈 GameObject에 추가하고 실행하면 'S' 키를 누를 때마다 스크린샷이 지정한 폴더에 저장됩니다.
반응형
'학습' 카테고리의 다른 글
유니티6 구글플레이,애드몹 빌드 조합 (0) | 2024.10.25 |
---|---|
유니티 Play Asset Delivery 이용하기 (1) | 2024.10.25 |