Version: 2022.1
언어: 한국어
임포터 일관성
에셋 메타데이터

텍스트 에셋

텍스트 에셋(Text Assets) 는 임포트한 텍스트 파일의 포맷입니다. 텍스트 파일을 Project 폴더에 드롭하면 텍스트 에셋으로 변환됩니다. 지원되는 텍스트 포맷은 다음과 같습니다.

  • .txt
  • .html
  • .htm
  • .xml
  • .bytes
  • .json
  • .csv
  • .yaml
  • .fnt

스크립트 파일도 AssetDatabase.FindAssets 함수 사용을 목적으로 텍스트 에셋으로 간주되며, 이 함수를 “t:TextAsset” 필터와 함께 사용할 때 결과 리스트에도 포함됩니다.

텍스트 에셋 인스펙터
텍스트 에셋 인스펙터

프로퍼티

프로퍼티: 기능:
Text 한 문자열로 나타낸 에셋의 전체 텍스트입니다.

세부 정보

텍스트 에셋의 사용 사례는 아주 특수합니다. 빌드 중 게임에 다른 텍스트 파일에서 텍스트를 가져올 때 특히 유용합니다. 간단한 .txt 파일을 작성하여 아주 쉽게 게임으로 텍스트를 가져올 수 있습니다. 런타임 시점에 텍스트 파일을 생성하는 용도가 아닙니다. 이를 위해 외부 파일을 읽고 쓰려면 전형적인 입력/출력 프로그래밍 기술을 사용해야 합니다.

다음 시나리오를 고려해야 합니다. 텍스트가 아주 많은 모험 게임을 만들려고 합니다. 제작 과정을 단순화하기 위해 게임의 모든 텍스트를 여러 방으로 나누려고 합니다. 이 경우 한 방에 사용되는 모든 텍스트가 포함된 텍스트 파일을 하나 만들 수 있습니다. 거기에서 입력한 방의 올바른 텍스트 에셋을 쉽게 참조할 수 있습니다. 그런 다음, 사용자 정의 구문 분석 로직을 사용하여 많은 양의 텍스트를 아주 쉽게 관리할 수 있습니다.

바이너리 데이터

텍스트 에셋의 특별한 기능은 바이너리 데이터 보관에 사용할 수 있다는 것입니다. 파일에 .bytes 확장자를 부여함으로 텍스트 에셋으로 로드할 수 있으며 bytes 프로퍼티를 통해 데이터에 액세스할 수 있습니다.

예를 들어 jpeg 파일을 Resources 폴더에 넣고 .bytes로 확장자를 변경하면 다음 스크립트 코드를 사용하여 런타임 시점에 데이터를 읽어야 합니다.

//Load texture from disk
TextAsset bindata = Resources.Load("Texture") as TextAsset;
Texture2D tex = new Texture2D(1,1);
tex.LoadImage(bindata.bytes);

.txt.bytes 확장자 파일은 각각 텍스트와 바이너리 파일로 취급됩니다. 데이터를 읽을 때 예기치 못한 동작이 발생할 수 있기 때문에 바이너리 파일을 .txt 확장자로 저장하지 말아야 합니다.

힌트

  • 텍스트 에셋은 빌드의 다른 모든 에셋처럼 직렬화됩니다. 게임을 퍼블리시할 때 포함되는 텍스트 파일은 실제로 없습니다.
  • 텍스트 에셋은 런타임 시점에 텍스트 파일을 생성하는 용도가 아닙니다.
임포터 일관성
에셋 메타데이터