텍스트와 기타 인터페이스 요소를 소리내어 읽어줄 때 음성 합성기를 사용하는 읽어주기 모드를 지원합니다. 이 기능은 시각 장애인이 렌파이 게임에 접근할 수 있도록 하기 위해 만들어진 기능입니다.
읽어주기 모드는 v
키로 시작하거나 종료합니다.
읽어주기 모드일 때에는 위와 아래 화살표로 화면에 있는 접근 가능한 디스플레이어블을 주목할 수 있도록 키보드 작동 방식이 변경됩니다.
어느 디스플레이어블이 주목을 받았다면, 렌파이는 그 디스플레이어블과 관련 있는 텍스트를 소리 내어 읽어줄 것입니다. 주목 받은 디스플레이어블이 없다면, 렌파이는 주목할 수 없는 디스플레이어블을 소리내어 읽을 것입니다. 이 때 읽는 디스플레이어블은 일반적으로 대사나 게임을 구성하는 기타 텍스트일 것입니다.
렌파이는 음성 합성 시스템을 제공하기 위해 OS를 활용합니다 활용합니다. 음성 합성 속도나 합성에 사용되는 음성을 조정하려면 OS의 음성 설정을 조정하세요.
say
커맨드를 사용합니다. 음성 합성 설정은
제어판에 있는 "받아쓰기 및 말하기" 메뉴에서
"선택 항목 말하기" 탭에서 변경할 수 있습니다.espeak
커맨드를 사용합니다.
읽어주기 모드를 작동하기 전에 패키지 매니저를 사용해
Espeak 를 설치해야 합니다.렌파이의 읽어주기 시스템은 디스플레이어블에서 텍스트를 추출해 플레이어에게 그것을 읽어주는 방식으로 작동합니다. 렌파이는 텍스트를 추출하는 곳은 두 곳입니다.
대체 텍스트는 디스플레이어블에 alt
스타일 속성을 통해
입력할 수 있습니다. 버튼에 입력된 액션이나 바에 입력된 값으로도 대체 텍스트가
입력될 수 있습니다. 분명하게 명시한 대체 텍스트는 액션이나 값으로 입력된 텍스트보다
우선하며, 액션과 값은 Text 디스플레이어블에서 추출한 텍스트보다 우선합니다.
대체 텍스트는 렌파이 문자열 번역 메커니즘을 사용해 번역됩니다. 대체 텍스트는 디스플레이어블과 하위 디스플레이어블에서 추출한 텍스트보다 우선하지만, 이 때 하위 텍스트는 "[text]" 같은 문자열 대체 방식만 활용할 수 있습니다. 다른 문자열 대체 방식은 허용되지 않습니다.
캐릭터에 who_alt 와 what_alt 매개 변수 값을 입력하면 캐릭터 이름과 본문 에 alt 속성을 설정할 수 있습니다. 아래 예제에서는 표시되는 대사가 화자의 생각이라는 것을 나타내기 위해 텍스트를 기울임체로 설정하고, 읽어주기 모드에서도 이를 명시할 수 있도록 대체 텍스트("나는 생각했다")를 지정해 캐릭터를 정의했습니다.
define thought = Character(None, what_italic=True, what_alt="나는 생각했다, [text]")
묘사 텍스트는 읽어주기 모드가 활성화 되었을 때 내래이터가 표시하거나 읽는 텍스트입니다. 이 텍스트는 읽어주기 모드가 비활성화 되었을 때에는 표시되지 않을 것입니다. 묘사 텍스트를 읽어주기 모드에서 읽을 때에는 캐릭터와 비슷한 형태로 정의된 sv 변수를 사용합니다.
sv
= ...¶읽어주기 모드가 활성화되었을 때 내래이터가 텍스트를 소리내어 읽을 때 사용하는 유사 캐릭터 객체.
아래는 예제입니다:
e "마음 단단히 먹어, 이제부터 힘들어질 거야!"
sv "그리고 태양이 폭발했다..."
# 현란하고 흥미진진한 컷신
show event sun_exploding
pause 10