[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR19980041754A - 컴퓨터 그래픽에서 텍스쳐 좌표를 결정하는 방법 및 장치 - Google Patents

컴퓨터 그래픽에서 텍스쳐 좌표를 결정하는 방법 및 장치 Download PDF

Info

Publication number
KR19980041754A
KR19980041754A KR1019970022727A KR19970022727A KR19980041754A KR 19980041754 A KR19980041754 A KR 19980041754A KR 1019970022727 A KR1019970022727 A KR 1019970022727A KR 19970022727 A KR19970022727 A KR 19970022727A KR 19980041754 A KR19980041754 A KR 19980041754A
Authority
KR
South Korea
Prior art keywords
value
point
circuit
coordinates
texture
Prior art date
Application number
KR1019970022727A
Other languages
English (en)
Other versions
KR100260040B1 (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 KR19980041754A publication Critical patent/KR19980041754A/ko
Application granted granted Critical
Publication of KR100260040B1 publication Critical patent/KR100260040B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Image Generation (AREA)

Abstract

점 Q'의 텍스쳐 좌표(u, v)는 (1) 선형 보간에 의해 수정된 텍스쳐 좌표(u', v')(여기서, z는 월드 좌표)를 결정하고; (2) 선형 보간에 의해 1/z를 결정하고; (3) 1/z로서 (u', v')를 나눔으로써 결정된다. 상기 나눗셈은 1/z의 역으로 (u', v')를 곱함으로써 교체된다. 상기 역은 참조표(LUT)를 사용하여 구해진다. 상기 LUT는 일부 값의 역을 저장한다. 선형 보간은 역값의 정확도를 증가시키기 위해 LUT 출력에 인가된다.

Description

컴퓨터 그래픽에서 텍스쳐 좌표를 결정하는 방법 및 장치
본 발명은 컴퓨터에 관한 것으로, 더 상세하게는 컴퓨터 그래픽스에서 텍스쳐 좌표(texture coordinates)를 결정하는 것에 관한 것이다.
텍스쳐는 컴퓨터 그래픽스에서 컴퓨터가 생성한 이미지를 보다 현실감 있게 보이도록 하는데 사용된다. 텍스쳐는 다수의 텍스쳐 엘리먼트(텍셀(texels))로 구성된다. 각각의 텍셀은 컬러, 강도 또는 일부 다른 이미미 파라메타에 대응하는 값을 갖는다. 텍셀 값은 컴퓨터 이미지에서 대응하는 픽셀의 컬러, 강도 또는 다른 파라메타를 수정하는데 사용된다. 예를 들어, 본 발명의 참조로 일체화되어 있는 컴퓨터 그래픽스, 26, pp, 249-252(1992년 7월 2일), M. Segal 등에 의한 텍스쳐 맵핑을 이용한 고속 쉐도우 및 라이트닝 효과를 참조한다.
컴퓨터에서, 텍셀은 텍스쳐 좌표로 식별된다. 이와 같이, 픽셀에 대한 적당한 텍셀을 구하는 것은 텍셀의 텍스쳐 좌표를 결정하는 것을 포함한다. 텍스쳐 좌표를 결정하기 위한 작고 값이 저렴한 회로를 제공하는 것이 바람직하다.
본 발명은 텍스쳐 좌표를 결정하기 위한 회로 및 방법을 제공하는 것이다. 몇몇 실시예에서, 상기 회로는 소형이며 값이 저렴하다.
몇몇 실시예에서, 텍스쳐 좌표를 제외하고, 컴퓨터 시스템은 월드 좌표와 화면 좌표를 이용한다. 상기 월드 좌표(x, y, z)는 그 이미지가 컴퓨터 화면 상에 디스플레이될 물체를 표현하는데 사용된다. 상기 화면 좌표(x', y')는 화면 상의 픽셀을 식별한다. 상기 월드 및 화면 좌표는 월드 좌표(x, y, z)를 갖는 점이 화면 좌표 x'=x/z, y'=y/z를 갖는 점으로서 화면 상에 표현되도록 선정된다.
화면 상에 표현될 물체 표면은 그 정점이 공지된 월드 및 텍스쳐 좌표를 갖는 다각형으로 분할된다. 상기 정점 이미지의 화면 좌표(x', y')는 상술된 바와 같이 (x/z, y/z)로 설정된다. 다음에 정점 이미지를 교차하는 직선 세그먼트가 그려진다. 다음에 서로 다른 세그먼트 상의 개별적인 점이 다른 직선 세그먼트에 의해 연결되어 다각형을 채운다. 예를 들어, 본 발명의 참조로 일체화되어 있는 P. Burger 및 D. Gillies의 인터렉티브 컴퓨터 그래픽스(1989), pp. 76-110, J. D. Foley 등에 의한 컴퓨터 그래픽스: 원리 및 실제(1996), pp. 72-104를 참조한다.
(가능하게 알려지지 않은) 텍스쳐 좌표(u, v)를 갖는 각각의 이미지 점 Q'의 경우, 수정된 텍스쳐 좌표(u', v'):u'=u/z, v'=v/z(여기서, z는 그 이미지가 Q'인 점 Q의 월드 좌표인)라고 한다. 정점의 이미지는 알고 있는 텍스쳐 좌표(u, v)이므로 그 수정된 텍스쳐 좌표(u', v')가 결정될 수 있다. 화면 좌표(x', y')를 갖는 점 Q'이 종점 Q1', Q2'를 갖는 세그먼트에 놓여 있다고 가정한다. 상기 점 Q1'는 화면 좌표(X1', Y1')와 수정된 텍스쳐 좌표(u1', v1')를 가지며, 점 Q2'는 화면 좌표(X2', Y2')와 수정된 텍스쳐 좌표(u2', v2')를 갖는다고 가정한다. 다음에 Q'의 수정된 텍스쳐 좌표(u', v')는 선형 보간에 의해:
(u', v')=(1-t)(u1', v1') + t(u2', v2')
여기서, t는
(x', y')=(1-t)(x1', y1') + t(x2', y2').
1/z로 (u', v')를 나누어 Q의 텍스쳐 좌표를 구한다. (여기서, z는 그 이미지가 Q'인 점 Q의 월드 좌표이다). 1/z는 선형 보간에 의해 결정된다.
일부 실시예에서, 1/z에 의한 나눗셈은 1/z의 역에 의한 곱셈으로서 구현된다. (즉, z에 의한 곱셈(이는 알려져 있을 수 있다.)). 1/z의 역을 결정하는 것을 신속하게 하기 위해, 일부 값의 역을 저장하는 참조표가 제공된다. 텍스쳐 좌표 회로를 보다 작고 값이 싸도록 하기 위해, 참조표는 작게 만들어진다. 따라서, 참조표는 상당히 적은 역값(일부 실시예에서 32 역값)을 수용한다. 정확도를 높이기 위해, 참조표에 수용되지 않은 역값은 선형 보간에 의해 결정된다.
일반 텍스쳐 좌표가 결정되면, 텍셀값이 이미지 품질을 향상시키기 위해 픽셀에인가된다.
이하, 첨부된 도면을 참조로 하여 본 발명의 바람직한 실시예를 상술하며, 도면 전체를 통하여 동일한 부분에는 동일한 도면부호를 사용하기로 한다.
도 1 및 도 2 는 화면 상의 물체 및 그 이미지를 도시하는 도면.
도 3 은 도 1 및 도 2 의 이미지에 대한 텍스쳐 좌표를 생성하는 회로의 블럭도.
도 4 는 도 3 의 회로의 일부에 대한 세부 블럭도.
도 5 는 도 4 의 회로 일부인 회로에 의한 비트 프로세싱을 도시하는 도면.
*도면의 주요 부분에 대한 부호의 설명*
110 : 컴퓨터 화면310, 320, 330, 340 : 회로
410, 450 : 참조표420 : 노멀라이즈 논리회로
430 : 베럴 쉬프터440, 460 : 곱셈기
454 : 감산기
도 1 및 도 2 는 컴퓨터 화면(110) 상의 물체를 디스플레이하는 도면이다. 뷰포인트는 0으로 도시되어 있다. 상기 물체는 보는 사람이 위치(120)에 있는 것으로 하여 디스플레이될 것이다. 화면(100) 상의 이미지는 투사의 중심이 뷰포인트 0 에 있는 화면(110) 상으로 물체의 사시 투사(또는 물체의 일부)도이다.
물체는 끝점 Q1, Q2를 갖는 직선 세그먼트를 포함한다. 상기 점 Q1는 화면(110)의 점 Q1'에 디스플레이될 것이다. 상기 점 Q2는 화면의 점 Q2'에 디스플레이될 것이다. 점 Q1, Q2를 교차하는 세그먼트는 점 Q1', Q2'를 교차하는 세그먼트로서 디스플레이될 것이다.
물체(120)는 텍스쳐로서 디스플레이될 것이다. 점 Q1, Q2는 각각 공지된 텍스쳐 좌표(u1, v1)와 (u2, v2)를 갖는다. 명확히, Q1' 과 Q2' 는 각각 Q1및, Q2동일한 텍스쳐 좌표를 갖는다. 세그먼트 Q1', Q2'에 있는 임의의 다른 점 Q'의 경우, 텍스쳐 좌표(u, v)는 이하 서술되는 바와 같이 결정된다.
월드 좌표 시스템은 뷰포인트 0에 원점을 갖는 데카르트 시스템 xyz이 되도록 선택된다. x 및 y 축은 화면(110)에 평행하다. z축은 화면에 수직이다. 화면(110)은 평면 z=1에 놓인다. 화면은 z축을 갖는 화면의 교점 0'에 원점을 갖는 데카르트 화면 좌표 시스템 x' y'를 갖는다. 물체(120) 상의 임의의 점 Q의 경우, 만일 점 Q가 월드 좌표(x, y, z)를 가지면, 이 때 점 Q의 이미지는 화면 좌표 x'=x/z. y'=y/z를 갖는다는 것을 알 수 있다.
점 Q1및 Q2의 월드 좌표는 각각 (x1, y1, z1)와 (x2, y2, z2)를 가리킨다. 이 때 점 Q1'는 화면 좌표(x1', y1')=(x1/z1, y1/z1)를 가지며 Q2'는 화면 좌표(x2', y2')=(x2/z2, y2/z2)를 갖는다.
이미지 Q1' Q2'에 있는 픽셀의 화면 좌표는 공지된 스캔 변화 기술을 이용하여 결정된다. 일부 변환 기술은 본 발명의 참조로 일체화 되어 있는 J. D. Foley 등에 의한 컴퓨터 그래픽스 : 원리와 실제(1996), pp. 72-81에 기술되어 있다. 픽셀 Q1'의 화면 좌표(x', y')가 주어지면 Q'의 텍스쳐 좌표(u, v)가 다음과 같이 도 3 의 회로에 의해 생성된다.
회로(310)는 화면 좌표(x', y', x1', y1', x2', y2')를 수신하고 다음 수학식 1 이 되도록 라인 파라메타 t를 생성한다 :
(x', y')=(1-t)(x1', y1') + t(x2', y2')
상기 수학식 1 은 다른 것들 중에서도 세그먼트 Q1', Q2'에 있는 픽셀이 직선 세그먼트의 이산 근사치이기 때문에 근사값일 수 있다. 일부 실시예에서, t는 다음 의사 코드에서와 같이 발생된다.
만일 x1'≠x2'이면, 이 때 t(x'-x1')/(x2'-x1')
그렇지 않으면 t=(y'-y1')/(y2'-y1').
회로(310)는 또한 신호 1-t를 생성한다.
회로(320)는 t, 1-t를 수신하고 또한 다음 신호를 수신한다 :
u1'=u1/z1,
v1'=v1/z1,
u2'=u2/z2,
u2'=v2/z2.
회로(320)는 다음과 같이 수정된 텍스쳐 좌표 u', v'를 생성한다 :
(u', v')=(1-t)(u1', v1') + t(u2', v2')
회로(330)는 신호 t, 1-t, 1/z1, 1/z2를 수신하고 다음과 같이 신호 w'를 생성한다 :
w' = (1-t) (1/z1) + (t(1/z2)
회로(340)는 u', v' 및 w'를 수신하고 수학식 4 를 이용하여 텍스쳐 좌표(u, v)를생성한다 :
u = u'/w',
v = v'/w'.
도 4 는 회로(340)의 세부 블럭도이다. w'에 의한 나눗셈을 가속시키기 위해, 회로(340)는 참조표(LUT)(410)를 이용하여 값 1/w'를 저장한다. 회로 비용과 면적을 줄이기 위해, LUT(410)는 상당히 작게 만들어진다. 일부 실시예에서, LUT(410)는 32 엔트리 1/wi만을 포함한다. 1/w를 보다 정확히 결정하기 위해, 회로(340)는 선형 보간을 수행함으로써, 적어도 LUT(410)의 작은 면적을 부분적으로 보상하게 된다.
LUT(410)은 선정된 간격으로, 예를 들어 간격 [0.5, 1]으로 w에 대한 1/w의 값만을 저장한다. 노멀라이즈 논리회로(Normalize logic)(420)는 신호 w'를 노멀라이즈하여 이하 서술되는 바와 같이 해당 간격에 값을 만든다.
LUT(410)는 32개의 19-비트 엔트리를 저장한다. LUT(310)에의 입력은 5-비트 정수 인덱스 i=0, 1, 2, ... 31 이다. 인덱스 i에 응답하여, LUT(410)는 19-비트 신호 1/wi를 만드는데, 여기서, wi는 간격 [0.5, 1]이다. 일부 실시예에서, 간격 [0.5, 1]은 32개의 동일한 부분으로 나누어지고, 값 wi은 이들 부분의 끝 점이다. 더 상세히 하면
wi= (32+i)/64
LUT(410)는 값 LUT(i) = 1/wi= 64/(32+i)를 저장한다. 이들 값의 각각은 19 비트에 고정소수점 형태로 표현된다. 이와 같이, 일부 실시예에서, LUT(410)는 정수값 LUT(i) = 64/(32+i)*(219-1)를 저장한다. 이들 값은 1/w'의 선형 보간에 보다 정확성을 부여한다. 본 실시예를 위한 LUT(410)는 이하의 부록 A에 하드웨어 기술 언어 Verilog(상표명)에 기술되어 있다. Verilog는 예를 들어 본 발명의 참조로 일체화되어 있는 D. E. Thomas, J. P. Moorby의 Verilog 하드웨어 기술 언어(1991)에 기술되어 있다. 부록 A는 조합 논리로서 구현된다.
노멀라이즈 논리회로(420)의 동작은 도 5 에 도시되어 있다. 값 w'는 고정소수점 형태로 24 비트로 표현된다. 이진 점은 최상위 비트 23 앞에 오는 것으로 가정한다. 노멀라이즈 논리회로(420)는 w'에 최상위 1의 위치를 결정한다. 노멀라이제이션 동작은 최상위 1이 최상위 비트 위치 23 로 들어가도록 w'의 좌 쉬프트이다. 노멀라이저(420)는 w'에 있는 최상위 제로의 숫자 k를 결정한다. 이 숫자 k는 회로(340)의 출력에서 디노멀라이제이션(denormalization)을 수행하기 위해 베럴 쉬프터(430)(도 4)에 공급된다. 도 5 에서, 최상위 1이 비트 위치 19 에 있기 때문에 k=4이다.
최상위 1가 다음에 오는 다섯개의 비트(도 5 의 예에서 비트 w'[18:14])는 LUT(410)에 제공된 인덱스 i를 형성한다. w'의 나머지 최하위 비트(도 5 의 예에서 비트 w'[13:0])는 선형 보간을 수행하기 위해 곱셈기(440)에 제공된 18-비트 신호 △의 최상위 비트를 형성한다. △의 나머지 k 비트는 0으로 설정되어 있다.
wn이 노멀라이즈된 w' 즉, wn는 k 비트만큼 좌로 쉬프트된 w'라고 한다. 따라서, wn는 [0.5, 1]에 있다. wn= wi+ △r이고, 여기서, i는 노멀라이즈 논리회로(420)에 의해 제공된 인덱스이고, wi는 상기 수학식 5에 의해 정의되며, △r= 0.000000△.
선형 보간을 이용하여, 다음을 구할 수 있다.
1/wn= 1/wi+ △r(1/wi- 1/wi+1) / (wi- 1/wi+1)
여기서, i=31일 때, wi+1= 1:
1/wn= 1/wi- △r/(wiwi+1)
LUT(450)는 각각의 i에 대해 값 1/(wiwi+1)를 저장한다. LUT(450)는 노멀라이즈 논리회로(420)으로부터 인덱스 i를 수신한다. 일부 실시예에서, LUT(450)는 조합 회로이다. LUT(450) 출력 1/(wiwi+1)는 곱셈기(440)에 제공된다. 곱셈기(440)는 또한 상술된 바와 같이 신호 △를 수신한다. 이 신호는 감산기(454)에 공급된다. 감산기(454)는 또한 LUT(410)로부터 19-비트 신호 1/wi를 수신한다. 감산기(454)는 수학식 7의 감산을 수행하고, 따라서 신호 1/wn를 생성한다. 이 신호는 곱셈기(460, 464)에 공급된다. 곱셈기(460)는 u'를 수신하고 u'*(1/wn)를 생성한다. 곱셈기(464)는 v'를 수신하고 v'*(1/wn)를 생성한다. 두 곱셈기의 출력은 베럴 쉬프터(430)에 접속된다. 쉬프터(430)는 k 비트 만큼 우로 u'*(1/wn) 및 v'*(1/wn)를 쉬프트하고, 따라서 각각의 텍스쳐 좌표 u, v를 생성한다.
일부 실시예에서, 텍스쳐 u, v는 텍셀 값에 대한 텍스쳐를 액세스하는데 사용된다. 일부 실시예에서, 텍스쳐 좌표 u, v는 가능하게 미리 필터된 텍스쳐인 MIP 맵을 결정하는데 사용된다. 다음에, 상기 텍셀 값은 MIP 맵에 의해 또는 인접하는 MIP 맵에 의해 제공된다. 본 발명의 참조로 일체화되어 있는 Sang-Gil Chio에 의한 미국특허출원 컴퓨터 그래픽스에서 텍스쳐 맵핑을 위한 세부 레벨(attorney docket no. M-4600 US, 1996년 11월 15일)을 참조한다.
부록 B는 회로(340)의 한 실시예를 시뮬레이트하는 프로그램용 소스 코드이다. 상기 프로그램은 프로그래밍 언어 C로 작성되어진다.
도 3 의 회로의 입력이 점 Q1', Q2'의 수정된 텍스쳐 좌표(u1', v1'), (u2', v')는 포함하지만 텍스쳐 좌표 그 자체는 포함하지 않기 때문에, 점 (Q1', Q2')의 텍스쳐 좌표는 알 필요가 없다. 예를 들어, 일부 실시예에서 Q1'는 세그먼트 Q3', Q4'에 있는 점이다. 점 Q3', Q4'는 공지된 텍스쳐 좌표를 갖는 장점이다. Q1'의 수정된 텍스쳐 좌표는 상기 수학식 2 의 선형 보간 기술을 이용하여 Q3', Q4'의 수정된 텍스쳐 좌표로부터 결정된다. 값 1/z는 수학식 3의 선형 보간 기술을 이용하여 점 Q3, Q4의 1/z 좌표로부터 결정된다.
본 발명을 특정의 바람직한 실시예에 관련하여 도시하고 설명하였지만, 본 발명이 그에 한정되는 것은 아니고 이하의 특허청구의 범위에 의해 마련되는 본 발명의 정신이나 분야를 이탈하지 않는 한도내에서 본 발명이 다양하게 개조 및 변화될 수 있다는 것을 당 업계에서 통상의 지식을 가진 자는 용이하게 알 수 있다.
내용 없음

Claims (13)

  1. 컴퓨터에 의해 디스플레이될 점 Q'의 텍스쳐 좌표(a texture coordinate) TC1을 구하는 방법에 있어서,
    TC1=TC1'/w'이 되도록 수정된 텍스쳐 좌표 TC1'와 값 w'을 표현하는 신호를 구하는 단계; 및
    선택된 값의 역을 저장하는 참조표를 구비하는 회로에 상기 값 w'을 표현하는 신호를 공급하는 단계;를 포함하며,
    상기 회로는 값 1/w를 생성하기 위해 상기 참조표로부터 역의 값(an inverse value)을 구하고 역의 보간을 이용하며, 상기 회로는 상기 수정된 텍스쳐 좌표 TC1'를 1/w로 곱하고 상기 텍스쳐 좌표 TC1을 구하는 것을 특징으로 하는 텍스쳐 좌표를 구하는 방법.
  2. 제 1 항에 있어서,
    상기 참조표는 선정된 간격으로 일부 값 wi에 대한 역 1/wi을 저장하며;
    상기 회로는 wi가 w'*F(여기서, F는 w'*F가 선정된 간격으로 있게 하는 인수임)에 근사하도록 상기 참조표에 대한 인덱스 i를 생성하고, 상기 회로는 상기 인덱스 i를 상기 참조표를 공급하며,
    상기 회로는 선형 보간을 이용하여 상기 참조표의 출력으로부터 상기 값 1/w(여기서, w=w'*F)을 생성하며,
    상기 회로는 TC1'과 1/w를 이용하여 텍스쳐 좌표 TC1인 신호 TC1'*(1/w)/F를 생성하는 것을 특징으로 하는 텍스쳐 좌표를 구하는 방법.
  3. 제 2 항에 있어서,
    일부 비-음의 정수(non-negative integer) k에 대해 F=2k이고;
    상기 신호 TC1'*(1/w)/F를 생성하기 위해, 상기 회로는 k비트 만큼 곱 TC1'*(1/w)를 쉬프트하는 것을 특징으로 하는 텍스쳐 좌표를 구하는 방법.
  4. 제 1 항에 있어서,
    상기 점 Q'는 세그먼트 Q1Q2의 이미지인 세그먼트 Q1'Q2'에 있고, Q1'은 월드 좌표(world coordinates) (x1, y1, z1)를 갖는 점 Q1의 이미지이고, Q2'은 월드 좌표(x2, y2, z2)를 갖는 점 Q2의 이미지이며, 상기 점 Q1'는 화면 좌표(screen coordinates) (x1/z1, y1/z1)를 가지며, 상기 점 Q2'는 화면 좌표(x2/z2, y2/z2)를 가지며;
    w' = (1-t) / z1+ t/z2( 여기서, t는 점 Q'이 화면 좌표 (1-t)*(x1/z1, y1/z1)+t(x2/z2, y2/z2)가 되게 하는 것임);
    TC1은 점 Q'의 u좌표 또는 v좌표중 어느 하나이고;
    TC1'는 (1-t)u1/z1+tu2/z2또는 (1-t)v1/z1+tv2/z2중 어느 하나(여기서, (u1, v1)는 점 Q1'의 텍스쳐 좌표이고, (u2, v2)는 점 Q2'의 텍스쳐 좌표임)인 것을 특징으로 하는 텍스쳐 좌표를 구하는 방법.
  5. 제 4 항에 있어서,
    상기 회로는 점 Q1', Q2', Q'의 화면 좌표로부터 값 t를 생성하고;
    상기 회로는 t, u1/z1, u2/z2, v1/z1, v2/z2로부터 상기 값 (1-t)u1/z1+tu2/z2와 (1-t)v1/z1+tv2/z2를 생성하고;
    상기 회로는 t, 1/z1및 1/z2로부터 w'를 생성하고;
    상기 회로는 텍스쳐 좌표 TC1=u와 TC1=v를 생성하고;
    상기 텍스쳐 좌표(u, v)를 이용하여 텍셀 값(texel value)을 구하며, 상기 텍셀 값을 이용하여 상기 점 Q'를 디스플레이하는 것을 특징으로 하는 텍스쳐 좌표를 구하는 방법.
  6. 컴퓨터에 의해 디스플레이될 점 Q'의 텍스쳐 좌표(a texture coordinate) TC1을 구하기 위한 시스템에 있어서,
    TC1=TC1'/w'이 되도록 수정된 텍스쳐 좌표 TC1'와 값 w'을 표현하는 신호를 수신하는 단자(terminal) ; 및
    선택된 값의 역을 저장하는 참조표를 구비하며 상기 참조표로부터 역의 값을 구하며 보간을 이용하여 역의 값 1/w를 생성하고 상기 값 w'을 표현하는 신호를 수신하기 위해, 그리고 상기 수정된 텍스쳐 좌표 TC1'를 1/w로 곱하고 상기 텍스쳐 좌표 TC1을 구하기 위한, 상기 단자에 접속된 회로;를 구비하는 것을 특징으로 하는 텍스쳐 좌표를 구하기 위한 시스템.
  7. 제 6 항에 있어서,
    상기 참조표는 선정된 간격으로 일부 값 wi에 대한 역 1/wi을 저장하며;
    상기 회로는 wi이 w'*F(여기서, F는 w'*F가 선정된 간격에 있게 하는 인수임)에 근사하도록 상기 참조표에 대한 인덱스 i를 생성하는 회로를 구비하고;
    상기 회로는 선형 보간을 이용하여 상기 참조표의 출력으로부터 상기 값 1/w(여기서, w=w'*F)을 생성하며, 상기 회로는 TC1'과 1/w를 이용하여 텍스쳐 좌표 TC1인 신호 TC1'*(1/w)/F를 생성하는 것을 특징으로 하는 텍스쳐 좌표를 구하기 위한 시스템.
  8. 제 7 항에 있어서,
    일부 비-음의 정수(non-negative integer) k에 대해 F=2k이고;
    상기 회로는 상기 신호 TC1'*(1/w)/F를 생성하기 위해 k비트 만큼 곱 TC1'*(1/w)를 쉬프트하기 위한 쉬프터를 구비하는 것을 특징으로 하는 텍스쳐 좌표를 구하기 위한 시스템.
  9. 제 6 항에 있어서,
    상기 점 Q'는 세그먼트 Q1Q2의 이미지인 세그먼트 Q1'Q2'에 있고, Q1'은 월드 좌표(world coordinates) (x1, y1, z1)를 갖는 점 Q1의 이미지이고, Q2'은 월드 좌표(x2, y2, z2)를 갖는 점 Q2의 이미지이며, 상기 점 Q1'는 화면 좌표(screen coordinates) (x1/z1, y1/z1)를 가지며, 상기 점 Q2'는 화면 좌표(x2/z2, y2/z2)를 가지며;
    w' = (1-t) / z1+ t/z2( 여기서, t는 점 Q'이 화면 좌표 (1-t)*(x1/z1, y1/z1)+t(x2/z2, y2/z2)가 되게 하는 것임);
    TC1은 점 Q'의 u좌표 또는 v좌표중 어느 하나이고;
    TC1'는 (1-t)u1/z1+tu2/z2또는 (1-t)v1/z1+tv2/z2중 어느 하나(여기서, (u1, v1)는 점 Q1'의 텍스쳐 좌표이고, (u2, v2)는 점 Q2'의 텍스쳐 좌표임)인 것을 특징으로 하는 텍스쳐 좌표를 구하는 위한 시스템.
  10. 상기 회로는,
    상기 점 Q1', Q2', Q'의 화면 좌표로부터 상기 값 t를 생성하기 위한 회로; t, u1/z1, u2/z2, v1/z1, v2/z2로부터 상기 값 (1-t)u1/z1+tu2/z2와 (1-t)v1/z1+tv2/z2를 생성하기 위한 회로;
    t, 1/z1및 1/z2로부터 w'를 생성하기 위한 회로;
    텍스쳐 좌표 TC1=u와 TC1=v를 생성하기 위한 회로; 및
    상기 텍스쳐 좌표(u, v)를 이용하여 텍셀 값(texel value)을 구하며, 상기 텍셀 값을 이용하여 상기 점 Q'를 디스플레이하기 위한 회로를 더 구비하는 것을 특징으로 하는 텍스쳐 좌표를 구하기 위한 시스템.
  11. 컴퓨터에 의해 디스플레이될 점 Q'의 텍스쳐 좌표(a texture coordinate) TC1(여기서, TC1=TC1'/w'이고, TC1은 수정된 텍스쳐 좌표임)을 구하기 위한 시스템에 있어서,
    선정된 간격으로 있는 선택된 값 wi의 역의 값 1/wi을 저장하기 위한 제 1 참조표;
    신호 1/w (여기서, w는 선정된 간격으로 있고, 일부 인수 F에 대해 w=w'*F임)를 구하기 위해 신호 w'을 수신하고, 상기 제 1 참조표에 대한 인덱스 i를 생성하기 위한 노멀라이저(normalizer);
    TC1=TC1'/w'이 되도록 수정된 텍스쳐 좌표 TC1'와 값 w'을 표현하는 신호를 수신하는 단자(terminal) ; 및
    상기 참조표로부터 신호 1/wi를 수신하고, 보간을 수행하며, 상기 신호 1/w를 생성하기 위한 보간 회로; 및
    TC1'와 1/w로부터 상기 텍스쳐 좌표 TC1을 생성하기 위한 결과 생성 회로;를 구비하는 것을 특징으로 하는 텍스쳐 좌표를 구하기 위한 시스템.
  12. 제 11 항에 있어서,
    상기 보간 회로는,
    값 1/(wiwi+1)을 저장하고, 인덱스 i에 응답하여 이들 값들 중의 하나를 공급하기 위한 제 2 참조표;
    상기 값 1/(wiwi+1)을 수신하고, 값 (w-wi)을 나타내는 신호를 상기 노멀라이저로부터 수신하여, 곱 (w-wi)*[1/((wiwi+1)]를 나타내는 신호를 생성하기 위한 곱셈기; 및
    상기 제 1 참조표의 출력 1/wi으로부터 상기 곱셈기 출력을 감산하여 상기 신호 1/w를 생성하기 위한 감산기;를 구비하는 것을 특징으로 하는 텍스쳐 좌표를 구하기 위한 시스템.
  13. 제 11 항에 있어서,
    상기 결과 생성 회로는,
    곱 TC1'*(1/w)를 생성하기 위한 곱셈기; 및
    상기 곱셈기 출력을 k비트 만큼(여기서, k=log2F) 쉬프트하기 위한 쉬프터를 구비하는 것을 특징으로 하는 텍스쳐 좌표를 구하기 위한 시스템.
KR1019970022727A 1996-11-15 1997-06-02 컴퓨터 그래픽에서 텍스쳐 좌표를 결정하는 방법 및 장치 KR100260040B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/751,187 US5900882A (en) 1996-11-15 1996-11-15 Determining texture coordinates in computer graphics
US8/751,187 1996-11-15

Publications (2)

Publication Number Publication Date
KR19980041754A true KR19980041754A (ko) 1998-08-17
KR100260040B1 KR100260040B1 (ko) 2000-07-01

Family

ID=25020877

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970022727A KR100260040B1 (ko) 1996-11-15 1997-06-02 컴퓨터 그래픽에서 텍스쳐 좌표를 결정하는 방법 및 장치

Country Status (2)

Country Link
US (1) US5900882A (ko)
KR (1) KR100260040B1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3885262B2 (ja) * 1996-12-17 2007-02-21 株式会社セガ テクスチャマップ上の複数画素を混合する方法及び、これを用いた複数画素混合回路と画像処理装置
US6040837A (en) * 1998-04-22 2000-03-21 Ati Technologies, Inc. Method and apparatus for space variable texture filtering
US6275235B1 (en) * 1998-12-21 2001-08-14 Silicon Graphics, Inc. High precision texture wrapping method and device
KR100505134B1 (ko) * 2003-06-10 2005-08-02 한국과학기술원 3차원 컴퓨터 그래픽 시스템의 제산유니트
JP5479086B2 (ja) 2006-03-16 2014-04-23 トリス・フアルマ・インコーポレーテツド 薬剤−イオン交換樹脂複合体を含有する放出調節製剤

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3748447A (en) * 1971-11-18 1973-07-24 Sperry Rand Corp Apparatus for performing a linear interpolation algorithm
US4779218A (en) * 1985-09-04 1988-10-18 Jauch Jeremy P Complex arithmetic unit
JPS62206238A (ja) * 1986-03-05 1987-09-10 Nippon Denso Co Ltd 燃料噴射ポンプのパイロツト噴射装置
JPH02156328A (ja) * 1988-12-08 1990-06-15 Toshiba Corp 逆数回路
US5594846A (en) * 1994-12-19 1997-01-14 Sun Microsystems, Inc. Perspective correction of texture in graphics by adaptive approximation
US5704024A (en) * 1995-07-20 1997-12-30 Silicon Graphics, Inc. Method and an apparatus for generating reflection vectors which can be unnormalized and for using these reflection vectors to index locations on an environment map

Also Published As

Publication number Publication date
KR100260040B1 (ko) 2000-07-01
US5900882A (en) 1999-05-04

Similar Documents

Publication Publication Date Title
US6181352B1 (en) Graphics pipeline selectively providing multiple pixels or multiple textures
US4808988A (en) Digital vector generator for a graphic display system
US5808619A (en) Real-time rendering method of selectively performing bump mapping and phong shading processes and apparatus therefor
US5856829A (en) Inverse Z-buffer and video display system having list-based control mechanism for time-deferred instructing of 3D rendering engine that also responds to supervisory immediate commands
US5357599A (en) Method and apparatus for rendering polygons
EP0622747B1 (en) Method and apparatus for an adaptive texture mapping controller
JP2923648B2 (ja) 物体の色特性を発生する方法と装置
JP3107452B2 (ja) テクスチャマッピング方法およびその装置
US6275235B1 (en) High precision texture wrapping method and device
EP0817132A2 (en) System and method for modification of the visual characteristics of digital 3D objects
US6437781B1 (en) Computer graphics system having per pixel fog blending
US6052127A (en) Circuit for determining non-homogenous second order perspective texture mapping coordinates using linear interpolation
US5029225A (en) Texture mapping apparatus
WO1998029836A9 (en) Circuit for determining non-homogenous second order perspective texture mapping coordinates using linear interpolation
KR100241060B1 (ko) 컴퓨터 그래픽스에서 텍스쳐 맵핑을 위한 상세 레벨의 결정 방법 및 회로
US5841442A (en) Method for computing parameters used in a non-homogeneous second order perspective texture mapping process using interpolation
US5835097A (en) Non-homogenous second order perspective texture mapping using linear interpolation parameters
EP0248626A2 (en) Video signal processing
KR19980041754A (ko) 컴퓨터 그래픽에서 텍스쳐 좌표를 결정하는 방법 및 장치
KR100613747B1 (ko) 화상 처리장치 및 그 방법
US6373494B1 (en) Signal processing apparatus and image processing apparatus
EP0974935B1 (en) Spotlight characteristic forming method and image processor using the same
JP2763481B2 (ja) 画像合成装置及び画像合成方法
US6518969B2 (en) Three dimensional graphics drawing apparatus for drawing polygons by adding an offset value to vertex data and method thereof
EP0425573B1 (en) Texture mapping for computer graphics display controller system

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
FPAY Annual fee payment
EXPY Expiration of term