KR100371253B1 - 화상생성방법및장치 - Google Patents
화상생성방법및장치 Download PDFInfo
- Publication number
- KR100371253B1 KR100371253B1 KR1019950008015A KR19950008015A KR100371253B1 KR 100371253 B1 KR100371253 B1 KR 100371253B1 KR 1019950008015 A KR1019950008015 A KR 1019950008015A KR 19950008015 A KR19950008015 A KR 19950008015A KR 100371253 B1 KR100371253 B1 KR 100371253B1
- Authority
- KR
- South Korea
- Prior art keywords
- offset
- image
- drawing command
- instruction
- command
- Prior art date
Links
- 238000000034 method Methods 0.000 title abstract description 15
- 239000000872 buffer Substances 0.000 claims abstract description 26
- 230000004044 response Effects 0.000 claims 1
- 238000012545 processing Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- NPURPEXKKDAKIH-UHFFFAOYSA-N iodoimino(oxo)methane Chemical compound IN=C=O NPURPEXKKDAKIH-UHFFFAOYSA-N 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Controls And Circuits For Display Device (AREA)
- Ultra Sonic Daignosis Equipment (AREA)
- Processing Or Creating Images (AREA)
- Closed-Circuit Television Systems (AREA)
- Apparatus For Radiation Diagnosis (AREA)
- Endoscopes (AREA)
Abstract
본 발명의 화상생성방법 및 장치는 3D 오브젝트(object) 등을 표시화면상에서 평행이동시킬 경우에, 메인메모리에의 액세스를 최소한으로 할 수 있고, 평행이동처리의 고속화를 도모할 수 있도록 한다.
본 발명의 화상생성방법은 화상을 묘화하기 위한 묘화명령열의 앞에, 그 화상의 정점(頂点)좌표의 오프세트치를 나타내는 오프세트묘화명령을 삽입하고, 이 오프세트묘화명령에 따라서 상기 화상을 표시화면상에서 평행이동시킨다. 상기 오프세트묘화명령 및 상기 묘화명령열을 구성하는 각 묘화명령의 헤더부에는, 각각 다음에 실행될 묘화명령이 존재하는 메인메모리상의 어드레스를 나타내는 데이터를 가진다. 본 발명의 화상생성장치는 화상이 묘화되는 프레임버퍼와, 화상을 묘화하기 위한 묘화명령열, 및 그 화상의 정점좌표의 오프세트치를 나타내는 오프세트묘화명령을 생성하는 CPU와, 이 CPU에 의하여 생성된 묘화명령열 및 오프세트묘화명령이 기입되는 메인메모리와, 이 메인메모리로부터의 묘화명령열 및 오프세트묘화명령을 실행하여 상기 프레임버퍼상에 평행이동한 상태의 화상을 묘화하는 묘화장치부와를 구비한다.
Description
본 발명은 비디오게임기나 그래픽콤퓨터 등, 콤퓨터그래픽스를 응용한 기기이며 한정된 하드웨어자원중에서 높은 가시화(visualization)성능이 요구될 경우에 적용하여 적합한 화상생성방법 및 장치에 관한 것이다.
비디오게임기나 그래픽콤퓨터에서는, 화상생성처리를 고속으로 행하기 위하여, 통상 CPU와 프레임버퍼(프레임메모리)의 사이에 묘화장치부가 배설되고, 화상을 생성할때, CPU는 직접 프레임버퍼를 액세스하지 않고 3각형이나 4각형 등의 기본적인 도형을 묘화하는 명령을 묘화장치부로 보내고, 묘화장치부는 이 CPU로부터 보내진 명령을 해석하여 프레임버퍼상에 도형을 묘화한다.
이 묘화장치부가 취급하는 도형의 최소 단위는 폴리곤(polygon)(다각형) 또는 프리미티브(primitive)라고 하고, 이것을 묘화하는 명령은 묘화명령 또는 디스플레이리스트라고 한다.
그런데, 2차원의 표시화면상에 있어서, 물체가 입체적으로 보이도록 묘화하는 3D(3차원) 그래픽스시스템에서는, 표현하려고 하는 물체인 3D 오브젝트(object)의 표면을 복수의 폴리곤으로 분해하여 각 폴리곤을 순차 프레임버퍼상에 묘화함으로써, 입체적으로 보이는 화상을 재구성한다.
예를 들면, 제6A도에 나타낸 바와 같은 3D 오브젝트 OJ를 묘화할 경우에는, 제6B도에 나타낸 바와 같이 오브젝트 OJ의 표면을 정점(頂点) A, B, D, C을 가지는 폴리곤Pa, 정점 D, C, E, F을 가지는 폴리곤 Pb, 및 정점 B, C, G, F을 가지는 폴리곤 Pc으로 분해하고, 제6C도에 나타낸 바와 같이 각 폴리곤 Pa, Pb, Pc에 대응하는 묘화명령 IPa, IPb, IPc을 묘화장치부(62)에 순차 전송하여, 각 폴리곤 Pa, Pb, Pc을 프레임버퍼(66)상에 순차 묘화한다.
묘화명령 IPa, IPb, IPc은 각각 이후의 데이터가 폴리곤 묘화명령인 것 등을 나타내는 지시코드 INCO에 대하여, 폴리곤 Pa, Pb, Pc의 정점좌표열을 부가한 것이다.
그런데, 비디오게임기와 같은 응용기기에서는, 상기와 같은 3D 오브젝트를 단지 평행이동시켜서 표시하도록 하는 장면이 자주 생기지만, 그 경우 종래는 그 오브젝트를 구성하는 모든 폴리곤의 정점좌표를 각 프레임마다 재기입하고 있다.
즉, 제6A도에 나타낸 바와 같은 오브젝트 OJ를 표시화면상에서 X방향으로는 dx, Y방향으로는 dy만큼 평행이동시킬 경우, 메인메모리상에 있어서는 제7도에 나타낸 바와같이, 오브젝트 OJ를 구성하는 각 폴리곤 Pa, Pb, Pc에 대응한 묘화명령 IPa, IPb, IPc의 정점좌표열에 있어서의 각 정점좌표를 각각 뒤의 프레임 Fb에서는 앞의 프레임 Fa에 대하여 dx, dy만큼 가산하고 있다.
본원 출원인은 본원의 묘화장치와 관련된 다음의 일본국 특허출원을 하였다.
일본국 특원평 5-l90763호 (1993년 6월 30일 출원)
일본국 특원평 5-l90764호 (1993년 7월 2일 출원)
일본국 특원평 5-258625호 (1993년 10월 15일 출원)
일본국 특원평 6-27405호 (1994년 1월 31일 출원)
상기 각 출원은 본원의 출원인에 의한 것이고,
본 발명에 있어서 이를 참조한다 (이 4건의 일본국 특허출원에 대응하는 미합중국 특허출원은 계류중이다).
그러나, 이와 같이 오브젝트를 표시화면상에서 평행이동시키는데 있어서, 그 오브젝트를 구성하는 모든 폴리곤의 정점좌표를 각 프레임마다 재기입할 경우에는, 메인메모리에의 액세스가 빈번해져서, 평행이동처리를 고속화할 수 없는 문제가 있다.
그래서, 본 발명의 목적은 3D 오브젝트 기타의 화상을 표시화면상에서 평행이동시킬 경우에, 메인메모리에의 액세스를 최소한으로 할 수 있고, 평행이동처리의 고속화를 도모할 수 있도록 한 것이다.
본 발명의 화상생성방법은, 화상을 묘화하기 위한 묘화명령열의 앞에, 그 화상의 정점좌표의 오프세트치를 나타내는 오프세트묘화명령을 삽입하고, 이 오프세트묘화명령에 따라서 상기 화상을 표시화면상에서 평행이동시킨다.
상기 오프세트묘화명령 및 상기 묘화명령열을 구성하는 각 묘화명령의 헤더부에는, 각각 다음에 실행될 묘화명령이 존재하는 메인메모리상의 어드레스를 나타내는 데이터를 가진다. 또한 상기 화상이 복수의 폴리곤에 의하여 구성되는 3차원 오브젝트로 된다.
본 발명의 화상생성장치는, 화상이 묘화되는 프레임버퍼(66)와, 화상을 묘화하기 위한 묘화명령열, 및 그 화상의 정점좌표의 오프세트치를 나타내는 오프세트묘화명령을 생성하는 CPU(11)와, 이 CPU(11)에 의하여 생성된 묘화명령열 및 오프세트묘화명령이 기입되는 메인메모리(21)와, 이 메인메모리(21)로부터의 묘화명령열 및 오프세트묘화명령을 실행하여 상기 프레임버퍼(66)상에 평행이동한 상태의 화상을 묘화하는 묘화장치부(62)와를 구비한다.
상기와 같이 구성한 본 발명의 화상생성방법 및 장치에서는, 3D 오프젝트 기타의 화상을 표시화면상에서 평행이동시킬 때에는, 묘화명령열의 앞에 삽입되는 오프세트묘화명령중의 정점좌표의 오프세트치를 재기입하는 것만으로 되므로, 메인메모리에의 액세스가 최소한으로 억제되어, 평행이동처리의 고속화를 도모할 수 있다.
또한, 오프세트묘화명령 및 묘화명령열을 구성하는 각 묘화명령의 헤더부의 어드레스데이터에 의하여 메인메모리가 액세스됨으로써, 오프세트묘화명령 및 묘화명령열을 구성하는 각 묘화명령이 그 실행될 순서로 링크형식으로 이어져서 얻어진다.
따라서, 메인메모리상에서는 오프세트묘화명령 및 묘화명령열을 구성하는 각 묘화 명령이 그 실행될 순서로 연속된 메모리영역에 존재할 필요는 없고, 도중에서 화상을 평행이동시킬 필요가 생긴 경우라도, 그 이후의 묘화명령의 메인메모리상의 위치를 이동시킬 필요가 없는 동시에, 오프세트묘화명령 및 묘화명령열을 구성하는 각 묘화명령의 헤더부의 어드레스데이터를 재기입함으로써, 각 묘화명령의 메인메모리상의 위치를 이동시키지 않고 용이하게 각 묘화명령의 실행순서를 변경할 수 있다.
전술한 바와 같이, 본 발명에 의하면, 3D 오브젝트 기타의 화상을 표시화면상에서 평행이동시키는 경우에, 메인메모리의 액세스를 최소한으로 할 수 있고, 평행이동처리의 고속화를 도모할 수 있다.
또한, 도중에 화상을 평행이동시킬 필요가 생긴 경우라도, 그 이주의 묘화명령의 메인메모리상의 위치를 이동시킬 필요가 없는 동시에, 각 묘화명령의 헤더부의 어드레스데이터를 재기입함으로써, 각 묘화명형의 메인메모리상의 위치를 이동시키지 않고 용이하게 각 묘화명령의 실행순서를 변경할 수 있다.
다음에, 본 발명의 실시예에 대하여 도면에 따라서 상세히 설명한다.
제l도는 본 발명의 일실시예를 실현하는 화상생성장치이고, 비디오게임기로서 구성한 경우이다.
시스템버스(메인버스)(1)에는 CPU(11)가 접속되고, CPU(11)에는 캐쉬메모리 (cache memory)(12)가 접속되고, CPU(11)는 시스템 전체의 제어를 행한다 또, CPU(11)에는 폴리곤(polygon) 등에 대한 좌표변환연산을 행하기 위한 좌표변환부 (13)가 접속된다. CPU(11)로서는, 예를 들면 32비트의 것이 사용된다.
시스템버스(1)에는 또 메인메모리(21)가 접속된다.
또, 시스템버스(1)에는 CD-ROM디코더(31) 및 DMA(direct memory access)콘트롤러(41)가 접속되고, CD-ROM디코더(31)에는 CB-ROM드라이버(32)가 접속되고, CD-ROM드라이버(32)에는 CD-ROM이 장착된다.
CD-ROM은 폴리곤묘화명령 등을 포함하는 어플리케이션프로그램과, 예를 들면 DCT(이산(離散)코사인 변환)에 의하여 압축된 화상데이터 등을 포함하는 데이터가 기록된 것이고, 그 어플리케이션프로그램이나 데이터는 CD-ROM디코더(31)에 의하여 디코드되어, DMA콘트롤러(41)에 의하여 메인메모리(21)상에 전송된다.
또한, 시스템버스(1)에는 입력측의 FIFO버퍼(51) 및 출력측의 FIFO버퍼(52)를 통하여 화상신장부(53)가 접속되고, 화상신장부(53)는 상기의 압축된 화상데이터의 신장처리를 행한다.
또, 시스템버스(1)에는 FIFO버퍼(61)를 통하여 묘화장치부(62)가 접속되고, 묘화장치부(62)에는 프레임버퍼(66)가 접속되고, 프레임버퍼(66)에는 DA콘버터(67)가 접속되고, DA콘버터(67)에는 화상표시모니터(68)가 접속된다.
묘화장치부(62)는 DMA콘트롤러(41)에 의하여 메인메모리(21)로부터 수취한 묘화명령을 실행하여 프레임버퍼(66)상에 화상을 묘화하고, 이 예에서는, 후술하는 오프세트 묘화명령중의 정점(頂点)좌표의 오프세트치를 유지하는 오프세트레지스터 (63)를 가지고, 가산기(64)에 있어서, 그 오프세트치를 화상을 묘화하기 위한 묘화명령열을 구성하는 각 묘화명령중의 각 정점좌표에 가산한다.
프레임버퍼(66)는 2면의 프레임버퍼로 구성되고, 수직주기마다 전환된다. 프레임버퍼(66)의 출력화상데이터는 DA콘버터(67)에 의하여 아날로그영상신호로 변환되고, 그 아날로그영상신호가 화상표시모니터(68)에 출력된다.
또한, 시스템버스(1)에는, 인터페이스(71)를 통하여 비디오게임기의 조작입력수단으로서의 콘트롤패드(72)가 접속되는 동시에, 비디오게임기로서의 스타트를 행하기 위한 프로그램이 격납된 부트(boot)ROM(73)이 접속된다.
이상의 화상생성장치에서는, CPU(11)에 의하여 메인메모리(21)상에 묘화명령이 생성되고, 그 묘화명령이 DMA콘트롤러(41)에 의하여 묘화장치부(62)에 전송되고, 묘화장치부(62)는 그 묘화명령을 실행하여 프레임버퍼(66)상에 화상을 묘화하고, 그 화상이 화상표시모니터 (68)상에 표시된다.
여기서, 메인메모리(21)로부터 묘화장치부(62)에 전송되는 묘화명령에는, 어떤 화상을 묘화하기 위한 묘화명령열의 앞에 오프세트묘화명령이 삽입된다.
즉, 1프레임내에 있어서, 어떤 오브젝트(object) OI에 이어서, 제6도에 나타낸 바와 같이 폴리곤 Pa, Pb, Pc으로 분해되는 오브젝트 OJ를 묘화하고, 이어서 다른 오브젝트 OK를 묘화하는 경우, 제2도에 나타낸 바와 같이, 오브젝트 OI에 대한 묘화명령열Aoi의 앞에는 오프세트묘화명형 Ooi이 삽입되고, 묘화명형열 Aoi의 뒤의, 오브젝트 OJ에 대한 묘화명령열 Aoj의 앞에는 오프세트묘화명령 Ooj이 삽입되는 동시에, 묘화명령열 Aoj의 뒤의, 오브젝트 OK에 대한 묘화명령열 Aok의 앞에는 오프세트묘화명령 Ook이 삽입된다.
오프세트묘화명령 Ooi, Ooj, Ook은 각각 그 헤더부에, 다음에 실행될 묘화명령이, 즉 오프세트묘화명령 Ooi에 대하여는 오브젝트 OJ에 대한 묘화명령열 Aoi중의 최초의 묘화명령 IPa이 존재하는 메인메모리(21)상의 어드레스를 나타내는 데이터 AD를 가지고, 이것에 이어서, 이후의 데이터가 오프세트묘화명령인 것을 나타내는 지시코드 OFIN와, 오브젝트 OI, OJ, OK에 대한 정점좌표의 오프세트치 dx, dy를 가지는 것으로 된다.
오프세트치 dx, dy는, 이 예에서는 콘트롤패드(27)에 의한 입력조작에 따라서 CPU(11)에 의하여 생성되어서, 어드레스데이터 AD 및 지시코드 OFIN와 함께 오프세트묘화명령 Ooi, Ooj, Ook으로서 메인메모리(21)상에 격납되고, DMA콘트롤러 (41)에 의하여 메인메모리(21)로부터 묘화장치부(62)에 전송된다.
오브젝트 OJ에 대한 묘화명령열 Aoj은 분해된 폴리곤 Pa, Pb, Pc에 대한 묘화명령IPa, IPb, IPc에 의하여 구성되지만, 그 폴리곤묘화명령 IPa, IPb, IPc은 각각 그 헤더부에, 다음에 실행될 묘화명령이 존재하는 메인메모리(21)상의 어드레스를 나타내는 데이터 AD를 가지고, 이것에 이어서, 이후의 데이터가 폴리곤묘화명령인 것 등을 나타내는 지시코드 INCO와, 폴리곤 Pa, Pb, Pc의 정점좌표열을 가지는 것으로 된다.
오브젝트 OI, OK에 대한 묘화명형열 Aoi, Aok도 동일하다. 단, 오브젝트 OK가 1프레임 중의 최후에 묘화되는 것일 때에는, 도시하지 않지만, 오브젝트 OK에 대한 묘화명령열 Aok 중의 최후에 실행될 묘화명령에는, 어드레스데이터 AD에 대신하여 1프레임중의 최후의 묘화명령인 것을 나타내는 지시코드가 삽입된다.
이와 같이 오프세트묘화명령 및 폴리곤묘화명형의 헤더부에 어드레스데이터 AD가 삽입될 경우에는, 오프세트묘화명령 및 폴리곤묘화명령은 그 실행될 순서로 메인메모리(21)상의 연속된 메모리영역에 존재할 필요는 없다.
제2도에 나타낸 예는 메인메모리(21)상의 어떤 연속된 메모리영역을 어드레스 A0, Al, A2, A3, A4로 할 때, 메인메모리(21)상에서는, 어드레스 A0에 오프세트묘화명령 Ooj이, 어드레스 Al에 폴리곤묘화명령 IPa이, 어드레스 A2에 폴리곤묘화명령 IPc이, 어드레스 A3에 폴리곤묘화명령 IPb이, 어드레스 A4에 오프세트묘화명령 Ook이 각각 격납되고, 또한 오프세트묘화명령 및 폴리곤묘화명령의 어드레스데이터 AD는 오프세트묘화명령 Ooj의 그것이 어드레스 Al를, 폴리곤묘화명령 IPa의 그것이 어드레스 A3를, 폴리곤묘화명형 IPb의 그것이 어드레스 A2를, 폴리곤묘화명형 IPc의 그것이 어드레스 A4를 각각 나타내는 것으로 된 경우이다.
DMA콘트롤러(41)에 의하여 메인메모리(21)로부터 묘화장치부(62)에는, 오프세트묘화명령 및 폴리곤묘화명령이, 각각이 가지는 어드레스데이터 AD가 나타내는 메인메모리(21)상의 어드레스를 찾는 순서로, 즉 제2도에 나타낸 예에서는, 오프세트묘화명령 Ooj→ 폴리곤묘화명령 IPa → 폴리곤묘화명령 IPb → 폴리곤묘화명령 IPc → 오프세트묘화명령 Ook의 순서로, 묘화명령열 리스트로서 전송된다.
묘화장치부(62)에서는, 오프세트묘화명령 Ooj중의 정점좌표의 오프세트치 dx, dy를 오프세트레지스터(63)에 기입하고, 가산기(64)에 있어서, 그 오프세트치 dx, dy를 폴리곤묘화명령 IPa, IPb, IPc 중의 폴리곤 Pa, Pb, Pc에 대한 각 정점좌표에 순차 가산함으로써, 폴리곤 Pa, Pb, Pc에 대한 평행이동 후의 것으로 될 각 정점좌표를 순차 얻어서, 프레임버퍼(66)상에 폴리곤 Pa, Pb, Pc을 순차, 즉 오브젝트 OJ를 표시화면상에서 X방향으로는 dx, Y방향으로는 dy만큼 평행이동하도록 묘화한다.
그리고, 다음의 프레임에 있어서, 다시 오브젝트 OJ를 동일 방향으로 동량(同量)만큼 평행이동시키는 경우에는, 폴리곤묘화명형 IPa, IPb, IPc중의 폴리곤 Pa, Pb, Pc에 대한 각 정점좌표는 그대로, 오프세트묘화명령 Ooj중의 정점좌표의 오프세트치 dx, dy를 앞의 프레임에 대하여 2배로 한다.
전술한 바와 같이, 오브젝트를 표시화면상에서 평행이동시킬 때에는, 오프세트묘화명령중의 정점좌표의 오프세트치 dx, dy를 재기입하는 것만으로 되므로, 메인메모리(21)에의 액세스가 최소한으로 억제되어, 평행이동처리의 고속화를 도모할수 있다.
또, 전술한 예와 같이 오프세트묘화명령 및 폴리곤묘화명령의 헤더부에 다음에 실행될 묘화명령이 존재하는 메인메모리(21)상의 어드레스를 나타내는 데이터 AD가 삽입되는 경우에는, 그 어드레스데이터 AD에 의하여 메인메모리(21)가 순차 액세스됨으로써, 오프세트묘화명령 및 폴리곤묘화명령이 그 실행될 순서로 링크형식으로 이어져서 얻어지고, 메인메모리(21)상에서는 오프세트묘화명령 및 폴리곤묘화명령이 그 실행될 순서로 연속된 메모리영역에 존재할 필요가 없으므로, 도중에 오브젝트를 평행이동시킬 필요가 생긴 경우에도, 그 이후의 묘화명령의 메인메모리 (21)상의 위치를 이동시킬 필요가 없는 동시에, 헤더부에 어드레스데이터 AD를 재기입함으로써, 각 묘화명령의 메인메모리(21)상의 위치를 이동시키지 않고 용이하게, 각 묘화명령의 실행순서를 변경할수 있다.
예를 들면, 제2도에 나타낸 예는 폴리곤 Pa, Pb, Pc이 폴리곤 Pa →폴리곤 Pb →폴리곤 Pc의 순서로 순차 묘화됨으로써 오브젝트OJ가 묘화되는 경우이지만, 폴리곤 Pa, Pb, Pc을 폴리곤 Pa →폴리곤 Pc →폴리곤 Pb의 순서로 묘화하는 경우에는, 폴리곤묘화명령 IPa중의 어드레스데이터 AD를 메인메모리(21)상의 어드레스 A2를 나타내는 것에, 폴리곤묘화명령 IPc중의 어드레스데이터 AD를 메인메모리(21)상의 어드레스 A3를 나타내는 것에, 폴리곤묘화명령 IPb중의 어드레스데이터 AD를 메인메모리(21)상의 어드레스 A4를 나타내는 것에, 각각 재기입하면 된다.
그렇지만, 제3도에 나타낸 바와 같이, 전술한 어드레스데이터 AD는 없어도 된다. 단, 이 경우에는, DMA콘트롤러(41)에 의하여 메인메모리(21)로부터 묘화장치부(62)에는 오프세트묘화명령 및 폴리곤묘화명령이 각각이 존재하는 메인메모리 (21)상의 어드레스의 순서에 따라서 전송되므로, 각 묘화명령의 실행순서를 변경하는데는, 각 묘화명령의 메인메모리(21)상의 위치를 이동시킬 필요가 있다.
전술한 예는, 이른바 3D 오브젝트를 평행이동시키는 경우이지만, 본 발명은 3D 오브젝트에 한하지 않고, 단순한 폴리곤을 평행이동시키는 경우나, 배경화와 같은 화상을 평행이동시키는 경우에도 적용할 수 있다. 배경화를 평행이동시키는 경우로서는, 다음과 같은 경우를 생각할 수 있다.
예를 들면, 1프레임의 화상이 가로×세로 = 320×240의 화소로 이루어지는 것으로 하여, 그 1프레임의 화상을 하나의 매크로블록 MB이 가로×세로 = 16×16의 화소로 이루어지는, 제4도에 나타낸 바와 같은 총계 300개의 매크로블록으로 분할하여, 그 매크로블록단위로 배경화를 묘화한다.
그 배경화의 묘화명령은 제5도에 나타낸 바와 같이, 헤더부에 태그TG로서의, 다음에 실행될 묘화명령이 존재하는 메인메모리(21)상의 어드레스를 나타내는 데이터 AD, 이후의 데이터가 배경화의 묘화명령인 것 등을 나타내는 지시코드 INCO, 그 배경화가 묘화될 매크로블록영역 MA의 높이 및 폭을 나타내는 데이터 H, W, 및 매크로블록영역 MA의 좌상의 정점좌표를 나타내는 데이터 X, Y를 가지는 동시에, 헤더부에 이어서 화상데이터 IP를 가지는 것으로 된다.
매크로블록영역 MA의 폭은 하나의 매크로블록 MB의 폭에 상당하지만, 매크로블록영역 MA의 높이는 하나 또는 종방향으로 연속되는 복수의 매크로블록의 높이이다. 화상데이터 IP는 화상신장부(53)에서 신장된 것이다.
이와 같은 배경화는 폴리곤과 동일하게 취급할 수 있고, 전술한 방법에 의하여 표시화면상에서 평행이동시킬 수 있다.
그리고, 좌표변환부(13)는 도시한 예와 같이 CPU(11)에 파이프라인접속하는 대신에, 시스템버스(1)에 접속해도 된다.
또, 어플리케이션프로그램이나 데이터의 기록매체로서는, CD-ROM의 대신에, 자기디스크나 메모리카드와 같은 반도체메모리 등을 사용할 수도 있다.
이 기술분야에서 숙련된 사람은 본 발명의 상세한 설명 및 첨부도면으로부터 본 발명에 대하여 여러가지 변형이 가능하다는 것을 알 수 있을 것이다. 따라서, 본 발명은 다음의 특허청구의 범위에 의하여만 한정된다.
제l도는 본 발명의 일실시예를 실현하는 화상생성장치를 나타낸 블록도.
제2도는 본 발명에서 오브젝트를 평행이동시킬 경우에 있어서의 오프세트묘화명령 및 폴리곤묘화명령의 일예를 나타낸 도면.
제3도는 본 발명에서 오브젝트를 평행이동시킬 경우에 있어서의 오프세트묘화명령 및 폴리곤묘화명령의 다른 예를 나타낸 도면.
제4도는 본 발명에서 배경화를 평행이동시킬 경우에 있어서의 1프레임의 화상의 분할방법의 일예를 나타낸 도면.
제5도는 본 발명에서 배경화를 평행이동시킬 경우에 있어서의 배경화묘화명령의 일예를 나타낸 도면.
제6도는 오브젝트의 묘화방법을 설명하기 위한 도면.
제7도는 종래의 방법으로 오브젝트를 평행이동시킬 경우에 있어서의 오프세트묘화명령 및 폴리곤묘화명령의 일예를 나타낸 도면.
※ 도면의 주요부분에 대한 부호의 설명
(11): CPU, (21): 메인메모리, (62): 묘화장치부, (66): 프레임버퍼, OJ : 오브젝트, Aoj : 묘화명령열, Ooj : 오프세트묘화명령, AD : 어드레스데이터.
Claims (9)
- 묘화 장치부를 이용하여 프레임 버퍼에 화상을 프레임 단위로 묘화하기 위하여 화상의 좌표값을 가지는 복수의 묘화 명령열을 생성하는 단계,상기 화상을 오프셋시키기 위하여 상기 각 묘화 명령열 앞에 상기 화상의 좌표에 대한 화상 내의 서로 다른 제1 및 제2 방향으로의 제1 및 제2 오프셋 값을 나타내는 오프셋 묘화 명령을 삽입하고, 각 묘화 명령열 내의 제1 묘화 명령의 어드레스에, 다음 데이터가 오프셋 묘화 명령이라는 것을 나타내는 지시 코드를 가지는 각 오프셋 묘화 명령의 헤드부를 구비하는 단계,상기 각 묘화 명령열의 헤드부에, 다음 데이터가 폴리콘 묘화 명령이라는 것을 나타내는 지시 코드와 다음 묘화 명령열의 제1 묘화 명령의 어드레스 또는 다른 오프셋 묘화 명령이 상기 다음 묘화 명령열에 이어질 경우에는 상기 묘화 명령의 어드레스 대신에 다음 번 오프셋 묘화 명령을 구비하며, 상기 각 헤드부의 어드레스별로 복수의 상기 묘화 명령열과 관련 오프셋 묘화 명령을 기억하고 있는 메인 메모리에 상기 오프셋 묘화 명령과 상기 묘화 명령열의 헤드부의 어드레스와 지시 코드를 통하여 순차적으로 액세스하여, 실행 순서별로 링크 형태로 연결되어 있는 관련 묘화 명령열 내의 오프셋 묘화 명령을 획득함으로써 상기 메인 메모리 내의 연속된 메모리 영역에 상기 오프셋 명령과 각 묘화 명령열을 실행을 위해 위치시킬 필요가 없도록 하는 단계,상기 관련 묘화 명령열 내의 오프셋 값을 상기 메모리로부터 상기 묘화 장치부로 출력하는 단계,상기 묘화 장치부에서 상기 묘화 장치부 내의 각 묘화 명령열에 포함된 좌표값에 각 오프셋 값을 추가하는 단계, 그리고상기 오프셋 값이 추가된 좌표값에 대응하여 상기 묘화 명령을 실행하여 상기 프레임 버퍼 내에 이동 화상 프레임을 생성하는 단계를 포함하는 화상생성방법.
- 상기 화상이 복수의 폴리곤으로 이루어지는 3차원 객체인 화상생성 방법.
- 화상이 묘화되는 프레임 버퍼,상기 화상을 묘화하기 위한 묘화 명령열 및 상기 화상의 정점좌표의 오프셋 값을 나타내는 오프셋 묘화 명령을 생성하는 CPU,상기 CPU에 의하여 생성된 묘화 명령열 및 오프셋 묘화 명령을 기억하는 메인 메모리, 그리고상기 메인 메모리로부터의 묘화 명령열 및 오프셋 묘화 명령을 실행하여 상기 프레임 버퍼에 이동 화상을 묘화하는 묘화 장치부를 포함하는 화상생성장치.
- 제3항에서, 상기 묘화 장치부는 상기 오프셋 묘화 명령을 기억하고 상기 오프셋 묘화 명령을 상기 묘화 명령에 추가하는 레지스터를 포함하는 화상생성 장치.
- 제4항에서, 상기 묘화 명령은 형상을 묘화하기 위한 최소 단위로서의 묘화명령과 폴리곤을 포함하고, 상기 오프셋 명령을 상기 각 폴리곤에 대한 묘화 명령에 추가하는 화상생성장치.
- 제5항에서, 상기 오프셋 명령이 추가된 각 폴리곤에 대한 묘화명령은 데이터가 폴리곤 묘화 명령이라는 것을 나타내는 지시코드를 포함하는 화상생성장치.
- 제6항에서, 상기 오프셋 명령은 데이터가 오프셋데이터라는 것을 나타내는 지시코드와 오프셋량을 나타내는 데이터를 포함하는 화상생성장치.
- 제7항에서, 상기 오프셋을 나타내는 제1 및 제2 데이터에 따라서 상기 폴리곤을 이동시키는 화상생성장치.
- 제8항에서, 조작입력수단을 추가로 포함하고, 상기 조작입력수단에 의한 입력조작에 따라 상기 오프셋 묘화 명령을 생성하는 화상생성장치.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6095717A JPH07282270A (ja) | 1994-04-08 | 1994-04-08 | 画像生成方法および装置 |
JP1994-95717 | 1994-04-08 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR950033961A KR950033961A (ko) | 1995-12-26 |
KR100371253B1 true KR100371253B1 (ko) | 2003-03-31 |
Family
ID=14145238
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019950008015A KR100371253B1 (ko) | 1994-04-08 | 1995-04-07 | 화상생성방법및장치 |
Country Status (9)
Country | Link |
---|---|
US (1) | US5943061A (ko) |
EP (1) | EP0676719B1 (ko) |
JP (1) | JPH07282270A (ko) |
KR (1) | KR100371253B1 (ko) |
CN (1) | CN1105966C (ko) |
AT (1) | ATE189934T1 (ko) |
CA (1) | CA2146518C (ko) |
DE (1) | DE69515137T2 (ko) |
ES (1) | ES2142421T3 (ko) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6190257B1 (en) | 1995-11-22 | 2001-02-20 | Nintendo Co., Ltd. | Systems and method for providing security in a video game system |
US6022274A (en) | 1995-11-22 | 2000-02-08 | Nintendo Co., Ltd. | Video game system using memory module |
US6331856B1 (en) | 1995-11-22 | 2001-12-18 | Nintendo Co., Ltd. | Video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing |
JP2001283254A (ja) | 2000-03-31 | 2001-10-12 | Mitsubishi Electric Corp | 3次元グラフィックス描画装置およびその方法 |
JP4603902B2 (ja) * | 2005-02-16 | 2010-12-22 | 株式会社メガチップス | 3dグラフィック表示システムおよび表示装置並びに電子メッセージ転送システムおよび表示装置 |
US20100020088A1 (en) * | 2007-02-28 | 2010-01-28 | Panasonic Corporation | Graphics rendering device and graphics rendering method |
JP2008249977A (ja) * | 2007-03-30 | 2008-10-16 | Seiko Epson Corp | 電気光学表示装置の描画回路、電気光学表示装置の描画方法、電気光学表示装置及び電子機器 |
CN117292039B (zh) * | 2023-11-27 | 2024-02-13 | 芯瞳半导体技术(山东)有限公司 | 顶点坐标生成方法、装置、电子设备及计算机存储介质 |
CN117744187B (zh) * | 2024-02-20 | 2024-05-14 | 广州中望龙腾软件股份有限公司 | Cad绘图方法、装置、计算机设备和存储介质 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2728411B2 (ja) * | 1987-12-16 | 1998-03-18 | 株式会社日立製作所 | 図形データ表示方法及び装置 |
US5265198A (en) * | 1989-10-23 | 1993-11-23 | International Business Machines Corporation | Method and processor for drawing `polygon with edge`-type primitives in a computer graphics display system |
DE69032932T2 (de) * | 1989-11-17 | 1999-09-16 | Digital Equipment Corp., Maynard | System und Verfahren zum unverfälschten Polygonenzeichnen |
KR930007023B1 (ko) * | 1990-12-31 | 1993-07-26 | 삼성전자 주식회사 | 컴퓨터 그래픽 시스템에서의 화상변환방법 및 그 장치 |
US5321810A (en) * | 1991-08-21 | 1994-06-14 | Digital Equipment Corporation | Address method for computer graphics system |
JPH05190763A (ja) | 1992-01-14 | 1993-07-30 | Murata Mfg Co Ltd | 封止部品 |
JPH05190764A (ja) | 1992-01-17 | 1993-07-30 | Hitachi Ltd | 半導体装置 |
JPH05258625A (ja) | 1992-03-13 | 1993-10-08 | Sumitomo Metal Ind Ltd | 超伝導線材の製造方法 |
US5483627A (en) * | 1992-04-29 | 1996-01-09 | Canon Kabushiki Kaisha | Preprocessing pipeline for real-time object based graphics systems |
JP3078655B2 (ja) | 1992-07-09 | 2000-08-21 | 富士通株式会社 | 光ビーム走査装置 |
US5596693A (en) * | 1992-11-02 | 1997-01-21 | The 3Do Company | Method for controlling a spryte rendering processor |
JP3492761B2 (ja) * | 1994-04-07 | 2004-02-03 | 株式会社ソニー・コンピュータエンタテインメント | 画像生成方法及び装置 |
US5664162A (en) * | 1994-05-23 | 1997-09-02 | Cirrus Logic, Inc. | Graphics accelerator with dual memory controllers |
-
1994
- 1994-04-08 JP JP6095717A patent/JPH07282270A/ja active Pending
-
1995
- 1995-04-06 CA CA002146518A patent/CA2146518C/en not_active Expired - Fee Related
- 1995-04-07 KR KR1019950008015A patent/KR100371253B1/ko not_active IP Right Cessation
- 1995-04-07 ES ES95105312T patent/ES2142421T3/es not_active Expired - Lifetime
- 1995-04-07 DE DE69515137T patent/DE69515137T2/de not_active Expired - Lifetime
- 1995-04-07 AT AT95105312T patent/ATE189934T1/de active
- 1995-04-07 EP EP95105312A patent/EP0676719B1/en not_active Expired - Lifetime
- 1995-04-08 CN CN95104022A patent/CN1105966C/zh not_active Expired - Fee Related
-
1996
- 1996-09-05 US US08/708,883 patent/US5943061A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
DE69515137T2 (de) | 2000-08-31 |
CN1105966C (zh) | 2003-04-16 |
EP0676719B1 (en) | 2000-02-23 |
CA2146518C (en) | 2006-03-21 |
US5943061A (en) | 1999-08-24 |
ES2142421T3 (es) | 2000-04-16 |
CA2146518A1 (en) | 1995-10-09 |
EP0676719A3 (en) | 1997-06-04 |
CN1123928A (zh) | 1996-06-05 |
EP0676719A2 (en) | 1995-10-11 |
JPH07282270A (ja) | 1995-10-27 |
DE69515137D1 (de) | 2000-03-30 |
ATE189934T1 (de) | 2000-03-15 |
KR950033961A (ko) | 1995-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3492761B2 (ja) | 画像生成方法及び装置 | |
KR100380705B1 (ko) | 화상생성방법및장치와,게임재생장치 | |
JP3878307B2 (ja) | プログラマブルなデータ処理装置 | |
US5917504A (en) | Image processing apparatus, switching between images having pixels of first and second numbers of bits | |
US7170512B2 (en) | Index processor | |
JP3586991B2 (ja) | テクスチャ・データ読出装置およびレンダリング装置 | |
US5659672A (en) | Method and apparatus for generating images | |
KR100371253B1 (ko) | 화상생성방법및장치 | |
US6307559B1 (en) | Method and apparatus for color space conversion, clipping, and scaling of an image during blitting | |
US6952217B1 (en) | Graphics processing unit self-programming | |
JP3462566B2 (ja) | 画像生成装置 | |
JP4683384B2 (ja) | メモリ制御方法、グラフィックプロセッサおよび情報処理装置 | |
JP2012032456A (ja) | 画像処理装置 | |
US6489967B1 (en) | Image formation apparatus and image formation method | |
JP3238567B2 (ja) | 画像生成方法及び装置 | |
JP2003150975A (ja) | 画像生成装置 | |
JPH1186026A (ja) | 画像処理装置 | |
JP2006031160A (ja) | グラフィックオブジェクト処理方法 | |
WO2001006461A1 (fr) | Procede et dispositif de dessin | |
JP3776416B2 (ja) | 画像生成装置及び画像生成方法 | |
JP2000035781A (ja) | 画像表示制御方法および装置 | |
JP2004265331A (ja) | 3次元描画システム、3次元描画方法、およびコンピュータプログラム | |
JP2000148114A (ja) | 画像生成装置および画像生成方法 | |
JPH03251969A (ja) | 画像出力装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
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: 20130111 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20140418 Year of fee payment: 12 |
|
FPAY | Annual fee payment |
Payment date: 20150105 Year of fee payment: 13 |
|
EXPY | Expiration of term |