[Unity] TypeConversion Code

a-a·2024년 5월 24일

알쓸신잡

목록 보기
1/26

문제의 발단

예전에 VisualScript를 Install을 해놨었다.
그리고 나서는 완전히 까먹었다.

이후에 제네릭 타입을 UnityEngine.Object 객체로 변환하는 함수를 작성해야 하는 일이 생겼고, ConversionUtility 클래스를 사용했다..
문제는, 이게 비주얼 스크립팅 패키지 안에 생성되어 있는 스크립트 파일이었고, 나는 몰랐다.

비주얼 스크립팅은 당연히 사용하지 않는 패키지라, 나중에 삭제를 했는데, 당연히 컨버전 유틸리티 클래스도 사용 불가능해졌다!

해결 방법

간단하다. 없으면? 만들면 되는 법!

//C#
public static T Convert<T>(Object obj) where T : Object => (T)obj;

제네릭 T의 최상단 부모가 Object 형식이라는 것을 명시적으로 선언해 주면 된다.
그럼 T는 Object를 상속받고 있는 모든 객체로 형변환이 가능하다!

profile
"게임 개발자가 되고 싶어요."를 이뤄버린 주니어 0년차

0개의 댓글