마이크로소프트 Comic Chat이 오픈소스로 공개되었습니다

마이크로소프트 Comic Chat이 오픈소스로 공개되었습니다

마이크로소프트가 1990년대의 채팅 클라이언트 Comic Chat을 오픈소스로 공개했습니다. Microsoft Open Source 블로그를 통한 발표이고, 우리에게 익숙한 Scott Hanselman이 공동 저자로 이름을 올렸습니다. 저장소는 여기에 있습니다.

Comic Chat이 뭐였나요

Comic Chat은 IRC 대화를 실시간으로 만화 패널로 바꿔 주던 채팅 클라이언트입니다. 참가자를 일러스트 캐릭터로 표현하고, 사용자가 입력한 텍스트에서 대화의 맥락을 읽어 적절한 포즈, 표정, 제스처, 그리고 패널 레이아웃을 골라 만화처럼 보여 주었습니다. 단순히 메시지를 그림으로 치환한 것이 아니라, 대화가 만화로서 어떻게 보여야 하는지를 실시간으로 판단하는 일종의 편집 엔진이었다는 점이 핵심입니다.

그리고 이 소프트웨어는 우리가 사랑하거나 미워하는 그 폰트, Comic Sans를 세상에 널리 알린 통로이기도 했습니다. Comic Sans는 1994년 마이크로소프트 타이포그래퍼 Vincent Connare가 디자인했고, 손글씨 느낌의 서체가 말풍선 대화와 잘 어울려 Comic Chat에서 처음으로 제대로 자리를 잡았습니다.

.NET 이전 세대의 Windows 개발 유산

이 프로젝트가 우리 커뮤니티 관점에서 흥미로운 이유는 그 계보에 있습니다. Comic Chat은 Microsoft Research의 Virtual Worlds Group 소속 David “DJ” Kurlander가 1995년에 착수해, Visual C++ 4.0과 MFC로 제작되었고, 1996년 Internet Explorer 3와 함께 출시되었습니다. 이후 24개 언어로 현지화되어 Windows 98에 번들로 실렸습니다. DJ Kurlander, Tim Skelly, David Salesin은 이 기술을 자동 일러스트 구성 및 레이아웃 실험으로 정리해 SIGGRAPH '96에서 논문으로 발표하기도 했습니다. 캐릭터의 독특한 화풍은 독립 만화가 Jim Woodring의 작업이었습니다.

즉 .NET이 등장하기 전, MFC 시절 Windows 데스크톱 애플리케이션이 어떤 모습이었는지 원본 코드로 직접 들여다볼 수 있게 된 것입니다. 저장소에는 원본 스냅샷과 함께 AI를 활용한 현대화 시도도 몇 가지 포함되어 있습니다. 1990년대 C++/MFC 코드를 최신 Visual Studio로 빌드하고, 최신 IRC 서버에 연결하며, 고해상도 Windows 환경에서 구동되도록 손본 예제입니다. 다듬어진 재출시가 아니라 동작 가능성을 보여 주는 워크드 예제 수준이라고 명시하고 있으니, 레거시 코드를 현행 툴체인에 올려 보는 사례로도 참고할 만합니다.

여담으로 붙이는 상상 하나

여기부터는 소식과는 별개인 개인적인 상상입니다. 원본 Comic Chat은 미리 그려 둔 고정 에셋을 룰 엔진이 골라 합성하는 구조였습니다. 요즘의 이미지 생성 모델들이 캐릭터 일관성을 상당히 확보했고 여러 컷 만화 구성까지 다루기 시작한 것을 보면, 이 고전을 확장하는 그림을 떠올려 보게 됩니다.

핵심은 실시간 렌더링에 생성형을 밀어 넣기보다, 콘텐츠 팩을 저작하고 릴리스하는 단계에 두는 편이 자연스럽다는 점입니다. 지연과 비용은 여기에서 상각되고, 런타임은 기존처럼 가볍게 유지됩니다. 그 위에서 LLM이 대화의 맥락을 읽어 더 다양한 상황에 대응하는 동적인 컷 구성을 판단하도록 맡기면, 원본의 편집 엔진을 그대로 계승하면서 표현력만 끌어올리는 그림이 됩니다. 30년 된 코드가 오픈소스로 풀린 지금, 이런 상상을 실제로 만져 볼 수 있게 되었다는 것이 이 공개의 가장 반가운 지점이 아닐까 싶습니다.

만화방 같던 채팅 클라이언트에서 새로운 재미난 무언가가 다시 태어나는 모습을, 한번 기대해 봅니다.

(이 글은 Claude Opus의 도움을 받아 정리한 글입니다.)

3 Likes