KR20220086648A - 몰입형 콘텐츠에서 2d 영화를 만들기 위한 시스템 및 방법 - Google Patents

몰입형 콘텐츠에서 2d 영화를 만들기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20220086648A
KR20220086648A KR1020227017143A KR20227017143A KR20220086648A KR 20220086648 A KR20220086648 A KR 20220086648A KR 1020227017143 A KR1020227017143 A KR 1020227017143A KR 20227017143 A KR20227017143 A KR 20227017143A KR 20220086648 A KR20220086648 A KR 20220086648A
Authority
KR
South Korea
Prior art keywords
computer
animation
real
shot
shots
Prior art date
Application number
KR1020227017143A
Other languages
English (en)
Inventor
미하일 스타니슬라보비치 솔로비흐
웨이 왕
나다니엘 크리스토퍼 더크슨
로렌스 데이비드 커틀러
아포스톨로스 레리오스
Original Assignee
바오밥 스튜디오스, 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 바오밥 스튜디오스, 인코포레이티드 filed Critical 바오밥 스튜디오스, 인코포레이티드
Publication of KR20220086648A publication Critical patent/KR20220086648A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/802D [Two Dimensional] animation, e.g. using sprites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T3/0037
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/06Topological mapping of higher dimensional structures onto lower dimensional surfaces
    • G06T3/067Reshaping or unfolding 3D tree structures onto 2D planes
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/34Indicating arrangements 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234336Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by media transcoding, e.g. video is transformed into a slideshow of still pictures or audio is converted into text
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8146Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/816Monomedia components thereof involving special video data, e.g 3D video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/50Constructional details
    • H04N23/55Optical parts specially adapted for electronic image sensors; Mounting thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/2224Studio circuitry; Studio devices; Studio equipment related to virtual studio applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2213/00Indexing scheme for animation
    • G06T2213/08Animation software package

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Computer Security & Cryptography (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

시스템, 방법 및 비일시적 컴퓨터 판독 가능 매체는 컴퓨터 기반 경험과 관련된 데이터를 얻을 수 있다. 컴퓨터 기반 경험은 대화형 실시간 기술을 기반으로 할 수 있다. 애니메이션 생성 애플리케이션에서 컴퓨터 기반 경험 내에 적어도 하나의 가상 카메라를 구성할 수 있다. 상기 애니메이션 생성 애플리케이션에서 적어도 하나의 가상 카메라에 의해 캡쳐된 콘텐츠의 편집 컷으로부터 2차원 콘텐츠에 해당하는 복수의 샷을 생성할 수 있다. 컴퓨터 기반 경험의 2차원 버전과 관련된 데이터는 복수의 샷을 기반으로 하는 실시간 엔진에서 생성될 수 있다. 생성된 데이터를 기반으로 2차원 버전을 렌더링할 수 있다.

Description

몰입형 콘텐츠에서 2D 영화를 만들기 위한 시스템 및 방법
본 기술은 디지털 애니메이션 분야에 관한 것이다. 보다 상세하게, 본 기술은 AR/VR 콘텐츠로부터 2D 콘텐츠를 생성하는 기술에 관한 것이다.
가상 현실(VR) 및 증강 현실(AR)은 콘텐츠 제작자가 다른 매체에서는 불가능한 방식으로 시청자를 몰입시킬 수 있게 하는 엔터테인먼트 및 스토리텔링을 위한 새로운 매체이다. VR 및 AR은 시청자가 상호작용하고 공감할 수 있는 캐릭터와 함께 매력적인 이야기를 전달할 수 있는 강력한 몰입형 플랫폼이다. 사용자(예를 들어, 시청자)는 주변 세계와 본능적으로 연결되어 있다. 사용자는 몰입할 수 있고 선택의지를 가질 수 있으며 어디에서나 볼 수 있다. 사용자는 또한 역할을 할 수 있고 행동하도록 영감을 받을 수 있다. 캐릭터는 사용자가 자신의 세계에 존재함을 인식하고 실시간으로 사용자 행동에 응답할 수 있다. 이에 반해, 2D 콘텐츠(예를 들어, 영화, 필름, TV 프로그램)는 캐릭터와 공감을 이끌어낼 수 있는 수동적이고 영화적인 매체이지만 당연히 상호 작용이 없다.
본 발명의 내용에 포함됨.
본 기술의 다양한 실시예는 컴퓨터 기반 경험과 관련된 데이터를 획득하도록 구성된 시스템, 방법, 및 비일시적 컴퓨터 판독가능 매체를 포함할 수 있다. 컴퓨터 기반 경험은 대화형 실시간 기술을 기반으로 할 수 있다. 실시간 엔진의 컴퓨터 기반 환경 내에서 하나 이상의 가상 카메라를 구성할 수 있다. 컴퓨터 기반 경험의 편집 컷과 관련된 데이터는 적어도 하나의 가상 카메라에 의해 캡처된 콘텐츠를 기반으로 얻을 수 있다. 실시간 엔진에서 컴퓨터 기반 경험의 편집 컷으로부터 2차원 콘텐츠에 대응하는 복수의 샷이 생성될 수 있다. 컴퓨터 기반 경험의 2차원 버전과 관련된 데이터는 복수의 샷을 기반으로 하는 실시간 엔진으로 생성될 수 있다. 생성된 데이터를 기반으로 2차원 버전을 렌더링할 수 있다.
일 실시예에서, 컴퓨터 기반 경험은 몰입형 실시간 기술에 기초한다.
일 실시예에서, 2차원 버전과 연관된 데이터는 대화형 2D 콘텐츠이다.
일 실시예에서, 편집 컷과 연관된 데이터를 획득하는 단계는 비선형 비디오 편집 소프트웨어로부터 실시간 엔진으로 편집 컷에 반영된 편집 세트를 설명하는 데이터를 가져오는 단계를 더 포함한다.
일 실시예에서, 2차원 콘텐츠에 대응하는 복수의 샷을 생성하는 단계는 실시간 엔진에서 복수의 샷에 포함된 적어도 하나의 샷과 연관된 하나 이상의 프레임에 추가 세트 드레싱 및 레이아웃 데이터를 적용하는 단계; 및 조명 및 하나 이상의 미디어 효과를 하나 이상의 프레임에 적용하는 단계를 포함하고, 상기 조명 및 하나 이상의 미디어 효과는 실시간 엔진에서 컴퓨터 기반 경험에 적용된 조명 및 하나 이상의 미디어 효과의 상단에 추가된다.
일 실시예에서, 실시간 엔진으로부터 컴퓨터 기반 경험의 2차원 버전과 연관된 데이터를 생성하는 단계는 애니메이션 제작 애플리케이션에서 2차원 버전에 대한 적어도 하나의 새로운 샷을 생성하는 단계; 또는 애니메이션 제작 애플리케이션에서 2차원 버전에 대한 적어도 하나의 샷에 하나 이상의 애니메이션 픽스를 적용하는 단계를 더 포함한다.
일 실시예에서, 시스템, 방법, 및 비일시적 컴퓨터 판독가능 매체는 하나 이상의 애니메이션 픽스의 적용 이전에 적어도 하나의 샷의 복사본을 생성하도록 구성되고, 상기 하나 이상의 애니메이션 픽스가 복사본에 적용된다.
일 실시예에서, 2차원 버전과 연관된 데이터를 생성하는 단계는 실시간 엔진에서 2차원 버전을 렌더링하는 단계를 더 포함한다.
일 실시예에서, 렌더링은 실시간 엔진을 통해 편집기 내에서 수행된다.
일 실시예에서, 시스템, 방법, 및 비일시적 컴퓨터 판독가능 매체는 2차원 버전과 연관된 타임라인을 결정하고; 상기 타임라인에서 렌더링되도록 표시된 영역을 결정하며; 실시간 엔진으로 상기 영역에 대응하는 2차원 버전의 일부를 렌더링하도록 구성된다.
본 기술의 다양한 실시예는 컴퓨터 기반 경험과 관련된 데이터를 획득하도록 구성된 시스템, 방법, 및 비일시적 컴퓨터 판독가능 매체를 포함할 수 있다. 컴퓨터 기반 경험은 양방향 실시간 기술을 기반으로 할 수 있다. 애니메이션 제작 애플리케이션의 컴퓨터 기반 환경 내에서 하나 이상의 가상 카메라를 구성할 수 있다. 2차원 콘텐츠에 대응하는 복수의 샷은 애니메이션 제작 애플리케이션에서 적어도 하나의 가상 카메라에 의해 캡처된 콘텐츠의 편집 컷으로부터 생성될 수 있다. 컴퓨터 기반 경험의 2차원 버전과 관련된 데이터는 복수의 샷을 기반으로 하는 실시간 엔진에서 생성될 수 있다. 생성된 데이터를 기반으로 2차원 버전을 렌더링할 수 있다.
일 실시예에서, 시스템, 방법, 및 비일시적 컴퓨터 판독가능 매체는 실시간 엔진에서 2차원 버전을 렌더링하도록 구성된다.
일 실시예에서, 2차원 콘텐츠에 대응하는 복수의 샷을 생성하는 단계는 비선형 비디오 편집 소프트웨어로부터 컴퓨터 기반 경험의 편집 컷과 연관된 데이터를 획득하는 단계를 더 포함한다.
일 실시예에서, 2차원 콘텐츠에 대응하는 복수의 샷을 생성하는 단계는 애니메이션 제작 애플리케이션에서 생성된 복수의 샷과 연관된 데이터를 실시간 엔진에 가져오는 단계를 더 포함한다.
일 실시예에서, 시스템, 방법, 및 비일시적 컴퓨터 판독 가능 매체는 컴퓨터 기반 경험과 연관된 제2 애니메이션 레이어와 별개인 2차원 버전과 연관된 제1 애니메이션 레이어를 생성하도록 구성되고, 복수의 샷에서 한 샷에 대한 조정이 제1 애니메이션 레이어에 적용된다.
일 실시예에서, 시스템, 방법, 및 비일시적 컴퓨터 판독 가능 매체는 컴퓨터 기반 경험과 연관된 제2 애니메이션 레이어과 별개인 2차원 버전에 대응하는 타임라인과 연관된 제1 애니메이션 레이어를 생성하도록 구성되고, 2차원 버전에 해당하는 타임라인에 대한 조정이 제1 애니메이션 레이어에 적용된다.
일 실시예에서, 2차원 콘텐츠에 대응하는 복수의 샷을 생성하는 단계는 애니메이션 제작 애플리케이션에서 2차원 버전에 대한 적어도 하나의 샷에 하나 이상의 애니메이션 픽스를 적용하는 단계를 더 포함한다.
일 실시예에서, 애니메이션 제작 애플리케이션에서 2차원 버전에 대한 적어도 하나의 샷에 하나 이상의 애니메이션 픽스를 적용하는 단계는 하나 이상의 애니메이션 픽스의 적용 전에 적어도 하나의 샷의 복사본을 생성하는 단계를 더 포함하고, 상기 하나 이상의 애니메이션 픽스가 복사본에 적용된다.
일 실시예에서, 시스템, 방법, 및 비일시적 컴퓨터 판독 가능 매체는 실시간 엔진에서 컴퓨터 기반 경험과 연관된 프레임에 조명 및 하나 이상의 미디어 효과를 적용하고; 실시간 엔진에서 2차원 버전과 연관된 프레임에 조명 및 하나 이상의 미디어 효과를 적용하도록 구성되며, 상기 2차원 버전과 연관된 프레임에 대한 조명 및 하나 이상의 미디어 효과는 컴퓨터 기반 경험에 적용된 조명 및 하나 이상의 미디어 효과의 상단에 추가된다.
일 실시예에서, 시스템, 방법, 및 비일시적 컴퓨터 판독가능 매체는 실시간 엔진에서 복수의 샷에 포함된 적어도 하나의 샷과 연관된 하나 이상의 프레임에 추가 세트 드레싱 및 레이아웃 데이터를 적용하도록 구성된다.
본 발명의 내용에 포함됨.
도 1a 및 도 1b는 AR/VR 콘텐츠 및 2D 콘텐츠를 생성하기 위한 종래의 작업 흐름을 도시한다.
도 2는 본 기술의 일 실시예에 따른 2D 콘텐츠를 생성하기 위한 예시적인 시스템을 도시한다.
도 3a-3b는 본 기술의 실시예에 따른 예시적인 방법을 도시한다.
도 4는 본 기술의 실시예에 따른 2D 콘텐츠를 생성하기 위한 다른 예시적인 시스템을 도시한다.
도 5a-5b는 본 기술의 실시예에 따른 예시적인 방법을 도시한다.
도 6 내지 도 17은 본 기술의 실시예에 따른 다양한 인터페이스 및 관련 출력을 도시한다.
도 18 내지 도 24는 본 기술의 실시예에 따른, AR/VR 콘텐츠로부터 유도된 2D 콘텐츠에 대한 다양한 개선을 도시한다.
도 25는 본 기술의 실시예에 따른 다양한 시나리오에서 이용될 수 있는 컴퓨터 시스템 또는 컴퓨팅 장치의 예를 도시한다.
도면은 단지 예시의 목적으로 개시된 기술의 다양한 실시예를 도시하며, 도면은 동일한 요소를 식별하기 위해 동일한 참조 번호를 사용한다. 당업자는 도면에 도시된 구조 및 방법의 대안적인 실시예가 본 명세서에 기술된 개시된 기술의 원리를 벗어나지 않고 채용될 수 있음을 다음의 논의로부터 쉽게 인식할 것이다.
몰입형 콘텐츠로부터 2D 영화 만들기
가상 현실(VR) 및 증강 현실(AR)은 콘텐츠 제작자가 다른 매체에서는 불가능한 방식으로 시청자를 몰입시킬 수 있게 하는 엔터테인먼트 및 스토리텔링을 위한 새로운 매체이다. VR 및 AR은 시청자가 상호 작용하고 공감할 수 있는 캐릭터와 함께 매력적인 이야기를 전달할 수 있는 강력한 실시간 몰입형 플랫폼이다. 사용자(예를 들어, 시청자)는 주변 세계와 본능적으로 연결되어 있다. 사용자는 몰입할 수 있고 선택의지를 가질 수 있으며 어디에서나 볼 수 있다. 사용자는 또한 역할을 할 수 있고 행동하도록 영감을 받을 수 있다. 캐릭터는 사용자가 자신의 세계에 존재함을 인식하고 실시간으로 사용자 행동에 응답할 수 있다. 이에 반해, 2D 콘텐츠(예를 들어, 영화, 영화, TV 프로그램)는 캐릭터와 공감할 수 있는 수동적이고 영화적인 매체이지만 일반적으로 상호 작용이 없다. 보다 최근에는, 대화형 2D 콘텐츠(예를 들어, 대화형 TV 쇼)를 통해 사용자가 스토리의 특정 순간에 선택을 할 수 있으며, 이 선택은 이야기의 각 분기에 대해 대체 2D 스토리라인과 대체 2D 콘텐츠로 분기된다.
스토리텔링 프로젝트는 영화나 TV와 같은 비대화형 매체를 위한 2D 콘텐츠를 생성하기 위해 전통적인 컴퓨터 애니메이션 영화 파이프라인(또는 프로세스)에 의존할 수 있다. 또한, 스토리텔링 프로젝트는 VR 또는 AR 기술을 기반으로 하는 컴퓨터 애니메이션 실시간 경험과 같은 양방향 매체용 AR/VR 콘텐츠를 생성하기 위해 양방향 실시간 파이프라인(또는 프로세스)에 의존할 수 있다. 스토리텔링 프로젝트는 모바일, 콘솔 또는 PC 기술을 기반으로 하는 컴퓨터 애니메이션 실시간 경험과 같은 대화형 게임 콘텐츠를 생성하기 위해 대화형 실시간 파이프라인(또는 프로세스)에 의존할 수 있다. 때로는, 스토리텔링 프로젝트에서 대화형 매체와 비대화형 매체 모두에 대해 콘텐츠를 제작해야 할 수 있다. 예를 들어, 스토리텔링 프로젝트에는 VR 또는 AR 기술 기반의 몰입형 경험을 선호하는 시청자를 위한 대화형 스토리 버전과 전통적인 2D 영화 경험을 선호하는 시청자를 위한 비대화형 스토리 버전이 필요할 수 있다. 기존 접근 방식에서, AR/VR 버전은 대화형 실시간 프로세스를 기반으로 생성되고, 2D 버전은 도 1a 및 1b와 관련하여 논의된 바와 같이 전통적인 컴퓨터 애니메이션 영화 프로세스를 기반으로 별도로 생성된다.
도 1a는 스토리에 대한 AR/VR 콘텐츠를 생성하기 위한 예시적인 종래의 대화형 실시간 파이프라인(100)을 도시한다. 도시된 바와 같이, 대화형 실시간 파이프라인(100)은 다양한 2차원(2D) 툴(102)를 사용하는 개념 개발로 시작한다. 처음에, 블록(104)에서, 대화형 스토리 또는 게임과 같은 대화형 콘텐츠를 위한 스토리 및 스크립트가 생성될 수 있다. 스토리와 스크립트는 사용자(또는 시청자)의 역할, 대화형 메커니즘 및 비선형성을 고려할 수 있다. 예를 들어, 사용자 선택에 따라 대체 대화 라인이 있을 수 있다. 블록(106)에서, 스토리가 정제됨에 따라, 컨셉 아트워크가 생성될 수 있다. 환경 컨셉 아트와 캐릭터 디자인을 만들어 스토리의 세상과 캐릭터를 탐색할 수 있다. 블록(108)에서, 사용자가 캐릭터, 이야기 및 환경과 대화하는 방식이 설계될 수 있다. 예를 들어, 여기에는 핵심 메커니즘, 대화형 요소 및 비선형 스토리 흐름을 설계하는 것이 포함될 수 있다. 블록(110)에서, 스크립트는 장면에 시각적으로 생기를 불어넣는 2D 스토리보드 드로잉으로 번역될 수 있다. 2D 스토리보드는 먼저 감독에게 전달되고 반복된 다음 비디오 스토리 릴로 편집된다. 2D 스토리보드는 더 이상 값비싼 제작 작업 없이 전체 영화를 볼 수 있는 빠르고 저렴한 방법을 제공한다. 블록(114)에서, 실시간 엔진(112)은 2D 툴(102)에 의해 생성된 2D 스토리보드에 기초하여 3D 스토리보드를 생성한다. 스토리보드는 3D 환경에서 배치되고 볼 수 있도록 3D로 생성될 수 있다. 3D 스토리보드는 3D 공간에서 이동되거나 실시간 엔진(112), 다른 3D 드로잉/스토리보딩 툴 또는 VR 드로잉/스토리보딩 툴에서 3D로 직접 그려지는 2D 스프라이트로 생성될 수 있다. 다음으로, 블록(116)에서, 실시간 엔진(112)에서 프리비즈(previz)가 수행되어 애니메이션 제작에 들어가기 전에 장면을 시각화할 수 있다. 블록(118)에서, 편집은 대화, 음악, 오디오를 추가하고 타이밍을 위한 샷 시퀀스를 편집한다. 일부 경우에, 사용자 입력에 따라 컨텐츠가 변경되므로, 동영상 편집이 생성되지 않을 수 있다. 블록(120)에서, 세트 드레싱, 최종 환경 모델 및 최종 캐릭터가 장면에 통합될 수 있다. 블록(124)에서, 애니메이션 생성 툴(122)은 모든 캐릭터 및 환경 애셋을 생성하는데 사용된다. 블록(126)에서, 장면 및 샷이 애니메이션될 수 있다. 대화형 게임 및 AR/VR 콘텐츠에서, 원샷은 일반적으로 하나의 캐릭터 동작(애니메이션 사이클 또는 사이클 애니메이션이라고 함)을 나타낸다. 블록(128)에서, 실시간 엔진(112)은 비선형 애니메이션 프레임워크, AI 시스템, 및 다른 절차적 방법을 통해 애니메이션을 조합 및/또는 절차적으로 생성할 수 있다. 블록(130)에서, 실시간 엔진(112)은 FX 및 시뮬레이션 요소를 생성할 수 있다. 블록(132)에서, 실시간 엔진(112)은 실시간으로 애니메이션에 조명 효과를 적용할 수 있다. 이는 종종 장면에서 정적 요소(즉, 환경의 움직이지 않는 부분)에 대해 계산된 사전제작된(pre-baked) 전역 조명과 결합된 장면의 동적, 비정적 요소(즉, 캐릭터)에 대해 실시간으로 계산된 몇 가지 동적 조명을 통해 달성된다. 블록(134)에서, 실시간 엔진(112)은 대화형 애플리케이션을 출력한다. 대화형 애플리케이션은 VR 또는 AR 기술 또는 대화형 게임을 기반으로 하는 컴퓨터 애니메이션 실시간 경험일 수 있다.
도 1b는 비대화형 2D 콘텐츠(예를 들어, 2D 컴퓨터 애니메이션 영화)를 생성하기 위한 예시적인 종래의 컴퓨터 애니메이션 영화 파이프라인(150)을 도시한다. 도시된 바와 같이, 컴퓨터 애니메이션 영화 파이프라인(150)은 다양한 2차원(2D) 툴(152)을 사용한 컨셉 개발로 시작한다. 블록(154)에서, 2D 컴퓨터 애니메이션 영화에 대한 스토리가 생성될 수 있다. 스토리는 시나리오나 대본을 만드는 데 사용할 수 있다. 블록(156)에서, 스토리가 정제됨에 따라, 영화의 모습을 정의하기 위해 컨셉 아트워크가 생성될 수 있다. 환경 컨셉 아트와 캐릭터 디자인을 만들어 이야기의 세계와 캐릭터를 탐색할 수 있다. 블록(158)에서, 스크립트는 장면에 시각적으로 생기를 불어넣는 2D 스토리보드 드로잉으로 변환될 수 있다. 2D 스토리보드는 먼저 감독에게 전달되고 반복된 다음 비디오 스토리 릴로 편집된다. 2D 스토리보드는 더 비싼 제작 작업 없이 전체 영화를 볼 수 있는 빠르고 저렴한 방법을 제공한다. 블록(160)에서, 프리비즈 아티스트는 스토리보드 릴을 시퀀스의 3D 프리비즈로 변환한다. 프리비즈 아티스트는 환경 모델과 캐릭터 모델의 모형을 만든다. 그런 다음, 아티스트는 장면에 가상 카메라를 배치하여 영화 촬영법(cinematography)을 설정하고 샷을 함께 자르기 위한 편집 영상을 제공할 수 있다. 블록(162)에서, 편집자는 카메라 샷을 하나의 시퀀스 영화로 결합하는 비선형 비디오 편집 소프트웨어에서 편집 컷을 생성할 수 있다. 이 편집 컷은 감독이 검토할 수 있으며, 이는 종종 기존 카메라 및/또는 프리비즈 아티스트에 의해 만들어진 추가 카메라에 대한 조정을 필요로 한다. 블록(164)에서, 캐릭터 및 환경은 텍스처를 갖는 최종 3D 모델로 변환될 수 있다. 캐릭터 애셋(character assets)은 디지털 인형으로 조작되어 애니메이터가 이러한 캐릭터를 사실적으로 움직이고 감정을 표현하도록 할 수 있다. 블록(166)에서, 최종 샷이 생성되고, 카메라 촬영이 개선되며, 세트 드레싱이 샷마다 조정된다. 블록(168)에서, 애니메이션은 일련의 샷 또는 장면으로 분할될 수 있다. 주어진 장면에 대해, 애니메이터는 시간이 지남에 따라 캐릭터를 손으로 애니메이션하거나 키프레임을 지정하거나 애니메이션이 배우의 라이브 공연에서 캡처된 모션일 수 있다. 블록(170)에서, FX 요소(예를 들어, 물, 불, 안개 등)가 샷에 추가될 수 있다. 또한 의상, 머리카락 및 기타 동적 구성 요소가 시뮬레이션된다. 이러한 요소는 실시간으로 거의 적용되지 않는다. 블록(172)에서, 조명 아티스트는 영화의 최종 이미지를 생성하기 위해 가상 조명을 샷에 적용할 수 있다. 마스터 조명은 전체 장면 및/또는 적은 수의 주요 샷에 대한 외관을 설정하기 위해 먼저 수행되는 경우가 많다. 그런 다음, 샷 조명을 적용하여 샷별로 캐릭터와 환경의 조명을 미세 조정할 수 있다. 블록(174)에서, 장면 데이터는 오프라인, 비실시간 렌더러로 렌더링될 수 있다. 렌더링은 아티스트의 책상이나 온프레미스 또는 클라우드의 렌더 팜 머신에서 발생할 수 있다. 렌더링은 종종 합성 패키지의 프레임당 여러 렌더 레이어 패스(예를 들어, 깊이 패스, 매트 패스 등)를 생성한다. 블록(176)에서, 비대화형 2D 콘텐츠를 생성하기 위해 합성 소프트웨어를 사용하여 최종 결합된 렌더 프레임이 생성될 수 있다.
따라서, 종래의 접근 방식 하에서, 엔티티는 스토리의 AR/VR 버전을 생성하기 위해 도 1a에 예시된 프로세스와 같은 대화형 실시간 프로세스를 사용할 필요가 있을 것이다. 또한, 기존의 접근 방식 하에서, 엔티티는 2D 버전의 스토리를 생성하기 위해 도 1b에 예시된 프로세스와 같은 별도의 컴퓨터 애니메이션 영화 프로세스를 사용해야 한다. 동일한 스토리의 대화형 및 비대화형 버전을 생성하기 위해 서로 다른 프로세스가 필요하므로 작업이 중복되고 비용이 증가하며 생산 복잡성이 증가할 수 있다.
컴퓨터 기술에 기반을 둔 개선된 접근 방식은 전술한 방식과 특히 컴퓨터 기술의 영역에서 발생하는 기존 접근 방식과 관련된 다른 단점을 극복한다. 현재 기술은 단일 프로세스(또는 파이프라인)를 기반으로 하는 대화형 및 비대화형 버전의 스토리를 생성하는 기능을 제공한다. 본 기술은 스토리에 대한 비대화형 2D 콘텐츠가 스토리의 기존 대화형 AR/VR 버전에서 생성되도록 한다. 예를 들어, 본 기술은 VR 또는 AR 기술을 기반으로 하는 기존의 컴퓨터 애니메이션 실시간 경험에서 2D 컴퓨터 애니메이션 영화를 생성할 수 있도록 한다. 결과적으로, 현재 기술은 영화 제작자가 기존 프로세스에서 사용할 수 있는 기능을 손상시키지 않고 2D 컴퓨터 애니메이션 영화를 세심하게 제작할 수 있도록 하는 포괄적인 툴 세트를 제공한다. 본 기술은 또한 AR/VR 기반 프로젝트에 대한 변경 사항이 2D 기반 프로젝트로 또는 그 반대로 전파될 수 있는 2D 및 AR/VR 기반 프로젝트의 동시 개발을 가능하게 한다. 본 기술은 또한 AR/VR을 영화 촬영술 개발 및 2D 프로젝트 탐색을 위한 콘텐츠 제작 매체로 활용할 수 있다. 현재 기술은 다른 파이프라인 아키텍처도 처리할 수 있다. 본 기술과 관련된 더 자세한 내용은 아래에 제공된다.
도 2는 본 기술의 실시예에 따른 예시적인 시스템(200)을 도시한다. 예시적인 시스템(200)은 애니메이션 생성 모듈(202), 실시간 엔진 모듈(또는 실시간 엔진)(212), 및 2D 편집 모듈(232)을 포함할 수 있다. 예시적인 시스템(200)은 AR/VR 콘텐츠로부터 비대화형 2D 콘텐츠를 생성하도록 구현될 수 있다. 예시적인 시스템(200)은 모바일, 콘솔 및 PC 기술을 위해 개발된 대화형 게임 콘텐츠로부터 비대화형 2D 콘텐츠를 생성하도록 구현될 수 있다. 예를 들어, 예시적인 시스템(200)은 VR 또는 AR 기술에 기반한 대화형 컴퓨터 애니메이션 실시간 경험으로부터 비대화형 2D 컴퓨터 애니메이션 영화 또는 TV 쇼를 생성할 수 있다. 다른 예에서, 예시적인 시스템(200)은 VR 또는 AR 기술에 기반한 캐릭터 기반 컴퓨터 애니메이션 실시간 경험으로부터 1인칭 2D 컴퓨터 애니메이션 영화 또는 TV 쇼를 생성할 수 있다. 캐릭터 기반 컴퓨터 애니메이션 실시간 체험은 시청자가 캐릭터로 이야기에 참여할 수 있는 몰입형 체험을 포함할 수 있다. 다른 예에서, 예시적인 시스템(200)은 VR 또는 AR 기술에 기반한 캐릭터 기반 컴퓨터 애니메이션 실시간 경험으로부터 대화형 2D 컴퓨터 애니메이션 영화 또는 TV 쇼를 생성할 수 있다. 예시적인 시스템(200)은 이야기의 상이한 분기들을 나타내는 2D 콘텐츠 경로들의 세트를 생성할 것이다. 많은 변형이 가능하다. 본 명세서에서 더 상세히 논의되는 도 4의 예시적인 시스템(400)과 대조적으로, 예시적인 시스템(200)은 카메라 배치 및 샷 생성이 애니메이션 생성 모듈(202) 대신에 실시간 엔진 모듈(212)과 관련하여 발생하도록 한다. 예시적인 시스템(200)은 최종 실시간 콘텐츠가 애니메이션 생성 모듈(202)에 기초하여 생성된 애니메이션 클립 세트로부터 절차적으로 생성되는 대화형 AR/VR 콘텐츠에 매우 적합할 수 있다. 애니메이션 생성 모듈(202), 실시간 엔진 모듈(212) 및 2D 편집 모듈(232)은 하나 이상의 컴퓨팅 장치에서 실행되는 하나 이상의 소프트웨어 애플리케이션에서 구현될 수 있다. 이 도면 및 본 명세서의 모든 도면에 도시된 구성요소(예를 들어, 모듈, 요소 등)는 예시일 뿐이고, 다른 구현은 추가된, 더 적은, 통합된 또는 상이한 구성요소를 포함할 수 있다. 일부 구성 요소는 관련 세부 정보를 불명확하게 하지 않기 위해 표시되지 않을 수 있다. 다양한 실시예에서, 애니메이션 생성 모듈(202), 실시간 엔진 모듈(212), 및 2D 편집 모듈(232)과 관련하여 설명된 기능 중 하나 이상은 임의의 적절한 시퀀스 및 조합으로 구현될 수 있다.
일부 실시예에서, 본 명세서에 설명된 다양한 모듈 및/또는 애플리케이션은 부분적으로 또는 전체적으로 소프트웨어, 하드웨어, 또는 이들의 임의의 조합으로서 구현될 수 있다. 일반적으로, 본 명세서에서 논의된 바와 같이, 모듈 및/또는 애플리케이션은 소프트웨어, 하드웨어, 또는 이들의 임의의 조합과 연관될 수 있다. 일부 구현에서, 하나 이상의 기능, 태스크, 및/또는 모듈 및/또는 애플리케이션의 동작은 소프트웨어 루틴, 소프트웨어 프로세스, 하드웨어, 및/또는 이들의 임의의 조합에 의해 수행되거나 행해질 수 있다. 일부 경우에, 본 명세서에 설명된 다양한 모듈 및/또는 애플리케이션은 부분적으로 또는 전체적으로, 사용자 또는 클라이언트 컴퓨팅 장치 또는 서버와 같은 하나 이상의 컴퓨팅 장치 또는 시스템에서 실행되는 소프트웨어로서 구현될 수 있다. 예를 들어, 본 명세서에 기술된 하나 이상의 모듈 및/또는 애플리케이션, 또는 그 적어도 일부는 사용자 컴퓨팅 장치 또는 클라이언트 컴퓨팅 시스템 상에서 실행되는 애플리케이션(예를 들어, 앱), 프로그램, 또는 애플릿 등으로서 또는 그 내에서 구현될 수 있다. 다른 예에서, 하나 이상의 모듈 및/또는 애플리케이션, 또는 그 적어도 일부는 네트워크 서버 또는 클라우드 서버와 같은 하나 이상의 서버를 포함하는 하나 이상의 컴퓨팅 장치 또는 시스템을 사용하여 구현될 수 있다. 많은 변형 또는 다른 가능성이 있을 수 있음을 이해해야 한다. 예시적인 실시예에서, 애니메이션 생성 모듈(202)은 Autodesk® Maya와 같은 애니메이션 생성 소프트웨어에서 또는 이와 함께 구현될 수 있고, 실시간 엔진 모듈(212)은 Unityⓒ 게임 엔진과 같은 실시간 엔진에서 또는 이와 함께 구현될 수 있다.
애니메이션 생성 모듈(202)은 VR 애니메이션 모듈(204) 및 샷 픽스 모듈(206)을 포함할 수 있다.
VR 애니메이션 모듈(204)은 스토리의 대화형 버전을 애니메이션하도록 구성될 수 있다. 예를 들어, 스토리의 대화형 버전은 VR 또는 AR 기술을 기반으로 하는 컴퓨터 애니메이션 실시간 경험이 될 수 있다. 스토리의 대화형 버전은 일련의 샷들로 구성될 수 있다. 샷은 3차원 공간에서 컴퓨터 애니메이션 실시간 경험 내에 배치된 가상 카메라로 캡처한 여러 프레임을 나타낼 수 있다. 일부 실시예에서, 샷은 애니메이션 사이클 또는 사이클 애니메이션과 같은 단일 캐릭터 동작을 나타낼 수 있다. 또한, 일련의 샷은 다수의 관련된 샷에 해당할 수 있다. 예를 들어, 시퀀스에는 컴퓨터 애니메이션 실시간 경험 내의 특정 위치에서 캡처된 샷이 포함될 수 있다. VR 애니메이션 모듈(204)은 데이터 저장소(208)에 스토리의 대화형 버전(예를 들어, 샷, 샷의 시퀀스 등)과 관련된 데이터를 저장할 수 있다. 일 실시예에서, 데이터 저장소(208)는 원격 서버에 상주한다. 다른 실시예에서, 웹 기반 애플리케이션은 애니메이션 생성 모듈(202), 실시간 엔진 모듈(212), 및 2D 편집 모듈(232)의 다양한 모듈과 인터페이스하여 데이터 저장소(208)의 데이터를 동기화한다.
샷 픽스 모듈(206)은 스토리의 대화형 버전으로부터 생성된 스토리의 비대화형 2D 버전과 연관된 샷에 다양한 수정을 적용하도록 구성될 수 있다. 예를 들어, 샷 픽스 모듈(206)은 실시간 엔진 모듈(212)에 의해 스토리의 비대화형 2D 버전에 대해 생성된 샷에 픽스를 적용할 수 있다. 일반적으로, 스토리의 비대화형 2D 버전과 연관된 샷은 스토리의 대화형 버전과 관련된 샷에서 파생된다. 그 결과, 스토리의 대화형 버전과 연관된 샷에 대한 업데이트는 스토리의 비대화형 2D 버전과 연관된 대응하는 샷으로 전파될 수 있다. 어떤 경우에는, 스토리의 비대화형 2D 버전과 관련된 샷에만 적용되는 특정 조정이 필요할 수 있다. 예를 들어, 샷에 표현된 캐릭터 아이라인은 스토리의 대화형 버전에서는 맞을 수 있지만 스토리의 비대화형 2D 버전과 관련된 장면에서는 잘못된 방향으로 보일 수 있다. 그러한 경우에, 샷 픽스 모듈(206)은 스토리의 비대화형 2D 버전에 대한 특정 조정을 필요로 하는 샷을 분기하도록 구성될 수 있다. 샷이 두 갈래로 나뉘면, 대화형 버전과 비대화형 2D 버전에 대해 별도의 샷 복사본이 유지된다. 결과적으로, 스토리의 대화형 버전에 영향을 주지 않고 스토리의 비대화형 2D 버전으로 샷을 조정할 수 있다. 전술한 예에서, 스토리의 비대화형 2D 버전과 관련된 샷의 캐릭터 아이라인에 대한 조정이 스토리의 대화형 버전과 관련된 해당 샷의 캐릭터 아이라인에 영향을 주지 않고 이루어질 수 있다. 어떤 경우에는, 스토리의 비대화형 버전을 만들기 위해 새로운 샷이 필요할 수 있다. 일례로, 스토리의 대화형 버전에서 한 샷은 서로 다른 카메라 각도(예를 들어, 클로즈업, 중간 장면 및 설정을 위해 샷)에 해당하는 비대화식 2D 버전에서 더 작고 가능하게는 중첩되는 많은 샷들로 분할될 것이다. 이 새로운 샷은 비대화형 2D 버전을 위해 특별히 제작된 컴퓨터 애니메이션에 해당할 수 있다. 예를 들어, 캐릭터와 관련된 시각적 품질은 스토리의 비대화형 2D 버전과 관련된 샷에서 허용되지 않을 수 있다. 다른 예에서, 스토리의 대화형 버전과 연관된 샷은 시청자에 의한 일부 상호작용을 포함할 수 있다. 이러한 상호작용은 스토리의 대화형 버전에서는 허용되지만, 이런 상호작용은 대화형이 아닌 2D 버전의 스토리에서 재생산에는 적합하지 않다. 그러한 경우에, 샷 픽스 모듈(206)은 스토리의 대화형 버전과 연관된 기존 샷을 수정하거나 대체하는 스토리의 비대화형 2D 버전에 대한 새로운 샷의 생성을 허용할 수 있다. 샷 픽스 모듈(206)은 스토리의 비대화형 2D 버전과 관련하여 수정되거나 추가된 샷과 관련된 데이터를 데이터 저장소(208)에 저장할 수 있다.
실시간 엔진 모듈(212)은 VR 인터랙티비티 모듈(214), VR 조명 및 FX 모듈(216), 2D 프리비즈 모듈(218), 2D 샷 생성 모듈(220), 2D 레이아웃 모듈(222), 및 2D 조명 및 2D 조명 및 FX 모듈(224)을 포함할 수 있다.
VR 인터랙티비티 모듈(214)은 비선형 애니메이션 프레임워크, 인공 지능(AI) 시스템, 및 기타 일반적으로 알려진 절차적 방법을 사용하여 애니메이션을 조합 및/또는 절차적으로 생성하도록 구성될 수 있다.
VR 조명 및 FX 모듈(216)은 스토리의 대화형 버전에서 사용되는 조명 및 미디어 효과(FX) 요소를 적용하도록 구성될 수 있다. 조명 및 FX 요소는 일반적으로 알려진 기술을 사용하여 만들 수 있다.
2D 프리비즈 모듈(218)은 VR 애니메이션 모듈(204)에 의해 애니메이션되는 스토리의 대화형 버전에서 가상 카메라 세트를 위치시키도록 구성될 수 있다. 예를 들어, 아티스트는 2D 영화 스크립트(210)에 기반한 스토리의 대화형 버전에 가상 카메라 세트를 위치시키도록 2D 프리비즈 모듈(218)에 지시할 수 있다. 예를 들어, 2D 영화 스크립트(210)는 스토리의 대화형 버전과 연관된 스크립트에 기초하여 작성될 수 있다. 가상 카메라 세트를 스토리의 대화형 버전에 배치하여 다양한 카메라 각도에서 애니메이션 장면을 캡처할 수 있다. 일부 실시예에서, 가상 카메라의 세트 및 그들의 연관된 파라미터는 AR/VR 기술을 사용하여 생성될 수 있다. 예를 들어, 아티스트는 VR에서 손으로 6DOF 핸드 컨트롤러를 움직여 가상 카메라를 배치하고 조작할 수 있다. 그런 다음, 아티스트는 VR에서 이 가상 카메라로 원래 VR/AR 경험의 장면을 녹화할 수 있다. 이는 휴대용 카메라 효과를 만드는 데 사용할 수 있다. 일 실시예에서, 다수의 아티스트는 VR/AR 기술을 사용하여 서로 다른 가상 카메라를 배치하고 녹화할 수 있으며, 따라서 별개의 카메라 데이터 세트를 생성할 수 있다. 2D 프리비즈 모듈(218)은 또한 각각의 가상 카메라에 대한 2D "플레이블라스트(playblast)" 피드(또는 영화)를 내보내도록 구성될 수 있다. 일부 실시예에서, 2D 프리비즈 모듈(218)은, 도 6의 예에 도시된 바와 같이, 내보낸 2D "플레이블라스트" 피드의 각 프레임에 레티클 및 슬레이트 정보를 삽입할 수 있다. 레티클 및 슬레이트 정보는 프레임 오버레이로서 제공될 수 있다. 일부 실시예에서, 레티클 및 슬레이트 정보는 레티클 데이터(예를 들어, 카메라 경계), 시퀀스 데이터, 파일 이름, 카메라 렌즈, 카메라/샷 이름, 타임스탬프, 촬영 또는 반복 번호, 및 애니메이션 프레임 번호를 포함할 수 있다.
2D 샷 생성 모듈(220)은 새로운 샷을 생성하고 기존 샷을 업데이트하도록 구성될 수 있다. 일반적으로, 2D 샷 생성 모듈(220)은 편집 컷으로부터 샷을 생성할 수 있다. 편집 컷은 아래에서 논의되는 바와 같이 2D 편집 모듈(232)에 의해 생성될 수 있다. 일 실시예에서, 모든 가상 카메라는 단일 샷을 나타낸다. 다른 실시예에서, 다중 샷은 단일 가상 카메라로부터 구성될 수 있다. 2D 샷 생성 모듈(220)은 각 샷 및 관련 메타데이터 정보를 데이터 저장소(208)에 저장할 수 있다. 가상(또는 애니메이션) 카메라와 관련된 샷 메타데이터 정보의 예가 도 7에 예시되어 있다. 예를 들어, 샷 메타데이터 정보는 샷 이름, 지속 시간, 애니메이션 파일, 프레임 범위, 샷에 포함된 문자 및 게시 버전이 포함된다. 많은 변형이 가능하다. 일 실시예에서, 2D 샷 생성 모듈(220)은 샷 데이터를 저장하는 공유 파일을 업데이트할 수 있다. 일 실시예에서, 2D 샷 생성 모듈(220)은 데이터 저장소(208)를 업데이트한다. 다른 실시예에서, 2D 샷 생성 모듈(220)은 웹 애플리케이션 API(애플리케이션 프로그래밍 인터페이스)를 통해 데이터 저장소(208)를 업데이트한다.
2D 레이아웃 모듈(222)은 2D 샷 생성 모듈(220)에 의해 생성된 샷을 향상시키도록 구성될 수 있다. 예를 들어, 2D 레이아웃 모듈(222)은 일반적으로 알려진 접근법을 사용하여 샷별로 추가 세트 드레싱 및 레이아웃을 적용할 수 있다.
2D 조명 및 FX 모듈(224)은 샷에 특징을 적용하기 위한 다양한 옵션을 제공하도록 구성될 수 있다. 예를 들어, 2D 조명 및 FX 모듈(224)은 조명; 새도우; 컨택트 새도우; FX 요소; 모션 블러 및 피사계 심도와 같은 후처리 효과를 적용할 수 있다. 이러한 기능은 예를 들어 조명 및 FX 아티스트의 지침에 따라 적용할 수 있다. 이러한 기능을 적용하면 각 샷의 모양이 향상될 수 있다.
2D 합성기(242)는 일반적으로 알려진 접근법에 기초하여 최종 렌더 프레임을 생성할 수 있다. 예를 들어, 2D 합성기(242)는 실시간 엔진 모듈(212)에 의해 렌더링된 최종 프레임 및 레이어 패스에 기초하여 최종 렌더링 프레임을 생성할 수 있다. 2D 합성기(242)는 또한 최종 렌더링 프레임에 기초한 2D 컴퓨터 애니메이션 영화(244)와 같은 스토리의 비대화형 2D 버전을 생성할 수 있다.
2D 편집 모듈(232)은 다양한 카메라 샷을 단일 시퀀스 영화로 결합하는 편집 컷을 설명하는 정보를 제공할 수 있다. 편집 컷은 비선형 비디오 편집 소프트웨어를 사용하여 생성할 수 있다. 편집 컷 및 관련된 편집 타이밍 및 트랙 정보를 설명하는 정보를 실시간 엔진 모듈(212)로 가져올 수 있다. 실시간 엔진 모듈(212)은 기존 가상 카메라에 대한 추가 조정 및 편집 컷을 개선하기 위해 필요에 따라 새 가상 카메라 추가를 허용한다. 일부 실시예에서, 2D 편집 모듈(232)은 편집 컷과 관련하여 비선형 비디오 편집 소프트웨어에 의해 생성된 편집 선택 사항을 읽을 수 있다. 2D 편집 모듈(232)은 실시간 엔진 모듈(212)에서 편집 선택을 재생성(또는 제공)할 수 있다. 일 실시예에서, 2D 편집 모듈(232)은 비선형 편집 소프트웨어 프로젝트로부터 다음 데이터를 읽을 수 있다: 소스 비디오 및 오디오 클립의 위치; 비디오 및 오디오 트랙의 클립 타임코드; 비디오 및 오디오 클립에 적용할 수 있는 크로스 페이드 및 오디오 레벨 곡선과 같은 효과. 일 실시예에서, 2D 편집 모듈(232)은 이러한 데이터를 사용하여 비선형 비디오 편집 소프트웨어에서 편집된 비디오 및 오디오 클립에 해당하는 실시간 엔진 모듈(212)의 애셋을 식별할 수 있다. 일 실시예에서, 2D 편집 모듈(232)은 실시간 엔진 모듈(212)에서 식별된 애셋으로 애니메이션 트랙 및 오디오 트랙을 생성하기 위해 이러한 데이터를 사용할 수 있다. 일 실시예에서, 2D 편집 모듈(232)은 실시간 엔진 모듈(212)에서 이런 애셋들에 대한 편집 결정을 적용하기 위해 이러한 데이터를 사용할 수 있다. 실시예에서, 2D 편집 모듈(232)은 사용자가 실시간 엔진 모듈(212)에서 샷 사이를 앞뒤로 스크러빙할 수 있도록 모든 샷을 나타내는 단일 타임라인을 생성할 수 있다. 단일 타임라인은 주변 샷들과 관련하여 함께 실시간 편집을 용이하게 한다. 또한, 2D 편집 모듈(232)은 실시간 엔진 모듈(212)에 이미 존재하는 기존 카메라 및 샷 정보의 업데이트를 지원한다. 일 실시예에서, 비선형 비디오 편집 소프트웨어의 카메라/샷 트랙은 명명 규칙에 의해 실시간 엔진 모듈(212)의 트랙들과 연관된다. 다른 실시예에서, 트랙은 비선형 비디오 편집 소프트웨어로 전달된 다음 실시간 엔진 모듈(212)로 다시 왕복되는 메타데이터 정보에 의해 상관될 수 있다. 다른 실시예에서, 트랙은 OpenTimeline과 같은 오픈 소스 파일 형식과 연관될 수 있다. 또 다른 실시예에서, 트랙은 데이터 비교 휴리스틱(data comparison heuristics)을 사용하여 상관될 수 있다. 많은 변형도 가능하다.
도 3a는 본 기술의 실시예에 따른 예시적인 방법(300)을 도시한다. 일부 실시예에서, 방법(300)은 도 2의 시스템(200)에 의해 수행될 수 있다. 블록(302)에서, VR 애니메이션 모듈(204)을 참조하여 위에서 설명된 바와 같이, AR/VR 애니메이션 또는 경험을 위해 시퀀스 및 샷이 애니메이션될 수 있다. 블록(304)에서, VR 인터랙티비티 모듈(214)을 참조하여 위에서 설명된 바와 같이, 애니메이션은 비선형 애니메이션 프레임워크를 통해 결합 및/또는 절차적으로 생성될 수 있다. 블록(306)에서, VR 조명 및 FX 모듈(216)을 참조하여 위에서 설명된 바와 같이, AR/VR 애니메이션 또는 경험을 위해 조명 및 FX 요소가 생성될 수 있다. 블록(308)에서, 가상 카메라는 2D 프리비즈 모듈(218)을 참조하여 위에서 설명된 바와 같이 실시간 엔진에 배치될 수 있다. 블록(310)에서, 2D 편집 모듈(232)을 참조하여 위에서 설명한 것처럼 편집 컷이 비선형 비디오 편집 소프트웨어에서 생성될 수 있다. 블록(312)에서, 편집 컷이 승인되면, 2D 샷 생성 모듈(220)을 참고로 위에서 설명한 바와 같이 2D 샷이 카메라 및 타이밍 메타데이터로부터 생성된다. 블록(314)에서, 2D 레이아웃 모듈(222)을 참조하여 전술한 바와 같이, 세트 드레싱 및 레이아웃이 샷에 적용될 수 있다. 블록(316)에서, 추가 조명, 새도우, 컨택트 새도우, FX 요소, 및 후처리 효과가 2D 조명 및 FX 모듈(224)을 참조하여 위에서 설명된 바와 같이 적용될 수 있다. 블록(318)에서, 샷 픽스 모듈(206)을 참조하여 위에서 설명된 바와 같이, 2D 샷에 수정이 적용될 수 있고 추가 2D 샷이 생성될 수 있다.
예시적인 방법에 대한 많은 변형이 가능하다. 달리 언급되지 않는 한, 본 명세서에 논의된 다양한 실시예의 범위 내에서, 유사하거나 대안적인 순서로, 또는 병렬로 수행되는 추가 단계, 더 적은 단계 또는 대안적인 단계가 있을 수 있음을 이해해야 한다.
도 3b는 본 기술의 실시예에 따른 예시적인 방법(350)을 도시한다. 예를 들어, 방법(350)은 도 2의 시스템(200)에 의해 수행될 수 있다. 블록(352)에서, 컴퓨터 기반 경험과 관련된 데이터가 획득될 수 있다. 컴퓨터 기반 경험은 양방향 실시간 기술을 기반으로 할 수 있다. 예를 들어, 양방향 실시간 기술은 증강 현실(AR) 및/또는 가상 현실(VR)을 적용하여 대화형 콘텐츠를 제공할 수 있다. 블록(354)에서, 실시간 엔진의 컴퓨터 기반 경험 내에서 적어도 하나의 가상 카메라가 구성될 수 있다. 블록(356)에서, 컴퓨터 기반 경험의 편집 컷과 연관된 데이터는 적어도 하나의 가상 카메라에 의해 캡처된 콘텐츠에 기초하여 획득될 수 있다. 블록(358)에서, 실시간 엔진에서 컴퓨터 기반 경험의 편집 컷으로부터 2차원 콘텐츠에 대응하는 복수의 샷이 생성될 수 있다. 블록(360)에서, 컴퓨터 기반 경험의 2차원 버전과 연관된 데이터는 복수의 샷에 기초한 실시간 엔진에서 생성될 수 있다. 생성된 데이터를 기반으로 2차원 버전을 렌더링할 수 있다.
예시적인 방법에 대한 많은 변형이 가능하다. 달리 언급되지 않는 한, 본 명세서에 논의된 다양한 실시예의 범위 내에서, 유사하거나 대안적인 순서로, 또는 병렬로 수행되는 추가 단계, 더 적은 단계 또는 대안적인 단계가 있을 수 있음을 이해해야 한다.
도 4는 본 기술의 실시예에 따른 예시적인 시스템(400)을 도시한다. 예시적인 시스템(400)은 애니메이션 생성 모듈(402) 및 실시간 엔진 모듈(또는 실시간 엔진)(422)을 포함할 수 있다. 예시적인 시스템(400)은 스토리의 대화형 버전으로부터 스토리의 비대화형 2D 버전을 생성하도록 구현될 수 있다. 예를 들어, 예시적인 시스템(400)은 VR 또는 AR 기술에 기반한 대화형 컴퓨터 애니메이션 실시간 경험으로부터 비대화형 2D 컴퓨터 애니메이션 영화를 생성할 수 있다. 다른 예에서, 예시적인 시스템(400)은 VR 또는 AR 기술에 기반한 캐릭터 기반 컴퓨터 애니메이션 실시간 경험으로부터 1인칭 2D 컴퓨터 애니메이션 영화를 생성할 수 있다. 캐릭터 기반 컴퓨터 애니메이션 실시간 경험은 시청자가 캐릭터로 이야기에 참여할 수 있는 몰입형 체험을 포함할 수 있다. 많은 변형이 가능하다. 도 2의 예시적인 시스템(200)과 대조적으로, 예시적인 시스템(400)은 실시간 엔진 모듈(422) 대신에 애니메이션 생성 모듈(402)과 관련하여 발생하는 카메라 배치 및 샷 생성을 허용한다. 이와 같이, 예시적인 시스템(400)은 애니메이션 생성 모듈(402)의 직선 애니메이션이 실시간 엔진 모듈(422)의 애니메이션과 일치하는 본질적으로 주로 선형인 콘텐츠에 적합할 수 있다. 애니메이션 생성 모듈(402) 및 실시간 엔진 모듈(422)은 하나 이상의 컴퓨팅 장치에서 실행되는 하나 이상의 소프트웨어 응용 프로그램에서 구현된다. 이 도면 및 본 명세서의 모든 도면에 도시된 구성요소(예를 들어, 모듈, 요소 등)는 예시일 뿐이고, 다른 구현은 추가한, 더 적은, 통합된 또는 상이한 구성요소를 포함할 수 있다. 일부 구성 요소는 관련 세부 정보를 불명확하게 하지 않기 위해 표시되지 않을 수 있다. 다양한 실시예에서, 애니메이션 생성 모듈(402) 및 실시간 엔진 모듈(422)과 관련하여 설명된 기능 중 하나 이상은 임의의 적절한 순서 및 조합으로 구현될 수 있다.
일부 실시예에서, 본 명세서에 설명된 다양한 모듈 및/또는 애플리케이션은 부분적으로 또는 전체적으로 소프트웨어, 하드웨어, 또는 이들의 임의의 조합으로서 구현될 수 있다. 일반적으로, 본 명세서에서 논의된 바와 같이, 모듈 및/또는 애플리케이션은 소프트웨어, 하드웨어, 또는 이들의 임의의 조합과 연관될 수 있다. 일부 구현에서, 하나 이상의 기능, 태스크, 및/또는 모듈 및/또는 애플리케이션의 동작은 소프트웨어 루틴, 소프트웨어 프로세스, 하드웨어, 및/또는 이들의 임의의 조합에 의해 수행되거나 실행될 수 있다. 일부 경우에, 여기에 설명된 다양한 모듈 및/또는 애플리케이션은 부분적으로 또는 전체적으로, 사용자 또는 클라이언트 컴퓨팅 장치 또는 서버와 같은 하나 이상의 컴퓨팅 장치 또는 시스템에서 실행되는 소프트웨어로서 구현될 수 있다. 예를 들어, 본 명세서에 기술된 하나 이상의 모듈 및/또는 애플리케이션, 또는 그 적어도 일부는 사용자 컴퓨팅 장치 또는 클라이언트 컴퓨팅 시스템 상에서 실행되는 애플리케이션(예를 들어, 앱), 프로그램, 또는 애플릿 등으로서 또는 그 내에서 구현될 수 있다. 다른 예에서, 하나 이상의 모듈 및/또는 애플리케이션, 또는 그 적어도 일부는 네트워크 서버 또는 클라우드 서버와 같은 하나 이상의 서버를 포함하는 하나 이상의 컴퓨팅 장치 또는 시스템을 사용하여 구현될 수 있다. 많은 변형 또는 다른 가능성이 있을 수 있음을 이해해야 한다. 예시적인 실시예에서, 애니메이션 생성 모듈(402)은 Autodesk® Maya와 같은 애니메이션 생성 소프트웨어에서 또는 이와 함께 구현될 수 있고, 실시간 엔진 모듈(422)은 Unityⓒ 게임 엔진과 같은 실시간 엔진에서 또는 이와 함께 구현될 수 있다.
애니메이션 생성 모듈(402)은 VR 애니메이션 모듈(404), 2D 프리비즈 모듈(406), 2D 샷 생성 모듈(408), 및 샷 픽스 모듈(410)을 포함할 수 있다.
VR 애니메이션 모듈(404)은 스토리의 대화형 버전을 애니메이션하도록 구성될 수 있다. 예를 들어, 스토리의 대화형 버전은 VR 또는 AR 기술을 기반으로 하는 컴퓨터 애니메이션 실시간 경험이 될 수 있다. 스토리의 대화형 버전은 일련의 장면으로 구성될 수 있다. 샷은 3차원 공간에서 컴퓨터 애니메이션 실시간 경험 내에 배치된 가상 카메라로 캡처한 여러 프레임을 나타낼 수 있다. 일부 실시예에서, 샷은 애니메이션 사이클 또는 사이클 애니메이션과 같은 단일 캐릭터 동작을 나타낼 수 있다. 또한, 일련의 샷은 다수의 관련된 샷에 대응할 수 있다. 예를 들어, 시퀀스에는 컴퓨터 애니메이션 실시간 경험 내의 특정 위치에서 캡처된 샷이 포함될 수 있다.
2D 프리비즈 모듈(406)은 VR 애니메이션 모듈(404)에 의해 애니메이션되는 스토리의 대화형 버전에서 가상 카메라 세트를 위치시키도록 구성될 수 있다. 예를 들어, 아티스트는 2D 영화 스크립트(412)에 기반한 스토리의 대화형 버전에서 가상 카메라 세트를 위치시키도록 2D 프리비즈 모듈(406)에 지시할 수 있다. 예를 들어, 2D 영화 스크립트(412)는 스토리의 대화형 버전과 연관된 스크립트에 기초하여 작성될 수 있다. 가상 카메라 세트를 대화형 버전의 스토리에 배치하여 다양한 카메라 각도에서 애니메이션 장면을 캡처할 수 있다. 2D 프리비즈 모듈(406)은 또한 각각의 가상 카메라에 대한 2D "플레이블라스트" 피드(또는 영화)를 내보내도록 구성될 수 있다. 예를 들어, 2D 프리비즈 모듈(406)은 각 카메라에 의해 캡처된 데이터를 기록하기 위한 옵션을 제공하는 카메라 기록 인터페이스를 제공할 수 있다. 일부 실시예에서, 2D 프리비즈 모듈(406)은 도 6의 예에 도시된 바와 같이 내보낸 2D "플레이블라스트" 피드의 각 프레임에 레티클 및 슬레이트 정보를 삽입할 수 있다. 레티클 및 슬레이트 정보는 프레임 오버레이로 제공될 수 있다. 일부 실시예에서, 레티클 및 슬레이트 정보는 레티클 데이터(카메라 경계), 시퀀스 데이터, 파일 이름, 카메라 렌즈, 카메라/샷 이름, 타임스탬프, 촬영 또는 반복 번호, 및 애니메이션 프레임 번호를 포함할 수 있다. 2D 프리비즈 모듈(406)은 2D 편집 프로세스(414)와 상호작용할 수 있다. 예를 들어, 2D 편집 프로세스(414)는 내보낸 "플레이블라스트" 피드로부터의 다양한 카메라 샷을 단일 시퀀스 영화로 결합하는 편집 컷을 제공할 수 있다. 편집 컷은 비선형 비디오 편집 소프트웨어를 사용하여 생성할 수 있다. 편집 컷을 검토할 수 있으며, 필요한 경우, 새 가상 카메라를 도입하고/하거나 기존 가상 카메라를 추가로 조정할 수 있다. 일 실시예에서, 모든 카메라는 단일 샷을 나타낸다. 다른 실시예에서, 다중 샷이 단일 카메라로부터 구성될 수 있다.
2D 샷 생성 모듈(408)은 새로운 샷을 생성하고 기존 샷을 업데이트하도록 구성될 수 있다. 일반적으로, 2D 샷 생성 모듈(408)은 2D 편집 프로세스(414)에 의해 제공된 편집 컷으로부터 샷을 생성할 수 있다. 2D 샷 생성 모듈(408)은 데이터 저장소(416)에 각 샷 및 관련 메타데이터 정보를 저장할 수 있다. 가상(또는 애니메이션) 카메라와 관련된 샷 메타데이터 정보의 예가 도 7의 예에 도시되어 있다. 예를 들어, 샷 메타데이터 정보는 시작 프레임, 종료 프레임, 프로덕션 이름, 시퀀스, 버전 및 변환을 포함할 수 있다. 많은 변형이 가능하다. 일 실시예에서, 2D 샷 생성 모듈(408)은 샷 데이터를 저장하는 공유 파일을 업데이트할 수 있다. 예를 들어, 2D 샷 생성 모듈(408)은 하나 이상의 식별된 가상 카메라와 연관된 샷 데이터를 데이터 저장소(416)와 같은 지정된 출력 위치로 내보낼 수 있다. 일 실시예에서, 데이터 저장소(416)는 원격 서버에 상주한다. 다른 실시예에서, 웹 기반 애플리케이션은 데이터 저장소(416)의 데이터를 동기화하기 위해 애니메이션 생성 모듈(402), 실시간 엔진 모듈(422), 및 2D 편집 모듈(414)의 다양한 모듈과 인터페이스한다. 도 8은 샷 데이터를 내보내기 위한 예시적인 내보내기 인터페이스를 도시한다. 다른 실시예에서, 2D 샷 생성 모듈(408)은 데이터 저장소(416)를 통해 액세스 가능한 쇼 데이터베이스를 업데이트할 수 있다. 2D 샷 생성 모듈(408)은 또한 가상 카메라 정보를, 예를 들어, 파일 시스템 또는 클라우드 기반 저장 시스템으로 내보낼 수 있다.
샷 픽스 모듈(410)은 스토리의 대화형 버전으로부터 생성된 스토리의 비대화형 버전과 연관된 샷에 다양한 픽스를 적용하도록 구성될 수 있다. 예를 들어, 샷 픽스 모듈(410)은 실시간 엔진 모듈(422)에 의해 스토리의 비대화형 버전에 대해 생성된 샷에 픽스를 적용할 수 있다. 일반적으로, 스토리의 비대화형 버전과 연관된 샷은 스토리의 대화형 버전과 관련된 샷으로부터 도출될 수 있다. 그 결과, 스토리의 대화형 버전과 연관된 샷에 대한 업데이트는 스토리의 비대화형 버전과 연관된 대응하는 샷으로 전파될 수 있다. 어떤 경우에는, 스토리의 비대화형 버전과 관련된 장면에만 적용되는 특정 조정이 필요할 수 있다. 예를 들어, 샷에 표현된 캐릭터 아이라인은 스토리의 대화형 버전에서는 정확할 수 있지만 스토리의 비대화형 버전과 관련된 샷에서는 잘못된 방향으로 보이는 것처럼 보일 수 있다. 그러한 경우에, 샷 픽스 모듈(410)은 스토리의 비대화형 버전에 대한 특정 조정을 필요로 하는 샷을 분기하도록 구성될 수 있다. 샷이 분기되면, 스토리의 대화형 및 비대화형 버전에 대해 별도의 샷 복사본이 유지된다. 샷에 대한 조정은 스토리의 대화형 버전에 영향을 주지 않고 스토리의 비대화형 버전으로 이루어질 수 있다. 전술한 예에서, 스토리의 대화형 버전과 연관된 대응하는 샷의 캐릭터 아이라인에 영향을 주지 않고 스토리의 비대화형 버전과 연관된 샷의 캐릭터 아이라인에 조정이 이루어질 수 있다. 어떤 경우에는, 스토리의 비대화형 버전을 만들기 위해 새로운 샷이 필요할 수 있다. 일례로, 스토리의 대화형 버전에서 한 샷은 (예를 들어, 클로즈업, 중간 샷 및 설정 샷을 위해) 서로 다른 카메라 각도에 해당하는 비대화형 2D 버전으로 많은 더 작고 잠정적인 중복 샷들로 분할될 수 있다. 이 새로운 샷은 비대화형 버전을 위해 특별히 제작된 컴퓨터 애니메이션에 해당할 수 있다. 예를 들어, 스토리의 대화형 버전에 대한 캐릭터와 관련된 시각적 품질은 스토리의 비대화형 버전과 관련된 샷에서 허용되지 않을 수 있다. 다른 예에서, 스토리의 대화형 버전과 연관된 샷은 시청자에 의한 일부 상호작용을 포함할 수 있다. 이러한 상호 작용은 대화형 스토리 버전에서는 허용되지만, 대화형 스토리가 아닌 버전에서는 재생산에 적합하지 않는다. 그러한 경우에, 샷 픽스 모듈(410)은 스토리의 대화형 버전과 연관된 기존 샷을 수정하거나 대체하는 비대화형 버전의 스토리에 대한 새로운 샷의 생성을 허용할 수 있다. 샷 픽스 모듈(410)은 데이터 저장소(416)에서 스토리의 비대화형 버전과 관련하여 수정되거나 추가된 샷과 관련된 데이터를 저장할 수 있다.
실시간 엔진 모듈(422)은 VR 조명 및 FX 모듈(424), 2D 샷 가져오기 모듈(426), 2D 레이아웃 모듈(428), 및 2D 조명 및 FX 모듈(430)을 포함할 수 있다.
VR 조명 및 FX 모듈(424)은 스토리의 대화형 버전에 대해 조명 및 FX(미디어 효과) 요소를 적용하도록 구성될 수 있다. 조명 및 FX 요소는 일반적으로 알려진 기술을 사용하여 만들 수 있다.
2D 샷 가져오기 모듈(426)은 샷 데이터를 실시간 엔진 모듈(422)로 가져오도록 구성될 수 있다. 예를 들어, 샷 및 카메라가 데이터 저장소(416)(예를 들어, 쇼 데이터베이스)에 추가되면, 2D 샷 가져오기 모듈(426)은 도 9의 예에 예시된 바와 같이 가상 카메라 피드 및 2D 샷 데이터를 실시간 엔진 모듈(422)로 가져오기 위한 옵션을 제공하는 인터페이스를 제공할 수 있다. 새로운 샷 타임라인이 카메라 데이터를 가져온 각 2D 샷에 대해 설정될 수 있다. 예를 들어, 2D 샷 데이터(예를 들어, 가상 카메라 피드)를 저장하는 디렉토리가 인터페이스를 통해 식별할 수 있다. 인터페이스는 또한 주어진 샷에 대한 샷 정보(예를 들어, 프레임 범위, 경로 등)를 보고, 샷을 다시 가져오고, 샷을 삭제하는 옵션을 제공할 수 있다. 샷을 가져올 때 2D 샷 가져오기 모듈(426)은 각 샷에 대한 추가 2D 데이터를 생성할 수 있다. 추가 2D 데이터는 기존 AR/VR 콘텐츠 위에 레이어링할 수 있다. 이를 통해 기존 AR/VR 콘텐츠를 기본으로 사용하면서 샷별 조정을 추가로 수행할 수 있다. 일 실시예에서, 2D 데이터는 부서별로 조정될 수 있고 AR/VR 콘텐츠 타임라인 위에 적용될 수 있는 추가 타임라인으로 표현될 수 있다.
2D 레이아웃 모듈(428)은 샷을 향상시키도록 구성될 수 있다. 예를 들어, 2D 레이아웃 모듈(222)은 추가 세트 드레싱 및 레이아웃을 샷 단위로 적용할 수 있다.
2D 조명 및 FX 모듈(430)은 샷에 추가 피처를 추가하기 위한 옵션을 제공하도록 구성될 수 있다. 예를 들어, 2D 조명 및 FX 모듈(430)은 조명; 새도우; 컨택트 새도우; FX 요소; 모션 블러 및 피사계 심도와 같은 후처리 효과를 적용할 수 있다. 추가 피처는 예를 들어 조명 및 FX 아티스트의 지시에 따라 적용할 수 있다. 추가 피처를 적용하면 각 샷의 모양을 향상시킬 수 있다. 일 실시예에서, 2D 조명 및 FX 모듈(430)은 캐릭터 애니메이션, 조명, 및 FX 요소를 나타내는 마스터 타임라인의 세트로서 VR 콘텐츠를 나타낸다. 이 실시예에서, 콘텐츠는 주로 선형 방식으로 실행된다. 다른 실시예에서, 콘텐츠는 비선형이고 유한 상태 머신, 블렌드 트리 및 맞춤형 AI 시스템과 같은 추가 시스템을 타임라인에 추가하여 사용한다.
2D 합성기(432)는 일반적으로 알려진 접근법에 기초하여 최종 렌더 프레임을 생성할 수 있다. 예를 들어, 2D 합성기(432)는 실시간 엔진 모듈(422)에 의해 렌더링된 최종 프레임 및 레이어 패스에 기초하여 최종 렌더링 프레임을 생성할 수 있다. 2D 합성기(432)는 최종 렌더링 프레임을 기반으로 하는 2D 컴퓨터 애니메이션 영화(434)와 같은 스토리의 비대화형 버전을 생성할 수 있다.
도 5a는 본 기술의 실시예에 따른 예시적인 방법(500)을 도시한다. 예를 들어, 방법(500)은 도 4의 시스템(400)에 의해 수행될 수 있다. 블록(502)에서, VR 애니메이션을 참조하여 위에서 설명된 바와 같이, AR/VR 애니메이션 또는 애니메이션 생성 툴에서의 경험을 위해 시퀀스 및 샷이 애니메이션될 수 있다. 블록(504)에서, 가상 카메라는 2D 프리비즈 모듈(406)을 참조하여 위에서 설명된 바와 같이 애니메이션 생성 툴에 배치될 수 있다. 블록(506)에서, 2D 편집 프로세스(414)를 참조하여 위에서 설명된 바와 같이, 비선형 비디오 편집 소프트웨어에서 편집 컷이 생성될 수 있다. 블록(508)에서, 편집 컷이 승인되면, 2D 샷 생성 모듈(408)을 참조하여 위에서 설명된 바와 같이, 카메라 및 타이밍 메타데이터로부터 2D 샷이 생성된다. 블록(510)에서, 샷 픽스 모듈(410)을 참조하여 위에서 설명된 바와 같이, 픽스가 2D 샷에 적용되고 추가 2D 샷이 생성될 수 있다. 블록(512)에서, VR 조명 및 FX 모듈(424)을 참조에서 위에서 설명한 바와 같이, AR/VR 애니메이션 또는 경험을 위해 조명 및 FX 요소가 생성될 수 있다. 블록(514)에서, 2D 샷 가져오기 모듈(426)을 참조하여 위에서 설명된 바와 같이, 2D 샷 데이터가 실시간 엔진에 가져오기될 수 있다. 블록(516)에서, 2D 레이아웃 모듈(428)을 참조하여 위에서 설명된 바와 같이, 세트 드레싱 및 레이아웃이 샷에 적용될 수 있다. 블록(518)에서, 2D 조명 및 FX 모듈(430)을 참조하여 위에서 설명된 바와 같이, 추가 조명, 새도우, 컨택트 새도우, FX 요소 및 후처리 효과가 적용될 수 있다.
예시적인 방법에 대한 많은 변형이 가능하다. 달리 언급되지 않는 한, 본 명세서에 논의된 다양한 실시예의 범위 내에서, 유사하거나 대안적인 순서로, 또는 병렬로 수행되는 추가적인, 더 적은 또는 대안적인 단계가 있을 수 있음을 이해해야 한다.
도 5b는 본 기술의 실시예에 따른 예시적인 방법(550)을 도시한다. 예를 들어, 방법(550)은 도 4의 시스템(400)에 의해 수행될 수 있다. 블록(552)에서, 컴퓨터 기반 경험과 관련된 데이터가 획득될 수 있다. 컴퓨터 기반 경험은 양방향 실시간 기술을 기반으로 할 수 있다. 예를 들어, 양방향 실시간 기술은 증강 현실(AR) 및/또는 가상 현실(VR) 기술을 적용하여 양방향 콘텐츠를 제공할 수 있다. 블록(554)에서, 애니메이션 제작 애플리케이션에서 컴퓨터 기반 경험 내에서 적어도 하나의 가상 카메라가 구성될 수 있다. 블록(556)에서, 2차원 콘텐츠에 대응하는 복수의 샷이 애니메이션 제작 애플리케이션에서 적어도 하나의 가상 카메라에 의해 캡처된 콘텐츠의 편집 컷으로부터 생성될 수 있다. 블록(558)에서, 컴퓨터 기반 경험의 2차원 버전과 연관된 데이터는 복수의 샷에 기초한 실시간 엔진에서 생성될 수 있다. 생성된 데이터를 기반으로 2차원 버전을 렌더링할 수 있다.
예시적인 방법에 대한 많은 변형이 가능하다. 달리 언급되지 않는 한, 본 명세서에 논의된 다양한 실시예의 범위 내에서, 유사하거나 대안적인 순서로, 또는 병렬로 수행되는 추가적인, 더 적은 또는 대안적인 단계가 있을 수 있음을 이해해야 한다.
도 10은 본 기술의 실시예에 따른 실시간 엔진(예를 들어, 실시간 엔진 모듈(212), 실시간 엔진 모듈(422)) 내에서 샷을 선택하는 데 사용될 수 있는 예시적인 샷 피커 인터페이스를 도시한다. 샷 피커 인터페이스는 2D 샷 생성 모듈(220) 또는 2D 샷 생성 모듈(408)에 의해 제공될 수 있다. 인터페이스는 주어진 장면에 대해 이용가능한 모든 샷의 목록을 제공할 수 있다. 샷 선택 시, 해당 샷 타임라인을 사용하도록 장면을 구성할 수 있다. 결과적으로, 아티스트는 실시간 엔진의 타임라인 창에서 샷을 스크러빙할 수 있다. 또한, 샷 피커 인터페이스는 샷별로 지오메트리를 숨기는 구성 요소 및 추가 2D 조명이 있는 게임 오브젝트와 같은 유용한 워크플로 오브젝트에 액세스하기 위한 옵션을 제공할 수 있다. 2D 샷의 조명 조정은 AR/VR 조명 위에 추가할 수 있다. 또한, AR/VR 조명에 대한 변경 사항은 해당 2D 샷에 전파된다. 일부 실시예에서, 조명 관리자 인터페이스는 아티스트가 AR/VR 장면과 2D 샷 사이의 링크를 끊을 수 있도록 하는 옵션을 제공할 수 있다. 링크가 끊어지면, AR/VR 조명에 대한 변경 사항이 해당 2D 샷에 전파되지 않는다.
도 11은 본 기술의 실시예에 따라 가상 카메라에 의해 캡처된 샷을 기록하기 위한 옵션을 제공할 수 있는 예시적인 카메라 기록 인터페이스를 도시한다. 예를 들어, 카메라 레코딩 인터페이스는 2D 샷 생성 모듈(220) 또는 2D 샷 생성 모듈(408)에 의해 제공될 수 있다. 카메라 레코딩 인터페이스는 단일 배치에서 서로 다른 구성으로 다양한 콘텐츠를 레코딩하도록 맞춤화될 수 있다. 또한, 레티클 및 슬레이트 정보는 전술한 바와 같이 프레임에 적용될 수 있다. 일 실시예에서, 다음 정보가 포함된다: 레티클(카메라 경계), 시퀀스, 파일 이름, 카메라 렌즈, 카메라/샷 이름, 날짜, 및 애니메이션 프레임 번호.
도 12는 본 기술의 실시예에 따른 실시간 샷 렌더러 인터페이스를 도시한다. 예를 들어, 실시간 샷 렌더러 인터페이스는 실시간 엔진 모듈(212) 또는 실시간 엔진 모듈(422)에 의해 제공될 수 있다. 실시간 샷 렌더러 인터페이스는 실시간 엔진 모듈(212) 또는 실시간 엔진 모듈(422)을 사용하여 최종 프레임을 렌더링하는 옵션을 제공할 수 있다. 예를 들어, 실시간 샷 렌더러 인터페이스는 프리비즈 또는 중간 프레임을 렌더링하는 옵션을 제공할 수 있다. 일부 실시예에서, 실시간 샷 렌더러 인터페이스는 카메라 레코딩 인터페이스와 함께 사용될 수 있다. 이러한 실시예에서, 카메라 레코딩 인터페이스는 프레임에 포함될 가상 카메라 및 슬레이트 정보를 식별하는 데 사용될 수 있고 실시간 샷 렌더러 인터페이스는 슬레이트 정보로 프레임을 렌더링하는 데 사용될 수 있다. 실시간 샷 렌더러 인터페이스는 렌더링할 다른 해상도를 선택하는 옵션을 제공할 수 있다. 실시간 샷 렌더러 인터페이스는 EXR을 생성하고 2D 합성기를 위한 다중 렌더 레이어 패스(예를 들어, 깊이, 매트 및 뷰티)를 생성하는 옵션을 제공할 수도 있다. 다양한 실시예에서, 프레임은 실시간 엔진 모듈(212) 또는 실시간 엔진 모듈(422)을 사용하여 렌더링될 수 있다. 일 실시예에서, 렌더링 소프트웨어는 선택된 샷을 활성화하고 한 번에 하나씩 렌더링할 수 있다. 일 실시예에서, 렌더링 소프트웨어는 하나 이상의 원격 머신 상에서 병렬로 샷을 렌더링할 수 있다. 렌더링은 편집기 내에서 행해질 수 있다. 즉, 빌드에서 샷을 렌더링하는 대신, 렌더링 소프트웨어는 실시간 엔진 모듈(212) 또는 실시간 엔진 모듈(422)을 "재생 모드"로 전환한 다음 프레임 단위로 샷 카메라에서 샷 카메라의 렌더링 텍스처를 긁어내는 작업을 진행한다. 일 실시예에서, 렌더링 소프트웨어는 실시간 엔진 모듈(212) 또는 실시간 엔진 모듈(422)에 내장된 레코딩 시스템과 함께 작동할 수 있다. 렌더링은 편집기 내에서 수행될 수 있다. 이 실시예에서, 사용자는 렌더링 영역을 정의하는 타임라인에 레코더 클립을 지정할 수 있다. 이러한 클립은 또한 어떤 AOV(임의 출력 변수)가 렌더링될지를 정의한다. AOV 또는 렌더 패스는 임의의 음영 네트워크 구성 요소를 다른 이미지로 렌더링하는 방법을 제공한다. 예를 들어, 아티스트는 패스된 별도의 깊이, 매트 및 뷰티를 렌더링하고 나중에 합성 프로세스에서 이를 다시 결합할 수 있다. 선택한 AOV는 포워드 렌더 파이프라인에 대한 추가 렌더 패스로 기능한다. 특히, 이러한 패스는 카메라의 렌더 텍스처 대신 사용자 정의 렌더 텍스처로 렌더링된다. 이러한 패스에 대한 레코더는 이러한 사용자 정의 렌더 텍스처를 디스크에 기록한다. 합성 프로세스를 용이하게 하기 위해, 단일 프레임에 대한 AOV 패스는 예를 들어 SimpleImageIO 라이브러리를 사용하여 하나의 EXR 파일에 기록된다.
도 13은 예시적인 렌더링된 프레임을 도시한다. 프레임은 실시간 엔진 모듈(212) 또는 실시간 엔진 모듈(422)에 의해 렌더링될 수 있다. 프레임은 애니메이션 이름, 시퀀스, 파일 이름, 타임스탬프, 애니메이션 제작 응용 프로그램에서 프레임과 관련된 식별 번호 및 실시간 엔진에서 프레임과 관련된 식별 번호와 같은 메타데이터 정보를 포함할 수 있다.
도 14는 VR 마스터 타임라인 위에 레이어링되는 추가적인 2D 샷 타임라인을 생성하는데 사용될 수 있는 타임라인 인터페이스를 도시한다. 예를 들어, 타임라인 인터페이스는 2D 샷 가져오기 모듈(426)에 의해 제공될 수 있다.
도 15는 조명 아티스트가 기본 VR 조명을 수정할 필요 없이 특정 샷의 추가적 개선을 할 수 있게 하는 다른 타임라인 인터페이스를 도시한다. 일부 실시예에서, 이러한 추가적인 변경을 수행하는 것은 고가의 전역 조명 계산을 리베이킹(re-baking)하는 것을 필요로 하지 않는다.
도 16은 전술한 조명 인터페이스를 포함하는 결합된 조명 인터페이스를 도시한다. 결합된 조명 인터페이스는 실시간 엔진 모듈(212) 또는 실시간 엔진 모듈(422)에 의해 제공될 수 있다.
도 17은 본 기술에 기초하여 생성될 수 있는 예시적인 컨택트 시트를 도시한다. 컨택트 시트는 하나 이상의 샷과 관련된 프레임을 포함할 수 있다.
도 18 내지 도 24는 본 기술에 기초하여 이루어질 수 있는 다양한 개선을 도시한다. 예를 들어, 본 기술은 2D 콘텐츠에서 샷 조명을 향상시킬 수 있다. 일반적으로, 대화형 및 VR 프로젝트용의 조명은 올바른 것처럼 보이지만, 이 조명은 특정 샷 각도에 대해 구성될 때 의도한 효과를 만들지 않을 수 있다. 예를 들어, 도 18은 AR/VR 버전의 조명이 있는 2D 콘텐츠를 예시한다. 이 예에서, 까마귀 캐릭터(1802)가 초점에 있도록 의도되었다. 그러나, AR/VR 버전의 조명은 까마귀 캐릭터(1802)를 초점으로 나타내지 않는다. 위에서 논의한 바와 같이, 본 기술은 도 19의 예에 나타낸 바와 같이 아티스트가 2D 콘텐츠의 샷 조명을 레이어링하여 초점으로 까마귀 캐릭터(1802)를 강조할 수 있게 해준다. 본 기술은 도 20의 예에 나타낸 바와 같이 아티스트가 컨택트 새도우를 거북이 캐릭터(2002)에 추가할 수 있게 한다. 또한, 본 기술은 아티스트가 후처리(예를 들어, 피사계 심도)를 적용하여 시청자의 주의를 집중시키고 도 21의 예에서 설명한 것처럼 샷을 영화처럼 만들 수 있도록 한다. 본 기술은 또한 아티스트가 AR/VR 콘텐츠에 적합하지 않은 추가 FX 요소를 2D 콘텐츠에 추가할 수 있도록 한다. 예를 들어, 도 22는 AR/VR 콘텐츠로부터의 원본 샷(2202)을 도시한다. 도 22는 또한 원본 샷(2202)에서 파생된 개선된 2D 샷(2212)을 보여준다. 개선된 2D 샷(2212)에서, 눈 발자국에 해당하는 FX 요소가 상기 환경에서 거북이 캐릭터를 바탕으로 하도록 추가되었다. 본 기술을 통해 아티스트는 애니메이션 픽스를 적용하여 2D 콘텐츠를 개선할 수도 있다. 예를 들어, 도 23은 캐릭터가 컴퓨터 애니메이션 실시간 경험에서 캐릭터를 플레이하는 시청자를 보고 있는 AR/VR 콘텐츠의 프레임을 예시한다. 도 23에서, 캐릭터는 컴퓨터 애니메이션 실시간 경험에서 캐릭터를 플래이하는 시청자와 관련된 가상 카메라를 보고 있다. 컴퓨터 애니메이션 실시간 경험에는 허용되지만, 도 23에 반영된 캐릭터 동작은 캐릭터가 잘못된 방향을 보고 있기 때문에 2D 콘텐츠로 변환되지 않는다. 이를 해결하기 위해 본 기술에서는 새로운 애니메이션을 생성하여 2D 콘텐츠로 사용할 수 있다. 예를 들어, 도 24는 까마귀 캐릭터(2402)가 개미 캐릭터(2404)를 보고 있는 동안 개미 캐릭터(2404) 애니메이션이 도 23의 이전 샷과 매끄럽게 연결되는 새 애니메이션을 보여준다. 도 24에 반영된 새 애니메이션이 도 23의 AR/VR 콘텐츠에 해당하는 애니메이션보다 2D 콘텐츠로 보기에 더 적합할 수 있다. 많은 변형이 가능하다.
하드웨어 구현
전술한 프로세스 및 특징은 다양한 기계 및 컴퓨터 시스템 아키텍처에 의해 그리고 다양한 네트워크 및 컴퓨팅 환경에서 구현될 수 있다. 도 25는 본 기술의 실시예에 따라, 머신이 본 명세서에 설명된 하나 이상의 실시예를 수행하게 하기 위한 명령어 세트가 실행될 수 있는 예시적인 머신(2500)을 도시한다. 실시예는 하나 이상의 시스템, 방법, 또는 컴퓨터 판독가능 매체에 관한 것일 수 있다. 머신은 다른 머신에 연결(예를 들어, 네트워크)될 수 있다. 네트워크 배치에서, 머신은 클라이언트-서버 네트워크 환경에서 서버 또는 클라이언트 머신의 용량으로 작동하거나, 피어 투 피어(또는 분산) 네트워크 환경에서 피어 머신으로 작동할 수 있다.
컴퓨터 시스템(2500)은 버스(2508)를 통해 서로 통신하는 프로세서(2502)(예를 들어, 중앙 처리 장치(CPU), 그래픽 처리 장치(GPU), 또는 둘 다), 메인 메모리(2504), 및 비휘발성 메모리(2506)(예를 들어, 휘발성 RAM 및 비휘발성 RAM)를 포함한다. 프로세서(2502)는 병렬 처리 시스템과 같은 임의의 적절한 형태로 구현될 수 있다. 일부 경우에, 예시적인 머신(2500)은 컴퓨팅 디바이스 또는 시스템에 대응하거나, 포함하거나, 그 내에 포함될 수 있다. 예를 들어, 일부 실시예에서, 머신(2500)은 데스크탑 컴퓨터, 랩탑 컴퓨터, PDA(Personal Digital Assistant), 기기, 웨어러블 디바이스, 카메라, 태블릿, 또는 휴대폰 등일 수 있다. 일 실시예에서, 컴퓨터 시스템(2500)은 또한 비디오 디스플레이(2510), 문자숫자 입력 장치(2512)(예를 들어, 키보드), 커서 제어 장치(2514)(예를 들어, 마우스), 드라이브 유닛(2516), 신호 생성 장치(2518)(예를 들어, 스피커) 및 네트워크 인터페이스 장치(2520)를 포함한다.
일 실시예에서, 비디오 디스플레이(2510)는 사용자 입력을 위한 터치 감지 스크린을 포함한다. 일 실시예에서, 터치 감지 스크린은 키보드 및 마우스 대신에 사용된다. 디스크 드라이브 유닛(2516)은 본 명세서에 설명된 방법론 또는 기능 중 임의의 하나 이상을 구현하는 명령어(2524)(예를 들어, 소프트웨어)의 하나 이상의 세트가 저장되어 있는 기계 판독 가능 매체(2522)를 포함한다. 명령어(2524)는 또한 컴퓨터 시스템(2500)에 의한 실행 동안 메인 메모리(2504) 및/또는 프로세서(2502) 내에 완전히 또는 적어도 부분적으로 상주할 수 있다. 명령어(2524)는 네트워크 인터페이스 장치(2520)를 통해 네트워크(2540) 위로 더 송수신될 수 있다. 일부 실시예에서, 기계 판독 가능 매체(2522)는 또한 데이터베이스(2525)를 포함한다.
휘발성 RAM은 동적 RAM(DRAM)으로 구현될 수 있으며, 이는 메모리의 데이터를 새로 고치거나 유지하기 위해 지속적으로 전력을 필요로 한다. 비휘발성 메모리는 일반적으로 자기 하드 드라이브, 자기 광학 드라이브, 광학 드라이브(예를 들어, DVD RAM) 또는 시스템에서 전원이 제거된 후에도 데이터를 유지하는 기타 유형의 메모리 시스템이다. 비휘발성 메모리(2506)는 또한 랜덤 액세스 메모리일 수 있다. 비휘발성 메모리(2506)는 컴퓨터 시스템(2500)의 나머지 구성요소에 직접 연결된 로컬 장치일 수 있다. 임의의 컴퓨터 시스템에 연결된 모뎀 또는 이더넷 인터페이스와 같은 네트워크 인터페이스를 통해 본 명세에서 설명된 컴퓨터 시스템 중 어느 하나에 연결된 네트워크 저장 장치와 같이 시스템에서 멀리 떨어진 비휘발성 메모리도 또한 사용될 수 있다.
기계 판독 가능 매체(2522)가 예시적인 실시예에서 단일 매체인 것으로 도시되어 있지만, "기계 판독 가능 매체"라는 용어는 하나 이상의 명령어 세트를 저장하는 단일 매체 또는 다중 매체(예를 들어, 중앙 집중식 또는 분산식 데이터베이스, 및/또는 관련된 캐시 및 서버)를 포함하는 것으로 해석되어야 한다. "기계 판독 가능 매체"라는 용어는 기계에 의한 실행을 위한 명령어 세트를 저장, 인코딩 또는 전달할 수 있고 기계가 본 기술의 방법 중 어느 하나 이상을 수행하게 하는 임의의 매체를 포함하는 것으로 간주되어야 한다. 따라서, "기계 판독 가능 매체"라는 용어는 솔리드 스테이트 메모리, 광학 및 자기 매체, 반송파 신호를 포함하지만 이에 국한되지 않는 것으로 간주되어야 한다. 본 명세서에서 사용되는 "저장 모듈"이라는 용어는 기계 판독 가능 매체를 사용하여 구현될 수 있다.
일반적으로, 본 발명의 실시예를 구현하기 위해 실행되는 루틴은 운영 체제 또는 "프로그램" 또는 "애플리케이션"이라고 하는 특정 애플리케이션, 구성요소, 프로그램, 객체, 모듈 또는 명령어 시퀀스의 일부로 구현될 수 있다. 예를 들어, 하나 이상의 프로그램 또는 애플리케이션을 사용하여 본 명세서에 기술된 기능, 기술 및 프로세스 중 일부 또는 전부를 실행할 수 있다. 프로그램 또는 애플리케이션은 일반적으로 기계의 다양한 메모리 및 저장 장치에서 다양한 시간에 설정되고, 하나 이상의 프로세서에 의해 판독 및 실행될 때, 컴퓨팅 시스템(2500)이 본 명세서에 설명된 실시예의 양태를 포함한 요소를 실행하는 작업을 수행하게 하는 하나 이상의 명령어를 포함한다.
실행 가능한 루틴 및 데이터는 예를 들어 ROM, 휘발성 RAM, 비휘발성 메모리 및/또는 캐시 메모리를 포함하는 다양한 위치에 저장될 수 있다. 이러한 루틴 및/또는 데이터의 일부는 이러한 저장 장치 중 하나에 저장될 수 있다. 또한, 루틴과 데이터는 중앙 집중식 서버 또는 P2P 네트워크에서 얻을 수 있다. 루틴 및 데이터의 서로 다른 부분은 서로 다른 시간에 그리고 서로 다른 통신 세션에서 또는 동일한 통신 세션에서 서로 다른 중앙 집중식 서버 및/또는 피어-투-피어 네트워크에서 얻을 수 있다. 루틴과 데이터는 응용 프로그램을 실행하기 전에 전체적으로 얻을 수 있다. 대안으로, 루틴 및 데이터의 일부를 실행에 필요할 때 적시에 동적으로 얻을 수 있다. 따라서, 루틴과 데이터가 시간의 특정 순간에 완전히 기계 판독 가능한 매체에 있을 필요는 없다.
컴퓨팅 시스템과 관련하여 실시예를 전체적으로 설명하였지만, 당업자는 다양한 실시예가 다양한 형태의 프로그램 제품으로서 배포될 수 있고, 배포하는 데 실제로 사용된 특정 유형의 기계 또는 컴퓨터 판독 가능 매체에 관계없이, 본 명세서에 설명된 실시예가 동등하게 적용된다는 것을 이해할 것이다. 기계 판독 가능 매체의 예에는 무엇보다도 휘발성 및 비휘발성 메모리 장치, 플로피 및 기타 이동식 디스크, 하드 디스크 드라이브, 광학 디스크(예를 들어, 컴팩트 디스크 읽기 전용 메모리(CD) ROMS), 디지털 다목적 디스크(DVD) 등)와 같은 기록가능한 유형의 매체 및 디지털 및 아날로그 통신 링크와 같은 전송 유형의 매체를 포함하나 이에 국한되지 않는다.
대안으로 또는 조합하여, 본 명세서에 설명된 실시예는 ASIC(Application-Specific Integrated Circuit) 또는 FPGA(Field-Programmable Gate Array)를 사용하는 것과 같이 소프트웨어 명령어을 사용하거나 사용하지 않고 특수 목적 회로를 사용하여 구현될 수 있다. 실시예는 소프트웨어 명령어 없이 또는 소프트웨어 명령어와 조합하여 하드웨어 회로를 사용하여 구현될 수 있다. 따라서, 이 기술은 하드웨어 회로와 소프트웨어의 임의의 특정 조합이나 데이터 처리 시스템에 의해 실행되는 명령어에 대한 임의의 특정 소스에 국한되지 않는다.
설명을 위해, 본 명세서의 완전한 이해를 제공하도록 다수의 특정 세부사항이 제시된다. 그러나, 본 개시내용의 실시예가 이러한 특정 세부사항 없이 실시될 수 있다는 것이 당업자에게 명백할 것이다. 일부 예에서, 모듈, 구조, 프로세스, 특징 및 장치는 설명을 모호하게 하거나 여기에서 논의되는 것을 피하기 위해 블록도 형태로 표시된다. 다른 경우에는, 데이터 및 논리 흐름을 나타내기 위해 기능 블록도 및 흐름도가 표시된다. 블록도 및 흐름도의 구성요소(예를 들어, 모듈, 엔진, 블록, 구조, 장치, 기능 등)는 본 명세서에 명시적으로 설명되고 묘사된 것과 다른 방식으로 다양하게 결합, 분리, 제거, 재정렬 및 대체될 수 있다.
본 명세서에서 "일 실시예", "실시예", "다른 실시예", "또 다른 실시예", "다양한 실시예에서" 등에 대한 언급은 그 실시예와 연계하여 설명된 특정한 특징, 디자인, 구조 또는 특성이 본 개시내용의 적어도 하나의 실시예에 포함되는 것을 의미한다. 예를 들어, 명세서의 다양한 위치에서 "실시예에 따라", "일 실시예에서", "실시예에서", "다양한 실시예에서" 또는 "다른 실시예에서"라는 문구의 출현은 반드시 동일한 실시예를 전부 말하는 것도 아니고, 다른 실시예와 상호 배타적인 별개의 또는 대안적인 실시예를 말하는 것도 아니다. 또한, "실시예" 등에 대한 명시적 인용이 있든 없든, 다양한 특징이 설명되며, 이는 일부 실시예에서 다양하게 결합 및 포함될 수 있지만 또한 다른 실시예에서 다양하게 생략될 수도 있다. 마찬가지로, 다른 실시예가 아닌 일부 실시예에 대한 선호도 또는 요구사항일 수 있는 다양한 특징들이 설명된다.
특정 예시적인 실시예를 참조로 실시예가 설명되었지만, 이러한 실시예에 다양한 수정 및 변경이 이루어질 수 있음이 명백할 것이다. 따라서, 본 명세서 및 도면은 제한적인 의미가 아니라 예시적인 의미로 간주되어야 한다. 전술한 명세서는 특정 예시적인 실시예를 참조하여 설명을 제공한다. 하기 청구범위에 기재된 바와 같은 더 넓은 기술사상 및 범위를 벗어나지 않고 다양한 변형이 이루어질 수 있음이 명백할 것이다. 따라서, 본 명세서 및 도면은 제한적인 의미가 아니라 예시적인 의미로 간주되어야 한다.
도면 중 일부가 특정 순서로 다수의 동작 또는 방법 단계를 예시하지만, 순서에 의존하지 않는 단계들이 재정렬될 수 있고 다른 단계들이 결합되거나 생략될 수 있다. 일부 재정렬 또는 기타 그룹화가 구체적으로 언급되지만, 다른 것들은 당업자에게 명백할 것이고 따라서 대안의 완전한 목록을 제시하지 않는다. 또한, 단계는 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합으로 구현될 수 있음을 인식해야 한다.
또한, 본 발명의 본질을 벗어나지 않으면서 다양한 변경이 이루어질 수 있음을 이해해야 한다. 이러한 변경 사항도 설명에 암시적으로 포함된다. 이들은 여전히 본 발명의 범위에 속한다. 본 개시는 별개로 그리고 전체 시스템으로서, 그리고 방법 및 장치 모드 모두에서 본 발명의 다양한 양태를 포함하는 특허를 산출하도록 의도된 것임을 이해해야 한다.
또한, 본 발명 및 청구범위의 다양한 요소들 각각은 또한 다양한 방식으로 달성될 수 있다. 본 개시는 임의의 장치 실시예, 방법 또는 프로세스 실시예 중 한 실시예의 변형이거나, 심지어 이들 중 임의의 요소의 단지 변형일지라도, 이러한 각각의 변형을 포함하는 것으로 이해되어야 한다.
또한, "포함하는(comprising)"이라는 전환 어구의 사용은 전통적인 청구 해석에 따라 본 명세서에서 "개방형(open-end)" 청구범위를 유지하는 데 사용된다. 따라서, 문맥이 달리 요구하지 않는 한, "포함하다" 또는 "포함한다" 또는 "포함하는"과 같은 변형은 언급된 요소 또는 단계 또는 요소 또는 단계의 그룹을 포함하는 것을 의미하는 것으로 이해되어야 하지만, 다른 요소나 단계 또는 요소나 단계의 그룹을 배제하지 않는다. 이러한 용어는 출원인에게 하기 청구범위에 따라 법적으로 허용되는 가장 광범위한 범위를 제공할 수 있도록 가장 광범위한 형태로 해석되어야 한다.
본 명세서에 사용된 언어는 주로 가독성 및 교육 목적으로 선택되었으며, 본 발명의 주제를 설명하거나 제한하기 위해 선택되지 않았을 수 있다. 따라서, 본 발명의 범위는 이 상세한 명세서가 아니라, 오히려 여기에 기초한 응용에 대한 청구범위에 의해 제한되는 것으로 의도된다. 따라서, 본 발명의 실시예의 개시는 하기의 청구범위에 기재된 본 발명의 범위를 예시하기 위한 것이지 제한하려는 것이 아니다.

Claims (20)

  1. 컴퓨팅 시스템에 의해, 대화형 실시간 기술에 기반한 컴퓨터 기반 경험과 연관된 데이터를 획득하는 단계;
    컴퓨팅 시스템에 의해, 애니메이션 생성 애플리케이션에서 컴퓨터 기반 경험 내에서 적어도 하나의 가상 카메라를 구성하는 단계;
    컴퓨팅 시스템에 의해, 상기 애니메이션 생성 애플리케이션에서 적어도 하나의 가상 카메라에 의해 캡처된 콘텐츠의 편집 컷으로부터 2차원 콘텐츠에 해당하는 복수의 샷을 생성하는 단계;
    컴퓨팅 시스템에 의해, 상기 복수의 샷에 기반한 실시간 엔진에서 컴퓨터 기반 경험의 2차원 버전과 연관된 데이터를 생성하는 단계를 포함하고,
    상기 2차원 버전은 생성된 데이터에 기초하여 렌더링될 수 있는 컴퓨터로 구현되는 방법.
  2. 제1항에 있어서,
    컴퓨팅 시스템에 의해, 실시간 엔진에서 2차원 버전을 렌더링하는 단계를 더 포함하는 컴퓨터로 구현되는 방법.
  3. 제1항에 있어서,
    2차원 콘텐츠에 해당하는 복수의 샷을 생성하는 단계는:
    컴퓨팅 시스템에 의해, 비선형 비디오 편집 소프트웨어로부터 컴퓨터 기반 경험의 편집 컷과 관련된 데이터를 획득하는 단계를 더 포함하는 컴퓨터로 구현되는 방법.
  4. 제1항에 있어서,
    2차원 콘텐츠에 해당하는 복수의 샷을 생성하는 단계는:
    컴퓨팅 시스템에 의해, 애니메이션 생성 애플리케이션에서 생성된 복수의 샷과 관련된 데이터를 실시간 엔진으로 가져오는 단계를 더 포함하는 컴퓨터로 구현되는 방법.
  5. 제4항에 있어서,
    컴퓨팅 시스템에 의해, 컴퓨터 기반 경험과 관련된 제2 애니메이션 레이어와 분리된 2차원 버전과 관련된 제1 애니메이션 레이어를 생성하는 단계를 더 포함하고,
    복수의 샷에서 한 샷에 대해 행해진 조정이 제1 애니메이션 레이어에 적용되는 컴퓨터로 구현되는 방법.
  6. 제4항에 있어서,
    컴퓨팅 시스템에 의해, 컴퓨터 기반 경험과 관련된 제2 애니메이션 레이어와 분리된 2차원 버전에 해당하는 타임라인과 관련된 제1 애니메이션 레이어를 생성하는 단계를 더 포함하고,
    2차원 버전에 해당하는 타임라인에 대해 행해진 조정이 제1 애니메이션 레이어에 적용되는 컴퓨터로 구현되는 방법.
  7. 제1항에 있어서,
    2차원 콘텐츠에 해당하는 복수의 샷을 생성하는 단계는:
    컴퓨팅 시스템에 의해, 하나 이상의 애니메이션 픽스를 애니메이션 생성 애플리케이션에서 2차원 버전에 대한 적어도 하나의 샷에 적용하는 단계를 더 포함하는 컴퓨터로 구현되는 방법.
  8. 제7항에 있어서,
    하나 이상의 애니메이션 픽스를 애니메이션 생성 애플리케이션에서 2차원 버전에 대한 적어도 하나의 샷에 적용하는 단계는:
    컴퓨팅 시스템에 의해, 하나 이상의 애니메이션 픽스를 적용하기 전에 적어도 하나의 샷의 복사본을 생성하는 단계를 더 포함하고,
    상기 하나 이상의 애니메이션 픽스가 상기 복사본에 적용되는 컴퓨터로 구현되는 방법.
  9. 제1항에 있어서,
    컴퓨팅 시스템에 의해, 조명 및 하나 이상의 미디어 효과를 실시간 엔진에서 컴퓨터 기반 경험과 관련된 프레임에 적용하는 단계; 및
    컴퓨팅 시스템에 의해, 조명 및 하나 이상의 미디어 효과를 실시간 엔진에서 2차원 버전과 관련된 프레임에 적용하는 단계를 더 포함하고,
    실시간 엔진에서 2차원 버전과 관련된 프레임에 대한 상기 조명 및 하나 이상의 미디어 효과가 컴퓨터 기반 경험에 적용된 조명 및 하나 이상의 미디어 효과의 상단에 추가되는 컴퓨터로 구현되는 방법.
  10. 제1항에 있어서,
    컴퓨터 기반 경험은 몰입형 실시간 기술에 기초하거나,
    2차원 버전과 관련된 데이터는 대화형 2D 콘텐츠인 컴퓨터로 구현되는 방법.
  11. 적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서에 의한 실행시, 시스템이:
    대화형 실시간 기술에 기반한 컴퓨터 기반 경험과 연관된 데이터를 획득하는 단계; 애니메이션 생성 애플리케이션에서 컴퓨터 기반 경험 내에서 적어도 하나의 가상 카메라를 구성하는 단계; 상기 애니메이션 생성 애플리케이션에서 적어도 하나의 가상 카메라에 의해 캡처된 콘텐츠의 편집 컷으로부터 2차원 콘텐츠에 해당하는 복수의 샷을 생성하는 단계; 및 상기 복수의 샷을 기초로 실시간 엔진에서 컴퓨터 기반 경험의 2차원 버전과 관련된 데이터를 생성하는 단계를 포함하는 방법을 수행하게 하는 명령어를 저장하는 메모리를 포함하고,
    상기 2차원 버전은 생성된 데이터에 기초하여 렌더링될 수 있는 시스템.
  12. 제11항에 있어서,
    명령어를 통해 시스템이:
    실시간 엔진에서 2차원 버전을 렌더링하는 단계를 수행하게 하는 시스템.
  13. 제11항에 있어서,
    2차원 콘텐츠에 해당하는 복수의 샷을 생성하는 단계는:
    비선형 비디오 편집 소프트웨어로부터 컴퓨터 기반 경험의 편집 컷과 관련된 데이터를 획득하는 단계를 더 포함하는 시스템.
  14. 제11항에 있어서,
    2차원 콘텐츠에 대응하는 복수의 샷을 생성하는 단계는:
    애니메이션 생성 애플리케이션에서 생성된 복수의 샷과 관련된 데이터를 실시간 엔진으로 가져오는 단계를 더 포함하는 시스템.
  15. 제11항에 있어서,
    명령어를 통해 시스템이:
    컴퓨터 기반 경험과 관련된 제2 애니메이션 레이어와 분리된 2차원 버전과 관련된 제1 애니메이션 레이어를 생성하게 하는 단계를 더 수행하게 하고,
    복수의 샷에서 한 샷에 행해진 조정이 상기 제1 애니메이션 레이어에 적용되는 시스템.
  16. 컴퓨팅 시스템의 적어도 하나의 프로세서에 의한 실행시, 컴퓨팅 시스템이:
    대화형 실시간 기술에 기반한 컴퓨터 기반 경험과 연관된 데이터를 획득하는 단계; 애니메이션 생성 애플리케이션에서 컴퓨터 기반 경험 내에서 적어도 하나의 가상 카메라를 구성하는 단계; 상기 애니메이션 생성 애플리케이션에서 적어도 하나의 가상 카메라에 의해 캡처된 편집 컷으로부터 2차원 콘텐츠에 해당하는 복수의 샷을 생성하는 단계; 및 상기 복수의 샷을 기초로 실시간 엔진에서 컴퓨터 기반 경험의 2차원 버전과 관련된 데이터를 생성하는 단계를 포함하는 방법을 수행하게 하는 명령어를 포함하고,
    상기 2차원 버전은 생성된 데이터에 기초하여 렌더링될 수 있는 비일시적 컴퓨터 판독 가능 저장 매체.
  17. 제16항에 있어서,
    명령어를 통해 시스템이:
    실시간 엔진에서 2차원 버전을 렌더링하는 단계를 수행하게 하는 비일시적 컴퓨터 판독 가능 저장 매체.
  18. 제16항에 있어서,
    2차원 콘텐츠에 해당하는 복수의 샷을 생성하는 단계는:
    비선형 비디오 편집 소프트웨어로부터 컴퓨터 기반 경험의 편집 컷과 관련된 데이터를 획득하는 단계를 더 포함하는 비일시적 컴퓨터 판독 가능 저장 매체.
  19. 제16항에 있어서,
    2차원 콘텐츠에 해당하는 복수의 샷을 생성하는 단계는:
    애니메이션 생성 애플리케이션에서 생성된 복수의 샷과 관련된 데이터를 실시간 엔진으로 가져오는 단계를 더 포함하는 비일시적 컴퓨터 판독 가능 저장 매체.
  20. 제16항에 있어서,
    명령어를 통해 시스템이:
    컴퓨터 기반 경험과 관련된 제2 애니메이션 레이어와 분리된 2차원 버전과 관련된 제1 애니메이션 레이어를 생성하는 단계를 더 수행하게 하고,
    복수의 샷에서 한 샷에 행해진 조정이 상기 제1 애니메이션 레이어에 적용되는 비일시적 컴퓨터 판독 가능 저장 매체.
KR1020227017143A 2019-10-24 2020-10-23 몰입형 콘텐츠에서 2d 영화를 만들기 위한 시스템 및 방법 KR20220086648A (ko)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201962925710P 2019-10-24 2019-10-24
US62/925,710 2019-10-24
US17/078,071 US20210125306A1 (en) 2019-10-24 2020-10-22 Systems and methods for creating a 2d film from immersive content
US17/078,071 2020-10-22
US17/078,062 US11403787B2 (en) 2019-10-24 2020-10-22 Systems and methods for creating a 2D film from immersive content
US17/078,062 2020-10-22
PCT/US2020/057166 WO2021081406A1 (en) 2019-10-24 2020-10-23 Systems and methods for creating a 2d film from immersive content

Publications (1)

Publication Number Publication Date
KR20220086648A true KR20220086648A (ko) 2022-06-23

Family

ID=75585951

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020227017142A KR20220088886A (ko) 2019-10-24 2020-10-23 몰입형 콘텐츠에서 2d 영화를 만들기 위한 시스템 및 방법
KR1020227017143A KR20220086648A (ko) 2019-10-24 2020-10-23 몰입형 콘텐츠에서 2d 영화를 만들기 위한 시스템 및 방법

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020227017142A KR20220088886A (ko) 2019-10-24 2020-10-23 몰입형 콘텐츠에서 2d 영화를 만들기 위한 시스템 및 방법

Country Status (5)

Country Link
US (4) US20210125306A1 (ko)
EP (2) EP4049263A4 (ko)
JP (2) JP2022554232A (ko)
KR (2) KR20220088886A (ko)
WO (2) WO2021081406A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9332285B1 (en) * 2014-05-28 2016-05-03 Lucasfilm Entertainment Company Ltd. Switching modes of a media content item
US11394799B2 (en) * 2020-05-07 2022-07-19 Freeman Augustus Jackson Methods, systems, apparatuses, and devices for facilitating for generation of an interactive story based on non-interactive data
US20220165024A1 (en) * 2020-11-24 2022-05-26 At&T Intellectual Property I, L.P. Transforming static two-dimensional images into immersive computer-generated content

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070035665A1 (en) * 2005-08-12 2007-02-15 Broadcom Corporation Method and system for communicating lighting effects with additional layering in a video stream
US20090219291A1 (en) * 2008-02-29 2009-09-03 David Brian Lloyd Movie animation systems
US8591332B1 (en) * 2008-05-05 2013-11-26 Activision Publishing, Inc. Video game video editor
US8773441B2 (en) * 2009-07-10 2014-07-08 Pixar System and method for conforming an animated camera to an editorial cut
US20120092348A1 (en) * 2010-10-14 2012-04-19 Immersive Media Company Semi-automatic navigation with an immersive image
US8464153B2 (en) 2011-03-01 2013-06-11 Lucasfilm Entertainment Company Ltd. Copying an object in an animation creation application
EP2600316A1 (en) 2011-11-29 2013-06-05 Inria Institut National de Recherche en Informatique et en Automatique Method, system and software program for shooting and editing a film comprising at least one image of a 3D computer-generated animation
US9977580B2 (en) * 2014-02-24 2018-05-22 Ilos Co. Easy-to-use desktop screen recording application
US20170182406A1 (en) * 2014-03-21 2017-06-29 Audience Entertainment Llc Adaptive group interactive motion control system and method for 2d and 3d video
GB2526263B (en) * 2014-05-08 2019-02-06 Sony Interactive Entertainment Europe Ltd Image capture method and apparatus
US9332285B1 (en) 2014-05-28 2016-05-03 Lucasfilm Entertainment Company Ltd. Switching modes of a media content item
JP6702657B2 (ja) * 2015-05-29 2020-06-03 キヤノン株式会社 映像処理装置、映像処理方法、及びプログラム
US10484824B1 (en) * 2015-06-26 2019-11-19 Lucasfilm Entertainment Company Ltd. Content presentation and layering across multiple devices
US11164548B2 (en) * 2015-12-22 2021-11-02 JBF Interlude 2009 LTD Intelligent buffering of large-scale video
JP6429829B2 (ja) * 2016-05-25 2018-11-28 キヤノン株式会社 画像処理システム、画像処理装置、制御方法、及び、プログラム
US10754529B2 (en) 2016-10-28 2020-08-25 Adobe Inc. Facilitating editing of virtual-reality content using a virtual-reality headset
US10614606B2 (en) * 2016-11-30 2020-04-07 Ricoh Company, Ltd. Information processing apparatus for creating an animation from a spherical image
US10565802B2 (en) 2017-08-31 2020-02-18 Disney Enterprises, Inc. Collaborative multi-modal mixed-reality system and methods leveraging reconfigurable tangible user interfaces for the production of immersive, cinematic, and interactive content
CN114979750A (zh) * 2019-01-08 2022-08-30 诺基亚技术有限公司 用于虚拟现实的方法、装置和计算机可读介质
KR102148006B1 (ko) * 2019-04-30 2020-08-25 주식회사 카카오 동영상에 특수 이펙트를 제공하는 방법 및 장치

Also Published As

Publication number Publication date
EP4049262A1 (en) 2022-08-31
JP2022554232A (ja) 2022-12-28
US20210125382A1 (en) 2021-04-29
KR20220088886A (ko) 2022-06-28
US20230005192A1 (en) 2023-01-05
EP4049263A1 (en) 2022-08-31
US20240193823A1 (en) 2024-06-13
JP2022553766A (ja) 2022-12-26
US20210125306A1 (en) 2021-04-29
WO2021081406A1 (en) 2021-04-29
WO2021081398A1 (en) 2021-04-29
US11915342B2 (en) 2024-02-27
EP4049262A4 (en) 2023-04-05
EP4049263A4 (en) 2023-04-05
US11403787B2 (en) 2022-08-02

Similar Documents

Publication Publication Date Title
US11915342B2 (en) Systems and methods for creating a 2D film from immersive content
Manovich Image future
EP2174299B1 (en) Method and system for producing a sequence of views
US20060022983A1 (en) Processing three-dimensional data
US8610713B1 (en) Reconstituting 3D scenes for retakes
Klokmose et al. Videostrates: Collaborative, distributed and programmable video manipulation
US8363055B1 (en) Multiple time scales in computer graphics
O’Dwyer et al. Virtual play in free-viewpoint video: Reinterpreting samuel beckett for virtual reality
Jung et al. Storyboarding and pre-visualization with x3d
Galvane et al. Vr as a content creation tool for movie previsualisation
US9620167B2 (en) Broadcast-quality graphics creation and playout
US9558578B1 (en) Animation environment
EP3246921A2 (en) Integrated media processing pipeline
WO2018049682A1 (zh) 一种虚拟3d场景制作方法及相关设备
Bąk et al. Using the game engine in the animation production process
Li Musical instrument performance in augmented virtuality
Sun Research on the application of 3D animation special effects in animated films: taking the film avatar as an example
Walther-Franks et al. The animation loop station: near real-time animation production
Kardan et al. Virtual cinematography of group scenes using hierarchical lines of actions
US8773441B2 (en) System and method for conforming an animated camera to an editorial cut
Young et al. A virtual reality volumetric music video: featuring new pagans
Kirschner Toward a Machinima Studio
JP2022167888A (ja) リアルタイム3dレンダリングプラットフォームを使用したインタラクティブデジタル体験の生成
Jo et al. CollageVis: Rapid Previsualization Tool for Indie Filmmaking using Video Collages
Abadia et al. Assisted animated production creation and programme generation