Unity3D에서 DLL Library 를 사용하자. 



01. Visual Studio  DLL Project 생성하기

Win32 Console Application으로 생성


02. DLL(dynamic) 로 설정

    - Empty project 체크 설정



03. Project Sources code


아래의 코드와 같이 작성. 

아래 GetNum Project 는 동작하지 않는다. 다른 예제를 보고 수정하도록 함. 

#define EXPORT_API __declspec(dllexport)

extern "C" {
	int EXPORT_API add( int a, int b) {
		return a+b;
	}
	void EXPORT_API GetNum( int n ) {
		n = 5;
	}
}


04. Unity3D Project 생성

     - Project 생성 후 Hierarchy cube 생성

     - C# script 생성



05. C# Script code

     - 아래와 같이 C#코드를 작성합니다. 

     - DLL을 Import 하기위해서는 아래와 같이 작성.  (아래 .dll 확장자가 붙어도 무관함)

       

    [DllImport("libTestforUnity3D2")]	
	private static extern int add( int a, int b);
	
	[DllImport("libTestforUnity3D2")]	
	private static extern void GetNum( int n);

      - Start() 함수 수정

// Use this for initialization
	void Start () {
		
		int r = add (50,51);
		
		int r2=0;		
		GetNum(r2);		
		
		Debug.Log("r1 = " + r + ", " + "r2 = " + r2);	
		
	}

06. 결과 화면




07. 이것저것 정리

 - Visual Studio 에서 코드를 작성하여 Unity3D 에 작성하는 방법은 간단.

 - 기타 다른 Blog 나 포럼을 참조하여도 됨. 그러나 될때가 있고 안되는 DLL library 형식이 있는 것 같다. 우짜노. 찾아봐야지. 

Posted by 모과이IT
,