FI108679B - A 3D graphics arrangement - Google Patents
A 3D graphics arrangement Download PDFInfo
- Publication number
- FI108679B FI108679B FI973682A FI973682A FI108679B FI 108679 B FI108679 B FI 108679B FI 973682 A FI973682 A FI 973682A FI 973682 A FI973682 A FI 973682A FI 108679 B FI108679 B FI 108679B
- Authority
- FI
- Finland
- Prior art keywords
- map
- elevation
- elevation map
- value
- polygons
- Prior art date
Links
Landscapes
- Image Generation (AREA)
Description
3D-grafiikkalaite ^ U b 6 7 93D Graphics Device ^ U b 6 7 9
Nyt esillä oleva keksintö koskee patenttivaatimuksen 1 johdanto-osan 5 mukaista laitetta kolmiulotteisen grafiikan esittämiseksi.The present invention relates to an apparatus for displaying three-dimensional graphics according to the preamble of claim 1.
Integroituina piireinä toteutettavien tietojenkäsittely-yksiköiden yhtenä yhä tärkeämpänä sovellusalueena on kolmiulotteisen grafiikan esittäminen. Kolmiulotteisen grafiikan esitysprosessi koostuu tyypillisesti 10 useista toimenpiteistä. Esitysprosessi alkaa korkeatasoisesta sovellus-tiedosta, joka kuvaa esitettävää kuvauspaikkaa esineiden joukkona. Nämä esineet muunnetaan sitten kuvantamisjärjestelmää varten sopivaan avaruuskoordinaatistoon, ja niille lasketaan eri määreitä vastaavat arvot. Tämän jälkeen esineiden muunnostiedot muunnetaan rasteroin-15 niksi nimitetyssä prosessissa sarjaksi lukuarvoja, jotka vastaavat esineen näytöllä olevan kuvan kutakin kuva-alkiota.One of the increasingly important applications of data processing units implemented as integrated circuits is the representation of three-dimensional graphics. The process of rendering 3D graphics typically consists of 10 steps. The presentation process starts with a high level of application data that describes the scene to be displayed as a set of objects. These objects are then converted into a space coordinate system suitable for the imaging system, and values corresponding to different attributes are calculated for them. The object conversion data is then converted into a process called a raster-15 into a series of numeric values corresponding to each pixel in the image on the object display.
i | Tyypillisissä toteutusmuodoissa esinettä kuvaa joukko monikulmioita, esimerkiksi kolmioita. Monikulmion kunkin kärjen (huippupisteen) arvo 20 kuva-alkion parametreinä määräytyy esineen ja ympäristön ominaisuuksien perusteella. Näin ollen kullekin monikulmion alueella olevalle kuva-alkiolle muodostetaan kuva-alkion parametrit joko lineaarisen interpoloinnin avulla tai sopivimmin käyttäen perspektiivinkorjausinter-polointia.i | In typical embodiments, the object is represented by a plurality of polygons, for example, triangles. The value of each vertex (vertex) of a polygon as parameters of 20 pixels is determined by the properties of the object and the environment. Thus, for each pixel in the area of the polygon, the pixel parameters are formed either by linear interpolation or, preferably, by using perspective correction interpolation.
: 25: 25
Kunkin kuva-alkion lukuarvot voivat edustaa kunkin kuva-alkion väri-arvoja, kuva-alkion X- ja Y-koordinaatteja, kuva-alkion syvyyttä näytöllä kuvaavaa Z-arvoa, ja yhtä tai useampaa pintakartta- (pintarakenne-) koordinaattisarjaa.The numerical values of each pixel may represent the color values of each pixel, the X and Y coordinates of the pixel, the Z value representing the depth of the pixel on the screen, and one or more sets of surface map (surface structure) coordinates.
3030
Kuvantamisprosessin viimeisessä vaiheessa tämä tietovirta kootaan yhteen ja yhdistetään olemassaolevaan grafiikkatietoon lopullisten : : kuva-alkioarvojen luomiseksi. Yksittäisen kuva-alkion kokoonpano- v : prosessi on yleensä riippuvainen useista parametreista sekä myös nii- 35 den kuva-alkioiden tiedoista, jotka on tuotettu aiemmin näytölle.In the final step of the imaging process, this data stream is aggregated and combined with existing graphics data to create final:: pixel values. The configuration of a single pixel: the process generally depends on a number of parameters as well as the information of those pixels that have been previously generated on the screen.
On olemassa menetelmiä, kuten pintarakennekartoitus, joiden avulla kuvan todenmukaisuutta voidaan parantaa tunnetun tekniikan tason 2 108579 mukaisissa kolmiulotteisissa grafiikkajärjestelmissä. Ympäristön kartoitus on menetelmä, jonka avulla voidaan mallintaa ympäristön valonlähteiden vaikutusta hajottavalla pinnalla ja heijastuspinnan ympäristöä yleensä. Se perustuu siihen, että luodaan kuvattavan kohteen ympäris-5 töä edustava pintarakennekartta. Tämä pintarakennekartta voidaan luoda esimerkiksi muodostamalla pallonmuotoinen projektio ympäristöstä, kuten kuvauspaikan muista esineistä ja valonlähteistä.There are methods, such as surface texture mapping, that can improve the accuracy of the image in prior art three-dimensional graphics systems according to prior art 2 108579. Environmental mapping is a method of modeling the effect of ambient light sources on the scattering surface and the environment of the reflecting surface in general. It is based on the creation of a map of the surface structure of the object being photographed. This texture map can be created, for example, by creating a spherical projection of the environment, such as other objects in the scene and light sources.
Päinvastoin kuin tyypillinen pintarakennekartta, tämä kartta ei ole kiin-10 teä esineen pinnan suhteen. Sen sijaan pintarakennekartan pisteen koordinaatit, jotka vastaavat kuvattavan kohteen pinnalla olevaa pistettä, määräytyvät dynaamisesti. Tämä koordinaattimuunnos perustuu tyypillisesti pinnan normaalivektoreihin. Esimerkiksi käytettäessä ympäristön palloprojektiokarttaa ja pinnan hajavalaistusmallia on pinnan 15 kunkin pisteen ympäristökartan oikea koordinaatti suoraan pinnan nor-maalivektori tässä pisteessä, jos normaalivektori esitetään käyttäen j pallokoordinaatistoa. Kokonaan heijastavan pinnan oikea koordinaatti- | vektori saadaan peilaamalla vektori, joka vastaa katsojan suuntaa pin nan pisteestä, pinnan normaalivektoriin.Unlike a typical surface texture map, this map is not fixed to the object surface. Instead, the coordinates of the point on the surface map corresponding to the point on the surface of the object to be imaged are dynamically determined. This coordinate transformation is typically based on normal surface vectors. For example, when using an ambient sphere projection map and a surface diffused illumination model, the correct coordinate of the environmental map of each point on the surface 15 is directly at this point on the surface if the normal vector is represented using j sphere coordinates. Correct coordinate of the fully reflecting surface. | the vector is obtained by mirroring the vector corresponding to the viewer's direction from the surface point to the normal surface vector.
2020
Koordinaattimuunnos toteutetaan tyypillisesti edellä esitetyllä tavalla pätevästi vain määrittämällä ympäristön oikeat karttakoordinaatit pinnan muodostavien monikulmioiden kullekin kärjelle ja käyttämällä näiden koordinaattien välillä lineaarista tai perspektiivinkorjausinterpolointia.Typically, the coordinate transformation is performed as described above by validly determining the correct map coordinates of the environment at each vertex of the surface forming polygons and using linear or perspective correction interpolation between these coordinates.
! ·.: 25 Y; Kuten edellä on esitetty, ympäristön koordinaattimuunnosprosessi so veltuu tasaisten pintojen kuvantamiseen. Todenmukaisten kuvaus-v. paikkojen esittämiseksi käytetään tekniikkaa, jota kutsutaan kohouma- kartoitukseksi.! ·: 25 Y; As discussed above, the environmental coordinate transformation process is applicable to imaging flat surfaces. Truthful description-v. The technique used to represent locations is called elevation mapping.
:·. 30·. 30
Kohoumakartoituksessa pintaan liitetään lisäksi sopivimmin kaksiulotteinen pinnanmuodostuskartta. Tämä ns. kohoumakartta sisältää tietoa : siitä, kuinka ympäristön karttakoordinaatisto vastaa pintaa, jossa on erilaisia pinnan normaalivektoreita pinnan eri kohdilla, jolloin syntyy vai-35 kutelma karheasta pinnasta. Kohoumakartoituksen periaatetta on ku-'.···. vattu esimerkiksi Addison-Wesley -kustantamon julkaisussa "Fundamentals of three-dimensional Computer Graphics", jonka on kir-:: joittanut Alan Watt, 1989.In addition, for elevation mapping, a two-dimensional mapping map is preferably attached to the surface. This so-called. the elevation map contains information about how the map coordinate system of the environment corresponds to a surface with different surface normal vectors at different points on the surface, resulting in a rough-35 texture of the rough surface. The principle of mapping is ku - '. ···. See, for example, Addison-Wesley, "Fundamentals of Three-Dimensional Computer Graphics," by Alan Watt, 1989.
3 1086793, 108679
Tyypillisessä toteutuksessa on myös määriteltävä jotenkin kohouma-kartan orientaatio. Tähän on syynä se, että jos tarkastellaan pintaa, joka on periaatteessa tasainen, mutta siinä on kohoumia, ja jos pintaa 5 käännetään käyttäen sen normaalivektoria kääntöakselina, kohoumien visuaalinen vaikutelma muuttuu pintaa käännettäessä. Tätä ei voida saada aikaan kuvantamisprosessissa määrittelemättä kohoumakartan suuntaa. Tämä saadaan aikaan käyttämällä epätasaisuuden lähtökohtana paikallisiin pinnan derivaattoihin perustuvaa koordinaatistoa.In a typical implementation, the orientation of the elevation map must also be defined. The reason for this is that if one looks at a surface that is substantially flat but has elevations, and if the surface 5 is rotated using its normal vector as an axis of rotation, the visual impression of the elevations changes as the surface is rotated. This cannot be achieved in the imaging process without specifying the direction of the elevation map. This is achieved by using a coordinate system based on local surface derivatives as a starting point for the unevenness.
1010
Tyypillisessä kuvauspaikassa esimerkiksi esineen vasen ja oikea kulma heijastavat ympäristöä lähes vastakkaisista suunnista. Tämä saa aikaan sen, että esine peittää suuren alan ympäristön koko kartasta. Tästä syystä kohoumakartan orientaatiot esineen eri alueilla voivat 15 myös olla hyvin erilaiset.In a typical shooting location, for example, the left and right corners of an object reflect the environment from almost opposite directions. This causes the object to cover a large area around the map. Therefore, the orientations of the elevation map in different areas of the object may also be very different.
On mahdollista määritellä kunkin pinnan muodostavan monikulmion | yksittäinen suunta. Tämä voi johtaa suhteellisen yksinkertaiseen toteu tukseen, ja sitä on käytetty joissakin tunnetun tekniikan tason mukai-20 sissa graafisissa järjestelmissä, mutta se johtaa myös kiusallisiin kuva-virheisiin alueilla, joissa (vierekkäiset) eri monikulmiot koskettavat kohteen pintoja, jotka ovat kohoumakartassa erisuuntaisia.It is possible to define the polygon | single direction. This can lead to a relatively simple implementation and has been used in some prior art graphic systems, but it also results in annoying image errors in areas where (adjacent) different polygons touch the surfaces of the object that are different in the elevation map.
Kohoumakartoitusprosessi toteutetaan yleensä esilaskemalla haku-25 taulukosta, joka on sopivimmin tallennettu luku/kirjoitusmuistiin (RAM, : Random Access Memory).The elevation mapping process is generally accomplished by pre-fetching a look-25 from a table, preferably stored in Random Access Memory (RAM).
’ Eurooppalaisessa patenttihakemuksessa EP-764 921 on kuvattu tieto- konegrafiikkapiiriä valon heijastaman varjokuvan esittämiseksi. Kohou-,. 30 manormaali määritellään kaksiulotteisella mallilla ja tallennetaan muis tivälineisiin. Se kartoitetaan satunnaissuuntaiselle pinnalle. Kohouma-kartoitus kääntää pinnan normaalia (kulmaa) kohoumanormaalin suh-: : teen. Monikulmiota täydennetään interpoloimalla käyttämällä hyväksi : koordinaatistoa, pinnan karttaosoitetta, pinnan kulmaa ja valonlähteen ;v; 35 kulmaa (usean valonlähteen järjestelmässä). Kohoumamalli muodoste-,··. taan kaksiulotteisten u-, v-koordinaattien avulla, joiden toiminnallinen ’ ·’ muuttuja määritetään u- ja v-koordinaattien kanssa kohtisuoran akselin vaakasuoran ja pystysuoran kulman, Bh ja Bv avulla. Tämä malli tai- j 4 108679 lennetään luku/kirjoitusmuistiin. Tällä piirillä on kuitenkin vielä se edellämainittu haitta, että vierekkäisten monikulmioiden tapauksessa ko-houmakartan normaalit voivat olla merkittävästi erisuuntaisia erityisesti kaarevissa pinnoissa, mikä johtaa tällaisilla alueilla kiusallisiin kuva-5 virheisiin.European Patent Application EP-764 921 describes a computer graphics circuit for displaying a light reflected shadow. Protrusion ,. The 30 manuals are defined by a two-dimensional model and stored in storage media. It is mapped to a random surface. The bump mapping rotates the surface normal (angle) to the bump normal. The polygon is complemented by interpolation using: coordinate system, surface map address, surface angle, and light source; 35 angles (multi-light system). Bump model, ··. is determined by two-dimensional u, v coordinates whose functional variable '·' is defined by the horizontal and vertical angles of the axis perpendicular to the u and v coordinates, Bh and Bv. This model or 4 108679 is flown to read / write memory. However, this circuit still has the aforementioned disadvantage that, in the case of adjacent polygons, the deflection map normals can be significantly misaligned, especially on curved surfaces, resulting in annoying image-5 errors in such areas.
Tämän keksinnön tarkoituksena on poistaa edellä mainitut epäkohdat mitä suurimmassa määrin ja saada aikaan tehokkaampi menetelmä ja laite kolmiulotteista kuvantamisprosessia varten. Keksintö perustuu sii-10 hen ajatukseen, että kohoumakartan normaalivektoreita interpoloidaan. Keksinnön mukaiselle menetelmälle on tunnusomaista se, mitä on esitetty oheisen patenttivaatimuksen 1 tunnusmerkkiosassa.The object of the present invention is to eliminate the above drawbacks to the greatest extent and to provide a more efficient method and apparatus for the three-dimensional imaging process. The invention is based on the idea that the normal elevation map vectors are interpolated. The process according to the invention is characterized by what is set forth in the characterizing part of the appended claim 1.
Keksinnöllä saadaan merkittäviä etuja. Kuvantamisprosessi suoritetaan 15 merkittävästi nopeammin kuin käyttäen tunnetun tekniikan tason mukaisia menetelmiä. Kuvantamistulos on myös todenmukaisempi ja sisäl-j tää vähemmän kuvavirheitä kuin tekniikan tason mukaisissa järjestel missä. Yhtenä tämän keksinnön etuna on lisäksi se, että kun kohou-makartoitusta ei käytetä joissakin kohteissa, kohoumakartan inter-20 polointilaitetta voidaan käyttää muihin tarkoituksiin, kuten esineiden lä-pinäkyvyyskertoimien muodostamiseen.The invention provides significant advantages. The imaging process is performed significantly faster than using methods known in the art. The imaging result is also more realistic and contains fewer image errors than prior art systems. It is a further advantage of the present invention that when the embossing mapping is not used in some applications, the embossing map interpolator may be used for other purposes such as generating object transparency coefficients.
Keksintöä selostetaan seuraavassa lähemmin viittaamalla oheisiin piirustuksiin, joissa 25 kuva 1 on pelkistetty lohkokaavio, joka esittää nyt esillä olevan keksinnön mukaisen grafiikkalaitteen erästä edullista suoritusmuotoa, ja I * 9 30 kuva 2 on pelkistetty lohkokaavio, joka esittää interpolointiyksikön edullista suoritusmuotoa.The invention will now be described in more detail with reference to the accompanying drawings, in which Fig. 1 is a reduced block diagram showing a preferred embodiment of a graphics device according to the present invention, and Fig. 2 is a simplified block diagram showing a preferred embodiment of an interpolation unit.
1 : Seuraavassa selostetaan keksinnön erään edullisen suoritusmuodon : mukaista menetelmää. Kohteet on määritelty monikulmioiksi, sopivim- : ··: 35 min kolmioiksi, ja kohoumakartan tietoja tallennetaan sopivimmin napa-.···. koordinaatistomuotoon luku/kirjoitusmuistiin 6 (kuval). Aluksi kustakin ’ ·’ monikulmiosta määritetään monikulmion kunkin kärjen kohoumakartan suunta BD. Kohoumakartan suunta määritetään sopivimmin napa- 5 108579 kulmamuotoon. Tämän keksinnön mukaisesti kohoumakartan suunnat kärjen kohdalla lasketaan käyttämällä sopivimmin kohteen kaikkien ko. pisteessä suppenevien monikulmioiden suuntatietoja. Tämä tarkoittaa, että kullakin suppenevalla monikulmiolla on edullisesti sama suuntatieto 5 tässä huippukohdassa. Tämän jälkeen kun monikulmiot rasteroidaan, muodostetaan kyseisen kuva-alkion interpoloitu suunta-arvo BDI käyttäen samanlaista interpolointitekniikkaa kuin käytetään kunkin kuva-alkion pintarakenteen koordinaattiarvojen muodostamiseen. Kohouma-kartan koordinaattiarvot Bx, By interpoloidaan pintarakenteen koordi-10 naattiosoitteen Taddr saamiseksi kyseiselle kuva-alkiolle.1: The following describes a method according to a preferred embodiment of the invention. Items are defined as polygons, preferably: ··: 35 min triangles, and elevation map data is preferably stored in polar · ···. coordinate format to read / write memory 6 (picture). Initially, for each polygon '·', the direction BD of the elevation map for each vertex of the polygon is determined. Preferably, the direction of the elevation map is determined by the polar angle 108579. In accordance with the present invention, the directions of the elevation map at the tip are calculated using preferably all of the points of interest of the object. direction information about converging polygons at a point. This means that each converging polygon preferably has the same directional information 5 at this peak. Thereafter, when polygons are rasterized, the interpolated orientation value BDI of that pixel is formed using an interpolation technique similar to that used to construct the coordinate values of the surface structure of each pixel. Coordinate values Bx, By of the elevation map are interpolated to obtain the coordinate of the surface structure, Taddr, for that pixel.
Pintarakenteen koordinaattiosoitteen Taddr avulla noudetaan kohteen kohoumakarttatiedot muistista 6. Näin saatu kohoumakarttatieto, joka käsittää suuruustiedon BM ja suuntatiedon BD, yhdistetään interpoloi-15 tuun suunta-arvoon (kulma-arvoon) BDI ja mahdollisesti vakiokulma-arvoon C laskemalla yhteen kulma-arvot BD, BDI, C. Tunnetun tekniikan mukaisissa järjestelmissä kohoumakartan suunta on esitetty kohtisuorina koordinaattiarvoina, eikä laitteistopohjaisissa järjestelmissä ole käytetty interpolointitekniikkaa.The surface structure coordinate address Taddr is used to retrieve object elevation map data from memory 6. The resulting elevation map data, comprising magnitude BM and direction BD, is combined with the interpolated 15 directional angle (angular value) BDI and optionally a constant angle value BD by summing the angular values BD , C. In prior art systems, the direction of the elevation map is represented as perpendicular coordinate values, and in hardware based systems, no interpolation technique is used.
2020
Joissakin tilanteissa saattaa olla tarpeetonta käyttää interpoloitua suunta-arvoa BDI, jolloin sen sijaan voidaan käyttää vakioarvoa C.In some situations, it may not be necessary to use the interpolated reference value BDI, which may instead use a constant value C.
Seuraavassa vaiheessa näin saatu kohoumakartta-arvo muunnetaan 25 ensin napakoordinaateista suorakulmaiseen koordinaatistoon, ja tämän jälkeen näitä muunnettuja koordinaattiarvoja Dx, Dy käytetään pintarakenteen osoitteen muuntamiseen. Muunnettua pintarakenteen osoi-. tetta MTaddr käytetään lopuksi ympäristön kartta-arvojen (pintarakennetietojen) noutamiseen, jotka on myös tallennettu sopi-. 30 vimmin luku/kirjoitusmuistiin.In the next step, the elevation map value thus obtained is first converted from polar coordinates to a rectangular coordinate system, and then these converted coordinate values Dx, Dy are used to transform the address of the surface structure. The modified surface structure showed. Finally, MTaddr is used to retrieve environmental map values (texture data), which are also stored in the appropriate map. 30 most read / write memory.
Tällaisissa sovelluksissa, joissa käytetään pallomaisia ympäristön ‘ : karttoja, keksinnön mukaisessa menetelmässä voidaan käyttää myös x-koordinaatin skaalausta jakamalla se funktiolla sin(—(l-\y\)), jossaIn such applications, using spherical maps of the environment ': the method of the invention may also employ x-coordinate scaling by dividing it by the function sin (- (l- \ y \)),
| · I| · I
35 oletetaan, että y = ±1 pallon navoissa. Tämä skaalaus tasoittaa sitä ' * · ·" seikkaa, että pallon pinnalla pohjois—etelä-akselin ympäri kulkevien ympyröiden kehä lyhenee napoja kohti, mutta jos sen sijaan käytetään 6 108579 triviaalia pallokarttaprojektiota, jossa pituus- ja leveyskoordinaatteja käytetään karteesisen kartan suorakulmaisina koordinaatteina, kartan leveys ei muutu ekvaattorilta napoja kohti siirryttäessä.35 suppose that y = ± 1 on the sphere poles. This scaling compensates for the fact that the circumference of the circles on the surface of the globe around the north-south axis is shortened to the poles, but if instead we use 6 108579 trivial spherical map projections that use the Cartesian map as Cartesian coordinates, does not change as you move from the equator towards the poles.
5 Kuva 1 on pelkistetty lohkokaavio, joka esittää nyt esillä olevan keksinnön mukaisen grafiikkalaitteen 1 edullista suoritusmuotoa. Siinä on esitetty ainoastaan grafiikkalaitteen 1 oleelliset piirteet. Ensimmäinen interpolointiyksikkö 2 laskee monikulmion rasteroidun pisteen kohou-makartan x-koordinaatin. Toinen interpolointiyksikkö 3 laskee moni-10 kulmion rasteroidun pisteen kohoumakartan y-koordinaatin. Lasketut x-ja y-koordinaatit siirretään pintarakenneosoitteen laskentayksikköön 4, jossa lasketaan kyseisen pisteen pintarakenteen osoite Taddr. Pintarakenteen osoitteen laskentayksiköstä 4 laskettu osoitetieto siirretään muistinlukuyksikköön 5. Tämä muistinlukuyksikkö 5 muodostaa laske-15 tuista pintarakenteen koordinaateista muistinlukuosoitteen. Tämä osoite viittaa muistipaikkaan muistielimissä 6, joihin kohoumakartan tiedot tallennetaan. Tämä muistipaikka sisältää pinnan pisteen kohouma-karttatiedon sopivimmin napakoordinaattimuodossa. Kohoumakartan kullekin yksityiskohdalle varattu muistitila riippuu sovelluksesta. Se voi 20 käsittää esimerkiksi yhden tavun suuruustietoa varten ja yhden tavun suuntatietoa (kulmatietoa) varten. Yksi tavu käsittää tyypillisesti 8 bittiä.Figure 1 is a simplified block diagram showing a preferred embodiment of the graphic device 1 according to the present invention. Only the essential features of the graphics device 1 are shown therein. The first interpolation unit 2 calculates the x-coordinate of the elevated macrobar of the polygon rasterized point. The second interpolation unit 3 calculates the y-coordinate of the elevation map of the rasterized dot of the polygon 10. The calculated x and y coordinates are transferred to the surface structure address calculating unit 4, where the surface structure address Taddr of that point is calculated. The address information calculated from the surface address calculating unit 4 is transferred to the memory reading unit 5. This memory reading unit 5 forms a memory reading address from the calculated surface structure coordinates. This address refers to the memory location in the memory members 6 where the elevation map data is stored. This location contains the surface point elevation map data, preferably in polar coordinates. The memory space reserved for each detail of the elevation map depends on the application. For example, it may comprise one byte for size information and one byte for directional information. One byte typically comprises 8 bits.
Kolmas interpolointiyksikkö 7 määrittää interpoloidun kohoumakartta-suunta-arvon kyseisessä pisteessä. Interpoloitu suunta-arvo lasketaan 25 ensimmäisessä summauselimessä 8 yhteen vakiosuunta-arvon kanssa, : joka noudetaan vakiokiertorekisteristä 9. Tulos ja muistielimestä 6 nou- dettu kohoumasuunta-arvo lasketaan edelleen yhteen toisessa sum-I . mauselimessä 10. Muistielimestä 6 noudettu kohoumasuuruusarvo ja toisesta summauselimestä 10 saatu kohoumasuunta-arvo muunnetaan ... 30 napakoordinaateista suorakulmaisiksi koordinaateiksi koordinaatti- muunnoselimessä 11, joka muodostaa kohouman x-siirtymäarvon Dx ja kohouman y-siirtymäarvon Dy. Kompensointielin 12 kompensoi ko- t * /Γ houman x-siirtymäarvon Dx jakamalla sen funktiolla sin(—(l-\y\)), ..'. jossa y on rasteroidun kuva-alkion y-koordinaatti.The third interpolation unit 7 determines the directional value of the interpolated elevation map at that point. The interpolated directional value in the first 25 summing members 8 is added to the constant direction value: which is retrieved from the constant rotation register 9. The result and the elevation direction value retrieved from the memory member 6 are further summed in the second sum-I. the elevation magnitude value retrieved from the memory element 6 and the elevation direction value obtained from the second summing element 10 are converted ... from polar coordinates to orthogonal coordinates in the coordinate transform element 11, which forms the x displacement value Dx and the y displacement value Dy. Compensation element 12 compensates for the size * / Γ of the x-displacement Dx of the houma by dividing by the function sin (- (l- \ y \)), .. '. where y is the y-coordinate of the rasterized pixel.
3535
Kuvassa 1 on esitetty myös neljäs 13 ja viides interpolointiyksikkö 14. Niitä käytetään muodostamaan interpoloidut ympäristökartan koordi-Figure 1 also shows the fourth 13 and the fifth interpolation unit 14. They are used to form interpolated environmental map coordinates.
, . I 4 I,. I 4 I
7 1 G 8 6 7 9 naatit sinänsä tunnetuista ympäristön karttatiedoista. Interpolointi voi olla lineaari- tai perspektiivikorjattua interpolointia. Perspektiivikorjattu interpolointi huolehtii perspektiivivaikutelmasta. Nämä ympäristön koordinaatit lasketaan yhteen kohoumasiirtymäarvojen kanssa vastaa-5 vissa kolmannessa 15 ja neljännessä summauselimessä 16. Kolmas 15 ja neljäs summauselin 16 tulostavat kohoumakartan korjattuja koordi-naattiarvoja, joita käytetään kyseisen pisteen pintarakenteen tietojen noutamiseksi. Pintarakenneosoitteen laskentaelin 17 käyttää kohoumakartan korjattuja koordinaattiansa pintarakenneosoitteen laskemi-10 seksi, jota käytetään toisessa muistinlukuyksikössä 18 pintarakenne-tietojen saamiseksi toisesta muistielimestä 19. Toinen muistinlukuyksik-kö18 siis tulostaa kyseisen pisteen kohoumakartan korjatun pinta-rakennetiedon.7 1 G 8 6 7 9 see maps of the environment known per se. The interpolation may be linear or perspective corrected interpolation. Perspective-corrected interpolation provides a perspective effect. These environmental coordinates are summed with the displacement values in the respective third 15 and fourth summing means 16. The third 15 and the fourth summing means 16 output the corrected coordinate values of the elevation map used to retrieve the surface structure data for that point. The surface structure calculator 17 uses its corrected map elevation map coordinates to compute the surface structure address 10 used in the second memory reading unit 18 to obtain surface structure information from the second memory means 19. The second memory reading unit 18 thus prints the corrected surface map of that point.
15 On huomattava, että vaikka tässä on esitetty kaksi muistinlukuyksikköä 5, 18 ja kaksi muistielintä 6, 19, ne voidaan todellisissa sovelluksissa toteuttaa myös yhtenä muistinlukuyksikkönä ja yhtenä muistina.It should be noted that although two memory reading units 5, 18 and two memory members 6, 19 are shown herein, they may also be implemented in one embodiment as a single memory reading unit and one memory.
Kuvassa 2 on pelkistetty lohkokaavio, joka esittää interpolointiyksikön 20 2, 3, 7, 13, 14 edullista suoritusmuotoa. Interpolointiyksikkö 2, 3, 7, 13, 14 käsittää multipleksointiyksikön 20, joka valitsee yhden kahdesta lähtöarvosta. Lähtöarvot ovat esimerkiksi x-siirtymäarvo DX ja y-siirtymäarvo DY. Multipleksointiyksikön 20 ulostulo yhdistetään summaus/vähennysyksikön 21 toiseen sisääntuloon. Sum-25 maus/vähennysyksikön 21 toinen sisääntulo on kytketty laskurin 22 ulostuloon. Summaus/vähennysyksikön 21 ulostulo on kytketty laskurin 22 sisääntuloon, ja se muodostaa myös interpolointiyksikön 2, 3, 7, ,·. 13,14 ulostulon.Figure 2 is a reduced block diagram showing a preferred embodiment of the interpolation unit 20, 3, 7, 13, 14. The interpolation unit 2, 3, 7, 13, 14 comprises a multiplexing unit 20 which selects one of two output values. The output values are, for example, x-offset DX and y-offset DY. The output of the multiplexing unit 20 is connected to the second input of the summing / subtracting unit 21. The second input of the sum-25 maus / subtraction unit 21 is coupled to the output of the counter 22. The output of the addition / subtraction unit 21 is coupled to the input of the counter 22 and also forms an interpolation unit 2, 3, 7,, ·. 13.14 output.
r » ,.. 30 Kun interpolointi aloitetaan (esimerkiksi monikulmion vasemmasta reu nasta), laskurin 22 sisältö on joko nolla tai se asetetaan lähtöarvoon.When interpolation is started (for example, to the left of the polygon), the content of counter 22 is either zero or set to an initial value.
: : Tätä keksintöä ei ole rajoitettu pelkästään edellä esitettyihin suoritus- v : muotoihin, vaan sitä voidaan muunnella oheisten patenttivaatimusten ./: 35 puitteissa.The present invention is not limited to the above embodiments, but may be modified within the scope of the appended claims.
I *I *
, I, I
1 i » t I »1 i »t I»
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FI973682A FI108679B (en) | 1997-09-12 | 1997-09-12 | A 3D graphics arrangement |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FI973682A FI108679B (en) | 1997-09-12 | 1997-09-12 | A 3D graphics arrangement |
FI973682 | 1997-09-12 |
Publications (3)
Publication Number | Publication Date |
---|---|
FI973682A0 FI973682A0 (en) | 1997-09-12 |
FI973682A FI973682A (en) | 1999-03-13 |
FI108679B true FI108679B (en) | 2002-02-28 |
Family
ID=8549526
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FI973682A FI108679B (en) | 1997-09-12 | 1997-09-12 | A 3D graphics arrangement |
Country Status (1)
Country | Link |
---|---|
FI (1) | FI108679B (en) |
-
1997
- 1997-09-12 FI FI973682A patent/FI108679B/en active
Also Published As
Publication number | Publication date |
---|---|
FI973682A0 (en) | 1997-09-12 |
FI973682A (en) | 1999-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5325472A (en) | Image displaying system for interactively changing the positions of a view vector and a viewpoint in a 3-dimensional space | |
US20230053462A1 (en) | Image rendering method and apparatus, device, medium, and computer program product | |
El-Hakim et al. | A multi-sensor approach to creating accurate virtual environments | |
JP3358169B2 (en) | Mirror surface rendering method and apparatus | |
US7102647B2 (en) | Interactive horizon mapping | |
US10593096B2 (en) | Graphics processing employing cube map texturing | |
Theoharis et al. | Graphics and visualization: principles & algorithms | |
US6469700B1 (en) | Per pixel MIP mapping and trilinear filtering using scanline gradients for selecting appropriate texture maps | |
US20090153555A1 (en) | System and Computer-Implemented Method for Modeling the Three-Dimensional Shape of An Object by Shading of a Two-Dimensional Image of the Object | |
US20060114262A1 (en) | Texture mapping apparatus, method and program | |
US10592242B2 (en) | Systems and methods for rendering vector data on static and dynamic-surfaces using screen space decals and a depth texture | |
US6806886B1 (en) | System, method and article of manufacture for converting color data into floating point numbers in a computer graphics pipeline | |
JP2005071368A (en) | Method and device for capturing self-shadowing and self-interreflection light | |
US6724383B1 (en) | System and computer-implemented method for modeling the three-dimensional shape of an object by shading of a two-dimensional image of the object | |
CN113593027B (en) | Three-dimensional avionics display control interface device | |
US6346939B1 (en) | View dependent layer ordering method and system | |
Boreskov et al. | Computer Graphics: From Pixels to Programmable Graphics Hardware | |
JP3629243B2 (en) | Image processing apparatus and method for rendering shading process using distance component in modeling | |
KR100559127B1 (en) | Image processing device | |
US6850244B2 (en) | Apparatus and method for gradient mapping in a graphics processing system | |
US6188409B1 (en) | 3D graphics device | |
KR100848687B1 (en) | 3-dimension graphic processing apparatus and operating method thereof | |
FI108679B (en) | A 3D graphics arrangement | |
Blythe et al. | Lighting and shading techniques for interactive applications | |
CA2282240C (en) | System and computer-implemented method for modeling the three-dimensional shape of an object by shading of a two-dimensional image of the object |