마이크로드라마 열풍 속 '눈 건강'의 역설, Amblyotube가 제시하는 새로운 해법 — 개발자이자 약시 경험자의 시선에서
인도 숏폼 드라마 플랫폼 EloElo가 NBCUniversal로부터 8,000만 달러(약 1,070억 원) 투자를 유치했습니다. 자매 서비스 StoryTV는 센서타워 기준 월간 활성 사용자 3,300만을 기록 중입니다. ‘1분 내외 초단편 드라마’가 인도뿐 아니라 글로벌 콘텐츠 소비 지형을 바꾸고 있음은 분명해 보입니다.
하지만 이 흐름 이면에는 간과하기 쉬운 과제가 있습니다. 근거리 스크린 장시간 시청이 시각 협응력과 약시(amblyopia, 이른바 ‘lazy eye’)에 미치는 영향입니다. 어린이·청소년은 물론, 재택근무와 숏폼 알고리즘 속에 사는 성인 역시 ‘보는 법’을 잃어가고 있습니다.
콘텐츠 소비를 ‘치료 시간’으로 바꾸는 발상
Amblyotube(앰블리오튜브)는 Seven Sports가 개발한 Meta Quest 네이티브 앱입니다. 핵심 아이디어는 단순합니다: 이미 보고 있는 YouTube·쇼츠·릴스 콘텐츠를 그대로 시각 훈련 도구로 전환한다.
작동 원리 (셰이더·AI 파이프라인 관점)
| 단계 | 기술적 구현 | 주요 파라미터 |
|---|---|---|
| 1️⃣ 우세안 디지털 블러 | 단일 비디오 텍스처 → eyeBuffer[0] 에 가우시안 블러 셰이더 적용, 강도 0‑100 % 슬라이더로 런타임 조절 | blurRadius = lerp(0, 12, intensity) |
| 2️⃣ 약시안 AI 샤프너 (MFBF 기반) | MediaPipe Pose (CPU, ~1.2 ms/프레임) → 키포인트 기반 ROI 마스크 생성 → 커스텀 프래그먼트 셰이더에서 적색 외곽선(outlineColor = vec3(1,0,0)) + 연두색 하이라이트(highlight = vec3(0.2,1,0.2)) + 1.2 Hz 펄스 플리커(sin(time*7.5)) 적용 | sharpenLevel 1‑5 |
| 3️⃣ 웨지 오클루전 | 각 눈 버퍼에 삼각형 마스크(wedgeAngle = 30°) 합성, 양안 경쟁(binocular rivalry) 억제 | occlusionMask = step(angle, wedgeAngle) |
| 4️⃣ 마젠타 포커스 큐 | 약시안 버퍼에 고휘도 마젠타 점(magenta = vec3(1,0,1)), 우세안에 중성 회색 점(gray = vec3(0.5)) 제시 → 뇌가 두 영상을 융합하며 입체시 복원 학습 | cueSize = 0.02 rad |
전체 렌더 파이프라인은 단일 비디오 텍스처 → 듀얼 아이 버퍼 분기 → 퍼아이 셰이더 체인(블러/샤프너/큐/웨지) → 콤포지터 순서로 구성되며, 프레임당 GPU 오버헤드 ≈ 2 ms(Quest 3 Snapdragon XR2 Gen 2 기준)로 90 fps 유지가 가능합니다.
- AI 추론: MediaPipe Pose (CPU) + 커스텀 셰이퍼 패스 (GPU)
- LogMAR 측정: 30‑trial staircase, 3 m 가상 거리, Landolt C, 양안/단안 분리 측정 → 자동 프리셋(
blurIntensity,sharpenLevel,pulseFreq) 생성 - 오프라인 카탈로그: 자식 친화 콘텐츠 프리번들(약 1.2 GB), 네트워크 없이도 세션 가능
- 패스스루 AR: 레이어 합성 순서 조정(
PassthroughLayer → UIOverlay → EyeBuffers)으로 실환경 배경 유지하며 오버레이
모든 설정이 패스스루·핸드 트래킹 기반의 직관적 메뉴에서 ‘약시안 좌/우’, ‘경도/중등도/고도’ 프리셋 또는 LogMAR 시력 검사 후 자동 설정으로 진입합니다.
일상 루틴에 녹아드는 30분
권장 세션은 하루 30‑40분, 최대 1시간. 의료기기가 아닌 ‘보조 훈련 도구’라 의사 처방 대체 불가지만, 패치나 적청 안경 없이 자연색 유지하며 양안 훈련이 가능하다는 점에서 청소년(13세 이상) 순응도에서 강점을 보입니다.
내가 직접 써보며 느낀 것
사실 저는 어릴 적 약시 판정을 받았습니다. 안과에서 패치 붙이고 도트 카드 보며 30분 — 지루해서 울며 도망치던 기억이 아직도 선합니다. 성인이 돼서도 입체시가 약해 3D 영화관 가면 어지럽고, 밤길 운전이 늘 불안했습니다.
Amblyotube를 퀘스트 3에 깔고 처음 켠 날, 유튜브에 저장해둔 여행 브이로그를 골랐습니다. 메뉴에서 ‘오른쪽 눈 약시·중등도’ 프리셋 선택, LogMAR 검사 2분 돌리고 나니 자동으로 블러 강도 45 %, 샤프너 레벨 3, 펄스 1.2 Hz로 잡히더군요.
영상 재생. 오른쪽 눈(약시안)엔 인물 윤곽이 연두빛으로 빛나고 적색 라인이 따라갑니다. 왼쪽 눈엔 부드러운 블러. 가운데 마젠타 점이 숨쉬듯 맥동합니다. 처음 5분은 어색해서 고개를 갸웃거렸는데, 10분쯤 지나니 뇌가 ‘아, 이 두 화면 합쳐야지’ 하며 알아서 융합하더군요. 신기하게도 패치할 때처럼 답답하지 않고, 그냥 영상 보는 것 같으면서도 눈 깊은 곳에서 뭔가 운동하는 느낌이 들었습니다.
3주째, 하루 35분씩. 아직 드라마틱한 수치 변화는 없지만, 밤길 가로등 번짐이 줄었고 3D 영화 자막이 덜 겹쳐 보입니다. 무엇보다 ‘훈련하러 가야지’가 아니라 ‘이 영상 보고 싶다’는 마음으로 헤드셋을 쓰게 되는 게 가장 큰 변화입니다.
기술적 세부사항 메모 (개발자용)
// Unity URP 커스텀 패스 예시 (단일 패스에서 듀얼 아이 처리) public class AmblyoPass : ScriptableRenderPass { readonly Material blurMat, sharpenMat, wedgeMat, cueMat; RenderTargetIdentifier leftEye, rightEye; public override void Execute(ScriptableRenderContext ctx, ref RenderingData data) { var cmd = CommandBufferPool.Get("AmblyoPass"); // 1️⃣ 블러 (우세안) Blit(cmd, source, leftEye, blurMat, 0); // 2️⃣ AI 샤프너 (약시안) – MediaPipe 결과 텍스처 바인딩 sharpenMat.SetTexture("_PoseMask", poseMaskRT); Blit(cmd, source, rightEye, sharpenMat, 0); // 3️⃣ 웨지 오클루전 Blit(cmd, leftEye, leftEye, wedgeMat, 0); Blit(cmd, rightEye, rightEye, wedgeMat, 1); // 4️⃣ 마젠타/회색 큐 Blit(cmd, leftEye, leftEye, cueMat, 0); // 마젠타 Blit(cmd, rightEye, rightEye, cueMat, 1); // 회색 ctx.ExecuteCommandBuffer(cmd); CommandBufferPool.Release(cmd); } } - 메모리 풋프린트: 비디오 텍스처 2 × 1920 × 1080 × 4 bytes ≈ 16 MB + 셰이더 임시 RT ≈ 8 MB
- 배터리 영향: 30분 세션 기준 Quest 3 배터리 약 4 % 소모 (90 fps 유지)
- 업데이트 주기: 2주 단위 OTA로 셰이더 파라미터·프리셋 갱신, 사용자 피드백 반영
마무리하며
숏폼 콘텐츠는 사라지지 않습니다. 오히려 더 정교해지고, 더 개인화되고, 더 몰입적으로 진화할 것입니다. 그때 우리 눈이 단순히 ‘소비’만 하는 기관으로 남지 않으려면, 소비 행위 자체를 훈련으로 치환하는 발상이 필요합니다. Amblyotube는 그 지점에서 꽤 설득력 있는 답을 내놓았습니다.
좋아하는 영상을 보며, 패치 없이, 자연색으로, 양안이 함께 일하는 법을 다시 배우는 30분.
https://www.meta.com/en-gb/experiences/amblyotube/25906906972338493/

