CLIEN

본문 바로가기 메뉴 바로가기 보기설정 테마설정
톺아보기 공감글
커뮤니티 커뮤니티전체 C 모두의광장 F 모두의공원 I 사진게시판 Q 아무거나질문 D 정보와자료 N 새로운소식 T 유용한사이트 P 자료실 E 강좌/사용기 L 팁과강좌 U 사용기 · 체험단사용기 W 사고팔고 J 알뜰구매 S 회원중고장터 B 직접홍보 · 보험상담실 H 클리앙홈
소모임 소모임전체 ·굴러간당 ·아이포니앙 ·MaClien ·주식한당 ·일본산당 ·안드로메당 ·개발한당 ·방탄소년당 ·자전거당 ·야구당 ·AI당 ·노젓는당 ·디아블로당 ·테스트당 ·가상화폐당 ·나스당 ·소시당 ·소셜게임한당 ·캠핑간당 ·이륜차당 ·WOW당 ·퐁당퐁당 ·전기자전거당 ·e북본당 ·바다건너당 ·클다방 ·골프당 ·맛있겠당 ·육아당 ·보드게임당 ·소리당 ·콘솔한당 ·3D메이킹 ·X세대당 ·ADHD당 ·AI그림당 ·날아간당 ·사과시계당 ·배드민턴당 ·농구당 ·블랙베리당 ·곰돌이당 ·비어있당 ·FM당구당 ·블록체인당 ·활자중독당 ·볼링친당 ·냐옹이당 ·문명하셨당 ·클래시앙 ·요리한당 ·쿠키런당 ·대구당 ·DANGER당 ·뚝딱뚝당 ·개판이당 ·동숲한당 ·날아올랑 ·갖고다닌당 ·이브한당 ·패셔니앙 ·물고기당 ·도시어부당 ·FM한당 ·포뮬러당 ·젬워한당 ·걸그룹당 ·안경쓴당 ·차턴당 ·총쏜당 ·땀흘린당 ·하스스톤한당 ·히어로즈한당 ·인스타한당 ·IoT당 ·KARA당 ·키보드당 ·꼬들한당 ·덕질한당 ·어학당 ·가죽당 ·레고당 ·리눅서당 ·LOLien ·Mabinogien ·임시소모임 ·미드당 ·밀리터리당 ·땅판당 ·헌팅한당 ·오른당 ·영화본당 ·MTG한당 ·노키앙 ·적는당 ·방송한당 ·PC튜닝한당 ·찰칵찍당 ·그림그린당 ·소풍간당 ·심는당 ·패스오브엑자일당 ·라즈베리파이당 ·품앱이당 ·리듬탄당 ·달린당 ·Sea마당 ·SimSim하당 ·심야식당 ·윈태블릿당 ·미끄러진당 ·축구당 ·나혼자산당 ·스타한당 ·스팀한당 ·파도탄당 ·테니스친당 ·빨콩이당 ·공대시계당 ·여행을떠난당 ·터치패드당 ·트윗당 ·창업한당 ·VR당 ·시계찬당 ·WebOs당 ·위스키당 ·와인마신당 ·윈폰이당
임시소모임
고객지원
  • 게시물 삭제 요청
  • 불법촬영물등 신고
  • 쪽지 신고
  • 닉네임 신고
  • 제보 및 기타 제안
© CLIEN.NET
공지[공지] 10월 3일(토) 00:00~00:30 서버 작업 안내 더보기

개발한당

자유
촬영 0초, 코드로만 만든 서울 실시간 날씨 한옥 스테이뷰 라이브

1
뚝시미달탱이
917
2026-09-28 17:49:06 211.♡.180.93

작업할 때 틀어 둘 앰비언트 영상 찾다가 그냥 직접 만들어 봤습니다.

카메라로 찍은 건 하나도 없고, 전부 코드로 만든 영상입니다. 개발은 거의 Claude Code로 했고요.


한옥 방에서 마당 내다보는 장면인데, 서울 실제 시간이랑 날씨를 그대로 따라갑니다.

밤엔 등불이랑 풀벌레 소리, 새벽엔 참새, 낮엔 바람 소리가 나고 서울에 비 오면 여기도 비 옵니다. 음악은 없습니다.


sunrise.png


▶ 방송: https://youtube.com/live/H-IJjEaBLdc?feature=share


코딩할 때 켜 두면 집중용으로 괜찮은듯합니다. 요즘 저는 이거 틀어 놓고 작업 중입니다.


---


■ 어떻게 만들었나


영상 파일을 반복 재생하는 방식이 아니라, 웹 페이지 하나가 매 프레임 화면을 직접 그립니다.


- Next.js + WebGL2 로 렌더러 만들고

- AI로 만든 4K 배경 이미지(시간대별 7장 + 비 오는 날 3장)를 셰이더에서 섞어서 밤 → 새벽 → 낮 → 해질녘을 만들고

- 기상청 실황 API 10분마다 조회해서 비 오면 비 장면으로 넘어가고

- 그 페이지를 OBS 브라우저 소스로 띄워서 4K로 송출합니다


빗줄기, 처마 낙숫물, 물웅덩이 파문, 창호지에 비치는 나뭇잎 그림자, 낙엽, 등불 흔들림도 전부 셰이더로 돌립니다.


Claude Code한테 단계별로 지시하고, 결과 캡처 받아서 보고, 이상하면 다시 고치는 식으로 진행했습니다.

제가 한 건 방향 정하고 결과물 눈으로 확인하는 쪽이 대부분이었던듯합니다.


■ 제일 오래 걸린 건 나무 흔들림


처음엔 사인파로 흔들었는데 너무 기계적이더라고요. 그래서


1. AI 영상 생성으로 나무 흔들리는 15초짜리 영상 만들고

2. 옵티컬 플로우로 픽셀별 움직임 뽑아서

3. PCA로 기본 움직임 9개로 쪼갠 다음 (수관 전체가 기우는 움직임, 빠른 왕복, 소나무만 따로 흔들리는 것 등으로 나뉘더라고요)

4. 실제 화면에서는 그 9개 움직임을 바람 세기에 맞춰 새로 만들어 냅니다. 영상을 루프하는 게 아니라 이음매가 없습니다.


여기서 삽질 좀 했습니다.

- 처음엔 나무 윤곽이 제자리에 박제되고, 잎 사이 하늘이랑 산까지 같이 출렁였음 → 나무랑 배경 레이어 분리해서 해결

- 흔들림 키우니까 줄기까지 고무처럼 늘어남 → 가지 굵기별로 뻣뻣함 따로 줘서, 잎이랑 잔가지만 흔들리게 함


■ 소리


Freesound CC0 음원만 썼습니다. 루프 반복이 티 안 나게 매번 다른 지점에서 이어 붙이고, 바람 소리 크기는 화면 바람 세기랑 연결해 뒀습니다.

원본 녹음에 섞여 있던 "틱" 소리는 스크립트로 찾아서 지웠습니다.


■ 24시간 돌리다 잡은 버그


제일 황당했던 건 이거였습니다.

페이지가 30초마다 서버에 상태 보고를 보내는데, 어느 날 밤 7시간 반 동안 끊겨 있었습니다. 방송 화면은 멀쩡했고요.


원인은 fetch 의 keepalive: true 였습니다.

- keepalive 요청은 브라우저가 전송 중인 본문 합계를 64KiB로 제한하는데

- 응답 본문을 안 읽고 + 서버가 Cache-Control: no-store 를 붙이면 크로미움이 그 할당량을 안 돌려줌

- 그래서 118번째 요청(약 59분)에서 꽉 차고, 이후 전부 조용히 실패. catch 에서 에러를 삼켜서 흔적도 없었음

- 덤으로 요청마다 핸들도 하나씩 새고 있었음


keepalive 빼고 응답 본문 끝까지 읽게 하니 해결됐습니다. 주기 요청에 keepalive 쓰면 안 된다는 거 이번에 처음 알았네요.


지금은 워치독이 1분마다 서버·OBS·송출 상태 보고 알아서 복구하고, 재부팅돼도 자동으로 방송 다시 올라오게 해 뒀습니다.


---


장면은 AI로 만들었고, 시간·날씨·소리는 렌더러가 실시간으로 합성합니다.

혼자 만든 거라 어색한 부분 있으면 알려 주세요. 특히 비 오는 날 전환이나 새벽 소리가 자연스러운지 궁금합니다.



뚝시미달탱이 님의 게시글 댓글
  • 주소복사
  • Facebook
  • X(Twitter)
댓글 • [0] 을 클릭하면 간단한 회원메모를 할 수 있습니다.
새로운 댓글이 없습니다.
이미지 최대 업로드 용량 15 MB
업로드 가능 확장자 jpg,gif,png,jpeg,webp
지나치게 큰 이미지의 크기는 조정될 수 있습니다.
목록으로
글쓰기
목록으로 댓글보기 이전글 다음글
아이디  ·  비밀번호 찾기 회원가입
이용규칙 운영알림판 운영소통 재검토요청 도움말 버그신고
개인정보처리방침 이용약관 책임의 한계와 법적고지 청소년 보호정책
©   •  CLIEN.NET
보안 강화를 위한 이메일 인증
안전한 서비스 이용을 위해 이메일 인증을 완료해 주세요. 현재 회원님은 이메일 인증이 완료되지 않은 상태입니다.
최근 급증하는 해킹 및 도용 시도로부터 계정을 보호하기 위해 인증 절차가 강화되었습니다.

  • 이메일 미인증 시 글쓰기, 댓글 작성 등 게시판 활동이 제한됩니다.
  • 이후 새로운 기기에서 로그인할 때마다 반드시 이메일 인증을 거쳐야 합니다.
  • 2단계 인증 사용 회원도 최초 1회는 반드시 인증하여야 합니다.
  • 개인정보에서도 이메일 인증을 할 수 있습니다.
지금 이메일 인증하기
등록된 이메일 주소를 확인하고 인증번호를 입력하여
인증을 완료해 주세요.