상상 너머 그 무언가...

load 및 reader 에 사용되는 path의 Application.dataPath 는 "Assets" 와 같다. 본문

개발관련(Development)/유니티3D(Unity3D)

load 및 reader 에 사용되는 path의 Application.dataPath 는 "Assets" 와 같다.

Clack 2011. 2. 9. 20:56


특정 경로의 리소스를 로드하는 명령어인 LoadAssetAtPath 나 스트리밍으로 파일을 읽는 StreamReader 명령어의 경우
불러 읽어들일 파일의 path를 지정하게 되어 있는데

경로 생략하고 파일명만 string으로 입력시 기본 unity프로젝트 폴더의 Assets 폴더에서 해당 파일을 찾게되고
특정 폴더안에, 안에, 안에 있는 파일에 접근하기 위해서는 아래 예제와 같이 /를 구분자로 하여 경로를 적어주면 된다.

img = (Texture2D)Resources.LoadAssetAtPath("Assets/###Stage3###/GameQuestioner/question.jpg", typeof(Texture2D));

//sr = new StreamReader(Application.dataPath + "/###Stage3###/GameQuestioner/xml/questions.xml");
sr = new StreamReader("Assets/###Stage3###/GameQuestioner/xml/questions.xml");

위의 sr 의 경우 주석처리된 문장과 주석안된 문장은 같은 결과를 가진다.
그 이유는 Application.dataPath 는 "Assets" 폴더의 경로값을 가지기 때문이다.