나니노벨(Naninovel)은 Unity에서 비주얼 노벨과 대화 시스템을 만들 때 쓰는 에셋이다. 기능은 많은데 한국어 자료가 거의 없어서 2024년부터 공식 가이드 문서를 한 편씩 번역해 블로그에 올렸다. 이 글은 그렇게 쌓인 45편을 한곳에 모은 목차다.
먼저 읽어 주세요: 번역 기준
대부분의 글은 2024~2025년 무렵, 나니노벨 v1.19~v1.20 시절의 공식 문서를 번역했다. 일부는 2026년 초에 다시 손봤다. 그 뒤로 나니노벨 공식 문서는 버전이 오를 때마다 문서를 합치거나 빼면서 구성이 꽤 달라졌다.
그래서 이 목차에는 글마다 지금 공식 문서에서 어떤 상태인지 함께 적었다. 이름이 바뀐 문서는 바뀐 이름을, 다른 문서에 합쳐진 문서는 합쳐진 곳을 표시했다. 공식 목차에서 아예 빠진 문서는 따로 모았다. 각 글 맨 위에도 같은 안내가 붙어 있다.
최신 버전으로 작업한다면 개념은 이 번역으로 잡고 세부 설정과 명령어는 나니노벨 공식 가이드와 꼭 대조해 보길 권한다.
이런 분께 추천한다
- Unity로 비주얼 노벨이나 대화 중심 게임을 처음 만들어 보려는 분
- 나니노벨을 샀지만 영어 문서가 부담스러운 분
- 기획자로서 비주얼 노벨 엔진이 어떤 구조로 돌아가는지 알고 싶은 분
1. 시작하기
나니노벨이 무엇인지, 어떤 환경에서 돌아가는지, 첫 시나리오를 어떻게 쓰는지 다룬다. 처음이라면 여기부터 순서대로 읽으면 된다.
- Introduction: 나니노벨이 어떤 엔진이고 무엇을 할 수 있는지 소개한다.
- Compatibility: 지원하는 Unity 버전과 플랫폼, 호환 조건을 정리했다. (번역 당시 기준)
- Getting Started: 프로젝트를 만들고 패키지를 설치해 첫 시나리오를 실행하기까지의 과정이다.
- Naninovel Scripts: .nani 스크립트의 명령어, 일반 텍스트, 레이블 쓰는 법을 다룬다. (현재 공식 문서 이름은 Scenario Scripting)
- IDE Extension: VS Code 확장으로 구문 강조, 오류 검사, 자동 완성을 쓰는 방법이다. (현재 공식 문서 이름은 VS Code Extension)
- Samples: 인벤토리, 맵, 커스텀 UI 같은 예제 프로젝트의 구성을 살펴본다.
2. 기본 기능
캐릭터와 배경을 띄우고 대사와 선택지를 보여 주고 소리와 UI를 붙이는 등 게임을 실제로 만들 때 가장 자주 펼쳐 볼 문서들이다.
- Configuration: 엔진 설정 메뉴를 여는 방법과 설정 항목을 정리했다.
- Text Printers: 대사를 출력하는 프린터와 자동 진행, 스킵, 백로그의 동작을 다룬다.
- Characters: 캐릭터의 외양, 위치, 표정과 립싱크를 다루는 법이다.
- Backgrounds: 배경을 띄우고 전환하는 법과 배경 종류별 특징을 다룬다.
- Special Effects: 화면 흔들림, 비, 눈, 블러 같은 연출 효과를 정리했다.
- Audio: 배경음악과 효과음을 재생하고 제어하는 방법이다.
- Voicing: 캐릭터 음성을 재생하고 대사와 자동으로 연결하는 법까지 다룬다.
- Choices: 선택지를 띄우고 플레이어의 선택에 따라 이야기를 가른다.
- GUI: 기본 UI를 바꾸거나 직접 만든 UI를 붙이는 방법이다.
- Input Processing: 키보드, 마우스, 터치 입력을 처리하는 구조를 다룬다.
- Unlockable Items: CG 갤러리처럼 해금되는 콘텐츠를 관리하는 방법이다.
- Custom Variables: 시나리오에서 쓰는 변수를 만들고 저장한다.
- Script Expressions: 대사와 명령어 안에 계산식과 조건을 넣는 문법이다.
- Managed Text: UI 문구와 캐릭터 이름처럼 게임 전체에서 쓰는 텍스트를 관리하는 기능이다.
- Localization: 시나리오, 리소스, UI를 여러 언어로 옮기는 흐름을 다룬다.
- Memory Management: 리소스를 언제 불러오고 해제하는지 정하는 방식을 다룬다.
- Resource Providers: 리소스를 어디에서 불러올지 정하는 공급자 설정이다.
3. 엔진 확장 (고급)
C#으로 나니노벨을 직접 확장하려는 개발자를 위한 문서다. 엔진 구조부터 커스텀 명령어, 빌드 환경까지 다룬다.
- Engine Architecture: 엔진의 설계 원칙과 초기화 구조를 살펴본다.
- Engine Services: 스크립트 재생, 액터 관리 같은 엔진 서비스의 역할과 접근 방법이다.
- Custom Commands: 시나리오에서 부를 명령어를 C#으로 직접 만드는 방법이다.
- Custom Configurations: 나만의 설정 항목을 추가하는 방법이다. (현재 공식 문서 이름은 Custom Configuration)
- Custom Actor Implementations: 캐릭터, 배경 같은 액터를 직접 구현하는 방법이다.
- Custom Actor Shader: 캐릭터와 배경의 렌더링을 셰이더로 바꾸는 방법이다.
- Custom Script Parser: .nani 텍스트를 해석하는 파서를 바꾸는 방법이다. (현재 공식 문서는 Custom Script Compiler로 바뀌었고 내용도 달라졌다)
- State Management: 게임 상태, 전역 상태, 사용자 설정을 저장하고 불러오는 구조다.
- Integration Options: 나니노벨을 기존 게임에 붙여 쓰는 경우를 다룬다.
- Automated Testing: 플레이를 자동으로 흉내 내 테스트를 돌린다.
- Custom Build Environment: 빌드 과정을 내 환경에 맞게 바꾼다.
4. 공식 문서에서 빠지거나 합쳐진 글
번역할 때는 있었지만 지금 공식 목차에서는 사라진 문서들이다. 예전 버전 프로젝트를 쓰고 있다면 여전히 참고가 된다. 최신 버전이라면 괄호 안에 적은 공식 문서를 보는 편이 정확하다.
- Transition Effects: 배경, 캐릭터, 씬 전환 효과를 다룬다. (현재 Special Effects 문서에 통합)
- Save-Load System: 저장 슬롯과 세이브·로드 메뉴를 다룬다. (현재 State Management 문서에 통합)
- Game Settings: 게임 설정 메뉴와 설정 저장 방식을 다룬다. (현재 State Management 문서에 통합)
- Development Console: 게임 안에서 쓰는 개발용 콘솔이다.
- Movies: 동영상 재생을 다룬다.
- PlayMaker: 비주얼 스크립팅 도구 PlayMaker와의 연동을 다룬다.
- Visual Scripting: Unity 비주얼 스크립팅과 이어 쓰는 법이다.
- Render Pipelines: URP, HDRP 같은 렌더 파이프라인에서 쓰는 방법이다.
- Community Modding: 플레이어가 시나리오와 리소스를 추가하는 모딩 기능이다.
5. 개발 노트
번역과 별개로, 나니노벨을 직접 만져 보며 남긴 기록이다.
마치며
공식 문서가 계속 바뀌는 만큼 이 번역을 최신 버전에 맞춰 계속 따라가지는 못한다. 대신 처음 나니노벨을 펼친 사람이 전체 지도를 그리는 데에는 지금도 충분히 쓸모가 있다고 생각한다. 궁금한 기능이 있으면 이 목차에서 찾아 개념을 잡고 실제 작업은 공식 문서와 함께 확인해 주시길 바란다.





답글 남기기