KR20200131817A - 여러 장치에 대한 3d 개체 시각화 및 조작을 용이하게 하는 방법 및 장치 - Google Patents

여러 장치에 대한 3d 개체 시각화 및 조작을 용이하게 하는 방법 및 장치 Download PDF

Info

Publication number
KR20200131817A
KR20200131817A KR1020207024327A KR20207024327A KR20200131817A KR 20200131817 A KR20200131817 A KR 20200131817A KR 1020207024327 A KR1020207024327 A KR 1020207024327A KR 20207024327 A KR20207024327 A KR 20207024327A KR 20200131817 A KR20200131817 A KR 20200131817A
Authority
KR
South Korea
Prior art keywords
visible
shards
tile
viewpoint
shard
Prior art date
Application number
KR1020207024327A
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 KR20200131817A publication Critical patent/KR20200131817A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/53Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/23Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/30Clipping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/02CAD in a network environment, e.g. collaborative CAD or distributed simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/08Bandwidth reduction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/52Parallel processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

다수의 장치에 걸친 3D 객체 시각화 및 조작을 용이하게 하는 방법 및 장치가 개시된다. 본 명세서에 개시된 예시적인 장치는 시점 결정기, 가시 샤드 결정기 및 라미네이트 어셈블러를 포함한다. 시점 결정기는 재현 장치에 대응하는 시점의 시점 위치를 결정하며, 시점 위치는 3 차원(3D) 모델의 기준 프레임 내에 있다. 가시 샤드 결정기는 시점 위치에 기초하여 3D 모델의 가시 샤드 세트를 결정한다. 라미네이트 어셈블러는 가시 샤드 세트의 2 차원(2D) 이미지를 생성한다.

Description

여러 장치에 대한 3D 개체 시각화 및 조작을 용이하게 하는 방법 및 장치
본 발명은 일반적으로 3 차원(3D) 컴퓨터 그래픽에 관한 것으로, 보다 상세하게는 다수의 장치에 걸친 3D 객체 시각화 및 조작을 용이하게 하는 방법 및 장치에 관한 것이다.
본 국제 출원은 2018년 1월 25일자로 출원된 미국 특허 출원 번호 62/622,075를 우선권으로 주장하며, 이는 그 전문이 본원에 참조로 포함된다.
3D 기하학적 모델(geometric model)은 종종 제조 제품(예를 들어, 건축, 건축, 부동산, 게임, 건강 관리, 과학적 시각화, 영화 등)을 설계하기 위해 사용된다. 설계 과정에서 3D 모델에 대한 반복적인 변경은 종종 설계자(예를 들어, 엔지니어, 기술자, 제도사(draftspeople) 등) 간에 업데이트 된 3D 모델 파일을 전자적으로 전송하여 이루어진다. 그러나 3D 모델 파일 크기가 너무 커서 기존 이메일을 통해 전송하기에 너무 길거나 발신자에서 수신자로 전송하는 데 오랜 시간이 걸린다. 따라서, 현재의 3D 설계 프로세스는 특수한 파일 전송 프로토콜(FTP) 또는 설계자 간에 공유 로컬 또는 호스트 된 네트워크 스토리지를 사용하고 및/또는 대용량 3D 파일이 전송될 때까지 오랫동안 기다린다.
예시적인 장치가 개시된다. 예시적인 장치는 시점 결정기(viewpoint determiner), 가시 샤드 결정기(visible shard determiner) 및 라미네이트 어셈블러(laminate assembler)를 포함한다. 시점 결정기는 가상 3D 환경에서 3D 모델의 기준 프레임(reference frame) 내에 있는, 재현 장치(viewing device)에 대응하는 시점의 시점 위치를 결정한다. 가시 샤드 결정기는 시점 위치에 기초하여 3D 모델의 가시 샤드 세트(visible shard set)를 결정한다. 라미네이트 어셈블러는 가시 샤드 세트를 기반으로 2 차원(2D) 이미지를 생성한다.
예시적인 방법이 개시된다. 예시적인 방법은, 프로세서와 명령을 실행하여, 재현 장치에 대응하는 시점의 시점 위치를 결정하고, 시점 위치는 3D 모델의 기준 프레임 내에 있는지를 결정하는 단계; 프로세서와의 명령을 실행함으로써, 시점 위치에 기초하여 3D 모델의 가시 샤드 세트를 결정하는 단계; 및 프로세서와의 명령을 실행함으로써, 가시 샤드 세트에 기초하여 2D 이미지를 생성하는 단계를 포함한다.
프로세서에 의한 실행을 위한 예시적인 명령을 포함하는 예시적인 유형의 컴퓨터 판독 가능 매체가 여기에 개시된다. 실행될 때, 예시적인 명령은 프로세서로 하여금, 재현 장치에 대응하는 시점의 시점 위치를 결정하고, 시점 위치는 3D 모델의 기준 프레임 내에 있는 것으로 결정하고; 시점 위치에 기초하여 3D 모델의 가시 샤드 세트를 결정하고; 가시 샤드 세트에 기초하여 2D 이미지를 생성하도록 구성된다.
도 2는 도 1의 예시적인 환경에서 사용되는 예시적인 모델 뷰어의 블록도이다.
도 3은 예시적인 3D 모델을 도시한다.
도 4는 삼각형으로 표현된 도 3의 예시적인 3D 모델을 도시한다.
도 5는 샤드로 그룹화된 삼각형으로 표현된 도 3 및도 4의 예시적인 3D 모델을 도시한다.
도 6은 도 5의 예시적인 3D 모델의 분해도이다.
도 7은 복수의 복셀을 점유하는 도 3-5의 예시적인 3D 모델을 도시한다.
도 8은 도 2의 모델 뷰어를 통해 시점으로 본 예시적인 3D 모델을 도시한다.
도 9는 도 8의 시점을 통해 볼 수 있는 예시적인 3D 모델의 샤드 세트, 도 2의 모델 뷰어에 의해 생성된 대응하는 2D 타일, 및 모델 뷰어에 의해 생성된 2D 라미네이트를 도시한다.
도 10a는 도 2의 예시적인 모델 뷰어에 의해 생성된 도 3-6의 예시적인 3D 모델의 예시적인 2D 타일을 도시한다.
도 10b는 도 2의 예시적인 모델 뷰어에 의해 생성된 도 3-6의 예시적인 3D 모델의 예시적인 2D 타일을 도시한다.
도 11은 도 9의 가시 샤드 중 하나와 교차하는 시점에 대응하는 시선의 측면도이다.
도 12는 도 2의 예시적인 모델 뷰어에 의해 생성된 예시적인 3D 모델의 2D 라미네이트의 집합을 도시한다.
도 13은 2D 라미네이트를 디스플레이하기 위해 도 2의 예시적인 모델 뷰어를 구현하기 위해 실행될 수 있는 기계 판독 가능 명령어를 나타내는 흐름도이다.
도 14는 도 2의 예시적인 모델 뷰어를 구현하기 위해 도 13의 명령을 실행할 수 있는 예시적인 컴퓨터 플랫폼의 블록도이다.
도면은 축척대로 되어 있지 않다. 가능하다면, 동일하거나 유사한 부분을 지칭하기 위해 도면 전체에 걸쳐 동일한 참조 번호가 사용될 것이며, 첨부된 설명이 사용될 것이다.
도 1은 여기에 개시된 예시적인 환경(environment)(110)을 도시한다. 도 1의 예시된 예에서, 환경(110)은 적어도 하나의 서버(server)(112), 적어도 하나의 재현 장치(viewing device)(114) 및 네트워크(network)(116)를 포함한다. 도 1의 예시된 예에서, 적어도 하나의 재현 장치(114)는 랩톱 컴퓨터(laptop computer)(118), 태블릿(tablet)(120), 모바일 장치(mobile device)(122)(예를 들어, 스마트 폰) 및 데스크탑 컴퓨터(desktop computer)(124)를 포함하는 복수의 재현 장치(114)이다. 재현 장치(114)는 재현 장치 유형의 임의의 조합으로 도 1에 도시된 예시 랩탑 컴퓨터(118), 예시 태블릿(120), 예시 모바일 장치(122) 및 예시 데스크탑 컴퓨터(124) 보다 더 많거나 적은 재현 장치를 포함할 수 있음을 이해해야 한다. 다시 말해서, 환경(110)에 포함된 재현 장치(114)의 수는 도 1에 도시된 수 및 조합 및 재현 장치(예를 들어, 랩톱 컴퓨터(118), 태블릿(120), 모바일 장치(122), 및 데스크톱 컴퓨터(124))에 제한되지 않는다. 네트워크(116)는 임의의 유형의 전자 데이터 전송 시스템(예를 들어, 인터넷, 인트라넷, 근거리 통신망(LAN) 등) 일 수 있다.
도 1의 예시된 예에 도시된 바와 같이, 재현 장치(114)는 네트워크(116)를 통해 서버(112)와 연결된다. 재현 장치(114)는 네트워크(116)를 통해 서로 연결될 수 있다. 도 1의 예시된 예에서, 3D 모델 파일(model file)(126) 및/또는 3D 모델 파일(126)의 일부는 서버(112)에 저장된다. 동작에서, 3D 모델 파일의 2D 렌더링은 도 2-12와 관련하여 아래에서 더 상세히 설명되는 바와 같이 네트워크(116)를 통해 재현 장치(114) 상에 디스플레이 된다.
도 2는 도 1의 예시적인 환경(110)에서 사용되는 예시적인 모델 뷰어(model viewer)(202)의 블록도이다. 도 2의 예시된 예에서, 모델 뷰어(202)는 가시 샤드 결정기(visible shard determiner)(204), 복수의 타일 생성기(tile generator)(206a 내지 206n), 라미네이트 어셈블러(laminate assembler)(208), 시점 결정기(viewpoint determiner)(210), 복수의 타일 합성기(tile compositor)(212a 내지 212n) 및 인터페이스(interface)(214)를 포함한다. 예시적인 타일 생성기(tile generator)(206a 내지 206n)는 실질적으로 동일하다는 것을 이해해야 한다. 모델 뷰어(202)는 임의의 수의 타일 생성기(206)를 가질 수 있다는 것이 추가로 이해되어야 한다. 예시적인 타일 합성기(tile compositor)(212a 내지 212n)는 실질적으로 동일하다는 것을 이해해야 한다. 모델 뷰어(202)는 임의의 수의 타일 합성기(206)를 가질 수 있다는 것이 추가로 이해되어야 한다. 도 2의 예시된 예에서, 모델 뷰어는 데이터베이스(218)와 통신한다. 가시 샤드 결정기(204), 타일 생성기(206a 내지 206n), 라미네이트 어셈블러(208), 타일 합성기(212a 내지 212n) 및 데이터베이스(218)는 도 1의 서버(112) 중 하나 이상에 저장될 수 있다. 도 2의 예시된 예에서, 시점 결정기(210) 및 인터페이스(214)는 도 1의 재현 장치(114) 중 하나에 저장될 수 있다. 따라서, 모델 뷰어(202)는 서버(112)(예를 들어, 백엔드) 및 재현 장치(114)(예를 들어, 프론트 엔드)에 저장된다.
도 2의 예시된 예에서, 가시 샤드 결정기(204)는 타일 생성기(206a 내지 206n), 시점 결정기(210) 및 데이터베이스(218)와 통신한다. 타일 생성기(206a 내지 206n)는 라미네이트 어셈블러(208) 및 데이터베이스(218)와 더 통신한다. 타일 합성기(212a 내지 212n)는 라미네이트 어셈블러(208)와 통신한다. 인터페이스(214)는 라미네이트 어셈블러(208) 및 시점 결정기(210)와 통신한다.
동작에서, 인터페이스(214)는 재현 장치(114)로부터 디스플레이 입력을 수신한다. 디스플레이 입력은 움직임 입력(예를 들어, 마우스, 키, 터치 스크린, 스크롤 휠 등)을 포함한다. 시점 결정기(210)는 도 3 내지 도 8과 관련하여 더 상세히 설명될 바와 같이, 움직임 입력에 기초하여 3D 모델에 대한 기준 프레임(reference frame)에서 재현 장치(114)의 시점을 어디로 이동시킬지를 결정한다. 가시 샤드 결정기(204)는, 도 3-8과 관련하여 더 상세히 설명될 바와 같이, 결정된 시점에 기초하여 3D 모델(예를 들어, 도 1의 3D 모델(126))의 어는 샤드가 가시적인지를 결정하기 위하여 데이터베이스(218)에 액세스한다. 타일 생성기(206a 내지 206n)는, 도 9-11과 관련하여 더 상세히 설명되는 바와 같이, 결정된 가시 샤드의 깊이 및 색상 데이터를 생성하고 가시 샤드를 타일(평탄한 2D 이미지)로 렌더링 한다. 타일 생성기(206a 내지 206n)는 타일 및 그들의 각각의 색상 및 깊이 데이터를 라미네이트 어셈블러(208)에 전달한다. 라미네이트 어셈블러(208)는 타일 쌍 및 그들의 각각의 색 및 깊이 데이터를 타일 합성기(212a 내지 212n)로 전송한다. 타일 합성기(212a 내지 212n)는, 도 9-11과 함께 더 상세히 설명되는 바와 같이, 깊이 비교에 기초하여 선택된 색상 데이터를 사용하여 복합 타일(composite tile)을 생성하기 위하여 타일의 깊이 데이터를 비교하여 한다. 타일 합성기(212a 내지 212n)는 복합 타일을 라미네이트 어셈블러(208)에 전달한다. 라미네이트 어셈블러(208)는, 도 9-11과 관련하여 이하에 설명되는 바와 같이, 타일 생성기(206a 내지 206n)에 의해 원래 생성된 모든 타일이 라미네이트라고 하는 단일의 2D 복합 타일로 결합될 때까지, 개별 타일 및 복합 타일을 타일 합성기(212a 내지 212n)로 계속 보낸다. 라미네이트 어셈블러(208)는 라미네이트 이미지를 인터페이스(214)에 전달한다. 인터페이스(214)는 재현 장치(114) 중 하나 상에 라미네이트를 표시한다.
도 3은 예시적인 3D 모델(302)을 도시한다. 도 4는 예시적인 3D 모델(302)을 삼각형(triangle)(410)으로 나타낸 것이다. 도 5 및 6은 제1, 제2, 제3, 제4, 제5, 제6, 제7 및 제8 샤드(521, 522, 523, 524, 525, 526, 531, 532)로 그룹화 된 삼각형(410)으로 표현된 예시적인 3D 모델(302)을 도시한다. 도 7은 복수의 복셀(voxel)(710)을 점유하는 예시적인 3D 모델(302)을 도시한다. 도 3-11의 예에서, 예시적인 3D 모델(302)은 피스톤 및 커넥팅 로드(connecting rod) 어셈블리를 도시한다. 도 3-11의 예시된 예에서, 3D 모델(302) 및 제1, 제2, 제3, 제4, 제5, 제6, 제7 및 제8 샤드(521, 522, 523, 524, 525, 526, 531, 532)는 기준 프레임(reference frame)(306)에 배치된다. 예시적인 기준 프레임(306)은 3 차원 직교좌표(Cartesian)이다. 예시적인 3D 모델(302)은 임의의 유형의 3D 기준 프레임(예를 들어, 원통형, 구형 등)에 배치될 수 있음을 이해해야 한다.
상위 레벨에서, 본 명세서에 개시된 예는 큰 3D 모델 파일(또는 많은 3D 모델)을 취하고 3D 모델 파일을 샤드(shard)라고 하는 더 작은 구성 요소로 분할하여 독립적으로 처리하여 주어진 사용자 또는 재현 장치에 디스플레이 될 2D 라미네이트 이미지를 결정하는 것을 포함할 수 있다. 실제로, 이는 먼저 테셀레이션(tessellation)이라고 하는 복수의 삼각형 또는 다른 다각형을 생성하기 위해 3D 모델을 처리하는 것을 포함할 수 있다. 본 명세서에 개시된 예는 삼각형을 참조하여 설명될 수 있다. 그러나, 다각형, 경계 표현(B-rep 또는 BREPS), 건설적인 고체 형상(CSG) 트리, 원뿔 등(예를 들어, 원시 모델(model primitive))을 포함하여 시선과의 교차가 결정될 수 있는 임의의 객체가 사용될 수 있음을 이해해야 한다. 삼각형 또는 다른 원시 모델은 하나 이상의 샤드로 그룹화된다. 삼각형은 꼭지점으로 정의된 평면에 대해 2 차원(2D)이거나, 또는 기준 프레임에 대해 3D로 이해될 수 있고, 설정된 크기 또는 가변 크기를 가질 수 있고, 및 결합되면 3D 모델의 윤곽을 따르는 메쉬 또는 표면을 형성할 수 있다. 일부 예에서, 주어진 모델을 나타내는 수백, 수천, 수백만 또는 그 이상의 삼각형이 있을 수 있다. 삼각형의 수와 밀도는 3D 모델의 해상도를 높이거나 낮추도록 변경될 수 있다. 예를 들어, 간단한 3D 모델은 복잡한 모델의 윤곽을 더 잘 정의할 수 있도록 복잡한 모델보다 삼각형이 적을 수 있다. 또한, 복잡한 모델은 모델의 비교적 작은 특징을 설명하기 위해 더 큰 밀도의 삼각형을 포함할 수 있다. 일부 예에서, 삼각형의 수 및 밀도는 모델에 따라 변할 수 있어, 보다 복잡한 영역은 더 많은 수 및/또는 더 큰 삼각형의 밀도로 표현된다.
삼각형은 함께 그룹화되어 샤드(예를 들어, 제1, 제2, 제3, 제4, 제5, 제6, 제7 및 제8 부분(521, 522, 523, 524, 525, 526, 531, 532))로 결합될 수 있다. 샤드 당 삼각형의 수는 다를 수 있으며 경우에 따라 샤드 당 2 만 개의 삼각형과 같은 상한이 있을 수 있다. 다른 숫자, 한계 및 범위도 가능하다. 샤드 당 삼각형 수는 하나 이상의 처리 벤치 마크 또는 메트릭(matric)에 영향을 줄 수 있다. 예를 들어, 특정 프레임 레이트 또는 처리 속도를 유지하도록 변경되거나 동적으로 수정될 수 있다. 또한, 삼각형의 밀도는 각 샤드의 크기와 모양에 영향을 줄 수 있다.
주어진 샤드로 그룹화 된 삼각형을 결정하기 위해, 하나 이상의 처리 기술이 사용될 수 있다. 일부 예에서, 삼각형은 3D 모델의 특정 구성 요소에 기초하여 그룹화 될 수 있다. 예를 들어, 3D 모델은 여러 구성 요소를 가질 수 있으며(예를 들어, 핸들이 있는 실린더는 실린더와 핸들의 두 가지 구성 요소를 포함할 수 있음) 주어진 구성 요소에 해당하는 모든 삼각형이 샤드로 그룹화 될 수 있다. 또는, 하나 이상의 구성 요소는 단일 샤드로 그룹화 될 수 있는 것보다 많은 수의 삼각형을 포함할 수 있으며, 이러한 구성 요소는 다수의 샤드로 표현될 수 있다. 구성 요소가 크거나 복잡하거나 고해상도 또는 세부 정보로 표시될 때 발생할 수 있다. 또한 단일 샤드는 여러 구성 요소를 나타낸다. 따라서 단일 샤드는 단일 구성 요소, 구성 요소의 일부 또는 여러 구성 요소를 나타내는 삼각형을 포함할 수 있다.
삼각형을 샤드로 그룹화하는 여러 가지 기술이 있다. 일례로, 인접한 삼각형은 샤드를 형성하기 위해 함께 그룹화 될 수 있다. 이 기술은 삼각형 인접성(triangle adjacency)을 기반으로 할 수 있다. 다른 예에서, 에지 워킹(edge walking)은 그룹화를 결정하는데 사용될 수 있으며, 여기서 제1 삼각형이 선택되고 추가 삼각형은 에지를 따라 다음 삼각형으로 이동함으로써 선택된다. 일반적으로, 가장 가까운 이웃 그룹화 또는 계층적 클러스터링과 같은 기술이 사용될 수 있다. 이들 기술은 삼각형 또는 다른 기하학적 원시(geometric primitive)를 하나 이상의 다른 삼각형에 대한 각 삼각형의 근접성(proximity)을 설명하는 계층 구조(hierarchical structure)로 구성하는 것을 포함할 수 있다. 계층 구조는 하나 이상의 특징에 기초하여 삼각형을 클러스터로 그룹화하기 위해 분석되고 사용될 수 있으며, 그 결과 주어진 개수의 삼각형이 샤드로 그룹화 될 수 있다. 또한, 일부 예에서, 삼각형은 이들이 나타내는 구성 요소, 또는 삼각형과 관련된 다른 메타 데이터에 기초하여 그룹화 될 수 있다. 샤드가 결정되면 나중에 사용하기 위해 데이터베이스에 저장될 수 있다. 도 5 및 도 6은 삼각형(410)의 수, 크기, 밀도 및 다른 특성이 샤드 내에서 및 표현된 대상의 샤드에 걸쳐 상이할 수 있음을 도시한다.
일부 예에서, 3D 모델은 단일 장치, 다수의 장치, 및/또는 다수의 장치에 걸쳐 중복적으로 저장될 수 있는 삼각형 및 샤드로 분할될 수 있다.
주어진 객체의 라미네이트 또는 2D 이미지를 사용자에게 디스플레이 하기 위해, 예시적인 실시예는 라미네이트를 결정 또는 생성하기 위해 사용될 수 있는 정보를 사용자 장치로부터 수신하는 것(예를 들어, 시점, 시점 위치 또는 배향)을 포함할 수 있다. 도 8은 예시적인 시점 위치(804)를 도시한다. 이 과정에는 여러 단계가 포함되며, 이는 (i) 3D 모델에 대한 시점 위치/방향을 결정하는 단계, (ii) 결정된 위치에서 어느 샤드(들)가 가시적인 지를 결정하는 단계, (iii) 2D 이미지를 생성하기 위한 복수의 처리 작업을 생성하는 단계, (iv) 생성된 2D 이미지를 재현 장치에 제공될 단일 이미지로 결합하는 단계를 포함할 수 있다. 이러한 단계는 아래에 더 자세히 설명되어 있다.
먼저, 라미네이트를 요청하는 재현 장치의 위치, 방향 또는 다른 공간 방향 데이터가 결정될 수 있다. 이 정보는 인터페이스를 통해 재현 장치로부터 모델 뷰어 또는 처리 장치로 전송될 수 있다. 시스템이 다중 장치 상에 주어진 모델을 보는 다중 사용자를 포함하는 경우, 특정 재현 장치 또는 사용자 계정의 ID는 사용자를 식별하거나, 사용 가능한 하나 이상의 권한 또는 보안 동작을 결정하거나, 또는 하나 이상의 이용 가능한 특징(예를 들어, 북 마킹, 메모 작성, 객체 또는 컴포넌트 조작 등)을 허용하기 위해 사용될 수 있다. 요청하는 재현 장치의 위치 및 방향은 재현 장치가 객체를 "보는" 각도에 대응할 수 있다. 이것은 도 8과 관련하여 아래에서 설명된다.
결정된 위치 및 방향에 기초하여, 물체의 가시 샤드가 결정될 수 있다. 일반적으로, 3D 모델의 모든 샤드는 사용자에게 디스플레이 된 2D 이미지를 결정하기 위해 가시적으로 선택되고 처리될 수 있다. 그러나, 하나 이상의 컬링 기술이 가시적으로 간주되는 샤드의 수 및 따라서 필요한 처리 능력의 양을 감소시키기 위해 사용될 수 있다. 이것은 예를 들어 절두체 컬링(frustum culling), 폐색 컬링(occlusion culling) 및 세부 컬링 레벨(level of detail culling)을 포함하여 여러 가지 방법으로 수행될 수 있다.
절두체 컬링은 재현 장치의 시점에 대응하는 뷰 절두체 외부에 있는 임의의 샤드를 고려로 부터 제거할 수 있다. 도 8은 예시적인 절두체(812)를 도시한다. 이와 같이, 사용자가 전체 3D 모델의 일부를 확대하거나 볼 수 있는 경우, 뷰 절두체 외부의 샤드에 해당하는 샤드는 모델의 2D 이미지를 생성하는 데 사용되지 않을 수 있다. 일부 예에서, 주어진 샤드가 뷰 절두체의 부분적으로 내부에 및 부분적으로 외부에 있을 수 있다. 이 경우, 부분적으로라도 뷰 절두체의 내부에 있는 샤드는 고려될 수 있으며, 및 뷰 절두체에 완벽히 외부에 있는 샤드 만 고려에서 제거될 수 있다. 도 8의 예에서, 제7 및 제8 샤드(531, 532)는 뷰 절두체(812)의 완벽히 외부에 있으므로 고려에서 제외된다. 대조적으로, 도 8의 예에서, 제5 샤드(525)는 절두체(812) 내에 부분적으로 존재하므로 고려될 것이다.
폐색 컬링은 결정된 시점에 대해 다른 샤드에 의해 부분적으로 또는 완전히 차단된 하나 이상의 샤드를 결정하는 단계를 포함할 수 있다. 예를 들어, 도 5, 6 및 8은 제6 샤드(526)가 제1, 제2 및 제4 샤드(521, 522, 524)에 의해 시점(viewpoint)(804)에 의해 시야에서 차단되는 것을 도시한다. 이와 같이, 제6 샤드(526)는 고려에서 제거될 수 있고, 재현 장치로 전송되는 2D 이미지를 결정하도록 처리되지 않을 수 있다.
상세 레벨 컬링은 도시된 물체의 상세 레벨에 기초하여 주어진 샤드가 고려에서 제거되어야 하는지 여부를 결정하는 단계를 포함할 수 있다. 예를 들어, 시점이 물체에서 멀리 떨어져 있는 경우, 주어진 샤드는 하나의 픽셀 또는 적은 수의 픽셀을 차지할 수 있다. 이 경우 샤드가 제거될 때 이미지에서 크게 영향을 받지 않을 때 샤드가 제거될 수 있다. 해상도 및 시점 위치/방향으로 인해 하나 이상의 샤드가 고려에서 제거되어 처리되지 않을 수 있다.
상기 리스트 된 컬링 기술 및 하나 이상의 다른 처리 기술에 기초하여 샤드 리스트가 결정되면, 복수의 처리 작업이 결정될 수 있다. 처리 작업은 각각 가시 샤드 또는 복수의 가시 샤드에 대응할 수 있고, 샤드 또는 샤드를 렌더링 하는 단계를 포함할 수 있다. 달리 말하면, 가시 샤드의 리스트가 결정되면, 샤드는 독립적으로 처리되어 복수의 2D 렌더링 된 이미지를 판정할 수 있고, 이는 결합되어 재현 장치로 전송될 수 있다.
복수의 작업 각각은 렌더링 작업(rendering task) 일 수 있으며, 이는 하나 이상의 컴퓨팅 장치에 의해 수행될 수 다. 일부 예에서, 하나 이상의 가입자 장치는 선착순으로 작업을 순차적으로 처리하는 데 사용될 수 있다. 예를 들어, 10 개의 샤드가 가시적인 경우, 재현 장치에 제시될 2D 이미지를 결정하기 위해 완료되어야 하는 10 개의 렌더링 작업이 있을 수 있다. 일부 예에서, 모든 렌더링 작업을 완료하는 단일 가입자 장치가 있을 수 있다. 10 개 렌더링 작업을 병렬로 처리할 수 있는 두 개 이상의 가입자 장치가 있을 수도 있다. 예를 들어, 제1 가입자는 제1 렌더링 작업을 취할 수 있는 반면, 제2 가입자는 제2 렌더링 작업을 취할 수 있다. 제1 가입자는 제2 가입자보다 더 강력한 프로세서를 포함할 수 있고, 따라서 제1 렌더링 작업을 신속하게 완료할 수 있다. 그런 다음 제1 가입자는 제3 렌더링 작업을 수행하고 완료할 수 있다. 그런 다음 두 번째 가입자가 두 번째 렌더링 작업을 완료하기 전에 제4 렌더링 작업을 수행하고 완료한다. 이와 같이, 렌더링 작업은 임의의 순서로, 병렬로 그리고 하나 이상의 장치에 의해 완료될 수 있다. 이런 방법으로, 다수의 가입자 장치는 가장 빠른 프로세서를 가진 가입자가 느린 가입자보다 더 많은 렌더링 작업을 완료할 수 있도록 효율적인 방식으로 렌더링 작업을 완료할 수 있다.
각각의 처리 작업은 가시 샤드 렌더링을 포함할 수 있다. 일부 예에서, 이것은 시선 추적(ray tracing), 래스터 화(asterization), 또는 3D 기하학적 형태를 2 차원으로 투영하는 다른 그러한 동작과 같은 결정된 시점 위치에 기초하여 3D 렌더링 동작을 수행하는 것을 포함할 수 있다. 본 명세서에 개시된 예는 특히 시선 추적과 관련하여 설명될 수 있지만, 2 차원으로 3D 기하학적 형태를 투영하기 위한 임의의 다른 동작이 사용될 수 있음에 유의해야 한다. 렌더링 작업을 완료한 가입자는 렌더링 되어야 하는 샤드의 식별자를 수신하고, 데이터베이스로부터 샤드를 구성하는 삼각형을 응답적으로 검색할 수 있다. 그 후 가입자는 각각의 픽셀에 대한 색상 및 깊이를 결정하기 위해 시선 추적 동작을 수행할 수 있다. 시선 추적 동작은 시점 위치에서 시작하여 표시될 각 픽셀을 통과하는 시선을 보내는 것으로 이해될 수 있다. 시선은 픽셀을 통과하고 렌더링 되는 샤드의 삼각형과 접촉할 수 있다. 시선은 삼각형에서 반사되어 하나 이상의 다른 삼각형 또는 광원에 접촉할 수 있다. 주어진 픽셀의 색상은 삼각형이 속하는 구성 요소에 해당할 수 있다. 각각의 픽셀은 또한 명암(shading) 및 조명(lighting) 정보를 포함할 수 있으며, 이는 픽셀에 대응하는 삼각형의 깊이에 대응할 수 있다. 이와 같이, 각각의 렌더링 된 픽셀은 색상 및 깊이 정보 모두를 포함할 수 있다. 주어진 픽셀의 깊이는 시선을 따라 시선과 교차된 삼각형 또는 다른 3D 기하학적 원시(geometric primitive)(큐브, 원뿔, 다각형, B-rep, CSG 트리 등)의 교차까지의 1 차원 거리로 결정될 수 있습니다.). 시선 추적은 도 11과 관련하여 아래에서 더 설명된다.
일부 예에서, 샤드마다 경계 볼륨 계층(boundary volume hierarchy)(BVH), 복셀 계층(voxel hierarchy), 공간 그리드(spatial grid) 등과 같은 미분 3D 렌더링 가속 데이터 구조(3D rendering acceleration data structure)가 결정될 수 있다. 본 명세서에 개시된 예는 BVH와 관련하여 설명될 수 있지만, 다른 데이터 구조가 또한 사용될 수 있음에 유의해야 한다. BVH는 하나 이상의 가입자에 의해 저장되고 액세스 될 수 있어, 주어진 샤드가 렌더링 되어야 할 때보다 신속하게 렌더링 될 수 있다. 이는 시점이 변경되고 샤드를 다시 렌더링 해야 할 때 특히 유용할 수 있다. 새 가입자는 샤드를 렌더링 해야 한다. 이 경우, BVH는 가입자가 데이터베이스에서 검색하여 샤드를 더 빨리 렌더링하는 데 사용될 수 있다.
BVH와 같은 3D 렌더링 가속 데이터 구조는 시선 추적 또는 스캔 라인 래스터 화에서 단일 시선에 대해 수행되어야 하는 시선 삼각형(또는 다른 기하학적 원시) 교차 테스트의 수를 감소할 수 있다. 이러한 감소는 삼각형(또는 다른 기하학적 원시)을 공간적으로 그룹화하고 그룹을 다른 단일 기하학적 원시로 그룹화함으로써 달성된다. 대리 원시(surrogate primitive)가 생성될 때 재귀적으로, 다른 프리미티브와 함께 점진적으로 트리 구조로 그룹화 될 수 있다. 이 트리 구조에 대해 교차를 하향식으로 수행하면 트리의 전체 분기를 효과적이고 효율적으로 컬링 할 수 있다. 이것은 교차 테스트가 수행되어야 하는 상당한 수의 리프 기하학적 원시(leaf geometric primitive)를 제거한다.
복셀(voxel)(예를 들어, 복수의 복셀(710))은 단일 라미네이트를 생성하는 데 필요한 최소 복수의 샤드 처리 작업 또는 렌더링 작업을 결정하기 위해 하나 이상의 컬링 작업에 사용될 수 있다. 도 7에 도시된 바와 같이, 샤드(521-526, 531, 532)는 적어도 하나의 복셀(710)을 차지한다. 다시 말해, 각각의 샤드(521-526, 531, 532)는 기준 프레임(306)의 적어도 하나의 3 차원 양자화된 공간 블록, 즉 복셀(710) 중 하나에 대응한다. 따라서, 복셀(710)이 뷰 절두체(812)에 존재하는지, 복셀(710)이 샤드를 포함하는지, 및 복셀(710)이 포함하는 샤드가 모델 뷰어(202)에 의해 결정될 수 있는데, 이는 도 8과 함께 아래에서 더 상세히 설명될 것이다.
일부 예에서, 시선 추적 대신 래스터 화 또는 다른 렌더링 기법을 사용할 수 있다. 그 후, 사용된 기술에 상관없이, 프로세싱 처리 작업(즉, 렌더링 작업)는 주어진 샤드에 대응하는 색상 및 깊이 정보를 갖는 픽셀을 포함하는 2D 이미지를 생성할 수 있다. 다수의 샤드가 가시적인 경우, 다수의 2D 이미지가 결정될 수 있다. 다수의 2D 이미지는 복수의 가시 샤드를 포함하는 단일 2D 이미지로 결합될 수 있다. 이 결합된 2D 이미지는 이후 재현 장치로 전송될 수 있다.
도 8은 도 2의 모델 뷰어(202)를 통해 시점(804)에 의해 보여지는 예시적인 3D 모델(302)을 도시한다. 도 8의 예시된 예에서, 시점(804)은 영화 필름 카메라로서 도시되어 있다. 시점(804)은 도 1의 재현 장치(114) 중 하나와 관련된다. 각각의 재현 장치(114)는 각각의 시점과 관련되고 다수의 시점이 3D 모델(302)을 동시에 볼 수 있다는 것을 이해해야 한다. 도 8에 도시된 바와 같이, 시점(804)은 뷰 절두체(812)를 통해 3D 모델을 도시한다. 다시 말하면, 시점(804)은 뷰 절두체(812)에 포함된 3D 모델(302)의 부분을 본다. 따라서, 도 8에 도시된 바와 같이, 뷰 절두체(812) 외부의 3D 모델(302)의 일부는 시점(804)으로부터 숨겨져 있다. 동작에서, 3D 모델(302)은 기준 프레임(reference frame)(306)에서 정지 상태로 유지되는 반면, 시점(804)은, 이중 화살표(808) 및 화살표 호(810)로 표시되는 것 처럼, 3D 모델(302)에 대해 기준 프레임(306)에서 이동, 변환, 근접(예를 들어, 확대(zoom in)) 및 후퇴(예를 들어, 축소(zoom out))한다. 유사하게, 3D 모델은 고정된 형상(statue)로서 작용하고, 시점(804)은 형상의 모든 면을 보기 위해 형상 주위를 걷는 관찰자이다. 동작에서, 3D 모델(시점(804) 포함)을 관찰하는 시점의 각각의 위치에 기초하여 3D 모델(302)의 2D 조립된 라미네이트 이미지는 도 1의 재현 장치(114) 상에 디스플레이 하기 위해 도 1의 서버(112)에 의해 렌더링 및 통신된다. 다시 말해, 시점(예를 들어, 시점(804))이 보는 것은 재현 장치(114) 상에 2D 라미네이트로서 도시된다. 다시 말해, 사용자는 재현 장치(114)를 통해 시점의 보기 좋은 지점(vantage point)으로부터 3D 모델(302)의 2D 라미네이트를 볼 수 있다. 3D 모델(302)의 2D 라미네이트를 생성 및 통신하는 것은 3D 모델을 구성하는 모든 데이터를 전송하고 상이한 시점에 대해 3D 모델을 렌더링/재 렌더링하는 것보다 더 효율적이라는 것을 이해하고 인식해야 한다. 다시 말해, 모든 3D 모델 데이터를 하나 이상의 서버 위치(예를 들어, 클라우드)에 저장하고 3D 모델 데이터를 전송하는 것 보다 간단한 2D 라미네이트 이미지를 재현 장치(114)에 전송하는 것이 더 쉽다. 따라서, 재현 장치(114)로 전송되는 데이터의 양을 감소시킴으로써 데이터 전송 효율이 향상된다. 동작에서, 도 2의 시점 결정기(210)는 기준 프레임(306)에서의 시점의 위치를 결정한다.
도 8에 도시된 바와 같이, 제1, 제2, 제3, 제4, 제5 및 제6 샤드(521, 522, 523, 524, 525, 526)를 포함하는 복셀(710)은 절두체(812)에 배치되고 따라서 시점(804)에 가시적이다. 제7 및 제8 샤드(531, 532)를 포함하는 복셀(710)은 뷰 절두체(812)의 외부에 있으며 따라서 시점(812)으로부터 숨겨져 있다. 따라서, 제1, 제2, 제3, 제4, 제5 및 제6 샤드(521, 522, 523, 524, 525, 526)는 가시 샤드 세트(visible shard set)(820)를 구성한다. 절두체(812)에 부분적으로만 포함되어 있음에도 불구하고, 도 8에 도시된 바와 같이, 제5 샤드(525)는 가시 샤드 세트(820)에 포함된다는 것을 이해해야 한다. 도 6, 7 및 8을 보면, 제1 샤드(521)에 의해 가려지더라도, 제6 샤드(526)는 절두체(812)에 존재하고 따라서 가시 샤드 세트(820)에 포함된다는 것을 더 인식하고 이해해야 한다. 또한, 제7 및 제8 샤드(531, 532)는 완벽하게 뷰 절두체(812) 외부에서 복셀(710) 내에 있기 때문에, 제7 및 제8 샤드(531, 532)는 숨겨진 샤드 세트(830)를 구성한다. 다시 말해, 시점(804)의 보기 좋은 지점으로부터, 가시 샤드 세트(820)는 가시적인 반면에 숨겨진 샤드 세트(830)는 시야에서 숨겨져 있다.
동작에서, 도 3-7의 예를 사용하여, 가시 샤드 결정기(204)는 기준 프레임(306)에서 제1, 제2, 제3, 제4, 제5 및 제6 샤드(521, 522, 523, 524, 525, 526)가 시점(804)의 위치에 기초하여 시점(804)에 가시적인 가시 샤드 결정을 한다. 다시 말해, 도 3-7의 예에 대해, 가시 샤드 결정기(204)는 시점(804)에 대한 가시 샤드의 세트 - 가시 샤드 세트(820) - 가 제1, 제2, 제3, 제4, 제5 및 제6 샤드(521, 522, 523, 524, 525, 526)를 포함한다고 결정한다. 또한, 가시 샤드 결정기(204)는 가시 샤드 세트(820)를 타일 생성기(206a 내지 206n)로 보낸다. 가시 샤드 결정기(204)에 의해 이루어진 가시 샤드 결정이 양자화됨을 이해해야 한다. 다시 말해, 주어진 시점에서 샤드의 일부만 보이거나 샤드가 가려져도, 가시 샤드 결정기(204)는, 제5 및 제6 샤드(525, 526)와 관련하여 위에서 설명된 바와 같이, 가시 샤드의 세트에서 부분적으로 보이는 및/또는 가려진 샤드를 포함한다.
도 9는 예시적인 3D 모델(302)의 가시 샤드 세트(820), 모델 뷰어(202)에 의해 생성된 대응하는 2D 타일, 및 모델 뷰어(202)에 의해 생성된 2D 라미네이트(930)를 도시한다. 도 10a 및 10b는 예시적인 모델 뷰어(202)에 의해 생성된 예시적인 3D 모델(302)의 예시적인 2D 타일을 도시한다. 도 11은 가시 샤드 세트(820)의 일부인 제1 샤드(521)와 교차하는 시점(804)에 대응하는 시선(ray)(1120)의 측면도이다.
동작에서, 타일 생성기(206a 내지 206n)는 도 8에 도시된 가시 샤드 세트(820)에 기초하여 시점(804)에 대한 2D 타일을 생성한다. 보다 구체적으로, 하나 이상의 타일 생성기(206a 내지 206n)는 도 2의 데이터베이스(218)로부터 제1, 제2, 제3, 제4, 제5 및 제6 샤드(521, 522, 523, 524, 525, 526)를 검색한다. 다시 말해서, 가시 샤드의 세트(820)의 개별 샤드는 다수의 타일 생성기(206) 사이에 분배될 수 있다. 타일 생성기(206a 내지 206n)는 각각 3D를 제1, 제2, 제3, 제4, 제5 및 제6 샤드(521, 522, 523, 524, 525, 526)를 2D 타일로 렌더링(평탄하게)한다. 도 9, 10a 및 10b에 도시된 바와 같이, 제1 샤드(521)는 2D 제1 타일(921)에서 평탄화 된다. 제2 샤드(522)는 2D 제2 타일(922)로 평탄화 된다. 제3 샤드(523)는 2D 제3 타일(923)로 평탄화 된다. 제4 샤드(524)는 2D 제4 타일(924)로 평탄화 된다. 제5 샤드(525)는 2D 제5 타일(925)로 평탄화 된다. 제6 샤드(526)는 2D 제6 타일(926)로 평탄화 된다. 도 10a 및 10b에 도시된 바와 같이, 제1, 제2, 제3, 제4, 제5 및 제6 타일(921, 922, 923, 924, 925, 926)은 2D 기준 프레임(906)에 있다. 따라서, 가시 샤드의 세트(820)의 전체는 타일 생성기(206a 내지 206n)에 의해 2D 타일로 평탄화 된다.
도 11의 예시된 예에서, 시선(ray)(1120)은 시점 평면(viewing plane)(1110)의 픽셀(pixel)(1140)로부터 수직으로 연장된다. 시점 평면(1110)은 뷰 절두체(812)에서 시점(804)에 의해 보이는 2D 영역이다. 시점 평면(1110)은 열과 행으로 배열된 픽셀(1140)과 같은 복수의 픽셀을 포함한다는 것을 이해해야 한다. 도 11에 도시된 바와 같이, 제1 샤드(521)는 시선(1120)이 제1 샤드(521)와 교차하는 교차점(intersection point)(1130)에서 색상 값 c(예를 들어, 적색, 청색, 녹색, 회색 또는 임의의 가시광 선상의 임의의 색상) 및 깊이 값 d를 갖는다. 이 색 및 깊이 데이터는 도 11에서(c, d)로 종합하여 도시된다. 깊이 값 d는 시점 평면(1110)으로부터 교차점(1130)까지의 거리이다. 색상 값 c는 픽셀(1140)에서 시점 평면(1110)을 통해 시점(804)에 의해 볼 때 교차점(1130)에서의 제1 샤드(521)의 색상이다. 다시 말해, 시점(804)이 시점 평면(1110)을 볼 때, 픽셀(1140)은 색상 값 c를 가지며 깊이 값 d와 관련된다.
동작에서, 타일 생성기(206a 내지 206n)는 시선이 가시 샤드와 교차하는 모든 지점에 대한 개별 가시 샤드에 대한 색상 및 깊이 데이터를 결정한다. 따라서, 각각의 개별 가시 샤드에 대해, 개별 샤드가 보여지는 시점 평면의 각 픽셀에 대해 색상 및 깊이 데이터가 생성된다. 각각의 픽셀로부터의 색상 데이터는 2D 타일을 형성하고 깊이 데이터는(예를 들어, 메타 데이터로서) 각각의 픽셀과 관련된다. 즉, 2D 타일은 색상 픽셀의 집합이고 깊이 데이터는 각각의 색상 픽셀과 연관되어 있다. 타일 생성기(206a 내지 206n)는 타일 및 관련 깊이 데이터를 라미네이트 어셈블러(208)에 제공한다. 일부 예에서, 타일 생성기(206a 내지 206n)는 가시 샤드 시선 교차점에 대한 투명도 데이터를 추가로 결정할 수 있다.
동작에서, 라미네이트 어셈블러(laminate assembler)(208)는 타일 쌍(예를 들어, 제6 타일(926)을 갖는 제1 타일(921), 제4 타일(924)을 갖는 제3 타일(923) 등) 및 연관 깊이 및 투명도 데이터를 타일 합성기(212a 내지 212n)로 보내서 복합 타일(composite tile)에 병합된다. 따라서, 한 쌍의 타일을 합성하는 작업은 타일 합성기(212a 내지 212n) 사이에 퍼진다.
동작에서, 타일 합성기(212a 내지 212n)는 라미네이트 어셈블러(208)에 의해 제공된 타일의 각 픽셀의 각각의 깊이 데이터를 비교한다. 타일 내의 주어진 픽셀 위치에 대해, 타일 합성기(212a 내지 212n)는 가장 작은 깊이 값을 갖는 한 쌍의 타일 사이에서 색상 픽셀을 선택한다. 다시 말해, 타일 합성기(212)는 한 쌍의 타일들 사이의 픽셀이 시점 평면(1110)에 가장 가까운 것에 기초하여 한 쌍의 타일을 복합 타일로 병합한다. 따라서, 각각의 복합 타일은 시점 평면(1110)에 가장 가까운 한 쌍의 타일 사이의 색상 픽셀의 집합이다. 또한, 복합 타일의 각 픽셀은 색상 데이터 및 깊이 데이터를 갖는다. 타일 합성기(212a 내지 212n)는 복합 타일을 라미네이트 어셈블러(208)에 전달한다. 타일에 투명도 데이터가 포함된 예에서, 타일 합성기(212a 내지 212n)는 투명도 데이터 및 비 선택된 픽셀의 색상 데이터에 기초하여 선택된 픽셀의 색상 데이터를 조정한다.
추가 동작에서, 라미네이트 어셈블러(208)는, 타일 생성기(206a 내지 206n)에 의해 원래 전달된 모든 타일이 최종 라미네이트(930)로 합성될 때까지, 타일 합성기(212a 내지 212n)에 복합 타일 쌍 및 원래 타일 또는 복합 타일 쌍을 보냄으로써 타일 합성 처리를 계속한다. 도 9의 예에서, 2D 라미네이트(930)는 절두체(812)에서 시점(804)에 의해 관찰된 바와 같이 3D 모델(302)의 합성된 2D 이미지이다.
또한, 라미네이트 어셈블러(208)는 2D 라미네이트(930)를 재현 장치(114) 상에 디스플레이 하기 위해 재현 장치(114)로 보낸다. 즉, 도 9에 도시된 바와 같이, 타일 생성기(206a 내지 206n)는 가시 샤드 세트(820)를 2D 타일(921-926)로 변환하고, 타일 합성기(212a 내지 212n)는 픽셀 깊이 데이터에 따라 타일(921-926)을 라미네이트(930)로 연속적으로 합성하고, 라미네이트 어셈블러(208)는 라미네이트(930)을 재현 장치(114)에 전달한다.
도 12는 도 2의 예시적인 모델 뷰어(202)에 의해 생성된 예시적인 3D 모델(302)의 2D 라미네이트(1212)의 집합을 도시한다. 도 12의 예시된 예에서, 2D 라미네이트(1212)의 집합은 도 9의 제1 라미네이트(930), 제2 라미네이트(932), 제3 라미네이트(933), 제4 라미네이트(934) 및 제5 라미네이트(935)를 포함한다. 제1, 제2, 제3, 제4 및 제5 라미네이트(930, 932, 933, 934, 935) 각각은 3D 모델(302) 예에 관한 기준 프레임(예를 들어, 도 3-11의 기준 프레임(306))에서의 상이한 시점 위치에 각각 대응한다. 다시 말해, 제1, 제2, 제3, 제4 및 제5 라미네이트(930, 932, 933, 934, 935)는 기준 프레임(306)의 제1, 제2, 제3, 제4 및 제5 위치에서 3D 모델(302)의 시점(804)에 의해 관찰되는 이미지이다.
동작에서, 도 12의 예에서, 도 2의 타일 생성기(206a 내지 206n), 타일 합성기(212a 내지 212n) 및 라미네이트 어셈블러(208)는 시점(804)이 기준 프레임(306)에서 이동함으로써 제1, 제2, 제3, 제4 및 제5 라미네이트(930, 932, 933, 934, 935)를 연속적으로 생성한다. 동작에서, 타일 생성기(206a 내지 206n)는 시점(804)이 프레임 레이트(예를 들어, 초당 24 프레임, 초당 40 프레임 등)에 따라 시점 위치들 사이에서 이동함에 따라 2D 타일을 생성하고 타일 합성기(212a 내지 212n) 복합 2D 라미네이트를 생성한다. 타일 생성기(206a 내지 206n)는 시점이 가상 3D 공간에서 시점 위치에 고정된 상태로 유지될 때 새로운 2D 타일을 생성하지 않으므로, 처리 능력을 보존한다. 다시 말해, 타일 생성기(206a 내지 206n)는 재현 장치(114)로부터의 이동 입력에 응답하여 타일 합성기(212a 내지 212n)에 의해 2D 라미네이트로 합성을 위한 2D 타일을 생성한다.
추가 동작에서, 도 2의 인터페이스(214)는 재현 장치(예를 들어, 도 1의 재현 장치(114) 중 하나)에서 빠르게 생성된 라미네이트를 디스플레이 한다. 따라서, 3D 모델의 모션의 착시(illusion)(예를 들어, 회전, 병진 등)는 재현 장치 상에 정적 라미네이트를 신속하게 디스플레이함으로써 재현 장치의 사용자를 위해 생성된다. 다시 말해, 모델 뷰어(202)는 재현 장치(114)를 통해 사용자에게 빠르게 보여지는 정적 라미네이트의 전자 플립북(electronic flipbook)을 생성한다. 도 12의 예시된 예에서, 따라서, 3D 모델(302)은 라미네이트(1212)의 집합에서 회전하는 것으로 보인다. 형상 비유로 되돌아 가면, 모델 뷰어(202)는 고정된 형상에 대해 촬영된 2D 이미지의 스택을 사용자 앞에서 뒤집는다. 사용자가 여전히 서있을 수 있지만, 형상은 사용자 앞에서 회전하는 것으로 보인다. 따라서, 도 12의 예시된 예에서, 3D 모델(302)은 제1, 제2, 제3, 제4 및 제5 라미네이트(930, 932, 933, 934, 935)가 왼쪽에서 오른쪽으로 진행함에 따라 회전하는 것으로 보인다.
본 명세서에 포함된 실시 예는 다양한 이미지, 라미네이트, 샤드 및 기타 시각적 특징을 스크린 또는 디스플레이 장치에 디스플레이 하는 것을 포함하여 설명되었다. 특정 예는 증강 현실(augmented reality) 및/또는 가상 현실 애플리케이션의 맥락에서 본 명세서에 설명된 개념의 사용을 포함할 수 있음을 이해해야 한다. 증강 현실 맥락(augmented reality context)에서, 이미지, 라미네이트, 샤드 또는 다른 시각적 특징이 투명한 배경과 함께 제공될 수 있다. 투명한 배경은 디스플레이 장치가 제공된 이미지를 로컬 카메라 이미지 또는 뷰 상에 중첩할 수 있게 하여, 이미지, 라미네이트 또는 샤드 내의 물체가 카메라 시야 내에 위치되는 것처럼 보이게 할 수 있다. 이것은 개시된 개념이 증강 현실과 어떻게 사용될 수 있는 지의 일례이다. 다른 기술들도 사용될 수 있음을 이해해야 한다. 또한, 여기에 개시된 개념은 가상 현실 맥락에서 사용될 수 있다. 예를 들어, 다수의 이미지, 라미네이트 또는 디스플레이 된 샤드는 장치가 가상 현실 디스플레이에 사용될 수 있도록 입체적인 방식으로 장치에 제공될 수 있다. 본 명세서에 개시된 기술 및 개념을 사용하여 스테레오 그래픽 디스플레이를 위한 이중 이미지를 제공하는 것은 디스플레이 장치 자체에서 상당한 처리에 대한 필요성을 제거할 수 있다. 이러한 방식으로, 가상 현실 디스플레이 장치는 보다 소형이고, 전력 효율적이며, 보다 단순하고 비용 효율적인 디자인 일 수 있다.
도 13은 라미네이트를 디스플레이 하기 위해 도 2의 예시적인 모델 뷰어(202)를 구현하기 위해 실행될 수 있는 기계 판독 가능 명령어를 나타내는 흐름도이다. 도 13의 흐름도는 메모리(도 14의 메모리(1404)와 같은)에 저장되는 기계 판독 가능 명령어를 나타내고, 프로세서(도 14의 프로세서(1406)와 같은)에 의해 실행될 때, 환경(110)이 도 2의 예시적인 모델 뷰어(202)를 구현하게 하는 하나 이상의 방법을 포함한다. 예시적인 프로그램(1300)이 도 13에 도시된 흐름도를 참조하여 설명되었지만, 예시적인 모델 뷰어(202)를 구현하는 많은 다른 방법들이 대안적으로 사용될 수 있다. 예를 들어, 블록들의 실행 순서는 방법들(1300)을 수행하기 위해 재배열, 변경, 제거 및/또는 결합될 수 있다. 또한, 방법(1300)이 도 2의 구성 요소와 관련하여 개시되기 때문에, 이들 구성 요소의 일부 기능은 아래에서 상세히 설명되지 않을 것이다.
"비 일시적 컴퓨터 판독 가능 매체(non-transitory computer-readable medium)" 및 "컴퓨터 판독 가능 매체"라는 용어는 중앙 또는 분산 데이터베이스와 같은 단일 매체 또는 다중 매체, 및/또는 하나 이상의 명령 세트를 저장하는 관련 캐시 및 서버를 포함한다. 또한, "비 일시적 컴퓨터 판독 가능 매체" 및 "컴퓨터 판독 가능 매체"라는 용어는 프로세서에 의해 실행되도록 명령 세트를 저장, 인코딩 또는 운반할 수 있거나 시스템이 임의의 본 명세서에 개시된 하나 이상의 방법 또는 동작을 수행하게 하는 임의의 유형의 매체를 포함한다. 본 명세서에서 사용되는 용어 "컴퓨터 판독 가능 매체"는 임의의 유형의 컴퓨터 판독 가능 저장 장치 및/또는 저장 디스크를 포함하고 전파 신호를 배제하도록 명백하게 정의된다.
도 13의 예시된 예에서, 예시적인 인터페이스(214)는 재현 장치(114)로부터 입력(예를 들어, 이동 입력, 라미네이트 디스플레이 요청 등)을 수신한다(블록 1302). 시점 결정기(210)는 입력에 대응하는 3D 모델과 관련된 기준 프레임에서 시점 위치를 결정한다(블록 1304). 가시 샤드 결정기(204)는 시점 위치에 기초하여 3D 모델의 가시 샤드 세트를 결정하기 위해 데이터베이스(218)에 액세스한다(블록 1306). 가시 샤드 결정기(204)는 가시 샤드 세트의 개별 샤드를 타일 생성기(206a 내지 206n)에 할당한다(블록 1308). 타일 생성기(206a 내지 206n)는 데이터베이스(218)로부터 할당된 가시 샤드를 검색한다(블록 1310). 타일 생성기(206a 내지 206n)는 할당된 가시 샤드를 2D 타일로 렌더링 하고 2D 타일을 라미네이트 어셈블러(208)에 전달한다(블록 1312). 타일 합성기(212a 내지 212n)는 라미네이트 어셈블러(208)로부터 수신된 2D 타일을 연속적으로 병합하여 2D 타일을 2D 라미네이트로 조립한다(블록 1314). 인터페이스(214)는 2D 라미네이트를 재현 장치(114)에 전송한다(블록 1316). 이어서 방법(1300)은 종료된다.
도 14는 도 2의 예시적인 모델 뷰어(202)를 구현하기 위해 도 13의 명령어를 실행할 수 있는 예시적인 컴퓨팅 플랫폼(computing platform)(1402)의 블록도이다. 도 14의 예시된 예에서, 컴퓨팅 플랫폼(1402)은 메모리(1404), 프로세서(processor)(1406), 입력 장치(input device(s))(1408), 인터페이스(interface)(1410), 출력 장치(output device(s))(1412) 및 버스(1414)를 포함한다.
도 14의 예시된 예에서, 메모리(1404), 프로세서(1406), 인터페이스(1410) 및 출력 장치(들)(1412)는 버스(1414)를 통해 서로 통신한다. 입력 장치(들)(1408)는 인터페이스(1410)와 통신한다.
도 14의 예시된 예에서, 온보드 컴퓨팅 플랫폼(on-board computing platform)(1402)의 프로세서(1406)는 모델 뷰어(202)를 포함하도록 구성된다. 프로세서(1406)는, 마이크로 프로세서, 마이크로 컨트롤러 기반 플랫폼, 집적 회로, 하나 이상의 필드 프로그램 가능 게이트 어레이(field programmable gate array)(FPGA) 및/또는 하나 이상의 또는 더 많은 ASIC(application-specific integrated circuit)과 같은 , 그러나 이에 제한되지 않는, 임의의 적절한 처리 장치 또는 처리 장치 세트 일 수 있다. 메모리(1404)는 휘발성 메모리(예를 들어, 비 휘발성 RAM, 자기 RAM, 강유전성 RAM 등을 포함하는 RAM), 비 휘발성 메모리(예를 들어, 디스크 메모리, 플래시 메모리, EPROM, EEPROM, 멤리스터 기반 비 휘발성 솔리드 스테이트 메모리(memristor-based non-volatile solid-state memory) 등), 변경불가 메모리(unalterable memory)(예를 들어, EPROM), 읽기 전용 메모리(read-only memory) 및/또는 대용량 저장 장치(high-capacity storage device)(예를 들어, 하드 드라이브, 솔리드 스테이트 드라이브 등)일 수 있다. 일부 예에서, 메모리(1404)는 여러 종류의 메모리, 특히 휘발성 메모리 및 비 휘발성 메모리를 포함한다.
메모리(1404)는 본 개시의 방법을 동작시키기 위한 소프트웨어와 같은 하나 이상의 명령 세트(1418)가 내장될 수 있는 컴퓨터 판독 가능 매체이다. 명령(1418)은 본 명세서에 설명된 바와 같은 하나 이상의 방법 또는 로직을 구현할 수 있다. 예를 들어, 명령(1418)은 명령(1418)의 실행 동안 메모리(1404), 컴퓨터 판독 가능 매체, 및/또는 프로세서(1406) 중 임의의 하나 이상 내에 완전히 또는 적어도 부분적으로 상주한다.
인터페이스(1410)는 임의의 유형의 인터페이스 표준에 의해 구현될 수 있다(예를 들어, 이더넷, USB(범용 직렬 버스) 및/또는 주변 컴포넌트 상호연결(PCI) 급속 인터페이스(Peripheral Component Interconnect) Express interface). 인터페이스(1410)는 네트워크(1416)를 통해 외부 장치 및/또는 컴퓨팅 장치와 데이터를 교환하기 위한 통신 장치(예를 들어, 송신기, 수신기, 트랜시버, 모뎀, 네트워크 인터페이스 카드 등)를 포함한다(예를 들어, 이더넷 연결, 무선 연결, 전화선, 동축 케이블, 셀룰러 전화 시스템 등).
기계 판독 가능 명령(machine readable instruction)(1418)는 메모리(1404) 및/또는 착탈식 유형 컴퓨터 판독 가능 매체 저장 장치(예를 들어, 컴팩트 디스크, 디지털 다용도 디스크, 블루 레이 디스크, USB 드라이브 등)에 저장될 수 있다.
도 14의 예시된 예에서, 입력 장치(들)(1408)는 조작자 또는 기술자와 같은 사용자가 명령, 명령어 및/또는 데이터를 프로세서(1406)에 제공할 수 있게 한다. 입력 장치(들)(1408)의 예는 버튼, 제어 노브, 계기판, 터치 스크린, 터치 패드, 키보드, 마우스, 음성 인식 시스템 등 중 하나 이상을 포함한다.
도시된 예의 출력 장치(들)(1412)는 프로세서(1406)의 출력 정보 및/또는 데이터를 조작자 또는 기술자와 같은 사용자에게 표시한다. 출력 장치(들)(1412)의 예는 액정 디스플레이(LCD), 유기 발광 다이오드(OLED) 디스플레이, 평판 디스플레이, 터치 스크린, 솔리드 스테이트 디스플레이, 및/또는 시각적으로 시각적 인 임의의 다른 장치를 포함한다. 정보를 사용자에게 제공한다. 추가적으로 또는 대안적으로, 출력 장치(들)는 사용자에게 오디오 신호를 제공하는 하나 이상의 스피커 및/또는 다른 장치(들)를 포함할 수 있다. 또한, 출력 장치(들)(1412)는 햅틱 신호들(haptic signal)과 같은 다른 유형의 출력 정보를 제공할 수 있다.
상기로부터, 상기 개시된 방법 및 장치는 제품 설계 프로세스 동안 3D 모델의 동시 보기를 도울 수 있음을 이해할 것이다. 따라서 사용자는 실시간으로 서로 협업하여 3D 모델로 표현된 제품에 대한 의견을 제시할 수 있다. 또한, 상기 개시된 방법 및 장치는 설계 프로세스 동안 큰 3D 모델 파일이 이메일, FTP 등을 통해 전송되는 횟수를 감소시킴으로써 컴퓨터 관련 기술에 대한 특정 개선을 제공한다. 따라서 프로세서가 다른 작업을 보다 빠르게 수행하고 에너지 소비를 줄일 수 있다.
특정 예시적인 방법, 장치 및 제조 물품이 여기에 개시되었지만, 본 특허의 범위는 이에 제한되지 않는다. 반대로, 이 특허는 본 특허 청구 범위의 범위 내에 있는 모든 방법, 장치 및 제조 물품을 포함한다.

Claims (21)

  1. 장치에 있어서,
    재현 장치에 대응하는 시점의 시점 위치를 결정하기 위한 시점 결정기 - 상기 시점 위치는 3 차원(3D) 모델의 기준 프레임 내에 있음 -;
    상기 시점 위치에 기초하여 3D 모델의 가시 샤드 세트를 결정하기 위한 가시 샤드 결정기; 및
    상기 가시 샤드 세트에 기초하여 2 차원(2D) 이미지를 생성하는 타일 합성기
    를 포함하는
    장치.
  2. 제1항에 있어서,
    상기 가시 샤드 결정기는 데이터베이스에서 상기 시점 위치를 참조하고, 상기 가시 샤드 세트는 상기 데이터베이스의 상기 시점 위치와 연관되는
    장치.
  3. 제1항에 있어서,
    상기 가시 샤드 세트의 개별 샤드를 2D 타일로 평탄화 하기 위한 타일 생성기
    를 더 포함하는
    장치.
  4. 제3항에 있어서,
    상기 타일 생성기는 데이터베이스에서 상기 가시 샤드 세트를 검색하는
    장치.
  5. 제3항에 있어서,
    상기 가시 샤드 결정기는 상기 가시 샤드 세트를 상기 타일 생성기에 전달하는
    장치.
  6. 제3항에 있어서,
    상기 타일 합성기는 상기 2D 타일을 2D 라미네이트로 병합하여 2D 이미지를 생성하는
    장치.
  7. 제3항에 있어서,
    상기 타일 합성기는 상기 2D 타일의 깊이 데이터에 기초하여 상기 2D 타일을 병합하는
    장치.
  8. 방법에 있어서,
    프로세서와의 명령을 실행함으로써, 재현 장치에 대응하는 시점의 시점 위치를 결정하는 단계 - 상기 시점 위치는 3 차원(3D) 모델의 기준 프레임 내에 있는 -;
    상기 프로세서와의 명령을 실행함으로써, 상기 시점 위치에 기초하여 3D 모델의 가시 샤드 세트를 결정하는 단계; 및
    상기 프로세서와의 명령을 실행함으로써, 상기 가시 샤드 세트에 기초하여 2 차원(2D) 이미지를 생성하는 단계
    를 포함하는
    방법.
  9. 제8항에 있어서,
    상기 시점 위치를 결정하는 단계는 데이터베이스에서 상기 시점 위치를 참조하는 단계 - 상기 가시 샤드 세트는 상기 데이터베이스에서의 상기 시점 위치와 연관되는 -
    를 포함하는
    방법.
  10. 제8항에 있어서,
    상기 2D 이미지를 생성하는 단계는 데이터베이스로부터 상기 가시 샤드 세트를 검색하는 단계
    를 포함하는
    방법.
  11. 제8항에 있어서,
    상기 가시 샤드 세트의 개별 샤드를 2D 타일로 평탄화 하는 단계
    를 더 포함하는
    방법.
  12. 제11항에 있어서,
    상기 2D 타일을 2D 라미네이트로 합성하는 단계
    를 더 포함하는
    방법.
  13. 제11항에 있어서,
    상기 2D 타일의 깊이 데이터를 비교하는 단계
    를 더 포함하는
    방법.
  14. 제8항에 있어서,
    상기 가시 샤드 세트의 개별 샤드를 할당하는 단계
    를 더 포함하는
    방법.
  15. 컴퓨터 판독 가능 명령을 포함하는 유형의 컴퓨터 판독 가능 저장 매체에 있어서,
    실행될 때 프로세서로 하여금 적어도,
    재현 장치에 대응하는 시점의 시점 위치를 결정하는 단계 - 상기 시점 위치는 3 차원(3D) 모델의 기준 프레임 내에 있음 -;
    상기 시점 위치에 기초하여 3D 모델의 가시 샤드 세트를 결정하는 단계; 및
    가시 샤드 세트의 2 차원(2D) 이미지를 생성하는 단계
    를 포함하는
    장치.
  16. 제15항에 있어서,
    상기 시점 위치를 결정하기 위한 상기 명령은 상기 프로세서로 하여금 데이터베이스에서 시점 위치를 참조하게 하고,
    상기 가시 샤드 세트가 상기 데이터베이스의 상기 시점 위치와 연관되는
    장치.
  17. 제15항에 있어서,
    상기 2D 이미지를 생성하라는 상기 명령은 상기 프로세서로 하여금 데이터베이스로부터 상기 가시 샤드 세트를 참조하게 하는
    장치.
  18. 제15항에 있어서,
    상기 명령은 상기 프로세서로 하여금 추가로 상기 가시 샤드 세트의 개별 샤드를 2D 타일로 평탄화 하는
    장치.
  19. 제18항에 있어서,
    상기 명령은 상기 프로세서로 하여금 추가로 상기 2D 타일을 2D 라미네이트로 병합하게 하는
    장치.
  20. 제18항에 있어서,
    상기 명령은 상기 프로세서로 하여금 추가로 상기 2D 타일의 깊이 데이터를 비교하게 하는
    장치.
  21. 제20항에 있어서,
    상기 명령은 상기 프로세서로 하여금 추가로 상기 가시 샤드 세트의 개별 샤드를 할당하게 하는
    장치.

KR1020207024327A 2018-01-25 2019-01-25 여러 장치에 대한 3d 개체 시각화 및 조작을 용이하게 하는 방법 및 장치 KR20200131817A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862622075P 2018-01-25 2018-01-25
US62/622,075 2018-01-25
PCT/US2019/015101 WO2019147907A2 (en) 2018-01-25 2019-01-25 Methods and apparatus to facilitate 3d object visualization and manipulation across multiple devices

Publications (1)

Publication Number Publication Date
KR20200131817A true KR20200131817A (ko) 2020-11-24

Family

ID=67396195

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207024327A KR20200131817A (ko) 2018-01-25 2019-01-25 여러 장치에 대한 3d 개체 시각화 및 조작을 용이하게 하는 방법 및 장치

Country Status (8)

Country Link
US (3) US10950044B2 (ko)
EP (1) EP3743887A4 (ko)
JP (1) JP7500017B2 (ko)
KR (1) KR20200131817A (ko)
CN (1) CN111937039A (ko)
CA (1) CA3089062A1 (ko)
MX (1) MX2020007891A (ko)
WO (1) WO2019147907A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230066906A (ko) * 2021-11-08 2023-05-16 주식회사 쓰리아이 이미지 출력 방법 및 장치

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11687687B1 (en) 2022-03-18 2023-06-27 Protolabs, Inc. Apparatuses and methods for superimposition of a cross-sectional drawing over a three-dimensional model
CN117788641B (zh) * 2023-12-28 2024-08-13 广州中望龙腾软件股份有限公司 一种实体绘制方法、装置、计算机设备和存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995004330A1 (en) * 1993-07-27 1995-02-09 Taligent, Inc. Object-oriented rendering system
JP2000020698A (ja) * 1998-07-06 2000-01-21 Fuji Photo Film Co Ltd 3次元画像ファイル作成方法および装置、画像生成方法および装置並びにこれらの方法をコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体
US7453459B2 (en) * 2001-02-26 2008-11-18 Adobe Systems Incorporated Composite rendering 3-D graphical objects
JP4736239B2 (ja) * 2001-05-25 2011-07-27 大日本印刷株式会社 模様画像作成方法および装置
JP4467267B2 (ja) * 2002-09-06 2010-05-26 株式会社ソニー・コンピュータエンタテインメント 画像処理方法、画像処理装置、および画像処理システム
WO2006115716A2 (en) * 2005-04-05 2006-11-02 Sunfish Studio, Llc System and method of visible surface determination in computer graphics using interval analysis
KR100767278B1 (ko) * 2005-04-15 2007-10-17 충남대학교산학협력단 3차원 곡면의 2차원 평면으로의 패턴전개를 이용한맞춤의복의 디자인 방법
JP2010165100A (ja) * 2009-01-14 2010-07-29 Cellius Inc 画像生成システム、プログラム及び情報記憶媒体
US20130300740A1 (en) * 2010-09-13 2013-11-14 Alt Software (Us) Llc System and Method for Displaying Data Having Spatial Coordinates
US8896598B2 (en) * 2010-12-03 2014-11-25 Dassault Systemes System and associated methodology for three-dimensional rendering of data containing clipping shapes
GB201102794D0 (en) * 2011-02-17 2011-03-30 Metail Ltd Online retail system
US20150006361A1 (en) * 2013-06-28 2015-01-01 Google Inc. Extracting Card Data Using Three-Dimensional Models
US20150015582A1 (en) * 2013-07-15 2015-01-15 Markus Kaiser Method and system for 2d-3d image registration

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230066906A (ko) * 2021-11-08 2023-05-16 주식회사 쓰리아이 이미지 출력 방법 및 장치

Also Published As

Publication number Publication date
US11468635B2 (en) 2022-10-11
US10950044B2 (en) 2021-03-16
JP7500017B2 (ja) 2024-06-17
US20210201574A1 (en) 2021-07-01
US20230022985A1 (en) 2023-01-26
WO2019147907A3 (en) 2020-04-16
MX2020007891A (es) 2020-10-16
CN111937039A (zh) 2020-11-13
CA3089062A1 (en) 2019-08-01
JP2021511614A (ja) 2021-05-06
WO2019147907A2 (en) 2019-08-01
EP3743887A2 (en) 2020-12-02
US20190279423A1 (en) 2019-09-12
EP3743887A4 (en) 2021-12-01

Similar Documents

Publication Publication Date Title
US11468635B2 (en) Methods and apparatus to facilitate 3D object visualization and manipulation across multiple devices
US10237531B2 (en) Discontinuity-aware reprojection
CN107784683B (zh) 四边形化的分层深度图像
US10217259B2 (en) Method of and apparatus for graphics processing
EP2966621A1 (en) Method and system for converting an existing 3D model into graphical data
WO2022063260A1 (zh) 一种渲染方法、装置及设备
CN103959340A (zh) 用于自动立体三维显示器的图形呈现技术
JP2012190428A (ja) 立体映像視覚効果処理方法
CN103632390A (zh) 一种利用d3d技术实现裸眼3d动画实时制作的方法
WO2021101703A1 (en) Dual mode post processing
TW202141418A (zh) 處理拆分渲染中的遮蔽之方法及裝置
WO2019042272A2 (en) MULTIPLE VIEW RENDERING SYSTEM AND METHOD
WO2017202079A1 (zh) 一种立体图像制作方法和设备
KR20230013099A (ko) 실시간 깊이 맵을 사용한 지오메트리 인식 증강 현실 효과
CN104463784B (zh) 一种2.5d模型的缩放方法
Van Bogaert et al. Novel view synthesis in embedded virtual reality devices
CN115035231A (zh) 阴影烘焙方法、装置、电子设备和存储介质
Yin et al. Multi-screen Tiled Displayed, Parallel Rendering System for a Large Terrain Dataset.
US20240112431A1 (en) System and method of three-dimensional model interaction on low end devices with photorealistic visualization
US11830140B2 (en) Methods and systems for 3D modeling of an object by merging voxelized representations of the object
RU2523980C2 (ru) Способ и система для визуализации набора мультимедиа объектов на 3d дисплее
Bettio et al. Scalable rendering of massive triangle meshes on light field displays
Stavrakis et al. Interactive tools for image-based stereoscopic artwork
JP6330310B2 (ja) 画像生成方法および画像生成装置ならびにプログラム
Farooq Real-time rendering of large surface-scanned range data natively on a GPU

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right