KR100543153B1 - 3차원 화상 처리 프로그램, 3차원 화상 처리 장치, 3차원화상 처리 방법 및 비디오 게임 장치 - Google Patents

3차원 화상 처리 프로그램, 3차원 화상 처리 장치, 3차원화상 처리 방법 및 비디오 게임 장치 Download PDF

Info

Publication number
KR100543153B1
KR100543153B1 KR1020030005216A KR20030005216A KR100543153B1 KR 100543153 B1 KR100543153 B1 KR 100543153B1 KR 1020030005216 A KR1020030005216 A KR 1020030005216A KR 20030005216 A KR20030005216 A KR 20030005216A KR 100543153 B1 KR100543153 B1 KR 100543153B1
Authority
KR
South Korea
Prior art keywords
vertex
patches
vertex coordinates
polygon
patch
Prior art date
Application number
KR1020030005216A
Other languages
English (en)
Other versions
KR20030064643A (ko
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 KR20030064643A publication Critical patent/KR20030064643A/ko
Application granted granted Critical
Publication of KR100543153B1 publication Critical patent/KR100543153B1/ko

Links

Images

Classifications

    • 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/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • 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

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

간극의 발생을 회피하면서 패치(또는 오브젝트)를 결합한다. 프로그램 실행부(400)는 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표를 설정하는 정점 좌표 설정부(401)와, 제1 및 제2 패치로부터 각각 결합 대상의 폴리곤의 정점을 선택하는 결합 정점 선택부(402)와, 선택된 폴리곤의 정점 좌표에 대하여 제1 패치측의 정점 좌표와 제2 패치측의 정점 좌표를 일치시키는 정점 좌표 변경부(403)를 구비한다.
패치, 오브젝트, 정점, 폴리곤

Description

3차원 화상 처리 프로그램, 3차원 화상 처리 장치, 3차원 화상 처리 방법 및 비디오 게임 장치{THREE-DIMENSIONAL IMAGE PROCESSING PROGRAM, THREE-DIMENSIONAL IMAGE PROCESSING APPARATUS, THREE-DIMENSIONAL IMAGE PROCESSING METHOD, AND VIDEO GAME DEVICE}
도 1은 본 발명의 3차원 화상 처리 장치가 적용되는 비디오 게임 장치의 일 실시예를 도시하는 블록 구성도.
도 2는 본 발명의 3차원 화상 처리 장치의 주요부를 도시하는 기능 블록도.
도 3은 분할수 테이블의 일례를 나타내는 도표.
도 4는 제어점의 위치와 자유 곡면의 형상과의 관계를 설명하기 위한 도면.
도 5는 제어점의 위치와 자유 곡면의 형상과의 관계를 설명하기 위한 도면.
도 6은 정점 좌표 변경 처리의 흐름도의 일례.
도 7은 2개의 패치를 서로 연결하는 경우에 도 6에 도시한 정점 좌표 변경 처리를 실시한 결과를 설명하기 위한 설명도의 일례.
도 8은 8개의 패치와 1개의 오브젝트를 결합하는 경우에 발생하는 간극을 설명하기 위한 설명도의 일례.
도 9는 도 8에 도시한 8개의 패치와 1개의 오브젝트를 결합하는 경우에 본 발명의 화상 처리를 실시한 결과를 설명하기 위한 도면의 일례.
도 10은 도 8에 도시한 패치 및 오브젝트를 구성하는 폴리곤에 텍스처를 붙임으로써 형성된 화면의 화면도의 일례.
도 11은 도 9에 도시한 패치 및 오브젝트를 구성하는 폴리곤에 텍스처를 붙임으로써 형성된 화면의 화면도의 일례.
도 12는 2개의 폴리곤 수(폴리곤의 정점 수)가 서로 다른 패치를 서로 연결하는 경우에 발생하는 간극을 설명하기 위한 도면의 일례.
〈도면의 주요 부분에 대한 부호의 설명〉
1 : CPU
2 : 버스 라인
3 : 그래픽스 데이터 생성 프로세서
4, 13 : 인터페이스 회로
5 : 메인 메모리
6 : ROM
7 : 신장 회로
8 : 병렬 포트
9 : 직렬 포트
10 : 묘화 프로세서
11 : 음성 프로세서
12 : 디코더
13 : 인터페이스 회로
21 : 텔레비전 모니터
29 : 컨트롤러
400 : 프로그램 실행부
401 : 정점 좌표 설정부(정점 좌표 설정 수단)
401a : 기준 좌표 설정부(기준 좌표 설정 수단)
401b : 시점 위치 설정부(시점 위치 설정 수단)
401c : 분할수 결정부(분할수 결정 수단)
401d : 자유 곡면 생성부(자유 곡면 생성 수단)
401e : 폴리곤 생성부(폴리곤 생성 수단)
402 : 결합 정점 선택부(결합 정점 선택 수단)
403 : 정점 좌표 변경부(정점 좌표 변경 수단)
500 : 기억부
501 : 제어점 좌표 기억부
502 : 분할수 테이블 기억부
본 발명은, 예를 들면 비디오 게임 장치 등에 적용되는 각각 복수의 폴리곤으로 구성되는 제1 및 제2 패치(patch)(또는 오브젝트)를 결합하는 3차원 화상 처리 기술에 관한 것이다.
최근, 캐릭터 등의 복수의 오브젝트를 모니터 화면 내에 작성되는 의사 3차원 공간 내에 표시하도록 한 여러가지의 게임 장치가 보급되고 있다. 이러한 게임 장치에서, 게임 화상을 표시하기 위해서, 게임 장치가 구비하는 CD-ROM 등의 기억 수단에 오브젝트(또는 오브젝트의 일부분인 패치)를 구성하는 폴리곤의 정점 좌표 등을 미리 저장해 두고, 가상 카메라 시점으로부터의 시계 중에 있는 오브젝트(또는 패치)의 정점 좌표 등을 기억 수단으로부터 판독하여, 가상 3차원 공간 내에서 서로 연결한 후, 2차원 화상에 투시 변환하여 모니터에 표시하고 있었다.
한편, 복잡한 형상의 오브젝트를 리얼하게 표시하기 위해서는, 오브젝트를 표현하는 폴리곤 모델을 구성하는 폴리곤의 수를 많게 할 필요가 있다. 반대로, 단순한 형상의 오브젝트(또는 패치)에서는 폴리곤의 수를 많게 하면 메모리 및 CPU 부하가 커져 바람직하지 않다. 그래서, 종래에는 오브젝트(또는 패치)를 구성하는 폴리곤 수를 해당 오브젝트(또는 패치)의 형상에 따라 결정하고 있었다.
그러나, 가상 3차원 공간 내에서 폴리곤 수(폴리곤의 정점 수)가 다른 오브젝트(또는 패치)를 서로 연결하는 경우에는, 도 12에 도시한 바와 같이 간극이 발생한다. 도 12는 2개의 폴리곤 수(폴리곤의 정점 수)가 서로 다른 패치를 서로 연결하는 경우에 발생하는 간극을 설명하기 위한 도면의 일례이다. 도 12에서, 좌측의 패치 PM1과 우측의 패치 PM2를 결합하는 경우에, 패치 PM1의 결합 대상이 되는 정점 PV101∼PV110이 10개이고, 패치 PM2의 결합 대상이 되는 정점 PV201∼PV208이 8개이므로(즉, 결합 대상이 되는 폴리곤의 정점 수가 다르기 때문에), 패치 PM1과 패치 PM2와의 결합 위치에 간극 CL1이 발생되고 있다.
이와 같이 오브젝트(또는 패치)를 결합할 때에 발생되는 간극은, 게임 화상의 화질을 저하시켜, 리얼리티를 손상시키는 원인이 된다.
본 발명은 상기한 과제를 감안하여 이루어진 것으로, 간극의 발생을 회피하면서 패치(또는 오브젝트)를 결합하는 3차원 화상 처리 프로그램, 3차원 화상 처리 장치, 3차원 화상 처리 방법 및 비디오 게임 장치를 제공하는 것을 목적으로 한다.
본 발명에 따른 3차원 화상 처리 프로그램은, 각각 복수의 폴리곤으로 구성되는 제1 및 제2 패치를 결합하는 3차원 화상 처리 프로그램으로서, 컴퓨터를, 상기 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표를 설정하는 정점 좌표 설정 수단과, 상기 제1 및 제2 패치로부터 각각 결합 대상의 폴리곤의 정점을 선택하는 결합 정점 선택 수단과, 선택된 폴리곤의 정점 좌표에 대하여 상기 제1 패치측의 정점 좌표와 상기 제2 패치측의 정점 좌표를 일치시키는 정점 좌표 변경 수단으로서 기능시키는 것을 특징으로 한다.
상기한 발명에 따르면, 정점 좌표 설정 수단에 의해 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표가 설정되고, 결합 정점 선택 수단에 의해 제1 및 제2 패치로부터 각각 결합 대상의 폴리곤의 정점이 선택되고, 정점 좌표 변경 수단에 의해 선택된 폴리곤의 정점 좌표에 대하여 제1 패치측의 정점 좌표와 제2 패치측의 정점 좌표가 일치하도록 정점 좌표의 변경이 실시된다. 제1 및 제2 패치의 결합 대상의 폴리곤의 정점 좌표가 일치함으로써, 양자 사이의 간극은, 말하자면 봉합되는 형태로 결합되고, 제1 및 제2 패치를 결합하여 형성되는 화상의 화질 및 리얼리티가 향상된다.
본 발명에 따른 3차원 화상 처리 프로그램에 있어서, 상기 정점 좌표 변경 수단이 상기 제1 패치에 있어서의 결합 대상의 폴리곤의 정점 수가 상기 제2 패치에 있어서의 결합 대상의 폴리곤의 정점 수보다 많은 경우에, 상기 제1 패치에 있어서의 결합 대상의 폴리곤의 정점 좌표를 상기 제2 패치에 있어서의 결합 대상의 폴리곤의 정점 좌표에 일치시키는 것을 특징으로 한다.
상기한 발명에 따르면, 정점 좌표 변경 수단에 의해 제1 패치에 있어서의 결합 대상의 폴리곤의 정점 수가 제2 패치에 있어서의 결합 대상의 폴리곤의 정점 수보다 많은 경우에, 제1 패치에 있어서의 결합 대상의 폴리곤의 정점 좌표가 제2 패치에 있어서의 결합 대상의 폴리곤의 정점 좌표에 일치하도록 정점 좌표의 변경이 실시된다. 즉, 정점 수가 많은 측의 패치에 있어서의 결합 대상의 폴리곤의 정점 좌표가 정점 수가 적은 측의 패치에 있어서의 결합 대상의 폴리곤의 정점 좌표에 일치하게 되므로, 정점 수를 증가(폴리곤을 증가)시키지 않고 용이하게 패치를 결합할 수 있게 된다.
본 발명에 따른 3차원 화상 처리 프로그램에 있어서, 정점 좌표 설정 수단이 상기 제1 및 제2 패치를 각각 규정하도록 미리 준비된 좌표 정보를 갖는 제어점을 이용하여 자유 곡면을 생성하는 자유 곡면 생성 수단과, 자유 곡면을 분할하기 위한 소정의 분할수를 이용하여 생성된 자유 곡면을 분할하여 상기 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표를 생성하는 폴리곤 생성 수단을 포함하는 것을 특징으로 한다.
상기한 발명에 따르면, 자유 곡면 생성 수단에 의해 제1 및 제2 패치를 각각 규정하도록 미리 준비된 좌표 정보를 갖는 제어점을 이용하여 자유 곡면이 생성되고, 폴리곤 생성 수단에 의해 자유 곡면을 분할하기 위한 소정의 분할수를 이용하여 생성된 자유 곡면이 분할되어 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표가 생성된다. 그래서, 컴퓨터는 폴리곤의 정점 좌표에 비하여 적은 수의 제어점의 좌표 정보를 기억하고 있기 때문에, 미리 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표를 기억하고 있는 경우와 비교하여, 필요한 기억 용량이 저감된다.
본 발명에 따른 3차원 화상 처리 프로그램에 있어서, 정점 좌표 설정 수단이 가상 시점의 위치를 설정하는 시점 위치 설정 수단과, 가상 시점 위치 정보를 이용하여 분할수를 구하는 분할수 결정 수단을 포함하고, 폴리곤 생성 수단이 구해진 분할수를 이용하여 폴리곤의 정점 좌표를 생성하는 것을 특징으로 한다.
상기한 발명에 따르면, 시점 위치 설정 수단에 의해 가상 시점의 위치가 설정되고, 분할수 결정 수단에 의해 가상 시점 위치 정보를 이용하여 분할수가 구해진다. 그리고, 폴리곤 생성 수단에 의해 구해진 분할수를 이용하여 폴리곤의 정점 좌표가 생성된다. 그래서, 가상 시점의 위치로부터 패치가 멀수록, 분할수를 적게 함으로써, 화질의 저하가 억제되면서 처리 속도의 향상이 도모된다.
본 발명에 따른 3차원 화상 처리 프로그램에 있어서, 정점 좌표 설정 수단이 상기 제1 및 제2 패치의 각각의 기준점의 좌표를 설정하는 기준 좌표 설정 수단을 포함하고, 분할수 결정 수단이 기준점과 가상 시점과의 거리에 기초하여 분할수를 구하는 것을 특징으로 한다.
상기한 발명에 따르면, 기준 좌표 설정 수단에 의해 제1 및 제2 패치의 각각의 기준점의 좌표가 설정되고, 분할수 결정 수단에 의해 기준점과 가상 시점과의 거리에 기초하여 분할수가 구해지므로, 용이하며 또한 적절한 분할수가 구해진다.
본 발명에 따른 3차원 화상 처리 프로그램에 있어서, 분할수 결정 수단이 기준점과 가상 시점과의 거리에 의해 분할수가 일의적으로 결정하는 룩업 테이블(lookup table)을 이용하여 분할수를 구하는 것을 특징으로 한다.
상기한 발명에 따르면, 룩업 테이블을 통하여 기준점과 가상 시점과의 거리로부터 일의적으로 분할수가 구해지므로, 더욱 용이하며 또한 적절한 분할수가 구해진다.
본 발명에 따른 3차원 화상 처리 프로그램에 있어서, 분할수 결정 수단이 기준점과 가상 시점과의 거리를 이용하여 소정의 연산식에 의해 분할수를 구하는 것을 특징으로 한다.
상기한 발명에 따르면, 연산식에 의해 기준점과 가상 시점과의 거리로부터 비율 수가 구해지므로, 보다 적절한 분할수가 구해진다.
본 발명에 따른 3차원 화상 처리 프로그램은, 각각 복수의 폴리곤으로 구성되는 제1 및 제2 오브젝트를 결합하는 3차원 화상 처리 프로그램으로서, 컴퓨터를, 상기 제1 및 제2 오브젝트를 구성하는 각 폴리곤의 정점 좌표를 설정하는 정점 좌표 설정 수단과, 상기 제1 및 제2 오브젝트로부터 각각 결합 대상의 폴리곤의 정점을 선택하는 결합 정점 선택 수단과, 선택된 폴리곤의 정점 좌표에 대하여 상기 제1 오브젝트측의 정점 좌표와 상기 제2 오브젝트측의 정점 좌표를 일치시키는 정점 좌표 변경 수단으로서 기능시키는 것을 특징으로 한다.
상기한 발명에 따르면, 정점 좌표 설정 수단에 의해 제1 및 제2 오브젝트를 구성하는 각 폴리곤의 정점 좌표가 설정되고, 결합 정점 선택 수단에 의해 제1 및 제2 패치로부터 각각 결합 대상의 폴리곤의 정점이 선택되고, 정점 좌표 변경 수단에 의해 선택된 폴리곤의 정점 좌표에 대하여 제1 오브젝트측의 정점 좌표와 제2 오브젝트측의 정점 좌표가 일치하도록 정점 좌표의 변경이 실시된다. 제1 및 제2 오브젝트의 결합 대상의 폴리곤의 정점 좌표가 일치함으로써, 양자 사이의 간극은, 말하자면 봉합되는 형태로 결합되고, 제1 및 제2 패치를 결합하여 형성되는 화상의 화질 및 리얼리티가 향상된다.
본 발명에 따른 3차원 화상 처리 프로그램은, 각각 복수의 폴리곤으로 구성되는 오브젝트와 패치를 결합하는 3차원 화상 처리 프로그램으로서, 컴퓨터를, 상기 오브젝트 및 패치를 구성하는 각 폴리곤의 정점 좌표를 설정하는 정점 좌표 설정 수단과, 상기 오브젝트 및 패치로부터 각각 결합 대상의 폴리곤의 정점을 선택하는 결합 정점 선택 수단과, 선택된 폴리곤의 정점 좌표에 대하여 상기 오브젝트측의 정점 좌표와 상기 패치측의 정점 좌표를 일치시키는 정점 좌표 변경 수단으로서 기능시키는 것을 특징으로 한다.
상기한 발명에 따르면, 정점 좌표 설정 수단에 의해 오브젝트와 패치를 구성하는 각 폴리곤의 정점 좌표가 설정되고, 결합 정점 선택 수단에 의해 오브젝트 및 패치로부터 각각 결합 대상의 폴리곤의 정점이 선택되고, 정점 좌표 변경 수단에 의해 선택된 폴리곤의 정점 좌표에 대하여 오브젝트의 정점 좌표와 패치측의 정점 좌표가 일치하도록 정점 좌표의 변경이 실시된다. 오브젝트와 패치와의 결합 대상의 폴리곤의 정점 좌표가 일치함으로써, 양자 사이의 간극은, 말하자면 봉합되는 형태로 결합되고, 제1 및 제2 패치를 결합하여 형성되는 화상의 화질 및 리얼리티가 향상된다.
본 발명에 따른 3차원 화상 처리 장치는, 각각 복수의 폴리곤으로 구성되는 제1 및 제2 패치를 결합하는 3차원 화상 처리 장치로서, 상기 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표를 설정하는 정점 좌표 설정 수단과, 상기 제1 및 제2 패치로부터 각각 결합 대상의 폴리곤의 정점을 선택하는 결합 정점 선택 수단과, 선택된 폴리곤의 정점 좌표에 대하여 상기 제1 패치측의 정점 좌표와 상기 제2 패치측의 정점 좌표를 일치시키는 정점 좌표 변경 수단을 포함하는 것을 특징으로 한다.
상기한 발명에 따르면, 정점 좌표 설정 수단에 의해 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표가 설정되고, 결합 정점 선택 수단에 의해 제1 및 제2 패치로부터 각각 결합 대상의 폴리곤의 정점이 선택되고, 정점 좌표 변경 수단에 의해 선택된 폴리곤의 정점 좌표에 대하여 제1 패치측의 정점 좌표와 제2 패치측의 정점 좌표가 일치하도록 정점 좌표의 변경이 실시된다. 제1 및 제2 패치의 결합 대상의 폴리곤의 정점 좌표가 일치함으로써, 양자 사이의 간극은, 말하자면 봉합되는 형태로 결합되고, 제1 및 제2 패치를 결합하여 형성되는 화상의 화질 및 리얼리티가 향상된다.
본 발명에 따른 3차원 화상 처리 방법은, 각각 복수의 폴리곤으로 구성되는 제1 및 제2 패치를 결합하는 3차원 화상 처리 방법으로서, 컴퓨터에, 상기 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표를 설정하는 정점 좌표 설정 처리와, 상기 제1 및 제2 패치로부터 각각 결합 대상의 폴리곤의 정점을 선택하는 결합 정점 선택 처리와, 선택된 폴리곤의 정점 좌표에 대하여 상기 제1 패치측의 정점 좌표와 상기 제2 패치측의 정점 좌표를 일치시키는 정점 좌표 변경 처리를 실행시키는 것을 특징으로 한다.
상기한 발명에 따르면, 정점 좌표 설정 처리에 있어서, 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표가 설정되고, 결합 정점 선택 처리에 있어서, 제1 및 제2 패치로부터 각각 결합 대상의 폴리곤의 정점이 선택되고, 정점 좌표 변경 처리에 있어서, 선택된 폴리곤의 정점 좌표에 대하여 제1 패치측의 정점 좌표와 제2 패치측이 일치하도록 정점 좌표의 변경이 실시된다. 제1 및 제2 패치의 결합 대상의 폴리곤의 정점 좌표가 일치함으로써, 양자 사이의 간극은, 말하자면 봉합되는 형태로 결합되고, 제1 및 제2 패치를 결합하여 형성되는 화상의 화질 및 리얼리티가 향상된다.
본 발명에 따른 비디오 게임 장치는, 외부로부터의 입력을 접수하는 조작 수단과, 외부로부터의 입력에 기초하여 게임의 진행을 제어하는 게임 진행 제어 수단과, 가상 3차원 공간 내에 게임의 진행에 대응하는 게임 화상을 생성하는 게임 화상 생성 수단과, 게임 화상을 표시하는 표시 수단을 구비하는 비디오 게임 장치로서, 상기 게임 화상 생성 수단은, 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표를 설정하는 정점 좌표 설정 수단과, 상기 제1 및 제2 패치로부터 각각 결합 대상의 폴리곤의 정점을 선택하는 결합 정점 선택 수단과, 선택된 폴리곤의 정점 좌표에 대하여 상기 제1 패치측의 정점 좌표와 상기 제2 패치측의 정점 좌표를 일치시키는 정점 좌표 변경 수단을 포함하는 것을 특징으로 한다.
상기한 발명에 따르면, 조작 수단에 의해 외부로부터의 입력을 접수받고, 게임 진행 제어 수단에 의해 외부로부터의 입력에 기초하여 게임의 진행이 제어되고, 게임 화상 생성 수단에 의해 가상 3차원 공간 내에 게임의 진행에 대응하는 게임 화상이 생성되고, 표시 수단에 의해 게임 화상이 표시된다. 그리고, 게임 화상 생성 수단에 의해 가상 3차원 공간 내에 게임의 진행에 대응하는 게임 화상이 생성될 때에, 정점 좌표 설정 수단에 의해 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표가 설정되고, 결합 정점 선택 수단에 의해 제1 및 제2 패치로부터 각각 결합 대상의 폴리곤의 정점이 선택되고, 정점 좌표 변경 수단에 의해 선택된 폴리곤의 정점 좌표에 대하여 제1 패치측의 정점 좌표와 제2 패치측이 일치하도록 정점 좌표의 변경이 실시된다. 제1 및 제2 패치의 결합 대상의 폴리곤의 정점 좌표가 일치함으로써, 양자 사이의 간극은, 말하자면 봉합되는 형태로 결합되고, 제1 및 제2 패치를 결합하여 형성되는 화상의 화질 및 리얼리티가 향상된다.
〈실시예〉
도 1은 본 발명의 3차원 화상 처리 장치가 적용되는 비디오 게임 장치의 일 실시예를 도시하는 블록 구성도이다. 또, 이하의 설명에서는 비디오 게임 장치의 일례로서 가정용 비디오 게임기를 가정용 텔레비전에 접속함으로써 구성되는 가정 용 비디오 게임 장치에 대하여 설명하지만, 본 발명은 본 예에 특별히 한정되지 않고, 모니터가 일체로 구성된 업무용 비디오 게임 장치, 비디오 게임 프로그램을 실행함으로써 비디오 게임 장치로서 기능하는 퍼스널 컴퓨터 등에도 마찬가지로 적용할 수 있다.
도 1에 도시한 비디오 게임 장치는, 가정용 게임기(100) 및 가정용 텔레비전(200)을 구비한다. 가정용 게임기(100)에는 본 발명의 3차원 화상 처리 프로그램을 포함하는 비디오 게임 프로그램 및 게임 데이터가 기록된 컴퓨터 판독 가능한 기록 매체(300)가 장전되고, 비디오 게임 프로그램 및 게임 데이터가 적절하게 판독되어 게임이 실행된다.
가정용 게임기(100)는 CPU(Central Processing Unit)(1)(게임 진행 제어 수단 및 게임 화상 생성 수단의 일부에 상당함), 버스 라인(2), 그래픽스 데이터 생성 프로세서(3)(게임 화상 생성 수단의 일부에 상당함), 인터페이스 회로(I/F)(4), 메인 메모리(5), ROM(Read Only Memory)(6), 신장 회로(7), 병렬 포트(8), 직렬 포트(9), 묘화 프로세서(10), 음성 프로세서(11), 디코더(12), 인터페이스 회로(13), 버퍼(14∼16), 기록 매체 드라이브(17), 메모리(18) 및 컨트롤러(19)를 포함한다. 가정용 텔레비전(200)은 텔레비전 모니터(21), 증폭 회로(22) 및 스피커(23)를 포함한다.
CPU(1)는 버스 라인(2) 및 그래픽스 데이터 생성 프로세서(3)(게임 화상 생성 수단의 일부에 상당함)에 접속되어 있다. 버스 라인(2)은 어드레스 버스, 데이터 버스 및 컨트롤 버스 등을 포함하고, CPU(1), 인터페이스 회로(4), 메인 메모리(5), ROM(6), 신장 회로(7), 병렬 포트(8), 직렬 포트(9), 묘화 프로세서(10)(게임 화상 생성 수단의 일부에 상당함), 음성 프로세서(11), 디코더(12) 및 인터페이스 회로(13)를 서로 접속하고 있다.
묘화 프로세서(10)는 버퍼(14)에 접속된다. 음성 프로세서(11)는 버퍼(15) 및 증폭 회로(22)에 접속된다. 디코더(12)는 버퍼(16) 및 기록 매체 드라이브(17)에 접속된다. 인터페이스 회로(13)는 메모리(18) 및 컨트롤러(19)(조작 수단에 상당함)에 접속된다.
가정용 텔레비전(200)의 텔레비전 모니터(21)는 묘화 프로세서(10)에 접속된다. 스피커(23)는 증폭 회로(22)에 접속된다. 또, 업무용 비디오 게임 장치인 경우, 텔레비전 모니터(21)(표시 수단에 상당함), 증폭 회로(22) 및 스피커(23)는 가정용 게임기(100)를 구성하는 각 블록과 함께 1개의 케이싱에 수납되는 경우가 있다.
또한, 비디오 게임 장치가 퍼스널 컴퓨터나 워크스테이션 등을 중심으로 하여 구성되어 있는 경우, 텔레비전 모니터(21) 등은 컴퓨터용 디스플레이에 대응한다. 또한, 신장 회로(7), 묘화 프로세서(10) 및 음성 프로세서(11) 등은 각각 기록 매체(300)에 기록되어 있는 프로그램 데이터의 일부 또는 컴퓨터의 확장 슬롯에 탑재되는 확장 보드 상의 하드웨어에 대응한다. 또한, 인터페이스 회로(4), 병렬 포트(8), 직렬 포트(9) 및 인터페이스 회로(13)는 컴퓨터의 확장 슬롯에 탑재되는 확장 보드 상의 하드웨어에 대응한다. 또한, 버퍼(14∼16)는 각각 메인 메모리(5) 또는 확장 메모리(도시 생략)의 각 기억 영역에 대응한다.
다음으로, 도 1에 도시하는 각 구성 요소에 대하여 설명한다. 그래픽스 데이터 생성 프로세서(3)는 CPU(1)의, 말하자면 코프로세서로서의 역할을 한다. 즉, 그래픽스 데이터 생성 프로세서(3)는 좌표 변환이나 광원 계산, 예를 들면 고정 소수점 형식의 행렬이나 벡터의 연산을 병렬 처리에 의해 행한다.
그래픽스 데이터 생성 프로세서(3)가 행하는 주된 처리로는, CPU(1)로부터 공급되는 화상 데이터의 2차원 또는 3차원 공간 내에서의 각 정점의 좌표 데이터, 이동량 데이터, 회전량 데이터 등에 기초하여, 소정의 표시 영역 상에서의 처리 대상 화상의 어드레스 데이터를 구하여 CPU(1)로 되돌리는 처리, 가상적으로 설정된 광원으로부터의 거리에 따라 화상의 휘도를 계산하는 처리 등이 있다.
인터페이스 회로(4)는, 주변 디바이스, 예를 들면 마우스나 트랙볼 등의 포인팅 디바이스 등의 인터페이스용에 이용된다. 메인 메모리(5)는 RAM(Random Access Memory) 등으로 구성된다. ROM(6)에는 비디오 게임 장치의 오퍼레이팅 시스템이 되는 프로그램 데이터가 기억되어 있다. 이 프로그램은 퍼스널 컴퓨터의 BIOS(Basic Input Output System)에 상당한다.
신장 회로(7)는, 동화상에 대한 MPEG(Moving Picture Experts Group) 규격이나 정지 화상에 대한 JPEG(Joint Photographic Experts Group) 규격에 준거한 인트라 부호화에 의해 압축된 압축 화상에 대하여 신장 처리를 실시한다. 신장 처리는 디코드 처리(VLC: Variable Length Code에 의해 인코드된 데이터의 디코드), 역 양자화 처리, IDCT(Inverse Discrete Cosine Transform) 처리, 인트라 화상의 복원 처리 등을 포함한다.
묘화 프로세서(10)는, 소정 시간 T(예를 들면, 1프레임에 T=1/60초)마다 CPU(1)가 발행하는 묘화 명령에 기초하여 버퍼(14)에 대한 묘화 처리를 행한다.
버퍼(14)는, 예를 들면 RAM으로 구성되고, 표시 영역(프레임 버퍼)과 비표시 영역으로 나뉜다. 표시 영역은 텔레비전 모니터(21)의 표시면 상에 표시하는 데이터의 전개 영역으로 구성된다. 비표시 영역은 스켈톤을 정의하는 데이터, 폴리곤을 정의하는 모델 데이터, 모델에 움직임을 행하게 하는 애니메이션 데이터, 각 애니메이션의 내용을 나타내는 패턴 데이터, 텍스처 데이터 및 컬러 팔레트 데이터 등의 기억 영역으로 구성된다.
여기서, 텍스처 데이터는 2차원의 화상 데이터이다. 컬러 팔레트 데이터는 텍스처 데이터 등의 색을 지정하기 위한 데이터이다. 기록 매체(300)로부터 한 번에 또는 게임의 진행 상황에 따라 복수회로 나누어, CPU(1)는 이들 데이터를 미리 버퍼(14)의 비표시 영역에 기록한다.
또한, 묘화 명령으로는 폴리곤을 이용하여 입체적인 화상을 묘화하기 위한 묘화 명령, 통상의 2차원 화상을 묘화하기 위한 묘화 명령이 있다. 여기서, 폴리곤은 다각형의 2차원 가상 도형이고, 예를 들면 삼각형이나 사각형이 이용된다.
폴리곤을 이용하여 입체적인 화상을 묘화하기 위한 묘화 명령은, 폴리곤 정점 좌표 데이터의 버퍼(14)의 표시 영역 상에서의 기억 위치를 나타내는 폴리곤 정점 어드레스 데이터, 폴리곤에 붙이는 텍스처의 버퍼(14) 상에서의 기억 위치를 나타내는 텍스처 어드레스 데이터, 텍스처의 색을 나타내는 컬러 팔레트 데이터의 버퍼(14) 상에서의 기억 위치를 나타내는 컬러 팔레트 어드레스 데이터 및 텍스처의 휘도를 나타내는 휘도 데이터의 각각에 대하여 행해지는 것이다.
상기한 데이터 중 표시 영역 상의 폴리곤 정점 어드레스 데이터는, 그래픽스 데이터 생성 프로세서(3)가 CPU(1)로부터의 3차원 공간 상에서의 폴리곤 정점 좌표 데이터를 이동량 데이터 및 회전량 데이터에 기초하여 좌표 변환함으로써 2차원 상에서의 폴리곤 정점 좌표 데이터로 치환된 것이다. 휘도 데이터는 CPU(1)로부터의 상기 좌표 변환 후의 폴리곤 정점 좌표 데이터에 의해 표시되는 위치로부터 가상적으로 배치된 광원까지의 거리에 기초하여 그래픽스 데이터 생성 프로세서(3)에 의해 결정된다.
폴리곤 정점 어드레스 데이터는 버퍼(14)의 표시 영역 상의 어드레스를 나타낸다. 묘화 프로세서(10)는 3개의 폴리곤 정점 어드레스 데이터로 표시되는 버퍼(14)의 표시 영역의 범위에 대응하는 텍스처 데이터를 기입하는 처리를 행한다.
게임 공간 내에서의 캐릭터 등의 오브젝트는 복수의 폴리곤으로 구성된다. CPU(1)는 각 폴리곤의 3차원 공간 상의 좌표 데이터를 대응하는 스켈톤의 벡터 데이터와 관련시켜 버퍼(14)에 기억한다. 그리고, 후술하는 컨트롤러(19)의 조작에 의해, 텔레비전 모니터(21)의 표시 화면 상에서 오브젝트를 이동시키는 등의 경우에, 오브젝트의 움직임을 표현하거나, 오브젝트를 보고 있는 시점 위치를 바꿀 때에, 이하의 처리가 행해진다.
즉, CPU(1)는, 그래픽스 데이터 생성 프로세서(3)에 대하여 버퍼(14)의 비표시 영역 내에 기억하고 있는 각 폴리곤의 정점의 3차원 좌표 데이터와, 스켈톤의 좌표 및 그 회전량의 데이터로부터 구해진 각 폴리곤의 이동량 데이터 및 회전량 데이터를 공급한다.
그래픽스 데이터 생성 프로세서(3)는, 각 폴리곤의 정점의 3차원 좌표 데이터와 각 폴리곤의 이동량 데이터 및 회전량 데이터에 기초하여 각 폴리곤의 이동 후 및 회전 후의 3차원 좌표 데이터를 순차적으로 구한다.
이와 같이 하여 구해진 각 폴리곤의 3차원 좌표 데이터 중 수평 및 수직 방향의 좌표 데이터는, 버퍼(14)의 표시 영역 상의 어드레스 데이터, 즉 폴리곤 정점 어드레스 데이터로서 묘화 프로세서(10)에 공급된다.
묘화 프로세서(10)는, 3개의 폴리곤 정점 어드레스 데이터에 의해 표시되는 버퍼(14)의 표시 영역 상에 미리 할당되어 있는 텍스처 어드레스 데이터에 의해 표시되는 텍스처 데이터를 기입한다. 이에 의해, 텔레비전 모니터(21)의 표시 화면 상에는 다수의 폴리곤에 텍스처가 붙여진 물체가 표시된다.
통상의 2차원 화상을 묘화하기 위한 묘화 명령은, 정점 어드레스 데이터, 텍스처 어드레스 데이터, 텍스처 데이터의 색을 나타내는 컬러 팔레트 데이터의 버퍼(14) 상에서의 기억 위치를 나타내는 컬러 팔레트 어드레스 데이터 및 텍스처의 휘도를 나타내는 휘도 데이터에 대하여 행해진다. 이들 데이터 중, 정점 어드레스 데이터는 CPU(1)로부터의 2차원 평면 상에서의 정점 좌표 데이터를 CPU(1)로부터의 이동량 데이터 및 회전량 데이터에 기초하여 그래픽스 데이터 생성 프로세서(3)가 좌표 변환함으로써 얻어진다.
음성 프로세서(11)는, 기록 매체(300)로부터 판독된 ADPCM(Adaptive Differential Pulse Code Modulation) 데이터를 버퍼(15)에 기억시키고, 버퍼(15)에 기억된 ADPCM 데이터가 음원이 된다.
또한, 음성 프로세서(11)는, 예를 들면 주파수 44.1㎑의 클럭 신호에 기초하여, 버퍼(15)로부터 ADPCM 데이터를 판독한다. 음성 프로세서(11)는 판독한 ADPCM 데이터에 대하여 피치의 변환, 노이즈의 부가, 엔벨로프의 설정, 레벨의 설정 및 리버브의 부가 등의 처리를 실시한다.
기록 매체(300)로부터 판독되는 음성 데이터가 CD-DA(Compact Disk Digital Audio) 등의 PCM(Pulse Code Modulation) 데이터인 경우, 음성 프로세서(11)는 이 음성 데이터를 ADPCM 데이터로 변환한다. 또한, PCM 데이터에 대한 프로그램에 의한 처리는, 메인 메모리(5) 상에서 직접 행해진다. 메인 메모리(5) 상에서 처리된 PCM 데이터는 음성 프로세서(11)에 공급되어 ADPCM 데이터로 변환된다. 그 후, 상술한 각종 처리가 실시되어, 음성이 스피커(23)로부터 출력된다.
기록 매체 드라이브(17)로서는, 예를 들면 DVD-ROM 드라이브, CD-ROM 드라이브, 하드디스크 드라이브, 광 디스크 드라이브, 플렉시블 디스크 드라이브, 실리콘 디스크 드라이브, 카세트 매체 판독기 등이 이용된다. 이 경우, 기록 매체(300)로는 DVD-ROM, CD-ROM, 하드디스크, 광 디스크, 플렉시블 디스크, 반도체 메모리 등이 이용된다.
기록 매체 드라이브(17)는 기록 매체(300)로부터 화상 데이터, 음성 데이터 및 프로그램 데이터를 판독하고, 판독된 데이터를 디코더(12)에 공급한다. 디코더(12)는 기록 매체 드라이브(17)로부터의 재생한 데이터에 대하여 ECC(Error Correction Code)에 의한 에러 정정 처리를 실시하고, 에러 정정 처리를 실시한 데이터를 메인 메모리(5) 또는 음성 프로세서(11)에 공급한다.
메모리(18)로서는, 예를 들면 카드형 메모리가 이용된다. 카드형 메모리는, 예를 들면 게임을 중단한 경우에, 중단 시점에서의 상태를 유지하는 등과 같이 중단 시점에서의 각종 게임 파라미터를 유지하기 위해서 등에 이용된다.
컨트롤러(19)는 플레이어가 다양한 조작 명령을 입력하기 위해서 사용하는 조작 장치로서, 플레이어의 조작에 따른 조작 신호를 CPU(1)로 송출한다. 컨트롤러(19)에는 제1 버튼(19a), 제2 버튼(19b), 제3 버튼(19c), 제4 버튼(19d), 위 방향 키(19U), 아래 방향 키(19D), 좌측 방향 키(19L), 우측 방향 키(19R), L1 버튼(19L1), L2 버튼(19L2), R1 버튼(19R1), R2 버튼(19R2), 스타트 버튼(19e), 셀렉트 버튼(19f), 좌측 스틱(19SL) 및 우측 스틱(19SR)이 설치되어 있다.
위 방향 키(19U), 아래 방향 키(19D), 좌측 방향 키(19L) 및 우측 방향 키(19R)는, 예를 들면 오브젝트나 커서를 텔레비전 모니터(21)의 화면 상에서 상하 좌우로 이동시키는 커맨드를 CPU(1)에 공급하기 위해서 사용된다.
스타트 버튼(19e)은 기록 매체(300)로부터 게임 프로그램을 로드하도록 CPU(1)에 지시하기 위해서 등에 사용된다. 셀렉트 버튼(19f)은 기록 매체(300)로부터 메인 메모리(5)에 로드되는 게임 프로그램에 관한 각종 선택을 CPU(1)에 지시하기 위해서 등에 사용된다.
좌측 스틱(19SL) 및 우측 스틱(19SR)을 제외한 컨트롤러(19)의 각 버튼 및 각 키는, 외부로부터의 가압력에 의해 중립 위치로부터 가압되면 온 상태로 되고, 가압력이 해제되면 상기 중립 위치로 복귀하여 오프가 되는 스위치로 구성된다.
좌측 스틱(19SL) 및 우측 스틱(19SR)은, 소위 조이스틱과 거의 동일 구성의 스틱형 컨트롤러이다. 이 스틱형 컨트롤러는 직립한 스틱을 구비하고, 이 스틱의 소정 위치를 지점으로 하여 전후 좌우를 포함하는 360° 방향에 걸쳐 경도 가능한 구성으로 되어 있다. 좌측 스틱(19SL) 및 우측 스틱(19SR)은 스틱의 경도 방향 및 경도 각도에 따라, 직립 위치를 원점으로 하는 좌우 방향의 x 좌표 및 전후 방향의 y 좌표의 값을 조작 신호로 하여 인터페이스 회로(13)를 통하여 CPU(1)로 송출한다.
또, 제1 버튼(19a), 제2 버튼(19b), 제3 버튼(19c), 제4 버튼(19d), L1 버튼(19L1), L2 버튼(19L2), R1 버튼(19R1) 및 R2 버튼(19R2)은 기록 매체(300)로부터 로드되는 게임 프로그램에 따라 다양한 기능에 사용된다.
다음으로, 상기한 비디오 게임 장치의 개략 동작에 대하여 설명한다. 기록 매체(300)가 기록 매체 드라이브(17)에 장전되어 있는 경우, 전원 스위치(도시 생략)가 온 상태로 되어 비디오 게임 장치에 전원이 투입되면, ROM(6)에 기억되어 있는 오퍼레이팅 시스템에 기초하여, 기록 매체(300)로부터 게임 프로그램을 판독하도록, CPU(1)는 기록 매체 드라이브(17)에 지시한다. 이에 의해, 기록 매체 드라이브(17)는 기록 매체(300)로부터 화상 데이터, 음성 데이터 및 프로그램 데이터를 판독한다. 판독된 화상 데이터, 음성 데이터 및 프로그램 데이터는 디코더(12)에 공급되고, 디코더(12)에 의해 에러 정정 처리가 각 데이터에 실시된다.
디코더(12)에 의해 에러 정정 처리가 실시된 화상 데이터는, 버스 라인(2)을 통하여 신장 회로(7)에 공급된다. 신장 회로(7)에 의해 상술한 신장 처리가 행해진 화상 데이터는 묘화 프로세서(10)에 공급되고, 묘화 프로세서(10)에 의해 버퍼(14)의 비표시 영역에 기입된다. 디코더(12)에 의해 에러 정정 처리가 실시된 음성 데이터는, 메인 메모리(5) 또는 음성 프로세서(11)를 통하여 버퍼(15)에 기입된다. 디코더(12)에 의해 에러 정정 처리가 실시된 프로그램 데이터는 메인 메모리(5)에 기입된다.
이후, CPU(1)는 메인 메모리(5)에 기억되어 있는 게임 프로그램 및 플레이어가 컨트롤러(19)를 이용하여 지시하는 내용에 기초하여 비디오 게임을 진행시킨다. 즉, 플레이어가 컨트롤러(19)를 이용하여 지시하는 내용에 기초하여, CPU(1)는 화상 처리의 제어, 음성 처리의 제어 및 내부 처리의 제어 등을 적절하게 행한다.
화상 처리의 제어로서, 예를 들면 오브젝트에 지시되는 애니메이션에 해당하는 패턴 데이터로부터 각 스켈톤의 좌표의 계산 또는 폴리곤의 정점 좌표 데이터의 계산, 얻어진 3차원 좌표 데이터나 시점 위치 데이터의 그래픽스 데이터 생성 프로세서(3)에의 공급, 그래픽스 데이터 생성 프로세서(3)가 구한 버퍼(14)의 표시 영역 상의 어드레스 데이터나 휘도 데이터를 포함하는 묘화 명령의 발행 등이 행해진다.
음성 처리의 제어로서, 예를 들면 음성 프로세서(11)에 대한 음성 출력 커맨드의 발행, 레벨, 리버브 등의 지정이 행해진다. 내부 처리의 제어로서, 예를 들면 컨트롤러(19)의 조작에 따른 연산 등이 행해진다.
도 2는 본 발명의 3차원 화상 처리 장치의 주요부를 도시하는 기능 블록도이 다. 또, 본 발명의 3차원 화상 처리 프로그램은, 상술한 게임 프로그램과 마찬가지로 도 1에 도시한 기록 매체(300)에 기록되어 있으며, 메인 메모리(5) 상에 로드되어, 플레이어가 컨트롤러(19)를 통하여 행하는 조작이 접수되면서, CPU(1)에 의해 메인 메모리(5) 상의 3차원 화상 처리 프로그램이 순차적으로 실행됨으로써 각각의 기능이 실현된다. 3차원 화상 처리 장치는, 다양한 처리 프로그램을 실행함으로써 여러가지의 기능을 실현하는 프로그램 실행부(400)와, 데이터를 저장하는 기억부(500)를 구비한다.
프로그램 실행부(400)는 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표를 설정하는 정점 좌표 설정부(401)(정점 좌표 설정 수단에 상당함)와, 제1 및 제2 패치로부터 각각 결합 대상의 폴리곤의 정점을 선택하는 결합 정점 선택부(402)(결합 정점 선택 수단에 상당함)와, 선택된 폴리곤의 정점 좌표에 대하여 제1 패치측의 정점 좌표와 제2 패치측의 정점 좌표를 일치시키는 정점 좌표 변경부(403)(정점 좌표 변경 수단에 상당함)를 구비한다.
기억부(500)는 제1 및 제2 패치의 자유 곡면을 각각 규정하는 제어점의 좌표 데이터를 저장하는 제어점 좌표 기억부(501)와, 제1 및 제2 패치의 기준점과 가상 시점과의 가상 3차원 공간 상에서의 거리에 의해 분할수가 일의적으로 결정되는 룩업 테이블(분할수 테이블이라고 함)을 저장하는 분할수 테이블 기억부(502)를 구비한다. 또, 제어점에 의해 자유 곡면이 어떻게 규정될지에 대해서는 후술한다.
도 3은 분할수 테이블의 일례를 나타내는 도표이다. 제1 및 제2 패치의 기준점과 가상 시점과의 가상 3차원 공간상에서의 거리 SL이 1000m 이하인 경우에는 분할수 DN은 10이고, 거리 SL이 커질수록 분할수 DN은 작아지고, 거리 SL이 3000m를 초과한 경우에는 분할수 DN은 4이다. 거리 SL이 커질수록 분할수 DN은 작아지고, 패치를 구성하는 폴리곤 수는 후술하는 바와 같이 분할수 DN의 자승에 비례하여 적어지기 때문에, 화질의 저하가 방지되면서 처리 속도가 향상된다.
정점 좌표 설정부(401)는, 제어점 좌표 기억부(501)에 저장된 제어점의 좌표로부터 제1 및 제2 패치의 기준점의 좌표를 구하는 기준 좌표 설정부(401a)(기준 좌표 설정 수단에 상당함), 가상 시점의 위치를 설정하는 시점 위치 설정부(401b)(시점 위치 설정 수단에 상당함)와, 기준점과 가상 시점과의 거리로부터 분할수 테이블 기억부(502)에 저장된 분할수 테이블을 이용하여 분할수 DN을 구하는 분할수 결정부(401c)(분할수 결정 수단에 상당함)와, 제1 및 제2 패치를 각각 규정하도록 제어점 좌표 기억부(501)에 저장된 좌표 데이터를 갖는 제어점을 이용하여 자유 곡면을 생성하는 자유 곡면 생성부(401d)(자유 곡면 생성 수단에 상당함)와, 분할수 결정부(401c)에 의해 결정된 분할수 DN을 이용하여 자유 곡면 생성부(401d)에 의해 생성된 자유 곡면을 분할하여 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표를 생성하는 폴리곤 생성부(401e)(폴리곤 생성 수단에 상당함)를 구비한다.
기준 좌표 설정부(401a)는, 가상 3차원 공간을 형성하는 3개의 축 방향에 변을 갖고, 패치를 구성하는 제어점이 전부 포함되는 가상 3차원 공간 내의 최소의 체적의 직방체(바운딩 박스라고 함)의 중심 위치의 좌표를, 제1 및 제2 패치의 기준점의 좌표로서 각각 구하는 것이다.
시점 위치 설정부(401b)는, 컨트롤러(19)로부터의 플레이어의 입력을 접수하 여 게임의 진행에 맞춰 적절한 위치(예를 들면, 플레이어가 조작하는 대상의 캐릭터인 메인 캐릭터가 시계의 중심에 표시되는 위치)에 가상 시점 위치를 설정하는 것이다.
분할수 결정부(401c)는, 기준점과 가상 시점과의 거리 SL로부터 분할수 테이블 기억부(502)에 저장된 분할수 테이블을 이용하여 분할수 DN을 구하는 것이다. 도 3에 도시한 분할수 테이블을 사용함으로써, 기준점과 가상 시점과의 거리 SL이 커질수록 분할수 DN은 작아지고, 패치를 구성하는 폴리곤 수는 적어지기 때문에, 화질의 저하가 방지되면서 처리 속도가 향상된다.
자유 곡면 생성부(401d)는, 제1 및 제2 패치를 각각 규정하도록 제어점 좌표 기억부(501)에 저장된 좌표 데이터를 갖는 제어점을 이용하여 파라메트릭 함수에 의해 자유 곡면을 생성하는 것이다. 파라메트릭 함수로서, 여기서는 베쥬(Bezier) 함수를 사용하는 경우에 대해서 설명한다. 베쥬 함수를 사용하여 얻어지는 자유 곡면을 베쥬 곡면이라고 한다.
제어점 Pi, j(여기서, i=0, 1, …, M, j=0, 1, …, N)의 좌표를 Pi, j(xi, j, yi, j, zi, j)로 하면, 2개의 파라미터 u, v(여기서, 0≤u≤1, 0≤v≤1)의 다항식 Bmi(u), Bnj(v)와 제어점 Pi, j의 좌표 Pi, j(xi, j, yi, j, zi, j)와의 곱에 의해, 자유 곡면 S(u, v)는 다음 식으로 표현된다.
Figure 112003002885213-pat00001
제어점 Pi, j의 좌표 Pi, j(xi, j, yi, j, zi, j)의 변화에 수반하여, 자유 곡면 S(u, v)가 변화하는 모습을 도 4 및 도 5를 이용하여 설명한다. 도 4 및 도 5에서, 제어점의 개수는 16개(M=4, N=4)이고, 도면의 우측 아래에 좌표 축을 나타내고 있다. 도 4는 제어점 Pi, j가 동일 평면 내에 있는 경우이고, 도 5는 제어점 Pi, j가 동일 평면 내에 없는 경우이다. 도 4에 도시한 바와 같이, 제어점 Pi, j가 동일 평면 내에 있는 경우에는 자유 곡면 S(u, v)는 모든 제어점 Pi, j를 지나는 평면이 된다.
도 5에 도시한 바와 같이 제어점 Pi, j가 동일 평면 내에 없는 경우에는, 자유 곡면 S(u, v)는 끝점(4코너에 있는 점)에서는 제어점 Pi, j의 위치와 일치하고, 제어점 Pi, j의 좌표 Pi, j(xi, j, yi, j, zi, j)에 의해 결정되는 3차원적인 곡면을 형성한다. 예를 들면, 제어점 P2, 2가 z축의 마이너스 방향으로 변위하고 있기 때문에, 자유 곡면 S(u, v)도 z축의 마이너스 방향으로 변위하고 있으며, 제어점 P2, 3이 z축의 플러스 방향으로 변위하고 있기 때문에, 자유 곡면 S(u, v)도 z축의 플러스 방향으로 변위하고 있다. 이와 같이, 제어점 Pi, j의 좌표 Pi, j(xi, j, yi, j, zi, j)를 변경함으로써 원하는 형상의 자유 곡면 S(u, v)를 형성할 수 있다. 또한, 제어점 Pi, j의 점수(M 및 N 중 적어도 한쪽)를 늘림으로써 한층 복잡한 형상의 자유 곡면 S(u, v)를 형성할 수도 있다.
폴리곤 생성부(401e)는, 분할수 결정부(401c)에 의해 결정된 분할수를 이용하여 자유 곡면 생성부(401d)에 의해 생성된 자유 곡면 S(u, v)를 분할하여 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표를 생성하는 것이다. 구체적으로는, 자유 곡면 S(u, v)의 파라미터 u, v의 값을 분할수 DN에 따라 설정함으로써 폴리곤의 정점 좌표를 생성한다. 예를 들면, 분할수 DN이 5인 경우에는 u(=0, 0.2, 0.4, 0.6, 0.8, 1.0)와 v(=0, 0.2, 0.4, 0.6, 0.8, 1.0)와의 조합을 (1-1)식에 대입하여, 얻어지는 36개의 좌표를 폴리곤의 정점 좌표로 하는 것이다. 또한, 사각형 폴리곤을 사용하는 경우에는 25개(=5×5)의 폴리곤의 정점 좌표가 설정되고, 삼각형 폴리곤을 사용하는 경우에는 50개(=5×5×2)의 폴리곤의 정점 좌표가 설정되게 된다. 즉, 폴리곤 수는 분할수 DN의 제곱에 비례한다.
결합 정점 선택부(402)는, 제1 및 제2 패치로부터 각각 결합 대상의 폴리곤의 정점을 선택하는 것이다. 예를 들면, 도 12에 도시한 좌측의 패치 PM1과 우측의 패치 PM2를 결합하는 경우에, 패치 PM1에 대해서는 정점 PV101∼PV110을 결합 대상의 폴리곤의 정점으로서 선택하고, 패치 PM2에 대해서는 정점 PV201∼PV208을 결합 대상의 폴리곤의 정점으로서 선택한다.
정점 좌표 변경부(403)는, 제1 패치에 있어서의 결합 대상의 폴리곤의 정점 수가 제2 패치에 있어서의 결합 대상의 폴리곤의 정점 수보다 많은 경우에, 제1 패치에 있어서의 결합 대상의 폴리곤의 정점 좌표를 제2 패치에 있어서의 결합 대상의 폴리곤의 정점 좌표에 일치시키는 것이다. 예를 들면, 도 12에 도시한 좌측의 패치 PM1과 우측의 패치 PM2를 결합하는 경우에, 패치 PM1의 정점 PV101∼PV110의 좌표를 패치 PM2의 정점 PV201∼PV208의 좌표에 일치시킨다.
도 6은 정점 좌표 변경부(403)에 의해 행해지는 정점 좌표 변경 처리의 흐름도의 일례이다. 여기서는 제1 패치를 구성하는 폴리곤의 정점 P1i(i=0, 1, …, H)와, 제2 패치를 구성하는 폴리곤의 정점 P2j(j=0, 1, …, K)를 결합하는 경우에 대해서 설명한다. 여기서, 제1 패치에 있어서의 결합 대상의 폴리곤의 정점 수 H는 제2 패치에 있어서의 결합 대상의 폴리곤의 정점 수 K보다 많은 것으로 한다. 또, 정점 P1i의 좌표는 (P1xi, P1yi, P1zi)이고, 정점 P2j의 좌표는 (P2xj, P2yj, P2zj)이다.
우선, 정점 수의 차를 조정하는 조정 계수 α가 정점 수 K를 정점 수 H로 나눔으로써 얻어진다(단계 ST1). 이어서, 카운터 h가 0으로 초기화된다(단계 ST3). 그리고, 카운터 k가 카운터 h와 조정 계수 α를 곱한 것의 정수부로 세트된다(단계 ST5). 이어서, 정점 P1h의 좌표가 정점 P2k의 좌표로 변경된다(단계 ST7). 그리고, 카운터 h가 정점 수 H 미만인지의 여부가 판정된다(단계 ST9). 이 판정이 긍정인 경우에는 카운터 h가 인크리먼트되고(단계 ST11), 단계 ST5로 되돌아간다. 이 판정이 부정인 경우에는 처리가 종료된다.
도 7은 도 12에 도시한 2개의 폴리곤 수(폴리곤의 정점 수)가 다른 패치를 서로 연결하는 경우에 도 6에 도시한 정점 좌표 변경 처리를 실시한 결과를 설명하기 위한 설명도의 일례이다. 도 7에서, 좌측의 패치 PM1과 우측의 패치 PM2를 결합하는 경우에, 패치 PM1의 결합 대상이 되는 정점 PV101∼PV110이 10개이고, 패치 PM2의 결합 대상이 되는 정점 PV201∼PV208이 8개이므로, 정점 좌표 변경부(403)에 의해 행해지는 정점 좌표 변경 처리에 있어서, 도 12에서의 패치 PM1의 결합 대상이 되는 정점 PV101∼PV110의 좌표가, 패치 PM2의 결합 대상이 되는 정점 PV201∼PV208의 좌표에 일치되도록 변경되어 있다. 즉, 도 12에서의 패치 PM1의 결합 대상이 되는 정점 PV101∼PV110에 대하여, 정점의 위치가 도 7에서의 정점 PV101D∼PV110D의 위치가 되도록 정점 좌표가 변경되어 있다. 그 결과, 패치 PM1과 패치 PM2가 간극의 발생을 회피하면서 결합되어 있다.
도 8은 8개의 패치와 1개의 오브젝트를 결합하는 경우에 발생하는 간극을 설명하기 위한 설명도의 일례이다. 도 8에서, 패치 PM3∼PM10과 오브젝트 OBJ가 결합된 결과, 결합되는 패치 사이(또는 패치와 오브젝트 사이)의 분할수가 다른 결합부에서 간극 CL2∼CL6이 발생하고 있다.
도 9는 도 8에 도시한 8개의 패치와 1개의 오브젝트를 결합하는 경우에 본 발명의 화상 처리를 실시한 결과를 설명하기 위한 도면의 일례이다. 도 9에서, 결합 대상이 되는 정점 수가 많은 측의 패치(또는 오브젝트)에 대하여, 정점의 위치가 결합 대상이 되는 정점 수가 적은 측의 패치(또는 오브젝트)의 정점의 위치가 되도록 정점 좌표가 변경되어 있다. 예를 들면, 패치 PM3의 좌측 위측의 변에 대하여 패치 PM10과의 결합 대상인 정점 수는 5이고, 패치 PM10의 우측 하측의 변에 대하여 패치 PM3과의 결합 대상인 정점 수는 7이므로, 패치 PM10의 우측 하측의 변의 패치 PM3과의 결합 대상인 정점의 위치가 패치 PM3의 좌측 위측의 변에 대하여 패치 PM10과의 결합 대상인 정점의 위치에 일치하도록 정점 좌표가 변경되고 있다. 그 결과, 패치 사이 및 패치와 오브젝트 사이가 간극의 발생을 회피하면서 결합되어 있다.
도 10은 도 8에 도시한 패치 및 오브젝트를 구성하는 폴리곤에 텍스처를 붙임으로써 형성된 화면의 화면도의 일례이다. 패치 사이(또는 패치와 오브젝트 사이)의 분할수가 다른 결합부에서 간극이 발생하고 있기 때문에, 화질 및 리얼리티가 저하되고 있다.
도 11은 도 9에 도시한 패치 및 오브젝트를 구성하는 폴리곤에 텍스처를 붙임으로써 형성된 화면의 화면도의 일례이다. 패치 사이 및 패치와 오브젝트 사이가 간극의 발생을 회피하면서 결합되어 있기 때문에, 화질 및 리얼리티가 향상되고 있다.
또, 본 발명은 이하의 형태를 취할 수 있다.
(A) 본 실시예에서는 패치를 구성하는 폴리곤의 정점 좌표가 폴리곤 생성부에 의해 생성되는 경우에 대해서 설명했지만, 미리 정점 좌표를 컴퓨터가 구비하는 ROM, CD-ROM 등의 기억 수단에 저장하고, 기억 수단으로부터 판독하는 형태로 해도 된다. 이 경우에는 CPU의 부하가 경감된다.
(B) 본 실시예에서는 자유 곡면의 분할수를 구할 때에 사용하는 자유 곡면의 기준점이 바운딩 박스의 중심점인 경우에 대해서 설명했지만, 다른 점, 예를 들면 자유 곡면을 형성하기 위한 제어점 중 어느 1개의 점인 형태로 해도 된다.
(C) 본 실시예에서는 베쥬 함수를 이용하여 자유 곡면을 생성하는 경우에 대해서 설명했지만, 다른 함수, 예를 들면 스플라인(Spline) 함수, NURBS(Non-Uniform Rational B-Spline) 함수, Sub Division Surface 함수를 이용하는 형태로 해도 된다.
(D) 본 실시예에서는 자유 곡면의 분할수를 룩업 테이블을 이용하여 구하는 경우에 대해서 설명했지만, 소정의 연산식을 이용하여 구하는 형태로 해도 된다.
(E) 본 실시예에서는 2개의 패치를 결합하는 경우에 대해서 설명했지만, 2개의 오브젝트, 또는 오브젝트와 패치를 결합하는 형태이어도 된다.
(F) 본 실시예에서는 결합 대상인 정점의 정점 좌표를 변경하는 경우에 대해서 설명했지만, 정점 좌표 외에 다른 정점 정보, 예를 들면 정점 컬러, 정점 텍스처 좌표 및 정점 법선 벡터 중 적어도 1개를 변경하는 형태이어도 된다. 단, 결합되는 2개의 패치, 2개의 오브젝트 또는 패치와 오브젝트가, 서로 상이한 머티리얼 정보(앰비언트 컬러, 디퓨즈 컬러, 스페큘러 컬러, 텍스처 정보 등)를 갖고 있는 경우에는 정점 텍스처 좌표를 변경하지 않는 쪽이 자연스러운 터치의 화상이 형성된다.
본 발명에 따르면, 제1 및 제2 패치의 결합 대상의 폴리곤의 정점 좌표가 일치함으로써, 양자 사이의 간극은, 말하자면 봉합되는 형태로 결합되고, 제1 및 제2 패치를 결합하여 형성되는 화상의 화질 및 리얼리티를 향상시킬 수 있다.
본 발명에 따르면, 정점 수를 증가(폴리곤을 증가)시키지 않고 용이하게 패치를 결합할 수 있다. 본 발명에 따르면, 컴퓨터는 폴리곤의 정점 좌표에 비하여 적은 수의 제어점의 좌표 정보를 기억하고 있기 때문에, 미리 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표를 기억하고 있는 경우와 비교하여, 필요한 기억 용량을 저감시킬 수 있다.
본 발명에 따르면, 가상 시점의 위치로부터 패치가 멀수록, 분할수를 적게 함으로써, 화질의 저하가 억제되면서 처리 속도를 향상시킬 수 있다. 본 발명에 따르면, 용이하며 또한 적절한 분할수를 구할 수 있다.
본 발명에 따르면, 더욱 용이하며 또한 적절한 분할수를 구할 수 있다. 또한, 본 발명에 따르면, 더욱 적절한 분할수를 구할 수 있다.
본 발명에 따르면, 제1 및 제2 오브젝트의 결합 대상의 폴리곤의 정점 좌표가 일치함으로써, 양자 사이의 간극은, 말하자면 봉합되는 형태로 결합되어, 제1 및 제2 패치를 결합하여 형성되는 화상의 화질 및 리얼리티를 향상시킬 수 있다.
본 발명에 따르면, 오브젝트와 패치와의 결합 대상의 폴리곤의 정점 좌표가 일치함으로써, 양자 사이의 간극은, 말하자면 봉합되는 형태로 결합되어, 제1 및 제2 패치를 결합하여 형성되는 화상의 화질 및 리얼리티를 향상시킬 수 있다.
본 발명에 따르면, 제1 및 제2 패치의 결합 대상의 폴리곤의 정점 좌표가 일치함으로써, 양자 사이의 간극은, 말하자면 봉합되는 형태로 결합되어, 제1 및 제2 패치를 결합하여 형성되는 화상의 화질 및 리얼리티를 향상시킬 수 있다.
본 발명에 따르면, 제1 및 제2 패치의 결합 대상의 폴리곤의 정점 좌표가 일치함으로써, 양자 사이의 간극은, 말하자면 봉합되는 형태로 결합되어, 제1 및 제2 패치를 결합하여 형성되는 화상의 화질 및 리얼리티를 향상시킬 수 있다.
본 발명에 따르면, 제1 및 제2 패치의 결합 대상의 폴리곤의 정점 좌표가 일치함으로써, 양자 사이의 간극은, 말하자면 봉합되는 형태로 결합되어, 제1 및 제2 패치를 결합하여 형성되는 화상의 화질 및 리얼리티를 향상할 수 있으며, 게임의 흥취성을 향상할 수 있다.

Claims (12)

  1. 각각 복수의 폴리곤으로 구성되는 제1 및 제2 패치를 결합하는 3차원 화상 처리 프로그램을 저장한 기록 매체에 있어서,
    컴퓨터를,
    상기 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표를 설정하는 정점 좌표 설정 수단과,
    상기 제1 및 제2 패치로부터 각각 결합 대상의 폴리곤의 정점을 선택하는 결합 정점 선택 수단과,
    선택된 폴리곤의 정점 좌표에 대하여 상기 제1 패치측의 정점 좌표와 상기 제2 패치측의 정점 좌표를 일치시키는 정점 좌표 변경 수단
    으로서 기능시키는 것을 특징으로 하는 3차원 화상 처리 프로그램을 저장한 기록 매체.
  2. 제1항에 있어서,
    상기 정점 좌표 변경 수단은, 상기 제1 패치에 있어서의 결합 대상의 폴리곤의 정점 수가 상기 제2 패치에 있어서의 결합 대상의 폴리곤의 정점 수보다 많은 경우에, 상기 제1 패치에 있어서의 결합 대상의 폴리곤의 정점 좌표를 상기 제2 패치에 있어서의 결합 대상의 폴리곤의 정점 좌표에 일치시키는 것을 특징으로 하는 3차원 화상 처리 프로그램을 저장한 기록 매체.
  3. 제1항 또는 제2항에 있어서,
    상기 정점 좌표 설정 수단은, 상기 제1 및 제2 패치를 각각 규정하도록 미리 준비된 좌표 정보를 갖는 제어점을 이용하여 자유 곡면을 생성하는 자유 곡면 생성 수단과, 자유 곡면을 분할하기 위한 소정의 분할수를 이용하여 생성된 자유 곡면을 분할하여 상기 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표를 생성하는 폴리곤 생성 수단을 포함하는 것을 특징으로 하는 3차원 화상 처리 프로그램을 저장한 기록 매체.
  4. 제3항에 있어서,
    상기 정점 좌표 설정 수단은, 가상 시점의 위치를 설정하는 시점 위치 설정 수단과, 가상 시점 위치 정보를 이용하여 분할수를 구하는 분할수 결정 수단을 포함하고, 상기 폴리곤 생성 수단은 구해진 분할수를 이용하여 폴리곤의 정점 좌표를 생성하는 것을 특징으로 하는 3차원 화상 처리 프로그램을 저장한 기록 매체.
  5. 제4항에 있어서,
    상기 정점 좌표 설정 수단은, 상기 제1 및 제2 패치의 각각의 기준점의 좌표를 설정하는 기준 좌표 설정 수단을 포함하고, 상기 분할수 결정 수단은 상기 기준점과 상기 가상 시점과의 거리에 기초하여 분할수를 구하는 것을 특징으로 하는 3차원 화상 처리 프로그램을 저장한 기록 매체.
  6. 제5항에 있어서,
    상기 분할수 결정 수단은 상기 기준점과 상기 가상 시점과의 거리에 의해 분할수가 일의적으로 결정되는 룩업 테이블을 이용하여 분할수를 구하는 것을 특징으로 하는 3차원 화상 처리 프로그램을 저장한 기록 매체.
  7. 제5항에 있어서,
    상기 분할수 결정 수단은 상기 기준점과 상기 가상 시점과의 거리를 이용하여 소정의 연산식에 의해 분할수를 구하는 것을 특징으로 하는 3차원 화상 처리 프로그램을 저장한 기록 매체.
  8. 각각 복수의 폴리곤으로 구성되는 제1 및 제2 오브젝트를 결합하는 3차원 화상 처리 프로그램을 저장한 기록 매체에 있어서,
    컴퓨터를,
    상기 제1 및 제2 오브젝트를 구성하는 각 폴리곤의 정점 좌표를 설정하는 정점 좌표 설정 수단과,
    상기 제1 및 제2 오브젝트로부터 각각 결합 대상의 폴리곤의 정점을 선택하는 결합 정점 선택 수단과,
    선택된 폴리곤의 정점 좌표에 대하여 상기 제1 오브젝트측의 정점 좌표와 상기 제2 오브젝트측의 정점 좌표를 일치시키는 정점 좌표 변경 수단
    으로서 기능시키는 것을 특징으로 하는 3차원 화상 처리 프로그램을 저장한 기록 매체.
  9. 각각 복수의 폴리곤으로 구성되는 오브젝트와 패치를 결합하는 3차원 화상 처리 프로그램을 저장한 기록 매체에 있어서,
    컴퓨터를,
    상기 오브젝트 및 패치를 구성하는 각 폴리곤의 정점 좌표를 설정하는 정점 좌표 설정 수단과,
    상기 오브젝트 및 패치로부터 각각 결합 대상의 폴리곤의 정점을 선택하는 결합 정점 선택 수단과,
    선택된 폴리곤의 정점 좌표에 대하여 상기 오브젝트측의 정점 좌표와 상기 패치측의 정점 좌표를 일치시키는 정점 좌표 변경 수단
    으로서 기능시키는 것을 특징으로 하는 3차원 화상 처리 프로그램을 저장한 기록 매체.
  10. 각각 복수의 폴리곤으로 구성되는 제1 및 제2 패치를 결합하는 3차원 화상 처리 장치에 있어서,
    상기 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표를 설정하는 정점 좌표 설정 수단과,
    상기 제1 및 제2 패치로부터 각각 결합 대상의 폴리곤의 정점을 선택하는 결합 정점 선택 수단과,
    선택된 폴리곤의 정점 좌표에 대하여 상기 제1 패치측의 정점 좌표와 상기 제2 패치측의 정점 좌표를 일치시키는 정점 좌표 변경 수단
    을 포함하는 것을 특징으로 하는 3차원 화상 처리 장치.
  11. 각각 복수의 폴리곤으로 구성되는 제1 및 제2 패치를 결합하는 3차원 화상 처리 방법에 있어서,
    컴퓨터에,
    상기 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표를 설정하는 정점 좌표 설정 처리와,
    상기 제1 및 제2 패치로부터 각각 결합 대상의 폴리곤의 정점을 선택하는 결합 정점 선택 처리와,
    선택된 폴리곤의 정점 좌표에 대하여 상기 제1 패치측의 정점 좌표와 상기 제2 패치측의 정점 좌표를 일치시키는 정점 좌표 변경 처리
    를 실행시키는 것을 특징으로 하는 3차원 화상 처리 방법.
  12. 외부로부터의 입력을 접수하는 조작 수단과, 외부로부터의 입력에 기초하여 게임의 진행을 제어하는 게임 진행 제어 수단과, 가상 3차원 공간 내에 게임의 진행에 대응하는 게임 화상을 생성하는 게임 화상 생성 수단과, 게임 화상을 표시하는 표시 수단을 구비하는 비디오 게임 장치로서,
    상기 게임 화상 생성 수단은 제1 및 제2 패치를 구성하는 각 폴리곤의 정점 좌표를 설정하는 정점 좌표 설정 수단과,
    상기 제1 및 제2 패치로부터 각각 결합 대상의 폴리곤의 정점을 선택하는 결합 정점 선택 수단과,
    선택된 폴리곤의 정점 좌표에 대하여 상기 제1 패치측의 정점 좌표와 상기 제2 패치측의 정점 좌표를 일치시키는 정점 좌표 변경 수단
    을 포함하는 것을 특징으로 하는 비디오 게임 장치.
KR1020030005216A 2002-01-28 2003-01-27 3차원 화상 처리 프로그램, 3차원 화상 처리 장치, 3차원화상 처리 방법 및 비디오 게임 장치 KR100543153B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002018925 2002-01-28
JPJP-P-2002-00018925 2002-01-28

Publications (2)

Publication Number Publication Date
KR20030064643A KR20030064643A (ko) 2003-08-02
KR100543153B1 true KR100543153B1 (ko) 2006-01-20

Family

ID=19192106

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030005216A KR100543153B1 (ko) 2002-01-28 2003-01-27 3차원 화상 처리 프로그램, 3차원 화상 처리 장치, 3차원화상 처리 방법 및 비디오 게임 장치

Country Status (5)

Country Link
US (1) US7068273B2 (ko)
EP (1) EP1331607B1 (ko)
KR (1) KR100543153B1 (ko)
CN (1) CN1243326C (ko)
DE (1) DE60336942D1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7928979B2 (en) 2008-02-01 2011-04-19 Microsoft Corporation Efficient geometric tessellation and displacement
JP5561975B2 (ja) 2009-03-09 2014-07-30 カルソニックカンセイ株式会社 表面加工データの作成方法および装置
KR20110057599A (ko) * 2009-11-24 2011-06-01 삼성전자주식회사 벡터 오브젝트의 제어점 필터링 방법 및 장치
JP2012075088A (ja) * 2010-09-03 2012-04-12 Pentax Ricoh Imaging Co Ltd 画像処理システムおよび画像処理方法
JP5791312B2 (ja) * 2011-03-08 2015-10-07 カルソニックカンセイ株式会社 表面加工データの作成方法および装置
US9681634B2 (en) * 2011-04-28 2017-06-20 Technologies Holdings Corp. System and method to determine a teat position using edge detection in rear images of a livestock from two cameras
CN104574475B (zh) * 2015-01-15 2017-11-21 北京春天影视科技有限公司 一种基于次级控制器的精细动画制作方法
US10860310B2 (en) 2015-09-30 2020-12-08 Apple Inc. Software updating
US11450030B2 (en) * 2019-09-24 2022-09-20 Apple Inc. Three-dimensional mesh compression using a video encoder
CN111127590B (zh) * 2019-12-26 2023-06-20 新奥数能科技有限公司 一种二阶贝塞尔曲线绘制方法及装置
US11948339B2 (en) * 2021-06-04 2024-04-02 Apple Inc. Encoding and decoding visual content

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2667835B2 (ja) 1987-10-09 1997-10-27 株式会社日立製作所 コンピユータグラフイツクス表示装置
US5428718A (en) 1993-01-22 1995-06-27 Taligent, Inc. Tessellation system
JPH07271999A (ja) 1994-03-31 1995-10-20 Oki Electric Ind Co Ltd 3次元地形出力方法
JP3926866B2 (ja) 1996-05-10 2007-06-06 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、情報処理方法、及び描画システム
JPH11224352A (ja) 1998-02-06 1999-08-17 Yaskawa Electric Corp メッシュ生成装置
JP2000107584A (ja) 1998-10-02 2000-04-18 Sharp Corp 樹脂被覆微粒子の製造方法及びそれに用いられる製造装置
JP2000123195A (ja) 1998-10-14 2000-04-28 Nippon Telegr & Teleph Corp <Ntt> 3次元仮想空間におけるオブジェクト生成方法及びそのプログラムを記録した記録媒体
US6469701B1 (en) * 1999-07-19 2002-10-22 Stefan Gumhold Method for compressing graphical information
JP3568861B2 (ja) 2000-01-27 2004-09-22 株式会社スクウェア・エニックス ビデオゲームにおける三次元オブジェクト変形方法及びビデオゲーム装置、並びにビデオゲーム用のプログラムを記録したコンピュータ読み取り可能な記録媒体
JP3530095B2 (ja) 2000-01-27 2004-05-24 株式会社スクウェア・エニックス ビデオゲームにおける三次元オブジェクト変形方法及びビデオゲーム装置、並びにビデオゲーム用のプログラムを記録したコンピュータ読み取り可能な記録媒体
US6707452B1 (en) * 2000-07-19 2004-03-16 Pixar Method and apparatus for surface approximation without cracks
US6889176B1 (en) * 2000-07-24 2005-05-03 Ford Global Technologies, Llc Method for reconstructing the topology of a polygonal soup
JP3363134B2 (ja) 2000-09-20 2003-01-08 コナミ株式会社 3dモデルの描画データ作成方法、装置及び3dビデオゲーム装置並びに3dモデルの描画データ作成プログラムを記録した可読記録媒体
US7644131B2 (en) 2000-12-27 2010-01-05 INOVO Limited Optimized image delivery over limited bandwidth communication channels
JP2002260005A (ja) 2001-02-28 2002-09-13 Konami Computer Entertainment Japan Inc 画像の描画方法及びそれに用いるプログラム
JP3625201B2 (ja) 2001-10-24 2005-03-02 株式会社コナミコンピュータエンタテインメントスタジオ 3次元モデル変形プログラム、3次元モデル変形方法及びビデオゲーム装置

Also Published As

Publication number Publication date
CN1243326C (zh) 2006-02-22
US20030148802A1 (en) 2003-08-07
CN1435797A (zh) 2003-08-13
DE60336942D1 (de) 2011-06-16
EP1331607A2 (en) 2003-07-30
EP1331607A3 (en) 2005-12-14
EP1331607B1 (en) 2011-05-04
US7068273B2 (en) 2006-06-27
KR20030064643A (ko) 2003-08-02

Similar Documents

Publication Publication Date Title
US6561906B2 (en) Game apparatus, method of reproducing movie images and recording medium recording program thereof
US6952205B2 (en) Recording medium storing 3D image processing program, the program, 3D image processing method and video game apparatus
JP3625172B2 (ja) 画像作成装置、画像作成方法、画像作成プログラムが記録されたコンピュータ読み取り可能な記録媒体およびビデオゲーム装置
KR100543153B1 (ko) 3차원 화상 처리 프로그램, 3차원 화상 처리 장치, 3차원화상 처리 방법 및 비디오 게임 장치
JP2001319244A (ja) ゲームシステム及び情報記憶媒体
JP2007141082A (ja) プログラム、テクスチャデータ構造、情報記憶媒体及び画像生成システム
JP3748451B1 (ja) プログラム、情報記憶媒体、及び画像生成システム
EP1248232B1 (en) Image distorsion
US6972766B2 (en) Recording medium storing dynamic picture image generation program, dynamic picture image generation program, dynamic picture image generation method, and device for the same
JP2003288609A (ja) 3次元画像処理プログラム、3次元画像処理装置、3次元画像処理方法及びビデオゲーム装置
JP3737784B2 (ja) 3次元画像処理プログラム、3次元画像処理方法及びビデオゲーム装置
JP3872032B2 (ja) 画像生成プログラム、画像生成装置、画像生成方法及びビデオゲーム装置
JP3617960B2 (ja) 3次元ゲーム画像処理プログラム、3次元ゲーム画像処理方法及びビデオゲーム装置
JP2002541600A (ja) 透視変換する装置及び方法
JP4632530B2 (ja) ゲームシステム、プログラム及び情報記憶媒体
JP2006252423A (ja) プログラム、情報記憶媒体及び画像生成システム
JP4584665B2 (ja) 3次元ゲーム画像処理プログラム、3次元ゲーム画像処理方法及びビデオゲーム装置
JP2002042155A (ja) ゲームシステム及び情報記憶媒体
JP2002163680A (ja) 3次元画像処理方法、その装置、3次元画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体及びビデオゲーム装置
JP4641831B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP2003331312A (ja) 3次元ゲーム画像処理プログラム、3次元ゲーム画像処理方法及びビデオゲーム装置

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
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20091224

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee