UnLua는 UE를 위한 고도로 최적화된 Lua 스크립팅 솔루션입니다. UE의 프로그래밍 패턴을 따르며, 기능이 풍부하고 학습하기 쉬우며, UE 프로그래머가 학습 비용 없이 사용할 수 있습니다.
- 모든 UCLASS, UPROPERTY, UFUNCTION, USTRUCT, UENUM에 직접 접근, 글루 코드 불필요.
- 블루프린트에서 정의된 구현 교체 ( Event / Function ).
- 각종 이벤트 알림 처리 ( Replication / Animation / Input ).
더 자세한 기능 소개는 기능 목록을 참조하세요.
- UFUNCTION 호출, 영구 매개변수 캐싱, 최적화된 매개변수 전달, 최적화된 비상수 참조 및 반환값 처리 포함.
- 컨테이너 클래스 접근 (TArray, TSet, TMap), 엔진과 동일한 메모리 레이아웃, Lua Table과 컨테이너 간 변환 불필요.
- 효율적인 구조체 생성, 접근, GC.
- 커스텀 정적 내보내기 클래스, 멤버 변수, 멤버 함수, 전역 함수, 열거형 지원.
- 실행 플랫폼: Windows / Android / iOS / Linux / OSX
- 엔진 버전: Unreal Engine 4.17.x - Unreal Engine 5.x
주의: 4.17.x와 4.18.x 버전은 Build.cs에 일부 수정이 필요합니다.
Plugins디렉터리를 UE 프로젝트 루트 디렉터리에 복사하세요.- UE 프로젝트를 재시작하세요.
주의: UE 초보자라면, 더 자세한 그림 설명서 버전을 사용하여 다음 단계를 진행하는 것을 추천합니다.
- 새 블루프린트를 생성한 후 열고, UnLua 도구 모음에서
바인딩을 선택하세요 (Alt키를 동시에 눌러 2단계 경로를 자동 생성할 수 있습니다) - 인터페이스의
GetModule함수에 Lua 파일 경로를 입력하세요, 예:GameModes.BP_MyGameMode - UnLua 도구 모음에서
Lua 템플릿 파일 생성을 선택하세요 Content/Script/GameModes/BP_MyGameMode.lua를 열어 코드를 작성하세요
- 01_HelloWorld 빠른 시작 예제
- 02_OverrideBlueprintEvents 블루프린트 이벤트 재정의 (Overridden Functions)
- 03_BindInputs 입력 이벤트 바인딩
- 04_DynamicBinding 동적 바인딩
- 05_BindDelegates 대리자의 바인딩, 언바인딩, 트리거
- 06_NativeContainers 엔진 레벨 네이티브 컨테이너 접근
- 07_CallLatentFunction 코루틴에서
Latent함수 호출 - 08_CppCallLua C++에서 Lua 호출
- 09_StaticExport 커스텀 타입을 Lua로 정적 내보내기
- 10_Replications 네트워크 복제 이벤트 재정의
- 11_ReleaseUMG UMG 관련 객체 해제
- 12_CustomLoader 커스텀 로더
- 13_AnimNotify 애니메이션 알림
Lyra with UnLua UE 공식 Lyra 초보자 게임 패키지 기반 완전한 예제 프로젝트, 현재 개발 중
자주 사용하는 문서: 설정 옵션 | 디버깅 | 인텔리센스 | 콘솔 명령 | FAQ
상세 소개:
- 프로그래밍 가이드: UnLua의 주요 기능과 프로그래밍 패턴 소개
- 플러그인과 모듈: Plugins 디렉터리 하위 플러그인 목록과 포함된 모듈 소개
- 기능 목록: 더 자세한 기능 목록
- 구현 원리: UnLua의 두 가지 재정의 메커니즘 소개
- API: 더 자세한 UnLua API 설명
- 공식 교류 QQ 그룹: 936285107
- 추천 VSCode 플러그인: Lua Booster
