본문 바로가기

유니티(Unity)

자바스크립트 Dll 사용하기

https://docs.unity3d.com/kr/2022.3/Manual/webgl-interactingwithbrowserscripting.html

 

브라우저 스크립팅과 상호작용 - Unity 매뉴얼

웹용 콘텐츠를 빌드할 때 웹페이지의 다른 요소와 커뮤니케이션해야 할 수 있습니다.또는 Unity가 현재 기본적으로 노출하지 않는 웹 API를 사용하여 기능을 구현하고 싶을 수 있습니다.두 가지

docs.unity3d.com

 

공식 문서에 나온 것처럼 자바스크립트 Dll을 사용하기 위해서는 아래와 같은 절차를 거쳐야한다.

 

(1) .jslib 확장자 파일

공식 문서에 나온 예처럼

mergeInto(LibraryManager.library, {

  Hello: function () {
    window.alert("Hello, world!");
  },

  HelloString: function (str) {
    window.alert(UTF8ToString(str));
  }
  });

이런 구조로 작성해야한다.

 

(2) "Plugins" 폴더 생성 후, 위 파일 넣기

에셋 폴더에 해당 폴더 생성 후에 jslib파일을 넣어야 사용가능하다.

 

(3) 스크립트에서 Dll import

- jslib

mergeInto(LibraryManager.library, {
  testFunctions: function (num) {
    console.log(num + 1);
    return num + 1;
  }
});

 

- unity 스크립트

[DllImport("__Internal")]
private static extern int testFunctions(int num);
void Start()
{
    int testInt = 10;
    Debug.Log(testFunctions(testInt));
}

 

※ 빌드 프로그램에서만 작동한다. 에디터 에서는 에러 발생.

'유니티(Unity)' 카테고리의 다른 글

코루틴 확장하기  (0) 2024.05.06
vscode와 유니티에서 async 스레드 테스트  (0) 2024.05.01
Unity 텍스처 압축 시 주의 할 점.  (0) 2024.04.14
텍스처  (0) 2024.04.13
그래픽스 퍼포먼스 최적화 전후  (0) 2024.04.08