백지부터 시작하는 이세계 코딩 생활
Resources 본문
Resources
에셋(asset)을 포함하는 오브젝트를 찾거나 접근하는 경우에 Resources 클래스를 사용합니다.
에디터에서, Resources.FindObjectsOfTypeAll기능은 에셋과 씬 오브젝트를 찾는 데 사용할 수 있습니다.
Assets폴더 내 "Resources"이름을 가진 폴더안의 모든 에셋은 Resources.Load 함수를 통해서 접근할 수 있습니다. 여러개의 "Resources" 폴더가 존재할 수 있으며 오브젝트 로드시에 모두 검사 대상이 됩니다.
유니티에서는 주로 에셋에 접근하기 위해서 경로의 이름을 사용하지 않습니다, 대신 멤버 변수로 선언하고 해당 변수의 참조를 인스펙터에서 할당하는 방법을 사용합니다. 이 방법을 사용하는 경우에, 유니티는 플레이어를 빌드할 때 사용되는 에셋을 자동으로 계산합니다. 이 경우 빌드된 실제 게임에서 사용되는 에셋의 크기로, 사용자 플레이어의 크기를 줄일 수 있습니다. 에셋을 "Resources" 폴더에 넣어두게 되면, 이 방법이 이루어 질 수 없습니다, 빌드시에 "Resources" 폴더내의 모든 에셋이 포함됩니다.
에셋의 사용이 더 이상 필요하지 않은 경우에, 이런 메모리를 되찾기 위해서, Resources.UnloadUnusedAssets을 사용할 수 있습니다.
ex)
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
void Start() {
GameObject go = GameObject.CreatePrimitive(PrimitiveType.Plane);
Renderer rend = go.GetComponent<Renderer>();
rend.material.mainTexture = Resources.Load("glass") as Texture;
}
}
ex)
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
void Start() {
// Instantiates a prefab named "enemy" located in any Resources
// folder in your project's Assets folder.
GameObject instance = Instantiate(Resources.Load("enemy", typeof(GameObject))) as GameObject;
}
}
Ref.
1 docs.unity3d.com/kr/530/ScriptReference/Resources.html
'백지부터 시작하는 이세계 유니티 생활 since 2020' 카테고리의 다른 글
DOTween (0) | 2021.02.17 |
---|---|
변수 형변환 (0) | 2021.02.10 |
OnMouse~ 이벤트 (0) | 2021.01.30 |
OnMouseDrag() (0) | 2021.01.29 |
ScrollView (0) | 2021.01.20 |
Comments