KR100536414B1 - 기록매체,기록및정보처리방법과장치및그래픽스시스템과방법 - Google Patents
기록매체,기록및정보처리방법과장치및그래픽스시스템과방법 Download PDFInfo
- Publication number
- KR100536414B1 KR100536414B1 KR1019970018090A KR19970018090A KR100536414B1 KR 100536414 B1 KR100536414 B1 KR 100536414B1 KR 1019970018090 A KR1019970018090 A KR 1019970018090A KR 19970018090 A KR19970018090 A KR 19970018090A KR 100536414 B1 KR100536414 B1 KR 100536414B1
- Authority
- KR
- South Korea
- Prior art keywords
- recording
- data
- planar shapes
- vertices
- predetermined
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B7/00—Recording or reproducing by optical means, e.g. recording using a thermal beam of optical radiation by modifying optical properties or the physical structure, reproducing using an optical beam at lower power by sensing optical properties; Record carriers therefor
- G11B7/24—Record carriers characterised by shape, structure or physical properties, or by the selection of the material
- G11B7/24094—Indication parts or information parts for identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/408—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by data handling or data format, e.g. reading, buffering or conversion of data
- G05B19/4086—Coordinate conversions; Other special calculations
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
- G11B2220/25—Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
- G11B2220/2537—Optical discs
- G11B2220/2545—CDs
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Automation & Control Theory (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
- Holo Graphy (AREA)
- Ultra Sonic Daignosis Equipment (AREA)
Abstract
본 발명은 저렴한 비용으로 데이터를 효율적으로 고속 처리할 수 있는 기록 매체, 기록 및 정보 처리 장치 및 방법을 제공한다. 메인 CPU는 사용자에 의한 조작 유닛의 수동 조작에 응답하여 다각형의 좌표들을 변환시키고, 다각형의 데이터를 메인 버스를 통해서 프로그램가능한 패킷 엔진으로 전달한다. 패킷 엔진(packet engine)은 메인 CPU로부터 공급된 다각형의 정점들의 좌표값들로부터 깊이 방향으로 다각형의 위치를 나타내는 Z값을 계산하고, Z값에 대응하는 복수의 서브-다각형들로 분할하고, 정규 벡터 및 곡면 파라미터들에 따라 서브-다각형들의 정점들의 좌표값들을 변환시키고, 서브-다각형들로 구성된 곡면을 생성한다. 그래픽 처리 유닛은 프로그램가능한 패킷 엔진에 의해 생성된 서브-다각형들의 픽셀 데이터를 프레임 버퍼에 기입하고 랜더링(rendering) 처리를 수행한다.
Description
본 출원은 1996년 5월 10일 출원된 일본 특허 출원 번호 제 P08-116301호에 기초한 국제협약하에서 우선권을 주장한다.
발명의 배경
본 발명은 통상적으로 개선된 기록 및 정보 처리 방법과 장치 및 이를 위한 기록 방법에 관한 것으로, 특히, 효율적이고 적은 비용으로 고속처리를 할 수 있는 신규의 개선된 기록 매체와, 기록 및 정보 처리 시스템에 관한 것이다.
관련 기술의 설명
최근, 사용자가 게임 등을 즐길 수 있도록 하기 위해 고속으로 화상 드로윙 처리(picture drawing processing)를 수행하는 가정용 텔레비젼 게임기들이나 개인용 컴퓨터들의 가격이 내려가고 있고, 많은 가정들에 확산되고 있다.
컴퓨터 그래픽스(CG)를 생성하기 위해서, 또는 컴퓨터 그래픽스를 사용하는 소프트웨어를 개발하기 위해서, 화상 드로윙 처리를 고속으로 수행하는 그래픽 컴퓨터가 사용된다.
이와 같은 가정용 텔레비젼 게임기들, 개인용 컴퓨터들 및 그래픽 컴퓨터들은 통상 메모리, CPU(중앙 처리 장치) 및 다른 연산 회로들로 구성된 화상 드로윙 장치를 포함한다. 화상 드로윙 장치들에서, 텔레비젼 수신기의 표시부 또는 전용 표시 유닛 상에 표시될 영상 데이터, 즉 표시 데이터는 CPU에 의해서 생성되고, 이렇게 생성된 데이터는 표시부의 픽셀들의 값들을 보유하기 위해 제공된 프레임 버퍼에 출력됨으로써, 전용 화상 드로윙 회로에 의해서 고속 화상 드로윙 처리가 수행된다.
화상 드로윙 장치의 CPU는 삼각형들이나 사각형들과 같은 형상들을 갖는 기본 평면도형들(다각형들)의 조합의 형태로 3차원 입체 오브젝트의 그래픽 형태를 드로윙하기 위한 화상 드로윙 명령들을 생성하도록, 좌표 변환, 클리핑(clipping) 및 광원과 같은 기하학 처리를 수행하고 화상 드로윙 회로에 화상 드로윙 명령들을 공급한다.
화상 드로윙 회로는 CPU로부터 수신된 화상 드로윙 명령들에 따라서, 미리 결정된 표시부 상에 2차원적으로 표시된 3차원 공간에서 깊이 방향으로 다각형들의 위치들을 가리키는 Z 값들과 다각형들의 정점들의 색 데이터로부터 다각형들을 구성하는 픽셀들의 값들을 계산하고, 이어서, 그 값들을 프레임 버퍼(랜더링(rendering) 처리)에 기입하고, 다각형들의 화상을 드로윙한다.
위에 설명한 화상 드로윙 회로는 다른 회로(예들 들면, 기록 장치 또는 데이터를 보유하는 메모리)와 함께 공동으로 사용된 다른 버스 상에 로드(버스를 통해서 송수신된 데이터)의 다른 집중 가능성을 방지하기 위한 전용 버스에 의해서 CPU에 직접 결합된다. 예를 들어, 다른 회로와 함께 공동으로 사용된 다른 버스를 사용하는 약 15M 다각형/sec의 속도로(1초간 15× 106 다각형들의 랜더링 처리를 수행) 화상 드로윙 처리가 수행되면, 다른 회로와 함께 공동으로 사용된 버스를 따라 통신되는 데이터의 양은 100MB/sec 내지 200MB/sec(초당 100 내지 200 메가바이트)까지 된다. 따라서, 공동으로 사용된 버스에는 대용량의 버스가 필요하다.
CPU로부터 출력된 데이터는 CPU와 화상 드로윙 회로 사이에 끼워진 FIFO (선입선출) 버퍼에 일단 저장되고, 화상 드로윙 회로에 기록된 순서로 공급된다. CPU에 의한 데이터의 공급 속도가 화상 드로윙 회로의 처리속도보다 일시적으로 높을 때, 그 데이터의 저장량은 점점 증가하도록, FIFO 버퍼는 그안에 계속해서 저장하고, 저장된 데이터를 화상 드로윙 회로에 공급하지만, 그 데이터의 저장량은 CPU에 의한 데이터의 공급속도가 화상 드로윙 회로의 처리속도보다 낮을 때 점차적으로 감소한다. 이러한 방법으로, FIFO 버퍼는 CPU의 데이터 공급 속도와 화상 드로윙 회로의 처리속도 사이의 불균형을 흡수한다.
그러나, CPU의 데이터 공급속도가 화상 드로윙 회로의 처리속도를 너무 초과하거나, CPU의 데이터 공급 속도가 CPU에 로드 조건들과 화상 드로윙 회로 때문에 장시간 동안 계속 화상 드로윙 회로의 처리속도보다 높을 때에는, 처리되지 않은 데이터가 점차 FIFO 버퍼 내에 축적된다. 이어서, 이러한 처리되지 않은 데이터의 양이 FIFO 버퍼의 용량을 초과하면, 데이터의 매칭이 상실되고, 결과적으로 CPU의 동작과 화상 드로윙 회로는 정지한다. 그러므로, 그러한 화상 드로윙 장치는 효율적으로 처리하기 어렵다는 단점을 갖는다.
화상 드로윙 장치의 또다른 단점은 고속으로 화상 드로윙 처리를 수행하기 위해서, 화상 드로윙을 위해 처리될 데이터의 양이 증가함에 따라, 필요한 기록 매체의 용량과 메모리의 용량이 증가한다. 따라서, 더 낮은 비용으로 달성하는 것이 어렵다.
또한, 위에 설명된 화상 드로윙 장치는 처리될 데이터의 양이 증가함에 따라, 메모리 또는 기록 매체로부터 데이터를 판독하는데 필요한 시간이 증가하므로, 결국 높은 처리속도를 달성하기 어렵다는 또다른 단점이 있다.
따라서, 저렴한 비용으로 효율적인 처리 및 고속 처리를 용이하게 하는 신규의 개선된 기록 매체 및 기록 및 정보 처리 시스템이 오랫동안 요구되어왔다. 본 발명은 이러한 요구들을 확실히 충족시킨다.
요약하자면, 본 발명은, 데이터의 효율적인 처리 및 고속 처리가 저렴한 비용으로 달성되는 기록 매체 및 기록 장치와 방법 및 정보 처리 장치 및 방법을 제공한다.
특히, 본 발명은 기준이 되는 기본 오브젝트의 식별 정보와, 상기 기본 오브젝트의 정점들의 좌표값들과 미리 결정된 오브젝트의 정점들의 좌표값들 사이의 차분값들을, 3차원 공간에서의 미리 결정된 오브젝트의 데이터로서 보유하는 기록매체를 제공한다. 하지만, 예로서 여기에 설명한 것은 그것에만 한정되지 않는다.
기록 매체를 사용하면, 기준이 되는 기본 오브젝트의 식별 정보와, 상기 기본 오브젝트의 정점들의 좌표값들과 미리 결정된 오브젝트의 정점들의 좌표값들 사이의 차분값들을 3차원 공간에서의 미리 결정된 오브젝트의 데이터로서 보유하기 때문에, 각각의 오브젝트의 데이터의 양은 비교적 작다. 결과적으로, 기록 매체는 비교적 큰 수의 오브젝트들의 데이터를 보유할 수 있다.
본 발명의 또다른 양상에 따라, 3차원 공간에서의 오브젝트로부터, 기준이 되는 기본 오브젝트의 식별 정보와, 상기 기본 오브젝트의 정점들의 좌표값들과 미리 결정된 오브젝트의 정점들의 좌표값들 사이의 차분값들을 계산하는 계산 수단, 및 상기 계산 수단에 의해 계산된 식별 정보와 차분값들을 미리 결정된 오브젝트의 데이터로서 기록하는 기록 수단을 포함하는, 기록 매체 상에 3차원 공간의 미리 결정된 오브젝트의 데이터를 기록하는 기록 장치가 제공된다.
본 발명은 또한 3차원 공간에서의 미리 결정된 오브젝트로부터, 기준이 되는 기본 오브젝트의 식별 정보와, 상기 기본 오브젝트의 정점들의 좌표값들과 미리 결정된 오브젝트의 정점들의 좌표값들 사이의 차분값들을 계산하는 단계, 및 상기 계산 단계에서 계산된 차분값과 식별 정보를 미리 결정된 오브젝트의 데이터로서 기록하는 단계를 포함하는, 기록 매체 상에 3차원 공간에서의 미리 결정된 오브젝트의 데이터를 기록하는 기록 방법을 제공한다.
상기 기록 장치 및 기록 방법을 사용하면, 기준이 되는 기본 오브젝트의 식별 정보와, 상기 기본 오브젝트의 정점들의 좌표값들과 미리 결정된 오브젝트의 정점들의 좌표값들 사이의 차분값들이 계산되고, 상기 식별 정보와 계산된 차분값들은 미리 결정된 오브젝트의 데이터로서 기록되기 때문에, 비교적 큰 수의 오브젝트들의 데이터를 보유하는 기록 매체가 생성될 수 있다.
또한, 본 발명은 3차원 공간에서 복수의 평면도형들로 구성된 3차원 오브젝트의 데이터가 기록되는 기록 매체로부터 데이터를 독출하는 독출 수단, 평면도형들을 미리 결정된 표시부 상의 표시 크기에 대응하는 복수의 평면도형들로 구성된 곡면(curved surface)으로 변환시키는 제1 변환 수단, 및 상기 제1 변환 수단에 의한 변환에 의해 얻어진 곡면의 데이터를 2차원 표시 데이터로 변환시키는 제2 변환 수단을 포함하는 정보 처리 장치를 제공한다.
본 발명의 또다른 양상에 따라, 3차원 공간에서 복수의 평면도형들로 구성된 3차원 오브젝트의 데이터가 기록된 기록 매체로부터 데이터를 독출하는 단계, 평면도형들을 미리 결정된 표시부의 표시 크기에 대응하는 복수의 평면도형들로 구성된 곡면으로 변환시키는 단계, 및 제1 변환 수단에 의한 변환에 의해 얻어진 곡면의 데이터를 2차원 표시 데이터로 변환시키는 단계를 포함하는 정보 처리 방법을 제공한다.
이와같은 정보 처리 장치 및 정보 처리 방법을 사용하면, 평면도형이 미리 결정된 표시부의 표시 크기에 대응하는 복수의 평면도형들로 구성된 곡면으로 변환되기 때문에, 처리될 데이터의 양이 감소될 수 있고, 버스에 하중된 짐이 감소될 수 있다
본 발명의 또다른 양상에 따라, 3차원 공간에서 복수의 평면도형들로 구성된 3차원 오브젝트의 데이터가 기록된 기록 매체로부터 데이터를 독출하는 독출 수단, 미리 결정된 표시부 상의 표시 크기에 따라 평면도형들을 분할하는 분할 수단, 원래의 평면도형들의 휘도값들(brightness values)로부터 분할에 의해 얻어진 평면도형들의 휘도값들을 계산하는 계산 수단, 및 분할에 의해 얻어진 평면도형들의 휘도값들로부터 2차원 표시 데이터를 생성하는 생성 수단을 포함하는 정보 처리 장치가 제공된다.
또한, 본 발명은 3차원 공간에서 복수의 평면도형들로 구성된 3차원 오브젝트의 데이터가 기록된 기록 매체로부터 데이터를 독출하는 단계, 미리 결정된 표시부 상의 표시 크기에 따라 평면도형들을 분할하는 단계, 원래의 평면도형들의 휘도값들로부터 분할에 의해 얻어진 평면도형들의 휘도값들을 계산하는 단계, 및 분할에 의해 얻어진 평면도형들의 휘도값들로부터 2차원 표시 데이터를 생성하는 단계를 포함하는 정보 처리 방법을 제공한다.
따라서, 본 발명의 정보 처리 장치 및 방법을 사용하면, 평면도형은 미리 결정된 표시부 상의 표시 크기에 따라 분할되고, 분할에 의해 얻어진 평면도형들의 휘도값들은 원래의 평면도형의 휘도값들로부터 계산되기 때문에, 처리될 데이터의 양이 감소될 수 있고, 버스에 하중되는 짐이 감소될 수 있다.
그러므로, 본 발명은 저렴한 비용으로 효율적인 처리 및 고속 처리를 용이하게 할 수 있는 신규의 개선된 기록 매체 및 기록 및 정보 처리 시스템에 대한 장기간 동안에 걸쳐 존재하는 욕구를 충족할 수 있다
본 발명의 상기 목적과 그밖에 다른 목적, 특징 및 이점들은 첨부된 도면과 관련하여 설명하는 다음의 더욱 상세한 설명과 첨부된 청구범위로부터 더욱 명백해질 것이며, 첨부된 도면에서 같은 참고번호는 같은 부품을 의미한다.
양호한 실시예의 설명
이하에서는 도면을 참조하여 설명한다. 도 1 내지 도 3은 본 발명의 정보처리 장치가 적용된 가정용 TV 게임기의 일례를 도시한다. 가정용 게임기(1)는 게임기 본체 및 상기 게임기 몸체(2)에 접속될 수 있는 조작 유닛(17)과 기록 유닛(38)으로 구성된다.
게임기 본체(2)는 도 1 내지 도 3에 도시된 바와 같이, 실질적으로 4각형 형상으로 형성되고, 그의 중심 위치에, 도4에 도시된 바와 같이 선택형 디스크이고 게임을 위한 매체로서 역할을 하는 CD-ROM(콤팩트 디스크 ROM(판독 전용 메모리))이 로딩되는 디스크 로딩 스테이션(3)을 갖고, 게임기 본체의 적합한 위치들에, 게임을 임의로 리셋시키기 위한 리셋 스위치(4), 전원 온/오프를 스위칭하기 위한 전원 스위치(5), 디스크의 로딩을 조작하는 디스크 조작 스위치(6), 및 게임기 등의 조작을 수행하기 위한 조작 유닛(17)과 그러한 게임의 셋팅이 기록될 기록 유닛(38)으로 접속하는 접속부들(7A 및 7B)을 갖는다.
접속부들(7A 및 7B)은 도 2 및 도 3에 도시된 2개의 단에서 각각 형성된다. 접속부들(7A 및 7B)의 각각의 상단에는, 기록 유닛(38)의 접속을 위한 기록 삽입부(8)가 구비되고, 하단에는, 조작 유닛(17)의 접속을 위한 접속 단자 삽입부(12)가 구비된다.
기록 삽입부(8)는 수평방향들로 신장된 정사각형 형상의 삽입구멍을 갖고, 삽입구멍 내부에는 기록 유닛(38)이 접속되는 메모리 접속 단자 부재(도시되지 않음)가 접속된다. 또한, 도 2에 도시된 바와 같이, 기록 삽입부(8)는 메모리 접속 단자 부재를 먼지로부터 보호하기 위해 안에 구비된 셔터(9)를 갖는다. 기록 유닛(38)은 게임에 관련된 데이터가 기록될 수 있도록 전기적으로 재기록가능한 ROM을 갖는다.
기록 유닛(38)을 장착하기 위해서, 사용자는 기록 유닛(38)의 단부에서, 내부방향으로 셔터(9)를 누르고, 그것이 메모리 접속 단자 부재로 접속될 때까지 삽입 구멍으로 기록 유닛(38)을 더 누른다.
접속 단자 삽입부(12)는 도 2에 도시된 바와 같이, 조작 유닛(17)의 접속 단자 부재(26)의 접속을 위한 접속 단자(12A)와 수평 방향으로 신장된 정사각형 형상의 삽입구멍을 갖는다.
조작 유닛(17)은 도 1에 도시된 바와 같이, 그 안에서, 두 손바닥들에 의해 유지되고 다섯 개의 손가락들에 의해 조작 유닛(17)을 수동 조작으로 자유로이 이동시킬 수 있는 구조를 가지며, 좌우측으로 대칭 관계로 놓여진 조작부들(18 및 19)과, 조작부들(18 및 19) 사이의 삽입부에 구비된 선택 스위치(22) 시작 스위치(23) 및 게임기 본체(2)에 접속하기 위한 전선(27)과 접속 단자 부재(26)를 갖는다.
도 5는 상기 게임기 본체(2)의 전기적 구성의 일례이다.
게임기 본체(2)는 메인 버스(41)와 서브-버스(42)를 포함하는 두 개의 버스들을 갖는다. 버스들(41 및 42)은 버스 제어기(43)를 통해서 서로 접속된다. 마이크로프로세서 등으로 형성되고 독출 수단과 좌표 변환 수단으로서 역할을 하는 CPU(44), RAM(판독 전용 메모리)으로 형성된 메인 메모리(45), 메인 직접 메모리 접근 제어기(메인 DMAC)(46), MPEG 디코더(MDEC)(47), 제 1 변환 수단, 분할 수단 및 계산 수단으로서 역할을 하는 프로그램가능한 패킷 엔진(PPP)(48), 및 제 2 변환 수단 및 생성 수단으로서 역할을 하는 그래픽 처리 유닛(GPU)(49)이 메인 버스(41)에 연결되어 있다.
한편, 마이크로프로세서 등으로 형성된 서브-CPU(50), RAM으로 형성된 서브-메모리(51), 서브 직접 메모리 접근 제어기(서브 DMAC)(52), 운영체제와 같은 프로그램이 저장되는 ROM(53), 음성 처리 유닛(SPU)(54), 통신 제어부(ATM)(55), 디스크 로딩 스테이션(3)으로서 역할을 하는 CD-ROM 드라이브(56), 입력부(57), 및 그래픽 처리 유닛(49)이 서브-버스(42)에 연결되어있다.
버스 제어기(43)는 메인 버스(41)와 서브-버스(42)를 서로 접속시키고, 메인 버스(41)로부터 서브-버스(42)를 출력되고, 서브-버스(42)로부터 메인 버스(41)를 출력한다.
게임기 본체(2)가 시작할 때, 메인 CPU(44)는 버스 제어기(43)를 통해서 서브-버스(42)에 접속된 ROM(53)으로부터 시작 프로그램을 판독하여, 운영 시스템이 작동할 수 있도록 한다.
메인 CPU(44)는 CD-ROM드라이브(56)를 제어하여, CD-ROM 드라이브(56) 내의 위치에 로딩된 CD-ROM(40)으로부터 응용 프로그램이나 데이터를 독출하여 메인 메모리(45)에 그 응용 프로그램이나 데이터를 저장한다.
메인 CPU(44)는 복수의 기본 도형들, 즉 다각형들로부터 형성된 3차원 오브젝트의 데이터(정점들(표현 점)의 좌표값들과 다각형의 정점들의 좌표값들)를 위한 좌표변환과 같은 기하학 계산을 수행하는 기하학 계산 엔진 또는 그래픽 연산 엔진(GTE)(71), 및 메인 버스(41)를 통해서 프로그램가능한 패킷 엔진에 패킷처럼 그래픽 연산 엔진(71)에 의해 계산된 데이터를 전달하는 패킷 엔진(RkE)(72)을 포함한다.
그래픽 연산 엔진(71)은 부동점의 실수를 계산하는 복수의 연산 소자들을 포함하고, 평행으로 부동점 계산들을 수행한다. 엔진을 그래픽 연산 엔진(71)에 의해 계산된 다각형의 데이터를 패킷 엔진(72)은 메인 버스(41)를 통해서 프로그램가능한 엔진(48)으로 패킷에 공급한다.
프로그램가능한 패킷 엔진(48)은 메인 CPU(44)의 패킷 엔진(72)으로부터 거기에 공급된 패킷 내에 포함된 다각형의 정보로부터, 다각형을, 복수의 작은 다각형들로 구성된 곡면으로 변환시키고, 그래픽 처리 유닛(49)에 곡면의 데이터를 출력한다.
도 6은 프로그램가능한 패킷 엔진(48)의 구성의 예를 보여준다. 패킷 엔진(91)은 메인 CPU(44)의 패킷 엔진(72)으로부터 전이된 패킷을 받아서, 그 패킷을 RAM(92)에 일시적으로 저장한다. 다음에, 패킷 엔진(91)은, 패킷에 포함된 데이터중에서, 하나의 다각형을 처리하기 위한 프로그램을 나타내는 데이터를 명령 RAM(93)에 저장하고, 다른 데이터(다각형의 정점들의 좌표 데이터)를 소스 데이터 RAM(94)에 저장한다.
서브-CPU(95)는 ROM(96)에 저장된 프로그램에 따라서 작동하며, 데이터가 명령 RAM(93)에 저장될 때, 그 데이터를 독출하고, 그 데이터에 의해 지정된 프로그램(그 프로그램은 항상 서브-CPU(95)에 남아있다)에 기초해서, 소스 데이터 RAM(94)에 저장된 다각형의 데이터(다각형의 정점들의 좌표 데이터)로부터, 다각형을, 3차원 공간에서 깊이 방향으로, 복수의(특히, 다각형이 미리 결정된 표시부에 표시될 때 표시 크기에 대응하는 수) 다각형들(서브-다각형)로 분할한다.
이 예에서, 서브-CPU(95)는 패킷 엔진(72)으로부터 공급된 패킷에 포함된 곡면 파라미터로 나타낸 기준 곡면을 따라 서브-다각형들을 생성한다(즉, 복수의 서브-다각형들로 구성된 곡면을 생성).
이어서, 이렇게 생성된 복수의 다각형들의 정점들의 좌표값들을 서브-CPU(95)는 목적지 데이터 RAM(97)에 저장하여, 그들이 그래픽 처리 유닛(49)에 공급될 수 있도록 한다.
도 5를 참조하면, 그래픽 처리 유닛(49)은 프로그램가능한 패킷 엔진(48)의 목적지 데이터 RAM(97)으로부터 분할 후 다각형들의 좌표값들(3차원)의 데이터를 독출한다. 이어서, 3차원 좌표값을 미리 결정된 표시부의 2차원 좌표값으로 변환시키고, 그 데이터로부터 다각형에 대응하는 픽셀 데이터를 생성하고, 그 픽셀 데이터를 프레임 버퍼(58)에 기입하고, 랜더링 처리를 수행한다. 이 예에서, 그래픽 처리 유닛(49)은 3차원 좌표값들(x, y, z)로부터, 아래 식을 사용하여 표시하는 2차원 좌표값들(X,Y)을 계산한다(투시 변환):
X=x/z, Y=y/z
메인 직접 메모리 접근 제어기(46)는 메인 버스(41)에 접속된 다양한 회로의 DMA 전이와 같은 제어를 실행한다. 또한, 주 직접 메모리 접근 제어기(46)는 또한 버스 제어기(43)의 상태에 응답하여, 서브-버스(42)에 접속된 다양한 회로의 DMA 이전과 같은 제어를 실행할 수도 있다. 반면, MPEG 디코더(47)는 메인 CPU(44)와 병행하여 작동하고, MPEG 시스템 또는 JPEG 시스템에 의해 압축된 데이터를 감압한다.
서브-CPU(50)는 ROM(53) 내에 저장된 프로그램에 따라 다양한 연산들을 수행한다. 서브-직접 메모리 접근 제어기(52)는 메인 버스(41)와 서브-버스(42)가 버스 제어기(43)에 의해 서로 단절되는 상태에서만 서브-버스(42)에 접속된 다양한 회로의 DMA 이전과 같은 제어를 수행한다.
음성 처리 유닛(54)은 서브-CPU또는 서브-직접 메모리 접근 제어기(52)로부터 공급된 음성 명령에 응답하여 음성 메모리(59)로부터 음성 데이터를 판독하고, 오디오 출력으로서 음성 데이터를 출력한다.
통신 제어부(55)(도 5의 ATM)는 공중망에 접속되고, 공중망을 통해서 데이터의 송수신을 수행한다.
입력부(57)는 조작 유닛(17)의 접속을 위한 접속 단자(12A), 서로 다른 장치(도시되지 않음)로부터 비디오 데이터를 수신하는 비디오 입력 회로, 및 서로 다른 장치로부터 오디오 데이터를 수신하는 오디오 입력 회로(83)를 포함한다.
도 7의 흐름도를 참조하여 다각형의 화상 드로윙 처리중인 가정용 텔레비젼 게임기의 동작을 설명하려고 한다.
먼저, 단계 S1에서, 메인 CPU(44)는 입력부(57)를 통해서 사용자에 의해 조작 유닛(17)의 수동 조작에 대응하는 신호를 수신한다.
다음에, 메인 CPU(44)는 메인 메모리(45)로부터 다각형의 데이터(정점들의 좌표값들, 정규 벡터, 기준 곡면의 데이터)를 독출하고(미리 CD-ROM(40)으로부터 독출함), 사용자의 조작에 응답하여 그래픽 연산 엔진(71)에 의해 다각형의 좌표들을 변환시킨다.
다음에, 단계 S2에서, 메인 CPU(44)의 패킷 엔진(72)은 다각형의 정점들의 좌표값들, 다각형의 정규 벡터, 프로그램가능한 패킷 엔진(48)에 의해 사용될 곡면 파라미터, 및 단일 패킷으로서 프로그램가능한 패킷 엔진(48)에 의해 복수의 다각형들로 구성될 곡면을 생성하기 위해 사용될 프로그램을 나타내는 식별자를, 메인 버스(41)를 통해서 프로그램가능한 패킷 엔진(48)의 패킷 엔진에 전달한다.
그렇지 않으면, 패킷은 메인 직접 메모리 접근 제어기(46)를 사용하는 프로그램 패킷 엔진(48)으로 전달된다.
도 8A에 도시된 정점들(P0 내지 P3)을 갖는 4각형이 그래픽 연산 엔진(71)의 좌표 변환에 의해 생성되면, 그 패킷 엔진(72)은 도 8A에 도시된 바와 같이, 프로그램을 나타내는 식별자(도 8B의 코드), 다각형의 정규 벡터(도 8B의 Nx,Ny,Nz), 기준 곡면을 대표하는 곡면 파라미터, 정점들(P0 내지 P3)에 대응하는 좌표값들(Xi,Yi,Zi)(여기서, i는 0, ..., 3), 좌표값들에 대응하는 기준 곡면의 파라미터들의 값들(ui,vi)(i=0, ..., 3) 및 색 데이터 값들 RGBi(i는 0, ..., 3)을 포함하는 패킷을 프로그램가능한 패킷 엔진(48)의 패킷 엔진으로 전달한다.
식별자 코드로 나타낸 프로그램이 처리될 수 있도록, 식별자 코드에 따라 패킷의 포맷이 정해진다.
예를 들어, 4각 표면으로서 기준 곡면을 처리하기 위한 프로그램을 식별자 코드에 의해서 나타내면, 기준 곡면(x, y, z)은 아래 식에 의해서 파라미터 u와 v를 사용하여 나타내어진다.
x = fx(u,v) = a01 u2+ a01 v2 + a02 uv
+a03 u + a03 v + a04
y = fy(u,v) = a11 u2+ a11 v2 + a12 uv
+ a13 u + a13 v + a14
z = fz(u,v) = a21 u2+ a21 v2 + a22 uv
+ a23 u + a23 v + a24
다음에, 상기 식에서 상수들 a01 내지 a24 중에서, 0이 아닌 상수 aij의 미리 결정된 수를 프로그램가능한 패킷 엔진(48)에 곡면 파라미터로서 전달한다.
또한, 구면과 같은 기준 곡면을 처리하는 프로그램이 식별자 코드로 나타내면, 파라미터들 u와 v을 사용한 아래 식으로 나타낸 반경 R 및 중심 좌표들(xc, yc, zc)을 갖는 구면이 기준 곡면(x,y,z)으로서 이용된다.
x = R cos v cos u + xc
y = R sin v + yc
x = R cos v sin u + zc
다음에, 구면의 반경 R과 중심 좌표들(xc,yx,zc)은 프로그램가능한 패킷 엔진(48)에 곡면 파라미터로서 전달된다.
도 7로 돌아가서, 단계 S3에서, 프로그램가능한 패킷 엔진(48)의 패킷 엔진(91)은 메인 CPU(44)의 패킷 엔진(72)으로부터 공급된 패킷을 RAM(92)에 저장하고, 패킷 내에 포함된 데이터 중에서, 프로그램을 지정하는 식별자(코드)를 명령 RAM(93)에 저장하고, 다각형의 정점들의 값들, 파라미터들의 값들, 다각형의 정규 벡터 및 곡면 파라미터들을 소스 데이터 RAM(94)에 저장한다.
단계 S4에서, 프로그램가능한 엔진(48)의 서브-CPU(95)는 명령 RAM(93)으로 부터 식별자 코드를 독출한다. 다음에, 서브-CPU(95)는 식별자 코드의 값에 대응하는 프로그램을 사용하여 처리를 수행한다. 또한, 서브-CPU(95)는 다각형의 정점들의 좌표값들과 같은 데이터를 독출하고, 깊이 방향으로 다각형의 위치를 나타내는 Z값을 계산한다.
단계 S5에서, 서브-CPU(95)는 소스 데이터 RAM(94)으로부터 곡면 파라미터와 파라미터들 u와 v의 값을 독출하고, 파라미터들 u와 v로 정의된 공간(공간(u,v))의 다각형의 정점들 중에서 중심점을 계산하고, 그 다각형의 정점들의 중심점과 정점으로부터 서브-다각형을 생성하는, 즉 다각형을 분할한다.
(u,v) 공간에서 생성된 중심점은 곡면 파라미터로 나타낸 기준 곡면의 표현을 사용하여 (x,y,z) 공간에서 그것을 매핑함으로써 기준 곡면 상에 배치되고, 다각형의 중심점과 정점으로부터 기준 곡면을 따라 다각형이 형성된다. 즉 서브-다각형으로 구성된 곡면이 생성된다.
다음에, 서브-CPU(95)는 서브-다각형의 표시 크기(표시 영역 A)가 미리 결정된 기준값 D보다 많지 않을 때까지 서브-다각형들을 반복적으로 분할한다.
서브-CPU(95)는 이러한 방법으로 생성된 서브-다각형의 정점들의 좌표값들을 목적지 데이터 RAM(97)에 저장한다.
예를 들어, 프로그램가능한 패킷 엔진(48)에 도 8A 및 도 8B에 도시된 다각형이 공급되면, 서브-CPU(95)는 먼저 사각 ABCD를 삼각형 ABC와 또다른 삼각형 ACD로 분할하고, 삼각형 ABC의 표시 영역 A을 계산한다. 다음에, 표시 영역 A가 기준값 D보다 큰 것으로 판별되면, 도 9A에 도시된 것처럼 중심점 E가 생성되어, 서브-다각형 ABE와 또다른 서브-다각형 BCE를 생성한다. 마찬가지로, 삼각형 ACD의 표시 영역 A가 계산되고, 표시 영역 A이 기준값 D보다 작다고 판별되면, 도 9B에 도시된 것처럼 중심점 E가 생성되어, 서브-다각형 ECD와 또다른 서브-다각형 AED를 생성한다.
다음에, 이들 서브-다각형(서브-다각형 ABE, 서브-다각형 BCD, 서브-다각형 ECD 및 서브-다각형 AED)이 더 분할되면, 도 10에 도시된 것처럼 여덟 개의 서브-다각형들이 생성된다. 이러한 방법으로, 분할이 반복됨에 따라, 서브-다각형들로 이루어진 곡면은 기준 곡면인 구면에 도달한다.
마찬가지로, 도 11A에 도시된 것과 같은 구형 오브젝트가 나타날 때, 그 오브젝트가 미리 결정된 표시부 상에 더 적게 표시되면, 예를 들어, 도 11B에 도시된 바와 같이 8개의 정점들(12각형)을 가진 평행육면체(정육면체)가 표시된다. 한편, 그 오브젝트가 다소 크게 표시되면, 도 11B에 도시된 오브젝트보다 구에 가까운 오브젝트가 도 11C에 도시된 14개의 정점들을 갖는 24각으로 표시되지만, 그 오브젝트는 예를 들어, 도 11C의 오브젝트보다 구에 가까운 오브젝트가 도 11D에 도시된 26개의 정점들을 가지고(48각형) 표시된다.
도 7로 돌아가서, 단계 S6에서, 그래픽 처리 유닛(49)은 프로그램가능한 패킷 엔진(48)의 목적지 데이터 RAM(97)으로부터 서브-다각형 등의 정점의 좌표값의 데이터를 독출한다. 그러면, 그래픽 처리 유닛(49)은 서브-다각형의 픽셀 데이터를 생성하고, 프레임 버퍼(58)에 픽셀 데이터를 기입하고 랜더링 처리를 수행한다.
다각형은 이러한 방법으로 Z값에 따라 분할되고, 분할에 의해 얻어진 다각형들의 화상(기준 곡면을 따라 서브-다각형)이 그려진다. 미리 결정된 수의 다각형들의 화상을 드로윙함로써, 이들 다각형들로 구성된 3차원 오브젝트가 표시된다. 위에 설명한 바와 같이, 메인 CPU(44)의 그래픽 연산 엔진(71)에 의해서 좌표 변환과 같은 기하학 계산이 수행되고, 프로그램가능한 패킷 엔진(4S)은 다각형의 국부 계산만을 수행하기 때문에, 회로 스케일이 감소되고, 병렬 배열이 가능하다.
계속해서, 도 12의 흐름도를 참고해서 단계 S5의 다각형의 분할처리에 대해서 상세히 설명하고자 한다.
먼저, 단계 S21에서, 서브-CPU(95)는 공급된 4각형을 두 개의 삼각형들로 분할하고, 삼각형들의 영역 A(삼각형들이 미리 결정된 표시부 상에 표시될 때의 영역)를 계산한다.
다음에, 단계 S22에서, 서브-CPU(95)는 다각형들의 영역 A가 미리 결정된 기준값 D보다 큰지 아닌지를 판별한다. 영역 A가 기준값 D보다 더 크다고 판별되면, 제어 시퀀스는 단계 S23으로 진행한다. 한편, 영역 A가 기준값 D보다 더 작으면, 서브-CPU(95)는 다각형의 분할을 종료한다.
단계 S23에서, 서브-CPU(95)는 파라미터들 u와 v로 정의된 (u,v)공간에 다각형의 2개의 정점들 사이의 중심에 위치한 중심점을 생성하고, 그 다각형을 다각형과 중심점의 3개의 정점들을 갖는 2개의 서브-다각형들(서브-다각형들 A와 B)로 분할한다. 예들 들면, 도 9A에서, 중심점 E가 생성되고, 다각형 ABC는 서브-다각형 ABE와 서브-다각형 BCE로 분할된다.
파라미터들 u와 v로 정의된 (u,v)공간의 다각형 ABC의 정점이, 예를 들어, A=(/4, /4), B=((3/4), /4) 및 C=((5/4), /4)이면, 정점 A와 정점 B 사이의 중심점 F는 정점 A와 B의 성분을 평균함으로써 F = (/2, /4)로서 계산된다.
그러나, 미리 결정된 2개의 정점들((u1,v1), (u2,v2))의 u 성분들의 평균((u1+u2/2)은, u 성분이 여기서 주어진 식으로 정의되지 않았으므로, 중심점은 (0,/2)로 결정된다. 정점들 A와 C의 u 성분들의 평균은 (=(5/4)-/4)이기 때문에, 정점들 A와 C 사이의 중심점 E의 좌표값들은 (0,/2)이다
기준 곡면이, 반경 R은 R=1이고, 중심의 좌표들(xc,yx,zc)은 (xc,yx,zc) = (0,-2,2)인 구면이면, 3차원 공간의 정점 A의 좌표값(x,y,z)는, 여기에 주어진 식으로부터(구면의 식), (x,y,z) = (1/2, 1/(2 )-2, 5/2)이다. 마찬가지로, 정점 B의 좌표값들(x,y,z)은, (x,y,z) = (-1/2, 1/(2 )-2, 5/2)이다. 또한, 정점 C의 좌표값들(x,y,z)은, (x,y,z) = (-1/2, 1/(2 )-2, 3/2)이다, 그러면, 중심점 E의 좌표값들은 (x,y,z) = (0,-1,2)이다.
또한, 표시하기 위한 2차원 좌표값을 얻기 위해서 정점들의 좌표들에 대해 입체 변환이 수행되면, 정점 A의 좌표값들(X,Y)은, 위에 주어진 입체 변환식으로부터, (X,Y) = (1/5, ((2 )-4)/5)이다. 마찬가지로, B의 좌표값들(X,Y)은, (X,Y) = (-1/5, ((2 )-4)/5)이다. 또한, C의 좌표값들(X,Y)은, (X,Y) = (-1/3, ((2 )-4)/3)이다. 그러므로, 중심점 E의 좌표값들은 (x,y) = (0,-1/2)이다.
이러한 방법으로, (u,v) 공간에서, 중심점이 생성되면, 중심점은 표시하기 위한 3차원 공간 또는 2차원 공간의 중심점에 놓이지 않고, 기준 곡면 위에 놓인다(도 9A).
다음에, 단계 S24에서, 서브-CPU(95)는 서브-다각형 A를 위한 서브-다각형 생성 처리를 수행한다. 특히, 여기서 설명된 다각형 분할처리는 서브-다각형 A에 대해 수행된다. 예를 들어, 단계 S23에서 생성된 서브-다각형 ABE의 다각형 분할처리는 단계 S21로부터 출발된다.
또한, 단계 S25에서, 서브-CPU(95)는 서브-다각형 B의 서브-다각형 생성 처리를 수행한다. 특히, 여기에 설명된 다각형 분할 처리는 서브-다각형 B에 대해 수행된다.
이러한 방법으로, 단계 S24 및 S25에서의 이러한 처리를 반복해서 수행함으로써, 분할에 의해 얻어진 각 다각형이 더 분할되고, 그러한 처리는, 기준값 D보다 작은 크기를 갖는 서브-다각형이 분할에 의해 얻어질 때까지 반복된다. 이 예에서, 각 중심점은 파라미터들 u와 v로 정의된 (u,v) 공간에서 생성되기 때문에, 상기 설명된 분할에 의해 얻어진 다각형에 의해, 기준 곡면을 따라 곡면이 형성된다.
위에 설명한 처리에서, 기준 곡면은 구면이지만, 다른 곡면일 수도 있다. 예를 들어, 아래 식에 주어진 파라미터들 u와 v의 다항식이 기준 곡면(x,y,z)로서 이용될 수 있다.
x = (1-v)((1-u)X0+ux1) + v((1-u)x3+ux2) + Nxf(u,v)
y = (1-v)((1-u)y0+uy1) + v((1-u)y3+uy2) + Nyf(u,v)
z = (1-v)((1-u)z0+uz1) + v((1-u)z3+uz2) + Nzf(u,v)
이 예에서, 파라미터들 u와 v는 식별자 코드로 나타낸 프로그램에서 미리 (u,v) = (0,0), (1,0), (1,1) 및 (0,1)의 4개의 점들로 고정되어 있고, 3차원 공간에 있는 4개의 점들의 좌표값들이 계산되도록, 데이터로서 프로그램가능한 패킷 엔진(48)에 상수들 xi, yi, zi(여기서, i는 (1= 0, ..., 3))가 공급된다.
상기 식의 f(u,v)는 파라미터들 u와 v의 2차 방정식이고, 항의 계수는 곡면 파라미터로서 프로그램가능한 패킷 엔진(48)에 공급된다. 예를 들어, f(u,v)는 아래 식으로 나타내어진다.
f(u,v) =au2 + b7 + cv2 + dv + e
계수들 a 내지 e는 곡면 파라미터로서 프로그램가능한 패킷 엔진(48)에 공급된다.
따라서, 이 예에서, 도 13에 도시된 4개의 점들에 대응하는, 식별자 코드, 정규 벡터 Nx,Ny,Nz, 곡면 파라미터들, 상수들 xi, yi, zi (i= 0, ..., 3) 및 색 데이터(RGBi) (i= 0, ..., 3)를 포함하는 패킷이 프로그램가능한 패킷 엔진(48)에 공급된다. 프로그램가능한 패킷 엔진(48)용 디지털 미분 분석기(DDA)를 제공함으로써, 기준 곡면의 식은 반복 공식을 사용하여 간단히 계산될 수 있다.
도 13에 도시된 데이터의 패킷의 형태로 공급된 다각형은 기준 곡면이 구면인 것과 유사한 방법으로 프로그램가능한 패킷 엔진(48)에 의해 Z값에 따라 분할된다. 예를 들어, Z값이 높고, 다각형이 깊이 방향으로 멀리 놓이면, 즉, 다각형이 미리 결정된 표시부 상에 표시되면, 프로그램가능한 패킷 엔진(48)의 서브-CPU(95)는 다각형을 분할하지 않는다. 도 14A에서 알 수 있듯이 분할의 수가 정해지고, 그 다각형의 정점의 좌표값을 목적지 RAM(97)에 저장한다.
한편, Z값은 깊이 방향으로 가까이 놓이고, 즉, 다각형은 미리 결정된 표시부 상에 보다 크게 표시되고, 서브-CPU(95)는 다각형을 4개로 분할한다. 즉, 도 14B에 도시된 바와 같이, 분할수를 4로 정하여, 기준 곡면에 따라 서브-다각형을 4개 생성하고, 네 개의 서브-다각형의 정점들의 좌표값들을 목적지 데이터 RAM(97)에 저장한다.
그러나, Z값이 낮고, 다각형이 깊이 방향에 가깝게 놓여있으면, 즉, 다각형이 미리 결정된 표시부 상에 크게 표시되면, 서브-CPU(95)는 다각형을 16개로 분할한다. 즉, 도 14C에 나타낸 바와 같이, 분할 수는 16이고, 기준 곡면에 따라 16개의 서브-다각형들을 생성하고, 16개의 서브-다각형의 정점들의 좌표값들을 목적지 데이터 RAM(97)에 저장한다.
예를 들어, 도 14C에 도시된 바와 같이, 다각형은 16개의 다각형들로 분할되고, 16개의 다각형들은 25개의 정점들(P0 내지 P24)을 갖는다(도 15A 참조). 그러면, 서브-CPU(95)는 도 15B에 도시된 것과 같은 방법으로 정점들의 색 데이터 값들(Xi,Yi,Zi,RGBi) (i= 0, ..., 24) 및 좌표값들을 어레이하고, 그들을 목적지 데이터 RAM(97)에 저장한다.
분할하는 이 예는 4각형들(서브-다각형들)을 사용하여 분할하는 것이다.
이러한 방식으로, 오브젝트의 형상은 이것이 미리 결정된 표시부 상에 표시될 때 크기(표시 크기)에 따라 변화하고, 표시 크기가 작을 때, 적은 수의 정점들을 갖는 오브젝트는 미리 결정된 오브젝트로서 표시되고, 표시하는 데 필요한 작동수는 감소된다. 한편, 표시 크기가 큰 경우, 비교적 많은 수의 정점들을 갖는 오브젝트가 미리 결정된 오브젝트로서 표시됨으로써 사용자는 원래의 오브젝트와 표시된 오브젝트 사이의 형상의 차이를 느낄 수 없다.
또한, 비교적 대충 어림한 크기의 다각형의 데이터를 프로그램 가능한 패킷 엔진(48)에 전송하고, 프로그램 가능한 패킷 엔진(48)에 의해 표시된 영역을 분할함으로써 메인 CPU(44)로부터 메인 버스(41)를 통해 프로그램 가능한 패킷 엔진(48)에 공급된 데이터의 양은 메인 버스(41)에 대한 로드를 감소시키기 위해 감소될 수 있다.
프로그램 가능한 패킷 엔진(48)으로부터 그래픽 처리 유닛(49)으로 출력된 데이터의 양(출력 데이터량)은 도 16에 나타낸 바의 다각형의 분할 수에 따라 증가하지만, 메인 CPU(44)로부터 메인 버스(41)를 통해 프로그램 가능한 패킷 엔진(48)에 공급된 데이터의 양(입력 데이터량)은 다각형의 분할 수(도 13의 패킷에서, 1개의 다각형당 6 워드)와 무관하게 고정된다. 결과적으로, 메인 버스(41)에 대한 로드는 고정될 수 있다. 또한, 이러한 수단에 의해, 데이터는 도 16의 데이터 압축비율로 나타낸 바와 같이 압축되고, 처리되는 데이터의 양(메인 버스(41) 등을 다라 통신된 데이터의 양)은 감소된다.
그래픽 처리 유닛(49)은 각각의 다각형의 4개의 정점의 데이터를 유지하면서 개개의 다각형의 처리에 영향을 미치기 때문에, 그래픽 처리 유닛(49)이 이전에 공급된 정점의 데이터를 4회 이상 다시 사용할 때, 프로그램 가능한 패킷 엔진(48)은 정점들의 데이터를 다시 공급하는 것에 주목해야 한다. 따라서, 프로그램 가능한 패킷 엔진(48)으로부터 출력 데이터량(워드수)은 분할에 의해 얻은 다각형의 정점의 수보다 더 크다.
예를 들면, 전체 25개의 정점들(P0 내지 P24)을 갖는 16개의 서브-다각형(sub-polygon)으로 분할된 도 15의 다각형의 데이터가 그래픽 처리 유닛(49)에 공급되어야 하는 경우를 조사한다. 먼저, 프로그램 가능한 패킷 엔진(48)은 정점들(P0 내지 P3)의 데이터를 그래픽 처리 유닛(49)에 공급하고, 그래픽 처리 유닛(49)은 정점들(P0 내지 P3)을 갖는 다각형의 처리를 수행한다. 이어서, 프로그램 가능한 패킷 엔진(48)은 정점들(P4 및 P5)의 데이터를 공급하고, 그래픽 처리 유닛(49)은 정점들(P1, P3, P4 및 P5)을 갖는 다각형의 처리를 수행한다. 마찬가지로, 프로그램 가능한 패킷 엔진(48)은 정점들(P9 내지 P9)의 데이터를 순서대로 공급하고, 그래픽 처리 유닛(49)은 정점들(P4 내지 P7)을 갖는 다각형 및 정점들(P6 내지 P9)을 갖는 다각형의 처리를 연속적으로 수행한다.
이어서, 프로그램 가능한 패킷 엔진(48)은 정점들(P2, P3, P10 및 P11)의 데이터를 그래픽 처리 유닛(49)에 공급하고, 그래픽 처리 유닛(49)은 정점들(P2, P3, P10 및 P11)을 갖는 다각형의 처리를 수행한다. 또한, 프로그램 가능한 패킷 엔진(48)은 정점들(P5 및 P12)의 데이터를 공급하고, 그래픽 처리 유닛(49)은 정점들(P3, P5, P11 내지 P12)을 갖는 다각형의 처리를 수행한다. 마찬가지로, 프로그램 가능한 패킷 엔진(48)은 정점들(P7, P9 P13 및 P14)의 데이터를 공급하고, 그래픽 처리 유닛(49)은 정점들(P5, P7, P12 및 F13)을 갖는 다각형 및 정점들(P7, P9, P13 및 P14)을 갖는 다각형의 처리를 연속적으로 수행한다.
이 후, 프로그램 가능한 패킷 엔진(48)은 정점들(P10 및 P24)의 데이터를 그래픽 처리 유닛(49)에 공급하고, 그래픽 처리 유닛(49)은 개개의 다각형들의 처리를 마찬가지 방식으로 수행한다.
프로그램 가능한 패킷 엔진(48)은 개개의 다각형들의 정점의 데이터를 상기한 바의 방식으로 그래픽 처리 유닛(49)에 공급하고, 정점들(P2, P3, P5, P7 및 P9) 및 정점들(P10 내지 P19)을 포함하는 15개의 정점의 데이터가 그래픽 처리 유닛(49)에 2회 공급된다. 따라서, 전체 40(=20+15)개의 정점들의 데이터가 그래픽 처리 유닛(49)에 공급되기 때문에, 다각형이 16개로 분할될 때 프로그램 가능한 패킷 엔진(48)으로부터 데이터 출력량은 도 16에 나타낸 바와 같이 40워드이다. 이러한 방식으로 공급된 데이터는 스트라이프 메쉬(stripe mesh)라 칭한다.
상기 실시예에서, 기준 만곡된 표면을 나타내는 만곡된 표면 파라미터가 프로그램 가능한 패킷 엔진(48)에 공급되지만, 광원의 위치를 나타내는 파라미터는 다각형의 정점들의 좌표 값과 함께 프로그램 가능한 패킷 엔진(48)에 공급될 수 있음으로써 다각형이 Z 값에 따라 분할된 후, 분할에 의해 얻은 다각형(서브-다각형)의 휘도값기 광원의 위치를 나타내는 파라미터로부터 계산될 수 있다.
예를 들면, 도 17A에 나타낸 다각형의 정점들(P0 내지 P3)의 좌표값들(Xi, Yi, Zi, (i=0, … , 3)), 정규 벡터들(Nx, Ny, Nz) 및 다각형의 분할 처리를 수행하기 위한 프로그램을 나타내는 식별자(도 17A에서 코드)와 함께 광원의 위치를 나타내는 광원 파라미터를 포함하는 데이터는 CD-ROM(40) 상에 미리 기록되고, 이 데이터는 판독되어 메인 메모리(45)에 저장된다. 이어서, 다각형의 좌표 변환이 그래픽 전송 엔진(71)에 의해 수행된 후, 이들 데이터는 패킷 엔진(72)에 의해 도 17B에 나타낸 바와 같이 프로그램 가능한 패킷 엔진(48)에 1개의 패킷으로서 공급된다. 이어서, 프로그램 가능한 패킷 엔진(48)은 다각형의 분할 후에 광원 파라미터로부터 개개의 서브-다각형의 휘도값 계산을 수행한다. 점 광원이 사용되는 경우, 점 광원의 좌표들(Lx, Ly, Lz) 및 광원의 색 정보(Lr, Lq, Lb)가 프로그램 가능한 패킷 엔진(48)에 광원 파라미터로서 공급되는 것에 주목해야 한다.
프로그램 가능한 패킷 엔진(48)은 그에 공급된 광원 파라미터로부터 광원으로부터 표준과 도 18A에 나타낸 다각형을 포함하는 2차원 평면(p, q) 사이의 교차점의 좌표들(p0, q0) 및 2차원 평면(p, q)으로부터 광원의 높이(h)를 계산하고, 추가로, 개개의 서브-다각형의 정점들의 좌표값들(p, q)로부터 하기 수학식:
L=h2 / (h2 + (p - p0)2 + (q - q0)2)
에 따라 서브-다각형의 정점들에서 휘도값(L)(이는 광원으로부터 거리의 제곱에 대해 역비율로 증가함)를 계산한다.
예를 들면, 다각형이 8개의 서브-다각형들로 분할되는 경우, 프로그램 가능한 패킷 엔진(48)은 서브-다각형의 각각의 정점들에 대한 휘도값을 계산한다. 이어서, 그래픽 처리 유닛(49)은 서브-다각형의 정점들의 휘도값로부터 서브-다각형의 휘도값을 계산하고, 도 18B에 나타낸 바와 같이 다각형의 표시를 수행한다. 마찬가지로, 다각형이 32개의 서브-다각형들로 분할되는 경우, 프로그램 가능한 패킷 엔진(48)은 서브-다각형의 개개의 정점들에 대한 휘도값을 계산한다. 이어서, 그래픽 처리 유닛(49)은 서브-다각형의 정점들의 휘도값로부터 서브-다각형의 휘도값을 계산하고, 도 18C에 나타낸 바와 같이 다각형의 표시를 수행한다. 이러한 방식으로 미리 결정된 다각형의 개개의 다각형에 대한 휘도값을 계산함으로써, 오브젝트의 표면의 휘도값은 미세하게 변화될 수 있다.
이어서, 도 19A에 나타낸 바와 같이 16개의 부분으로 생성된 서브-다각형의 개개의 정점들(이러한 경우에 25개의 정점)에 대해 이러한 방식으로 계산된 휘도값은 프로그램 가능한 패킷 엔진(48)으로부터 개개의 정점들의 좌표값들과 함께 도 19B에 나타낸 바와 같이 그래픽 처리 유닛(49)에 출력된다(휘도값은 프로그램 가능한 패킷 엔진(48)의 목적 데이터 RAM(97)로부터 그래픽 처리 유닛(49)에 의해 독출된다).
다각형을 분할하고, 상기한 바와 같은 방식으로 서브-다각형의 휘도값을 계산함으로써, 휘도값의 변화 밀도는 다각형의 표시 크기에 따라 조정될 수 있다. 또한, 이러한 방식으로, 그래픽 처리 유닛(49)은 글로 세이딩(glow shading)과 같은 선형 계산을 수행하도록 요구되기 때문에, 또는 달리 말하자면, 그래픽 처리 유닛(49)은 복잡한 광원 계산을 수행할 필요가 없기 때문에, 그래픽 처리 유닛(49)에 대한 로드가 감소될 수 있다.
이러한 경우, 다각형은 19A에 나타낸 바와 같이 3차원 공간에서 선형으로 분할되는 것에 주목해야 한다.
또한, 상기 실시예에서, 3차원 오브젝트를 형성하는 다각형의 정점들의 좌표는 CD-ROM(40)으로부터 판독되지만, 3차원 기본 형상(예를 들면 구형, 원통형, 입방체 또는 평면 형상)을 갖는 기본 오브젝트(템플릿(모델))를 프로그램 가능한 패킷 엔진(48)(ROM 96)에 미리 기억시키고, 템플릿에 대응하는 식별 번호(템플릿 패턴 ID) 및 템플릿의 표현 점들에서 다른 값(템플릿의 표현 점들과 표현 점들에 대응하는 3차원 오브젝트의 점들 사이의 편차들)을 갖는 미리 결정된 3차원 오브젝트를 나타내고, 이들을 CD-ROM(40) 상에 기록할 수 있다.
예를 들면, 도 20A에 나타낸 바와 같은 회전체의 형상, 즉, 미리 결정된 회전축에 관하여 대칭적인 회전체는 도 20B에 나타낸 원통형 템플릿 및 이 원통형 템플릿의 표현 점 Pij(i = 0, … , 9)의 템플릿으로부터 편차(다른 값)(nij)를 나타내는 템플릿 패턴(ID)으로 나타낸다.
상기한 바와 같은 템플릿들이 이용되는 경우, 메인 CPU(44)는 템플릿 패턴(ID), 오브젝트의 좌표값들 및 템플릿으로부터 편차(nij)를 CD-ROM(40)으로부터 독출하고, 수치 값들을 도 21에 나타낸 바와 같이 이러한 다각형을 처리하기 위한 프로그램을 나타내는 식별자 코드와 함께 하나의 패킷으로서 프로그램 가능한 패킷 엔진(48)에 전송한다.
이어서, 패킷을 수신함에 따라, 프로그램 가능한 패킷 엔진(48)은 패킷 내에 포함된 식별자 코드에 의해 나타낸 프로그램을 사용하는 패킷 내에 포함된 3차원 오브젝트의 데이터 처리를 수행하고, ROM(96)으로부터 템플릿 패턴(ID)에 대응하는 템플릿의 데이터를 판독하도록 템플릿 패턴(ID)에 조회한다. 이어서, 프로그램 가능한 패킷 엔진(48)은 템플릿으로부터 편차(nij) 및 데이터로부터 3차원 오브젝트의 형상을 특정한다.
템플릿 및 템플릿으로부터 편차들(nij)을 나타내는 템플릿 패턴(ID)을 갖는 3차원 오브젝트를 이러한 방식으로 나타냄으로써, CD-ROM 상에 기록되는 데이터의 양 및 좌표 변환을 위한 동작 시간의 수등은 템플릿 형상의 대칭성에 기초하여 감소될 수 있다. 예를 들면, 도 20B에 나타낸 바의 원통형 템플릿에서, 도 20A에 나타낸 형상은 방사상 방향(1차원)의 편차만을 나타낼 수 있다.
도 22는 CD-ROM을 생성하기 위한 다른 전형적인 제조 장치를 나타낸다. 도 22A의 제조 장치는 도 13에 나타낸 다각형 유닛의 데이터 포맷으로 미리 결정된 3차원 오브젝트를 기록하는 방식으로 구성된다. 그러나, 도 22B의 제조 장치는 본 발명이 적용되는 기록 장치이고, 도 21에 나타낸 템플릿을 사용하는 데이터 포맷으로 미리 결정된 3차원 오브젝트를 기록하는 방식으로 구성된다.
도 22A의 생성 장치에서, 모델러(112)는 입력장치(111)로부터 설계자, 즉, 영상을 생성하는 사람의 수동 동작에 대응하는 신호를 수신하고, 설계자의 수동 동작에 응답하여 3차원 오브젝트를 생성한다.
모델러(112)는 생성된 3차원 오브젝트의 곡면에 관한 정보를 연산 회로(113)에 공급하고, 생성된 3차원 오브젝트를 형성하는 다각형들의 정점들의 좌표값들을 기록 장치(114)에 공급한다.
연산 회로(113)는 모델러(112)로부터 공급된 곡면의 정보로부터 각 다각형들에 대응하는 곡면 파라미터를 계산하고, 그 곡면 파라미터를 기록 장치(114)에 공급한다.
기록 장치(114)는 마스터 디스크 상의 기록 데이터, 즉 마스터 디스크 상의 모델러(112)와 연산 회로(113)로부터 공급된 기록 데이터에 레이저빔을 조사한다. 마스터 디스크는 그의 표면에 적용된 포토레지스트를 가지며, 기록 데이터에 대응하는 피트들의 형상으로 임의로 감지될 수 있도록 기록 장치(114)에 의해 방사된다. 그 다음에, 마스터 디스크를 현상한다. 다음에, 그의 표면의 요철을 갖는 마스터 디스크로부터, 스탬퍼가 생성된다. 또한, 큰 CD-ROM은 스탬퍼로서 생성된다.
CD-ROM의 스탬퍼의 생성중, 이 방법으로 기록 데이터에 따라 마스터 디스크 상에 레이저빔을 조사함으로써, 정점들의 좌표값들과 곡면 파라미터들을 포함하는 기록 데이터는 각 트랙들 상에 기록된다. 마스터 디스크가 옮겨지는 스탬퍼를 더 옮김으로써, 기록 데이터에 대응하는 피트 형상들의 CD-ROM이 생성된다.
다음, 도 22B의 생성 장치에서, 모델러(112)는 입력 장치(111)로부터 설계자의 수동 동작에 대응하는 신호를 수신하고, 설계자의 수동 동작에 대응하는 3차원 오브젝트를 생성한다.
다음에, 모델러(112)는 연산 회로(115)에 생성된 3차원 오브젝트의 정보를 공급하고, 생성된 3차원 오브젝트의 표현 점들의 좌표값들을 기록 장치(114)에 공급한다. 계산 수단으로서 역할을 하는 연산 회로(115)는, 모델러(112)로부터 공급된 3차원 오브젝트의 정보 내에서, 3차원 오브젝트에 대응하는 템플릿을 선택하고, 템플릿의 표현 점들과, 모델러(112)에 의해 생성된 3차원 오브젝트의 표현 점들 사이의 차분값들과 템플릿의 식별 번호를 계산하고, 그 식별 번호와 차분값들을 기록장치(114)에 공급한다.
기록수단으로서 역할을 하는 기록 장치(114)는 마스터 디스크 상에 레이저 빔을 방사하여, 연산 회로(115)와 모델러(112)로부터 거기에 공급된 기록 데이터(표현 점들의 템플릿 패턴 ID 및 차분값들)를 마스터 디스크 상에 기록한다. 다음에, 도 22A의 생성 장치에서와 마찬가지로 CD-ROM이 생성되어, 마스터 디스크를 형성한다. CD-ROM에 기록된 데이터로서 표현 점들의 템플릿 패턴 ID 및 차분값을 보유하는 CD-ROM은 위에 설명한 방법으로 생성된다.
따라서, 본 발명은 저렴한 비용으로 데이터를 효율적이고 고속으로 처리할 수 있는 신규의 개선된 기록 매체, 기록 및 정보 처리 시스템에 대한 오랜 요구를 만족시킨다.
위에 설명한 구체예에서, 기록 매체로서 CD-ROM이 사용되었지만, 다른 적합한 기록 매체가 이용될 수도 있다.
특정예를 들어 본 발명을 설명하였지만, 본 발명의 정신과 범위를 벗어나지 않고 다양한 수정을 할 수 있다는 것은 자명한 일이다. 따라서, 본 발명을 제한하려는 의도는 아니며, 단지 첨부된 청구항들에 의해서만 한정된다.
본 발명에 의해서 저렴한 비용으로 데이터를 효율적으로 고속 처리할 수 있다.
도 1은 본 발명의 정보 처리 장치가 적용되는 가정용 게임기를 보여주는 평면도.
도 2는 도 1의 게임기의 정면 입면도.
도 3은 도 1의 게임기의 측면 입면도.
도 4는 도 1의 게임기에 의해 재생될 수 있는 CD-ROM을 보여주는 평면도.
도 5는 도 1의 게임기의 시스템 블록도.
도 6은 도 5에 도시된 프로그램가능한 패킷 엔진의 블록도.
도 7은 도 1의 게임기에서 다각형 화상 드로윙 처리를 설명하는 흐름도.
도 8A는 도 1의 게임기에 의해 처리된 다각형을 도시하는 도면,
도 8B는 다각형의 데이터 포맷을 도시하는 테이블.
도 9A 및 9B는 다각형을 분할하는 여러 단계들을 설명하는 도면.
도 10은 다각형의 여러 가지 분할을 도시하는 도면.
도 11A내지 11D는 다양한 Z값에 따라 표시된 3차원 오브젝트를 설명하는 개략도.
도 12는 도 5에 도시된 흐름도의 다각형 분할 단계에서의 처리를 상세하게 도시하는 흐름도.
도 13은 도 1의 게임기에 의해 처리된 다각형의 데이터 포맷을 보여주는 테이블.
도 14A 내지 14C는 도 13에 설명된 다각형의 다른 여러 가지 분할을 설명하는 투시도.
도 15A는 도 13의 다각형의 분할에 의해 생성된 다각형을 도시하는 도면.
도 15B는 15A에 도시된 다각형의 데이터를 설명하는 테이블.
도 16은 도 6에 도시된 프로그램가능한 패킷에 의해 취급된 여러가지 양의 데이터를 도시하는 테이블.
도 17A는 도 1의 게임기에 의해 처리된 또다른 다각형을 도시하는 그래프.
도 17B는 도 17A에 도시된 다각형의 데이터 포맷을 보여주는 테이블.
도 18A 내지 18C는 도 17A 및 도 17B의 분할에 의해 생성된 다각형의 휘도값의 계산을 설명하는 개략도.
도 19A는 도 17의 다각형의 분할에 의해 생성된 또다른 다각형을 도시하는 개략도.
도 19B는 도 19A의 다각형의 데이터 포맷을 보여주는 테이블.
도 20A 및 20B는 3차원 오브젝트 및 대응하는 템플릿을 도시하는 투시도.
도 21은 템플릿을 사용하는 3차원 오브젝트를 나타내는 데이터 포맷을 도시하는 테이블.
도 22A 및 22B는 본 발명이 적용된 기록 장치로서 생성 장치를 도시하는 블록도.
※ 도면의 주요 부분에 대한 부호의 설명 ※
1 : 가정용 게임기 2 : 게임기 본체
3 : 디스크 로딩 스테이션 4 : 리셋 스위치
5 : 전원 스위치 6 : 동작 스위치
8 : 기록 삽입부 17 : 조작 유닛
38 : 기록 유닛 111 : 입력 장치
112 : 모델러 113 : 연산 회로
114 : 기록 장치
Claims (23)
- 기준이 되는 기본 오브젝트의 식별 정보와, 상기 기본 오브젝트의 정점들의 좌표값들과 미리 결정된 오브젝트의 정점들의 좌표값들 사이의 차분값들을, 3차원 공간에서의 상기 미리 결정된 오브젝트의 데이터로서 기록하는, 기록 매체.
- 제 1 항에 있어서,상기 기본 오브젝트의 정점들의 좌표값들을 또한 기록하는, 기록 매체.
- 제 1 또는 2 항에 있어서,처리될 프로그램을 나타내는 식별자 코드를 또한 기록하는, 기록 매체.
- 3차원 공간에서의 미리 결정된 오브젝트의 데이터를 기록 매체 상에 기록하는 기록 장치에 있어서:상기 미리 결정된 오브젝트의 공급된 정보에 대응하는 기준이 될 기본 오브젝트를 선택하고, 상기 기본 오브젝트의 정점들의 좌표값들과 상기 미리 결정된 오브젝트의 정점들의 좌표값들 사이의 차분값들을 각각 계산하는 계산 수단; 및상기 계산된 차분값들 및 상기 선택된 기본 오브젝트의 식별자 정보를, 상기 미리 결정된 오브젝트의 데이터로서 상기 기록 매체 상에 기록하는 기록 수단을 포함하는, 기록 장치.
- 제 4 항에 있어서,상기 미리 결정된 오브젝트의 상기 공급된 정보는 처리될 프로그램을 나타내는 식별자 코드를 포함하고,상기 기록 수단은 상기 식별자 코드를 상기 기록 매체상에 또한 기록하는, 기록 장치.
- 3차원 공간에서의 미리 결정된 오브젝트의 데이터를 기록 매체 상에 기록하는 기록 방법에 있어서:상기 미리 결정된 오브젝트의 공급된 정보에 대응하는 기준이 될 기본 오브젝트를 선택하는 선택 단계;상기 기본 오브젝트의 정점들의 좌표값들과 상기 미리 결정된 오브젝트의 정점들의 좌표값들 사이의 차분값들을 각각 계산하는 계산 단계; 및상기 계산된 차분값들 및 상기 선택된 기본 오브젝트의 식별자 정보를, 상기 미리 결정된 오브젝트의 데이터로서 기록하는 기록 단계를 포함하는, 기록 방법.
- 제 6 항에 있어서,상기 미리 결정된 오브젝트의 상기 공급된 정보는 처리될 프로그램을 나타내는 식별자 코드를 포함하고, 상기 기록 단계는 상기 식별자 코드를 상기 기록 매체상에 또한 기록하는, 기록 방법.
- 정보 처리 장치에 있어서:3차원 공간에서 3차원 오브젝트를 구성하는 복수의 제 1 평면도형들 각각에 근거하여, 미리 결정된 기준 곡면(curved surface)에 따라 복수의 제 2 평면도형들을 생성하는 제 1 변환 수단으로서, 상기 제 2 평면도형의 수는 미리 결정된 표시부 상의 상기 제 1 평면도형들의 표시 크기와 관련이 있는, 상기 제 1 변환 수단; 및상기 제 2 평면도형들의 데이터를 2차원 표시 데이터로 변환시키는 제 2 변환 수단을 포함하는, 정보 처리 장치.
- 제 8 항에 있어서,상기 제 1 평면도형들의 정점들의 좌표들을 변환시키는 좌표 변환 수단을 더 포함하는, 정보 처리 장치.
- 제 8 항에 있어서,상기 표시 크기와 관련이 있는 상기 제 2 평면도형의 수는, 상기 제 2 평면도형들의 표시 크기가 미리 결정된 기준값보다 더 크지 않을 때까지, 상기 기준 곡면에 따라 상기 제 2 평면도형들 각각을 재귀적으로 생성함으로써 결정되는, 정보 처리 장치.
- 제 8 항에 있어서,상기 표시 크기와 관련이 있는 상기 제 2 평면도형의 수는 상기 3차원 공간에서 깊이 방향으로 상기 복수의 제 1 평면도형들 각각의 위치에 따라 결정되는, 정보 처리 장치.
- 제 11 항에 있어서,상기 표시 크기와 관련이 있는 상기 제 2 평면도형의 수는, 상기 깊이 방향의 위치가 정면으로 향함에 따라 더 큰 수로 결정되는, 정보 처리 장치.
- 정보 처리 방법에 있어서:3차원 공간에서 3차원 오브젝트를 구성하는 복수의 제 1 평면도형들 각각에 근거하여, 미리 결정된 기준 곡면에 따라 복수의 제 2 평면도형들을 생성하는 단계로서, 상기 제 2 평면도형의 수는 미리 결정된 표시부 상의 상기 제 1 평면도형들의 표시 크기와 관련이 있는, 상기 복수의 제 2 평면도형들을 생성하는 단계; 및상기 제 2 평면도형들의 데이터를 2차원 표시 데이터로 변환시키는 단계를 포함하는, 정보 처리 방법.
- 정보 처리 장치에 있어서:3차원 공간에서 복수의 평면도형들로 구성된 3차원 오브젝트의 데이터가 기록되는 기록 매체로부터 데이터를 독출하는 독출 수단;미리 결정된 표시부 상의 표시 크기에 따라 상기 평면도형들을 분할하는 분할 수단;원래의 평면도형들의 휘도값들로부터 분할에 의해 얻어진 상기 평면도형들의 휘도값들을 계산하는 계산 수단; 및상기 분할된 평면도형들의 휘도값들로부터 2차원 표시 데이터를 생성하는 생성 수단을 포함하는, 정보 처리 장치.
- 정보 처리 방법에 있어서:3차원 공간에서 복수의 평면도형들로 구성된 3차원 오브젝트의 데이터가 기록되는 기록 매체로부터 데이터를 독출하는 독출 단계;미리 결정된 표시부상의 표시 크기에 따라 상기 평면도형들을 분할하는 분할 단계;원래의 평면도형들의 휘도값들로부터 분할에 의해 얻어진 상기 평면도형들의 휘도값들을 계산하는 계산 단계; 및상기 분할된 평면도형들의 휘도값들로부터 2차원 표시 데이터를 생성하는 생성 단계를 포함하는, 정보 처리 방법.
- 3차원 공간에서의 미리 결정된 오브젝트의 데이터를 기록하는 기록 장치에 있어서:사용자에 의해 공급된 상기 미리 결정된 오브젝트의 정보에 따라 복수의 평면도형들로 구성된 3차원 오브젝트를 생성하는 모델 수단;상기 사용자에 의해 공급된 상기 미리 결정된 오브젝트의 상기 정보에 근거하여, 상기 생성된 3차원 오브젝트를 구성하는 상기 평면도형들 각각에 대응하는 곡면 파라미터(curved surface parameter)를 지정하는 계산 수단; 및상기 복수의 평면도형들 각각의 정점들의 좌표값들 및 상기 곡면 파라미터를 기록 매체 상에 기록하는 기록 수단을 포함하는, 기록 장치.
- 제 16 항에 있어서,상기 사용자에 의해 공급된 상기 미리 결정된 오브젝트의 상기 정보는 처리될 프로그램을 나타내는 식별자 코드를 포함하고, 상기 기록 수단은 상기 식별자 코드를 상기 기록 매체 상에 또한 기록하는, 기록 장치.
- 3차원 공간에서의 미리 결정된 오브젝트의 데이터를 기록하는 기록 방법에 있어서:사용자에 의해 공급된 상기 미리 결정된 오브젝트의 정보에 따라 복수의 평면도형들로 구성되는 3차원 오브젝트를 생성하는 생성 단계;상기 사용자에 의해 공급된 상기 미리 결정된 오브젝트의 상기 정보에 근거하여, 상기 생성된 3차원 오브젝트를 구성하는 상기 평면도형들 각각에 대응하는 곡면 파라미터를 지정하는 계산 단계; 및상기 복수의 평면도형들 각각의 정점들의 좌표값들 및 상기 곡면 파라미터를 기록 매체 상에 기록하는 기록 단계를 포함하는, 기록 방법.
- 제 18 항에 있어서,상기 사용자에 의해 공급된 상기 미리 결정된 오브젝트의 상기 정보는 처리될 프로그램을 나타내는 식별자 코드를 포함하고, 상기 기록 단계는 상기 식별자 코드를 상기 기록 매체 상에 또한 기록하는, 기록 방법.
- 사용자에 의해 공급된 미리 결정된 오브젝트의 정보에 따라 생성된 복수의 평면도형들로 구성된 3차원 오브젝트의 곡면 파라미터 및 상기 복수의 평면도형들 각각의 정점들의 좌표값들을, 3차원 공간에서의 상기 미리 결정된 오브젝트의 데이터로서 기록하며, 상기 곡면 파라미터는 사용자에 의해 공급된 상기 미리 결정된 오브젝트의 정보에 의해 또한 지정되는, 기록 매체.
- 제 20 항에 있어서,처리될 프로그램을 나타내는 식별자 코드를 또한 기록하는, 기록 매체.
- 그래픽스 시스템에 있어서:평면도형을 복수의 서브-평면도형들로 분할하는 수단;각각의 서브-평면도형들의 휘도값들을 계산하는 수단; 및상기 평면도형의 표시 크기에 따라 영상의 휘도 밀도를 조정하는 수단의 조합을 포함하는, 그래픽스 시스템.
- 그래픽스 방법에 있어서:평면도형을 복수의 서브-평면도형들로 분할하는 단계;각각의 서브-평면도형들의 휘도값들을 계산하는 단계; 및상기 평면도형의 표시 크기에 따라 영상의 휘도 밀도를 조정하는 단계를 포함하는, 그래픽 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11630196A JP3926866B2 (ja) | 1996-05-10 | 1996-05-10 | 情報処理装置、情報処理方法、及び描画システム |
JP96-116301 | 1996-05-10 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR970076727A KR970076727A (ko) | 1997-12-12 |
KR100536414B1 true KR100536414B1 (ko) | 2006-04-06 |
Family
ID=14683633
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970018090A KR100536414B1 (ko) | 1996-05-10 | 1997-05-10 | 기록매체,기록및정보처리방법과장치및그래픽스시스템과방법 |
Country Status (10)
Country | Link |
---|---|
US (3) | US6188408B1 (ko) |
EP (2) | EP1255228A3 (ko) |
JP (1) | JP3926866B2 (ko) |
KR (1) | KR100536414B1 (ko) |
CN (2) | CN1131494C (ko) |
CA (1) | CA2204225A1 (ko) |
DE (1) | DE69723613T2 (ko) |
ID (1) | ID18512A (ko) |
SG (2) | SG79216A1 (ko) |
TW (1) | TW341691B (ko) |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3926866B2 (ja) * | 1996-05-10 | 2007-06-06 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置、情報処理方法、及び描画システム |
JP3705923B2 (ja) | 1998-04-09 | 2005-10-12 | 株式会社ソニー・コンピュータエンタテインメント | 画像処理装置および画像処理方法、プログラム提供媒体、並びにデータ提供媒体 |
EP1026639A3 (en) | 1999-02-04 | 2002-09-04 | Canon Kabushiki Kaisha | 3D computer graphics processing apparatus and method |
EP1033683B1 (en) | 1999-03-01 | 2006-03-22 | Canon Kabushiki Kaisha | Image processing apparatus |
JP4167358B2 (ja) * | 1999-09-10 | 2008-10-15 | 株式会社バンダイナムコゲームス | 画像生成システム及び情報記憶媒体 |
JP2001084405A (ja) * | 1999-09-16 | 2001-03-30 | Sega Corp | ポリゴン画像形成方法及び、これを用いた画像処理装置 |
SG129987A1 (en) * | 1999-10-06 | 2007-03-20 | Sony Computer Entertainment Inc | Image processing device, image processing method and program distribution medium and data distribution medium for processing images |
JP2002008060A (ja) * | 2000-06-23 | 2002-01-11 | Hitachi Ltd | データ処理方法、記録媒体及びデータ処理装置 |
US7561155B1 (en) * | 2000-10-23 | 2009-07-14 | Evans & Sutherland Computer Corporation | Method for reducing transport delay in an image generator |
JP2002162958A (ja) * | 2000-11-28 | 2002-06-07 | Pioneer Electronic Corp | 画像表示方法および装置 |
US7233998B2 (en) * | 2001-03-22 | 2007-06-19 | Sony Computer Entertainment Inc. | Computer architecture and software cells for broadband networks |
GB2374776A (en) * | 2001-04-19 | 2002-10-23 | Discreet Logic Inc | 3D Text objects |
US7068273B2 (en) * | 2002-01-28 | 2006-06-27 | Konami Corporation | Recording medium which stores 3D image processing program, 3D image processor, 3D image processing method, and video game machine |
JP4464657B2 (ja) * | 2002-11-12 | 2010-05-19 | パナソニック株式会社 | 曲面画像処理装置及び曲面画像処理方法 |
US7549145B2 (en) | 2003-09-25 | 2009-06-16 | International Business Machines Corporation | Processor dedicated code handling in a multi-processor environment |
US7389508B2 (en) * | 2003-09-25 | 2008-06-17 | International Business Machines Corporation | System and method for grouping processors and assigning shared memory space to a group in heterogeneous computer environment |
US7318218B2 (en) * | 2003-09-25 | 2008-01-08 | International Business Machines Corporation | System and method for processor thread for software debugging |
US7475257B2 (en) * | 2003-09-25 | 2009-01-06 | International Business Machines Corporation | System and method for selecting and using a signal processor in a multiprocessor system to operate as a security for encryption/decryption of data |
US20050071578A1 (en) * | 2003-09-25 | 2005-03-31 | International Business Machines Corporation | System and method for manipulating data with a plurality of processors |
US7478390B2 (en) * | 2003-09-25 | 2009-01-13 | International Business Machines Corporation | Task queue management of virtual devices using a plurality of processors |
US20050071828A1 (en) * | 2003-09-25 | 2005-03-31 | International Business Machines Corporation | System and method for compiling source code for multi-processor environments |
US7444632B2 (en) | 2003-09-25 | 2008-10-28 | International Business Machines Corporation | Balancing computational load across a plurality of processors |
US7523157B2 (en) * | 2003-09-25 | 2009-04-21 | International Business Machines Corporation | Managing a plurality of processors as devices |
US7146529B2 (en) * | 2003-09-25 | 2006-12-05 | International Business Machines Corporation | System and method for processor thread acting as a system service processor |
US7236998B2 (en) * | 2003-09-25 | 2007-06-26 | International Business Machines Corporation | System and method for solving a large system of dense linear equations |
US7496917B2 (en) * | 2003-09-25 | 2009-02-24 | International Business Machines Corporation | Virtual devices using a pluarlity of processors |
US7516456B2 (en) * | 2003-09-25 | 2009-04-07 | International Business Machines Corporation | Asymmetric heterogeneous multi-threaded operating system |
US7415703B2 (en) * | 2003-09-25 | 2008-08-19 | International Business Machines Corporation | Loading software on a plurality of processors |
US7363397B2 (en) * | 2004-08-26 | 2008-04-22 | International Business Machines Corporation | System and method for DMA controller with multi-dimensional line-walking functionality |
US7240137B2 (en) * | 2004-08-26 | 2007-07-03 | International Business Machines Corporation | System and method for message delivery across a plurality of processors |
US7240182B2 (en) * | 2004-09-16 | 2007-07-03 | International Business Machines Corporation | System and method for providing a persistent function server |
US7290112B2 (en) * | 2004-09-30 | 2007-10-30 | International Business Machines Corporation | System and method for virtualization of processor resources |
US20060070069A1 (en) * | 2004-09-30 | 2006-03-30 | International Business Machines Corporation | System and method for sharing resources between real-time and virtualizing operating systems |
US20060080661A1 (en) * | 2004-10-07 | 2006-04-13 | International Business Machines Corporation | System and method for hiding memory latency |
US7506325B2 (en) | 2004-10-07 | 2009-03-17 | International Business Machines Corporation | Partitioning processor resources based on memory usage |
US7512699B2 (en) * | 2004-11-12 | 2009-03-31 | International Business Machines Corporation | Managing position independent code using a software framework |
EP1696303B1 (en) * | 2005-02-28 | 2007-09-26 | Seiko Epson Corporation | Data processing device |
US8823705B2 (en) * | 2007-04-11 | 2014-09-02 | Panasonic Corporation | Image generating apparatus and image generating method for generating images by rendering a polygon |
WO2015146813A1 (ja) * | 2014-03-28 | 2015-10-01 | 株式会社ソニー・コンピュータエンタテインメント | オブジェクトの操作方法、オブジェクトの操作プログラム、及び情報処理装置 |
CN113706455B (zh) * | 2021-07-14 | 2024-03-29 | 青海黄河上游水电开发有限责任公司 | 一种330kV电缆瓷瓶套管的破损快速检测方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5193145A (en) * | 1990-02-16 | 1993-03-09 | Silicon Graphics, Inc. | Method and apparatus for producing a visually improved image in a computer system |
WO1995022122A1 (en) * | 1994-02-14 | 1995-08-17 | Parametric Technology Corporation | Real-time image generation system for simulating physical paint, drawing media, and feature modeling with 3-d graphics |
JPH07282274A (ja) * | 1994-04-04 | 1995-10-27 | Mitsubishi Electric Corp | グラフィック表示装置 |
JPH07302348A (ja) * | 1994-04-28 | 1995-11-14 | Canon Inc | 図形処理方法および装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4819192A (en) * | 1985-02-26 | 1989-04-04 | Sony Corporation | Method of displaying image |
US4646251A (en) * | 1985-10-03 | 1987-02-24 | Evans & Sutherland Computer Corporation | Computer graphics, parametric patch parallel subdivision processor |
JP2667835B2 (ja) * | 1987-10-09 | 1997-10-27 | 株式会社日立製作所 | コンピユータグラフイツクス表示装置 |
US5278983A (en) * | 1988-09-30 | 1994-01-11 | International Business Machines Corporation | Boundary representation solid modeling system |
CA2060975C (en) * | 1991-02-25 | 1998-11-10 | Gopalan Ramanujam | Scientific visualization system |
US5261029A (en) * | 1992-08-14 | 1993-11-09 | Sun Microsystems, Inc. | Method and apparatus for the dynamic tessellation of curved surfaces |
GB9223375D0 (en) * | 1992-11-06 | 1992-12-23 | Canon Res Ct Europe Ltd | Processing image data |
US5553206A (en) * | 1993-02-12 | 1996-09-03 | International Business Machines Corporation | Method and system for producing mesh representations of objects |
JP3926866B2 (ja) * | 1996-05-10 | 2007-06-06 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置、情報処理方法、及び描画システム |
-
1996
- 1996-05-10 JP JP11630196A patent/JP3926866B2/ja not_active Expired - Fee Related
-
1997
- 1997-05-01 EP EP02077815A patent/EP1255228A3/en not_active Withdrawn
- 1997-05-01 DE DE69723613T patent/DE69723613T2/de not_active Expired - Lifetime
- 1997-05-01 EP EP97303010A patent/EP0806744B1/en not_active Expired - Lifetime
- 1997-05-01 CA CA002204225A patent/CA2204225A1/en not_active Abandoned
- 1997-05-07 ID IDP971527A patent/ID18512A/id unknown
- 1997-05-07 SG SG9701396A patent/SG79216A1/en unknown
- 1997-05-07 SG SG200103028A patent/SG100708A1/en unknown
- 1997-05-09 TW TW086106205A patent/TW341691B/zh not_active IP Right Cessation
- 1997-05-09 US US08/853,705 patent/US6188408B1/en not_active Expired - Lifetime
- 1997-05-10 CN CN97113240A patent/CN1131494C/zh not_active Expired - Fee Related
- 1997-05-10 CN CNB021275971A patent/CN100495440C/zh not_active Expired - Lifetime
- 1997-05-10 KR KR1019970018090A patent/KR100536414B1/ko not_active IP Right Cessation
-
2000
- 2000-02-15 US US09/504,361 patent/US6441819B1/en not_active Expired - Lifetime
- 2000-12-15 US US09/738,672 patent/US6396493B2/en not_active Expired - Lifetime
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5193145A (en) * | 1990-02-16 | 1993-03-09 | Silicon Graphics, Inc. | Method and apparatus for producing a visually improved image in a computer system |
WO1995022122A1 (en) * | 1994-02-14 | 1995-08-17 | Parametric Technology Corporation | Real-time image generation system for simulating physical paint, drawing media, and feature modeling with 3-d graphics |
JPH07282274A (ja) * | 1994-04-04 | 1995-10-27 | Mitsubishi Electric Corp | グラフィック表示装置 |
JPH07302348A (ja) * | 1994-04-28 | 1995-11-14 | Canon Inc | 図形処理方法および装置 |
Also Published As
Publication number | Publication date |
---|---|
CN1131494C (zh) | 2003-12-17 |
CN1412721A (zh) | 2003-04-23 |
JP3926866B2 (ja) | 2007-06-06 |
CN100495440C (zh) | 2009-06-03 |
CA2204225A1 (en) | 1997-11-10 |
US6396493B2 (en) | 2002-05-28 |
SG100708A1 (en) | 2003-12-26 |
MX9703409A (es) | 1997-11-29 |
US6441819B1 (en) | 2002-08-27 |
JPH09305793A (ja) | 1997-11-28 |
US6188408B1 (en) | 2001-02-13 |
EP0806744A2 (en) | 1997-11-12 |
DE69723613D1 (de) | 2003-08-28 |
EP0806744B1 (en) | 2003-07-23 |
US20010002130A1 (en) | 2001-05-31 |
EP1255228A2 (en) | 2002-11-06 |
EP0806744A3 (en) | 1998-05-13 |
TW341691B (en) | 1998-10-01 |
CN1173000A (zh) | 1998-02-11 |
EP1255228A3 (en) | 2004-10-06 |
ID18512A (id) | 1998-04-16 |
SG79216A1 (en) | 2001-03-20 |
KR970076727A (ko) | 1997-12-12 |
DE69723613T2 (de) | 2004-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100536414B1 (ko) | 기록매체,기록및정보처리방법과장치및그래픽스시스템과방법 | |
CN1209736C (zh) | 图像处理装置及图像处理方法 | |
EP0632407B1 (en) | Image data generation | |
US6525728B2 (en) | Method and apparatus for using a general three-dimensional (3D) graphics pipeline for cost effective digital image and video editing, transformation, and representation | |
JP3492761B2 (ja) | 画像生成方法及び装置 | |
JP3433918B2 (ja) | ゲームシステム、ゲームシステムにおける表示画像形成方法およびゲーム用プログラムが記憶されたコンピュータ読み取り可能な記録媒体 | |
US6515658B1 (en) | 3D shape generation apparatus | |
JP2004213641A (ja) | 画像処理装置、画像処理方法、情報処理装置、情報処理システム、半導体デバイス、コンピュータプログラム | |
EP1331606A1 (en) | Image processing method for realizing quick bump mapping, image processing device, computer program, and semiconductor device | |
US7212215B2 (en) | Apparatus and method for rendering an antialiased image | |
JP2006146338A (ja) | エンタテインメント装置、オブジェクト表示装置、オブジェクト表示方法、プログラム、およびキャラクタ表示方法 | |
EP1331607A2 (en) | Recording medium which stores 3D image processing programm, 3D image processor, 3D image processing method, and video game machine | |
JP3647779B2 (ja) | 図形データ生成方法、図形生成装置及びその構成品 | |
JP2006277772A (ja) | 情報処理装置、情報処理方法、情報処理プログラム、記録媒体、及び情報提供装置 | |
US7053906B2 (en) | Texture mapping method, recording medium, program, and program executing apparatus | |
US6867766B1 (en) | Image generating apparatus, image generating method, entertainment system, and recording medium | |
US6728420B2 (en) | Image processing apparatus, image processing method, recording medium and its program | |
JP4673518B2 (ja) | 図形検出方法、図形検出装置、半導体デバイス、コンピュータプログラム、記録媒体 | |
MXPA97003409A (en) | Improvements in methods and equipment for the registration and processing of information, and means of registration for the mis | |
JP2002133437A (ja) | 図形データ生成方法、図形生成装置及びその構成品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
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: 20121121 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20131118 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |