몬스터하우스, 말하는 차고 문의 대화와 목소리·표정을 따로 설계하다

ARCH-B

ARCH-B

2026년 11월 2일 · 6분 분량

0

한눈에 보는 핵심요약

엔비디아의 릭 그랜디가 차고 문에 대답하는 캐릭터를 투사하는 제작 과정을 공개했다. 대화 상태를 관리하고 입을 움직일 깨끗한 음성과 관객이 들을 효과음을 나눈 설계가 핵심이다. 실제 방문객 공연 검증이 남은 시제품에서 자동 생성보다 중요한 연출의 선택을 읽는다.

  • 대화의 진전은 응용 로직이 관리하고, 준비한 대사와 녹음으로 익숙한 상황에 대응한다.
  • 입 애니메이션에는 깨끗한 음성을 보내고 관객용 출력에 울림과 목소리 효과를 더한다.
  • 한 워크스테이션의 GPU 두 대로 추론과 렌더링을 나눴으며, 실제 방문객 검증과 사탕 자동 배급은 남은 과제다.

차고 문이 투덜거리다가 방문객의 정중한 부탁에 마음을 바꾼다. 엔비디아에서 일하는 릭 그랜디(Rick Grandy)가 허깅페이스에 공개한 몬스터하우스(MonsterHouse)는 핼러윈 방문객과 대화하도록 만든 프로젝션 캐릭터다. 차고 문을 오래된 해적선의 목재로 지은 집이라는 설정으로 꾸몄다.

이 제작 기록은 작은 언어 모델의 성능 소개보다 캐릭터의 반응을 어떻게 연출하는지에서 읽을 가치가 있다. 무엇을 말할지 정하는 단계와 말소리를 만드는 단계, 나무판자로 된 입을 움직이는 단계를 연결하면서도 따로 조절했다. 아직 실제 방문객을 상대로 한 전체 공연 검증까지 마친 사례는 아니다.

입 모양이 드러난 나무 차고 문과 마이크를 표현한 저녁의 개념 삽화
말하는 건물이라는 발상을 설명한 ARCH.B의 AI 제작 삽화입니다. 릭 그랜디의 실제 몬스터하우스 설치·성능을 보여주는 사진이 아닙니다.ARCH.B · AI 제작 개념 이미지

한 번 마음을 바꾼 집이 다시 심술을 내지 않도록

캐릭터는 처음에는 방문객을 쫓아내려 하지만 끈기 있게 부탁하거나 정중한 표현을 쓰면 누그러진다. 감사 인사에는 따뜻하게 작별한다. 제작자는 한 번 설득한 방문객이 같은 문과 다시 협상하게 만들고 싶지 않았다고 설명한다. 이에 따라 대화를 어느 단계까지 진행했는지 응용 프로그램이 관리하도록 했다.

실시간 답변에는 네모트론 3.5 볼트 E4B의 4비트 양자화 모델을 사용하고, 프롬프트와 응용 로직, 로라(LoRA) 어댑터로 성격을 조정했다. 학습 예시는 AI가 생성·평가한 다중 턴 대화 5천 건 이상으로 구성했다는 설명이다. 제작자는 모델과 어댑터의 연속성·반복·속도를 비교하고 실제 목소리 연기를 들으며 다듬었다. 이 수치를 모든 상황에서 일관되게 반응한다는 검증 결과로 읽을 수는 없다.

설득된 상태를 유지하는 설명용 예제 · 실제 프로젝트 코드 아님JAVASCRIPT
// ARCH.B 설명용 예제: 실제 MonsterHouse의 공개 소스가 아닙니다.
// 모델의 답변과 별도로 방문객의 대화 진전을 보존합니다.
function respond(state, event) {
  const wonOver = state.wonOver || event === "please";
  const line = event === "thanks" && wonOver
    ? "고마워요. 잘 가요!"
    : wonOver
      ? "좋아요. 반가워요!"
      : "지금은 심술이 나요.";

  return { state: { ...state, wonOver }, line };
}

말이 끝나기 전부터 준비하는 응답

방문객의 말을 텍스트로 바꾸는 음성 인식, 다음 대사를 고르는 모델, 이를 소리로 만드는 음성 합성이 차례로 연결된다. 기반인 네모트론 보이스 에이전트의 공식 구현도 이처럼 단계를 나눈 파이프라인을 제공한다. 익숙한 인사나 사탕에 관한 농담에는 미리 작성한 문장과 저장한 녹음을 사용할 수 있다.

준비된 문장을 쓰면 새 대사를 생성하는 일을 줄이고, 녹음을 재생하면 음성 합성을 건너뛴다. 새 답을 만들 때에는 문장 전체가 끝나기 전 발화 가능한 텍스트부터 내보내도록 구성했다. 제작자가 보고한 발화 종료부터 소리 시작까지의 중앙값은 실시간 모델·합성 경로 약 1.70초, 저장 응답 약 0.72초다. 발화 종료 판정은 300밀리초의 무음을 기다리는 설정이었다.

입을 움직이는 음성과 귀에 들리는 음성을 나누다

나무 차고 문이 갈라지는 모습을 캐릭터로 만드는 데에는 별도의 손작업이 필요했다. 제작자는 마야에서 입의 모양과 움직임을 위한 리그를 만들고 언리얼 엔진으로 옮겨 문 뒤의 불꽃과 효과를 더했다. 눈과 눈썹 없이 입으로 표현하므로, 목소리의 타이밍과 입의 변형이 캐릭터의 성격을 전달한다.

마그파이 TTS 제로샷으로 만든 깨끗한 음성은 오디오투페이스 3D에 보내 입 애니메이션을 구동한다. 관객에게 나가는 다른 음성 흐름에는 깊은 울림과 실시간 효과를 더한다. 기본 애니메이션 모델에 맞는 입력과 극적인 공연용 소리를 따로 둔 것이다. 오디오투페이스의 공식 도구는 음성 파일·스트림에서 얼굴 움직임을 만들고 언리얼의 리그에 연결하는 경로를 제공한다.

현장에서 고칠 수 있도록 남긴 조작부

이 작업은 워크스테이션 한 대에서 실행하지만 GPU는 두 대다. RTX PRO 6000 블랙웰 맥스큐가 언어·음성 모델을, RTX PRO 4000 블랙웰이 언리얼 그래픽과 얼굴 애니메이션을 맡는다. 제작자는 추론 작업이 바뀌어도 일정한 애니메이션 프레임을 유지하려고 계산을 나눴다고 설명했다. 단일 GPU에서 모든 연출을 실행했다는 사례로 소개할 수 없다.

조작 화면에서는 저장 대사를 들어보고 시작 기분과 음성 효과, 입 애니메이션을 바꿀 수 있다. 운영자가 직접 문장을 입력하는 기능도 있다. 마이크 모드에서는 인식·대사 생성·음성 합성을 건너뛰고 사람이 말한다. 그 깨끗한 목소리로 입을 움직이며 관객에게는 효과를 입힌 소리를 보내, 자동 대화에만 공연 전체를 맡기지 않는 경로를 마련했다.

대화와 음성 연출을 연결하는 세 경로공개 제작 기록의 역할 구분입니다. 아래 경로를 재현·측정한 자체 실험 결과는 아닙니다.
대화와 음성 연출을 연결하는 세 경로
경로음성·대사 처리캐릭터 연출에 연결하는 방식
실시간 대화음성 인식 → 대사 생성 → 음성 합성깨끗한 음성으로 입을 구동하고 관객용 소리에 효과 추가
저장한 응답준비한 대사·녹음 활용, 저장 녹음은 합성 생략반복되는 인사와 농담을 준비된 연기로 전달
마이크 모드사람이 직접 말하며 인식·대사 생성·합성 생략깨끗한 목소리로 입을 움직이고 관객에게는 효과음 출력
표를 좌우로 넘겨 전체 내용을 확인할 수 있습니다.

방문객을 세는 일과 의상을 설명하는 일

카메라 입력에도 역할을 나눴다. 선택적으로 사용하는 네모트론 3 나노 옴니는 보이는 의상을 설명해 캐릭터가 구체적으로 반응할 단서를 준다. 화면 안 사람의 수를 세고 추적하는 작업은 YOLO와 바이트트랙(ByteTrack)에 맡겼다. 모든 영상 프레임의 상황을 언어 모델에 설명시키는 구성으로 만들지 않았다.

제작자가 보여준 의상 입은 양 다섯 마리는 합성 테스트 영상이다. 이 영상의 의상 인식 결과를 실제 어린이들이 어두운 진입로에 모였을 때의 성능으로 옮겨 읽어서는 안 된다. 제작자는 실제 방문객과 야간 조명, 공연 전체의 검증이 남았다고 적었다. 제작의 진행 상황을 시연용 예시와 분리해 공개한 셈이다.

몬스터하우스는 대화·소리·움직임을 연결한 진행 중인 캐릭터 실험이다. 사탕 자동 배급은 아직 구현 목표로 남았으며 전체 코드도 배포용으로 묶이지 않았다. 공개된 기반 음성·애니메이션 도구와 이 개인 작업의 완성 범위를 구분해 볼 필요가 있다.

ARCH.B 의견

참고할 설계는 모델을 많이 연결한 개수보다 연출의 책임을 나눈 방식이다. 이미 설득된 방문객을 기억하는 일은 응용 로직에, 반복되는 대사는 준비한 문장과 녹음에 맡겼다. 대화의 자유도가 필요한 부분만 생성 경로로 보내면서 캐릭터의 약속과 공연의 속도를 함께 다룬다.

깨끗한 음성과 효과음을 분리한 선택도 같은 원리로 읽힌다. 관객에게 그럴듯한 소리가 애니메이션 모델에도 좋은 입력이라는 보장은 없으므로, 두 목적에 맞는 출력을 따로 만든 것이다. 제작자가 직접 말할 우회 경로까지 둔 구성은 상호작용 작품에서 자동화의 완성도와 함께 사람이 언제 개입할지를 설계해야 함을 구체적으로 보여준다.

출처와 참고자료

Share

Related

함께 읽기 좋은 글