외부에 공유할 기능을 만들었는데 코드는 감추고 싶다면 DLL 로 생성해 배포하는 것도 하나의 방법이 될 것이다.
.Net Standard 가 기본 Framework 가 되고 .Net 4.x 가 Standard 를 포함한 확장된 Framework 이다.
https://docs.microsoft.com/ko-kr/dotnet/standard/net-standard#net-5-and-net-standard
때문에 특수한 경우가 아니라면 .Net Standard 버전에 맞춰 진행하는 것이 좋을 것으로 보인다.
어기서는 Unity 2020.3.1f1 기준 .NET Standard 2.0 을 지원하기 때문에 이에 맞춰 진행 한다.
새 솔루션 > .NET Standard 라이브러리
프로젝트 우클릭 > 추가 > 참조
여기서는 Monobehaviour, Editor 등이 필요해 Unity 에서 필요한 dll 파일들을 가져와 참조 시킨다.
UnityEngine. dll
Unity Editor. dll
개발환경은 다음과 같이 구성했다.
Debug - Unity 프로젝트
Release - Unity 프로젝트
Library - C# DLL 프로젝트
Debug
실제 라이브러리 코드를 적용하고 개발하는 Unity Project 이다. Unity 와 연동해서 구동하는데 문제가 없는지 바로 파악하기 좋은 구조를 고민하다 생성하였다.
Library
Debug 에서 작성한 C# 코드를 링크시켜 라이브러리로 빌드시킬 수 있는 설정을 해 둔 Visual Studio Project 이다. 빌드 후 생성된 DLL 파일은 Post Build 기능을 사용해 Release 에 적용되도록 구성하였다.
Release
DLL 파일을 적용한 Unity Project 이다. 결과물이 Unity 에서 정상 작동하는지 테스트하기 위해 생성 하였다.
Debug 개발 -> Library 빌드 -> Release 테스트 의 과정으로 개발하고 완료시 별도의 Repo 를 하나 더 구성하여 OpenUPM 을 통해 배포까지 시도해본다.
'Works > Unity 3D' 카테고리의 다른 글
[Unity3D] Addressable 특징 메모 (0) | 2021.07.19 |
---|---|
[Unity] OpenUPM - Custom Package 만들기 (0) | 2021.05.02 |
[Unity] 프로젝트 Git 설정 (0) | 2021.02.02 |
[Unity] 강제로 앱 Crash 만드는 방법 (0) | 2020.10.22 |
[Unity] CinemachineVirtualCamera 이 작동하지 않을 경우 (0) | 2020.10.21 |
댓글