본문으로 건너뛰기

2026-09-24 · 리서치 · 대화창 설계

2D RPG 들은 대사를 어떻게 보여 주나

클래식 JRPG 20편, 모던·인디 30편, 엔진·플러그인 20여 종, 접근성·UX 지침을 조사해 우리 에셋으로 움직이는 재현을 만들었다. 원작 그림은 쓰지 않고 표현 방식만 따라 했다. 각 카드 무대를 누르면 처음부터 다시 돌고, 위의 소리를 켜면 마우스를 올린 카드의 목소리가 난다.

1 · 모양보다 목소리캐릭터마다 가장 싸게 개성을 주는 수단은 글자마다 나는 짧은 소리와 말 빠르기다. 언더테일·동물의 숲·셀레스트·마더3가 이렇게 한다. 우리에게는 둘 다 없다.
2 · 화자 프로필이 표준Ren'Py·Dialogic·Naninovel 모두 캐릭터가 창·글꼴·색·소리·속도를 한 묶음으로 들고 다닌다. RPG Maker는 이 기능이 없어서 플러그인이 얼굴 파일 이름으로 흉내 낸다. 우리도 지금 RPG Maker와 같다.
3 · 그릇이 여러 개아래 상자 하나로 끝내는 게임은 드물다. 말풍선(짧은 말·여러 명), 흘림 대사(걸어가며 듣는 말), 초상 무대(중요한 장면)를 섞는다.
4 · 대사 종류가 모양을 정한다내레이션·속마음·속삭임·외침·무전·표지판·편지·시스템 안내는 거의 모든 게임이 다른 모양으로 보여 준다. 만화 식자에서 온 약속이라 따로 배우지 않아도 읽힌다.

대사 표시를 가르는 7가지 축

조사한 게임들이 대사를 서로 다르게 만드는 축을 모았다. 칩 색은 OPRN에 그 선택지가 지금 있는지를 뜻한다.

있음일부·우회없음

클래식 JRPG — 재현

8~16비트 시절 게임들은 창 하나로 버텼다. 대신 화자를 알리는 방식(*, 「이름:」, •, 글자색, 소리 높이)과 줄 넘김 방식(한 줄씩 올라감, 쪽 전체 지움)으로 성격을 냈다.

모던·인디 — 재현

요즘 게임들은 화자별 목소리·글꼴·색, 단어 단위 효과(흔들림·물결·크게), 그리고 그릇을 섞어 쓰기로 개성을 낸다. 비용은 대부분 그림보다 규칙 쪽에 든다.

대사 종류마다 다른 모양 — 만화 식자의 약속

같은 캐릭터라도 무엇을 말하느냐에 따라 창이 바뀐다. 아래는 우리 유리 창 위에 올린 프리셋 9종이다. 그림을 새로 그리지 않고 CSS와 소리 설정만으로 만든다. 버튼을 누르거나 자동 순환을 켜 두고 볼 수 있다.

목소리 실험실 — 글자마다 나는 소리

대부분의 모던 게임은 녹음 없이 짧은 신호음 하나만 쓴다. 음 높이·파형·빠르기만 캐릭터마다 다르게 둔다. 한글은 음절 하나에 한 번 울리는 게 말 박자와 맞는다. 초성(ㄱ·ㄴ·ㄷ…)으로 음을 고르면 동물의 숲처럼 말하는 느낌이 난다. 위의 소리를 켜고 들어 본다.

파란 칸은 소리가 난 음절이다. 공백과 문장부호는 소리 없이 넘어가고, 쉼표·마침표 뒤에는 잠깐 멈춘다.

직접 써 보기 — 태그 몇 개로 되는 것

「문장 표시」에는 화자·표정·본문만 적고 모양은 화자 프로필에서 받는 방식이다. 본문 태그: [흔들]…[/] [물결]…[/] [크게]…[/] [작게]…[/] [색:노랑]…[/] [쉼:0.5] [빠르게]…[/]. 고치면 바로 다시 재생된다.

화자를 바꾸면 이름표 색, 소리, 말 빠르기, 글꼴이 한꺼번에 바뀐다. 이게 「화자 프로필」이다.

기능 비교표 — 도구들은 무엇을 작가에게 쥐여 주나

기본 제공 · 일부·플러그인·코드 필요 · 없음. 엔진 문서 기준이며, 확인하지 못한 칸은 보수적으로 표시했다.

OPRN 제안 — 네 겹으로 쌓는다

아래 겹이 위 겹의 빈 곳을 채운다. 대부분의 대사는 화자와 본문만 적으면 되고, 특별한 한 줄만 덮어쓴다. Ren'Py의 Character, Dialogic의 Style, Naninovel의 Linked Printer가 모두 이 구조다.

① 프로젝트 기본자료집 → 시스템
기본 스타일: 유리 · 글꼴: 갈무리11 (에디터 UI 글꼴과 분리)
말 빠르기: 초당 28음절 · 쉼표 0.12초 · 마침표 0.3초
넘기기: 한 번 누르면 채우고, 두 번째에 다음 쪽 · ▼ 다음 / ■ 끝
↓ 비어 있는 칸만 위에서 받는다
② 스타일 프리셋재사용하는 겉모양
유리 · 고전(윈도스킨) · 말풍선 · 초상 무대 · 흘림 대사
내레이션 · 속마음 · 속삭임 · 외침 · 무전 · 표지판 · 편지 · 시스템
↓
③ 화자 프로필캐릭터(외형)에 붙는다
토비 = { 이름색: 하늘, 글꼴: 갈무리11, 스타일: 유리,
         목소리: { 네모파, 620Hz, 흔들림 6%, 음절마다, 최소 55ms },
         빠르기: 34, 표정: 얼굴 16칸, 말풍선 기준점: 맵 캐릭터 머리 }
↓
④ 대사 한 줄「문장 표시」
화자: 토비 · 표정: 놀람 · 본문: "[흔들]진짜라니까![/]"
(접힘) 덮어쓰기: 그릇=말풍선 · 종류=외침 · 위치 · 자동 넘김 · 넘기기 금지

순서 — 들이는 품에 비해 체감이 큰 것부터

1단계 · 바로 체감
  • 화자 프로필: 이름색·목소리·빠르기·스타일·글꼴
  • 글자마다 소리 (음절 단위, 최소 간격, 흔들림, 음량 설정)
  • 구두점 자동 쉼 + 두 번 눌러 넘기기 + ▼/■
  • 대사 종류 프리셋 9종
  • 끊긴 윈도스킨 연결 복구, 대화창 글꼴을 에디터 글꼴에서 분리
그림 추가 없음. 런타임 대화창·자료집 캐릭터·문장 표시 커맨드 세 곳.
2단계 · 표현 확장
  • 인라인 효과 [흔들] [물결] [크게] [작게] [색] + 「움직임 줄이기」 설정
  • 표정 태그 하나로 얼굴·목소리 높이·감정 아이콘을 같이 바꾸기 (셀레스트 방식)
  • 말풍선 그릇: 머리 기준점, 화면 가장자리 붙임, 꼬리 뒤집기, 길면 상자로 자동 전환
  • 흘림 대사: 멈추지 않는 1줄 말풍선, 그림 말풍선
페이지 나누기와 말풍선 배치 로직이 핵심. 한글 줄바꿈(어절 단위)을 미리 계산한다.
3단계 · 이야기 중심
  • 대화 기록 (이름·색·본문, 버튼 하나로 열기)
  • 초상 무대: 두 명 동시, 말 안 하는 쪽 어둡게, 입 움직임 2칸
  • 코너 피드: 동료가 걸으며 하는 말 (크로스코드 방식)
  • 연출 박자: 단어에 맞춘 효과음·화면 흔들림, 넘기기 금지 구간
그림(흉상·입 모양)과 설정 화면이 필요하다.
조사 출처 (주요 문서)
← 블로그 목록OpenRPGMaker 홈RSS