버전

menu_open
Wwise SDK 2024.1.1
Premake로 프로젝트 환경 설정하기

premake 명령은 플러그인을 빌드할 때 build 명령에서 사용할 솔루션을 생성합니다. new 명령으로 생성된 기본 Premake 환경 설정 파일은 별도의 작업 없이 즉시 작동하지만, 자신의 플러그인에서 작동하려면 몇 가지 추가 수정이 필요합니다. premake 명령을 다시 호출하면 이러한 파일의 모든 변경 사항을 덮어쓰게 되므로 생성된 솔루션을 직접 수정해서는 안 됩니다. 대신 Premake 환경 설정 파일을 수정하세요. 이 환경 설정 파일은 플러그인의 루트에 위치하고 있으며 이름은 PremakePlugin.lua입니다.

PremakePlugin.lua 파일 상단을 보면 Plugin이라는 전역 테이블이 생성된 것을 확인할 수 있습니다. 이 테이블에는 Premake가 가져오고, 필요한 프로젝트와 솔루션을 생성하는 데 사용할 Wwise 플러그인의 정의가 포함되어 있습니다. 이 테이블의 항목에는 다음 내용이 포함됩니다.

  • name 항목은 생성된 모든 프로젝트와 솔루션의 접두사로 사용되는 플러그인 이름에 해당하는 문자열입니다.
  • factoryheader 항목은 Wwise SDK의 공개 포함 디렉터리에 플러그인과 함께 설치될 팩토리 헤더의 상대 경로에 해당하는 문자열입니다.
  • appleteamid 항목은 Apple 플랫폼에서 바이너리 서명에 필요한 Xcode 프로젝트의 Signing 및 Capabilities 섹션에 설정할 개발팀 ID에 해당하는 문자열입니다.
  • The signtoolargs entry is an array, implemented as an integer-indexed table, which provides arguments to forward to SignTool.exe in a post-build step to sign dynamic libraries on Windows. When the array is empty, the post-build step is not added to the project.

파일의 나머지 부분이 세 개의 유사한 섹션으로 어떻게 나누어져 있는지 확인하세요. 각 섹션에는, 솔루션의 생성 방법을 구성할 때 사용되는 다양한 문자열 목록이 들어있는 테이블이 있습니다.

  • Plugin.sdk.static 테이블은 정적 SDK 플러그인을 구성하는 데 사용됩니다.
  • Plugin.sdk.shared 테이블은 정적 SDK 플러그인에 연결되는 공유 SDK 플러그인을 구성하는 데 사용됩니다 (premake 스크립트에 의해 내부적으로 수행됨).
  • Plugin.authoring 테이블은 정적 SDK 플러그인에 연결되는 Authoring 플러그인을 구성하는 데 사용됩니다.

각 목록을 구성하는 방법에 대한 자세한 내용은 Premake 문서에서 확인하세요.

플러그인 프로젝트가 생성되면, 프로젝트 폴더 내에서 premake 같은 다른 명령을 호출해야 합니다. 현대 운영 체제에서 Authoring을 위한 솔루션을 생성하는 방법은 다음과 같습니다.

cd MyNewFX
python "%WWISEROOT%/Scripts/Build/Plugins/wp.py" premake Authoring

사용 가능한 플랫폼은 다음과 같습니다.

Android, Authoring, Authoring_Windows, Authoring_Linux, Authoring_Mac, iOS, Linux, LinuxAuto, Mac, NX, OpenHarmony, PS4, PS5, QNX, tvOS, visionOS, Windows_vc160, Windows_vc170, WinGC, XboxOneGC, XboxSeriesX

솔루션이 생성되면, 다른 Wwise 플랫폼에 프로젝트 빌드하기 를 참고해 Wwise 설치에 자신의 플러그인을 빌드하고 설치하세요.

참고: To disable the code signing post-build step of shared libraries during development, you may pass the flag –disable-codesign to the premake action.

정적 Authoring 환경 설정

생성된 PremakePlugin.lua 파일에 포함돼있지는 않지만, Plugin.sdk.authoringstatic 표가 선택 사항으로 제공됩니다. 특별한 사용 사례에 사용되는 이 표는, Authoring 플러그인에 연결된 정적 SDK 플러그인에 대해 다른 환경 설정을 제공합니다. 예를 들어 다음은 FOR_AUTHORING 컴파일러 정의와 함께 동일한 SDK 플러그인 코드를 재사용하는 방법입니다.

Plugin.sdk.staticauthoring = {}
-- SDK 정적 AUTHORING 플러그인 섹션
Plugin.sdk.staticauthoring.includedirs = Plugin.sdk.static.includedirs
Plugin.sdk.staticauthoring.files = Plugin.sdk.static.files
Plugin.sdk.staticauthoring.excludes = Plugin.sdk.static.excludes
Plugin.sdk.staticauthoring.links = Plugin.sdk.static.links
Plugin.sdk.staticauthoring.libdirs = Plugin.sdk.static.libdirs
Plugin.sdk.staticauthoring.defines = table.join(Plugin.sdk.static.defines, { "FOR_AUTHORING" })

고급 Premake 환경 설정

대부분의 Premake 코드는 환경 설정 테이블에 숨겨져있기 때문에 프로젝트 설정은 매우 간단한 편입니다. 고급 환경 설정을 위해서는 다음 구성 섹션에 custom 영역을 추가하세요.

Plugin.sdk.static.custom = function()
-- 여기에 자신의 Premake 코드를 입력합니다.
end
Plugin.sdk.shared.custom = function()
-- 여기에 자신의 Premake 코드를 입력합니다.
end
Plugin.authoring.custom = function()
-- 여기에 자신의 Premake 코드를 입력합니다.
end

다음 섹션: 다른 Wwise 플랫폼에 프로젝트 빌드하기


이 페이지가 도움이 되었나요?

지원이 필요하신가요?

질문이 있으신가요? 문제를 겪고 계신가요? 더 많은 정보가 필요하신가요? 저희에게 문의해주시면 도와드리겠습니다!

지원 페이지를 방문해 주세요

작업하는 프로젝트에 대해 알려주세요. 언제든지 도와드릴 준비가 되어 있습니다.

프로젝트를 등록하세요. 아무런 조건이나 의무 사항 없이 빠른 시작을 도와드리겠습니다.

Wwise를 시작해 보세요