sprite가 load가 되지않습니다
Managers.Resource._resources 에 아래 동작으로 sprite를 넣었는데 막상 저장된 곳을보면 sprite가 아닌 texture입니다
string loadKey = key;
if (key.Contains(".sprite"))
loadKey = $"{key}[{key.Replace(".sprite", "")}]";
// 리소스 비동기 로딩 시작.
var asyncOperation = Addressables.LoadAssetAsync<T>(loadKey);
그래서 젬의 sprite가 변경이되지않습니다..
코드는 첨부된걸로 해봐도 동일한데 유니티문제일까요?
답변 1
0
안녕하세요, 인프런 AI 인턴이에요.
코드 자체는 오류가 없어 보입니다. 하지만, Addressables로 LoadAssetAsync하는 경우, 해당 리소스가 로드되기 전에는 texture로 반환되는 것이 일반적입니다. 그래서 sprite를 사용하기 위해서는 다음과 같이 코드를 수정해야 합니다.
string loadKey = key;
if (key.Contains(".sprite"))
{
loadKey = $"{key}[{key.Replace(".sprite", "")}]";
// 리소스 비동기 로딩 시작.
var asyncOperation = Addressables.LoadAssetAsync<Texture2D>(loadKey);
asyncOperation.Completed += (op) =>
{
Sprite sprite = Sprite.Create(op.Result, new Rect(0, 0, op.Result.width, op.Result.height), new Vector2(0.5f, 0.5f));
// sprite 사용
};
}
위 예시 코드에서 Texture2D로 로드한 후, asyncOperation.Completed 이벤트 핸들러에서 Sprite.Create를 사용하여 sprite를 생성하고 사용할 수 있습니다. 이 방법으로 처리해 보시기 바랍니다.
감사합니다.
0
네 말씀해주신 Sprite.Create 사용해서 ObjectManager에서 texture로 로드된걸 받아와서 sprite로 변경해서 젬의 spriteRenderer를 변경해서 해결했습니다!
Addressables로 등록한 Slice된 Sprite의 하위 Sprite 접근법에 대해 질문드립니다
0
85
1
유니티 데이터 저장객체 ScriptableObject에 대해 의견 여쭤보고 싶습니다
0
151
2
안녕하세요 선생님 공부중에 궁금한게 있어서 질문 드려요
0
66
1
상속 구조에서의 awake흐름 및 init 함수 질문있습니다
0
87
1
젬 스프라이트가 로딩되지 않습니다.
0
118
1
혹시 스프라이트 드래그 앤 드롭으로 애니메이션 생성할 때
0
124
1
init() 2번 실행? 등 스킬 마무리 강의에서 질문 있습니다.
0
169
2
Managers.Object.Player와 Mangers.Game.Player 차이
0
115
1
상업적 출시에 대한 질문입니다.
0
170
1
EquipmentData 관련해서 질문드립니다
0
118
1
Data관리 관련해서 질문드립니다.
0
171
2
MonsterControllelr 에서 State Dead 사용
0
108
1
안드로이드 빌드에서는 LoadAllAsync , LoadAsync 가 동작 하지 않고 있습니다.
0
241
2
Instantiate 관련 질문 드립니다
0
159
1
포트폴리오 문서작성에 있어서 질문드립니다.
0
605
2
UI 연동방식에 대해서 질문드립니다.
0
183
1
인디게임출시경험이 중요할까요?
1
346
1
Coroutine과 uniTask 질문드립니다.
0
240
1
ResourceManager 메서드 역할
0
222
1
스프라이트 자료
1
183
1
xml 에
0
272
2
UI 리소스 사용문의
0
273
1
폴더 이름 제일 앞에 @를 붙이는 이유가 궁굼해요
0
600
2
3.:43 초 때부터 잘 안되는 것 같습니다...
0
333
1





