專利名稱:圖象生成裝置和圖象生成方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及圖象生成裝置和圖象生成方法,具體涉及一種利用其可以在游戲裝置中更精確及更逼真地表現(xiàn)出在虛擬三維空間中運(yùn)動(dòng)的運(yùn)動(dòng)物體與周圍環(huán)境-如行進(jìn)路徑或諸如此類之間的關(guān)系的圖象生成裝置和圖象生成方法。
隨著近年來(lái)計(jì)算機(jī)圖形學(xué)的不斷發(fā)展,無(wú)論是在工業(yè)級(jí)應(yīng)用還是在家庭級(jí)應(yīng)用方面,模擬裝置和游戲裝置得均到了廣泛地應(yīng)用。有一類風(fēng)格的游戲機(jī)所刻畫的是一種十分流行的其中游戲者駕駛構(gòu)成了虛擬游戲空間中的某個(gè)物體的汽車進(jìn)行比賽的賽車游戲。通常,此類游戲裝置均包括一個(gè)含有用于執(zhí)行事先所設(shè)定的游戲程序的內(nèi)置計(jì)算機(jī)裝置的主單元,用于向該裝置主單元提供指明游戲中所表示的物體的運(yùn)動(dòng)狀態(tài)的操作信號(hào)的操作部,用于顯示根據(jù)由主單元所執(zhí)行的游戲程序隨著游戲情節(jié)發(fā)展而不斷變化的圖象的監(jiān)視器,以及用于隨著游戲情節(jié)發(fā)展而產(chǎn)生聲音的聲音裝置。
由于賽車游戲的游戲形式通常均是其中游戲者的汽車與對(duì)手汽車進(jìn)行比賽,所以如果想要將其制作得更加逼真,顯然需要更逼真地來(lái)模擬汽車的運(yùn)動(dòng),而其中一個(gè)重要因素是諸如汽車與構(gòu)成了背景一部分的車道或地形(環(huán)境)之間的關(guān)系,以及車輛與周圍環(huán)境之間的關(guān)系等圖象處理描繪要素的精確性和真實(shí)性。
然而,在常規(guī)的用于運(yùn)行賽車游戲的游戲機(jī)中,在尋求以圖象格式來(lái)表示與汽車在其路徑上行駛時(shí)發(fā)生在車輛和周圍環(huán)境之間的相互影響有關(guān)的因素的過(guò)程中,出現(xiàn)了如下未被解決的問(wèn)題。
(1)為了將車輛的行進(jìn)狀態(tài)表示為一幅圖象,其需要以均勻的時(shí)間間隔來(lái)確定地形和車輛輪胎(車輪)之間的作用力。近幾年,通常均是用合適數(shù)目的多邊形數(shù)據(jù)來(lái)描繪地形,其中地形被分割得十分精細(xì)。這些多邊形數(shù)據(jù)的每個(gè)元素均含有其多個(gè)頂點(diǎn)的位置坐標(biāo),以及表示與該多邊形的整個(gè)表面有關(guān)的單一法向矢量的數(shù)據(jù)。由于常規(guī)的作用力判斷處理均是針對(duì)多邊形的實(shí)際表面(多邊形表面坐標(biāo))來(lái)進(jìn)行的,所以當(dāng)兩個(gè)毗鄰的多邊形相差相對(duì)較大的角度時(shí),在車輛經(jīng)過(guò)其之間的結(jié)點(diǎn)時(shí),作用力判斷的方向可能會(huì)發(fā)生突變,從而使汽車表現(xiàn)出不自然的行為。例如,即使汽車正在沿一段外觀相對(duì)較平滑的車道行使時(shí),由于多邊形表面之間存在較大的角度差,所以汽車的行駛方向可能會(huì)從平進(jìn)方向而突變?yōu)楦┭龇较?,或偏航方向,從而使游戲者產(chǎn)生異樣的感覺。當(dāng)然,如果將與車道表面或表示周圍環(huán)境的地形相關(guān)的單個(gè)多邊形表面制成與輪胎大小相比極小的尺寸,則可以提高地形作為整體的平滑度并因此使得不易于出現(xiàn)上述作用力判斷方向上的突變。然而,將多邊形表面以此方式設(shè)置為很小的尺寸將會(huì)使與地形有關(guān)的數(shù)據(jù)量增加很多,因此存儲(chǔ)器所需的存儲(chǔ)容量將變得很大,從而使計(jì)算機(jī)裝置的CPU上的計(jì)算負(fù)擔(dān)將顯著增大。即使假設(shè)可以安裝樣一種大存儲(chǔ)容量的存儲(chǔ)器,其仍會(huì)使該裝置作為整體的處理速度有很大下降。處理速度方面的任何下降對(duì)現(xiàn)有游戲裝置均極端不利,并將會(huì)對(duì)可銷售性產(chǎn)生不良影響。因此,多邊形表面所能設(shè)置的尺寸有其固有的限制。
另外,除了兩個(gè)多邊形表面之間行為上的變化之外,描繪了每個(gè)多邊形表面中的精細(xì)凹坑(indentation)的車輛行為對(duì)于提高游戲的真實(shí)性也極端重要。通常,在要描繪此效果時(shí),事先存儲(chǔ)了用于每個(gè)多邊形(紋理)的凹坑的高度信息,并需要針對(duì)這些凹坑高度信息來(lái)判斷作用力的大小,其所生成的海量數(shù)據(jù)及其計(jì)算負(fù)擔(dān)在實(shí)踐中被證明是不可行的。
另外,其中車輛行為對(duì)周圍環(huán)境產(chǎn)生影響的多種因素之一便是隨著汽車運(yùn)動(dòng)而從車道表面和地形所生成的塵云。這些塵云在逼真描繪車道表面狀態(tài)和汽車行駛狀態(tài),即車輛的速度和加速度的過(guò)程中是一個(gè)極重要的因素。
盡管如此,通常,與塵云有關(guān)的圖象處理均很難實(shí)現(xiàn),在許多情況中,往往由于此類描繪的品質(zhì)較差而并未對(duì)塵云進(jìn)行描繪。而在嘗試表現(xiàn)塵云的情況中,也只是簡(jiǎn)單地將一個(gè)或多個(gè)代表了煙霧(煙云)的外表面的多邊形,以三維方式疊加在背景上,或諸如此類。因此,其所描繪出來(lái)的均是從汽車后部沖出的輪廓截然分明的物體用以表示塵云。
然而實(shí)際中,一眼看上去塵云并不很明顯,所以上面那樣表示將給人以一種不真實(shí)的感覺。因此,為了造成一種確實(shí)是由微粒產(chǎn)生塵云的印象,在許多情況中,均是通過(guò)將煙云減小為用一個(gè)多邊形來(lái)表示的圖象處理而產(chǎn)生塵土微粒印象的,但即使在這些情況中,所得到的塵云也很缺乏真實(shí)性。另外在某些情況中,例如當(dāng)對(duì)手汽車加速并超過(guò)游戲者的汽車時(shí),攝像機(jī)視點(diǎn)的位置有可能會(huì)進(jìn)入到塵云氣體中。此時(shí),盡管攝像機(jī)視點(diǎn)處于塵云內(nèi)部,通常其也只能產(chǎn)生并不符合實(shí)際狀態(tài)的圖象,即其中只能看到塵云的外表面,就好象攝像機(jī)處于一條其中只描繪出隧道側(cè)壁的隧道中一樣。
運(yùn)動(dòng)車輛與周圍環(huán)境發(fā)生相互影響的另一個(gè)因素與車輛上所照明的前燈和尾燈有關(guān),另外其還與在游戲空間中由車輛的部分車體所反射的虛構(gòu)陽(yáng)光的光線有關(guān)。
在常規(guī)的游戲裝置中,當(dāng)表示那些具有較高亮度的物體時(shí),采用的方法是,或者是將這些物體自身的顏色顯示成很亮,或者是利用通過(guò)安裝的硬件單元所產(chǎn)生的霧化效果來(lái)描繪其,或者是通過(guò)放置于發(fā)光點(diǎn)的并一直延伸到游戲者的汽車處的一個(gè)從發(fā)光物體邊緣向其中心由透明變?yōu)槟:膯为?dú)層來(lái)描繪其。
然而,這些方法均只描繪了來(lái)自物體的光亮,而沒(méi)有一種方法能夠表現(xiàn)來(lái)自運(yùn)動(dòng)物體的發(fā)散光的方向,而這恰恰是其基本特征,因而將會(huì)缺乏從運(yùn)動(dòng)車輛動(dòng)態(tài)地發(fā)出光線的感覺。例如,參看上述第三種方法中的前燈,其將會(huì)產(chǎn)生一種不自然的效果,使得即使從后部看所述車輛也能看到發(fā)散光。
本發(fā)明的目的是為了克服上述與游戲裝置有關(guān)的未被解決的問(wèn)題,其共同目的是提供一種圖象生成裝置和圖象生成方法,可以在不顯著增加所涉及的計(jì)算負(fù)擔(dān)或數(shù)據(jù)量的條件下更逼真地表現(xiàn)與作為一運(yùn)動(dòng)物體的車輛和其周圍環(huán)境之間的相互影響有關(guān)的因素,并由此增加基于運(yùn)動(dòng)車輛主題的游戲的真實(shí)感,也因此增大游戲者對(duì)其的興趣。
具體地說(shuō),本發(fā)明的第一目的是,通過(guò)實(shí)施其中通過(guò)防止在車輛穿過(guò)兩個(gè)多邊形之間的結(jié)點(diǎn)時(shí)所進(jìn)行的作用力判斷處理中很少出現(xiàn)由于判斷方向發(fā)生突變而造成異樣效果的更為自然的作用力判斷處理,并通過(guò)實(shí)施其中將車道表面中的凹坑考慮在內(nèi)的作用力判斷處理,而在不顯著增加其中所涉及的計(jì)算負(fù)擔(dān)和數(shù)據(jù)量的條件下提供一種與現(xiàn)有技術(shù)相比在表現(xiàn)車輛行為的過(guò)程中真實(shí)性和確實(shí)性有顯著提高的圖象生成裝置和圖象生成方法。
本發(fā)明的第二目的是在不顯著增加其中所涉及的計(jì)算負(fù)擔(dān)或數(shù)據(jù)量的條件下提供一種其中通過(guò)表現(xiàn)出塵云由微粒構(gòu)成的感覺,并且對(duì)塵云的表示使得即使在攝像機(jī)視點(diǎn)實(shí)際位于塵云內(nèi)部時(shí)從攝像機(jī)視點(diǎn)處來(lái)看塵云也不會(huì)產(chǎn)生異樣效果,從而消除掉由常規(guī)的平滑或不真實(shí)外觀塵云所引起的異樣效果的圖象生成裝置和圖象生成方法。
本發(fā)明的第三個(gè)目的是提供一種圖象生成裝置和圖象生成方法,通過(guò)其能夠在不顯著增加其中所涉及的計(jì)算負(fù)擔(dān)或數(shù)據(jù)量的條件下以動(dòng)態(tài)方式產(chǎn)生如前燈、尾燈所發(fā)出的具有一定方向的發(fā)散光或從運(yùn)動(dòng)車輛上發(fā)出的反射光的圖象,并因此能夠以更逼真的方式來(lái)表現(xiàn)發(fā)射光線。
為了實(shí)現(xiàn)上述目的,與本發(fā)明的第一方面有關(guān)的圖象生成裝置包括用于建立虛擬三維空間中由多邊形所表示的物體和行進(jìn)路徑之間的作用力狀態(tài)的作用力建立裝置;以及用于產(chǎn)生表現(xiàn)物體在保持上述作用力狀態(tài)的同時(shí)沿行進(jìn)路徑運(yùn)動(dòng)的狀態(tài)的圖象數(shù)據(jù)的圖象數(shù)據(jù)生成裝置;其中作用力建立裝置包括用于通過(guò)對(duì)指派給行進(jìn)路徑的多邊形各頂點(diǎn)的頂點(diǎn)數(shù)據(jù)進(jìn)行插值來(lái)確定物體的作用力位置上的作用力建立數(shù)據(jù)的插值裝置;用于根據(jù)由插值裝置插值所得到的作用力建立數(shù)據(jù)來(lái)表示物體在行進(jìn)路徑上的作用力的作用力表示裝置。
比如,頂點(diǎn)數(shù)據(jù)包括每個(gè)頂點(diǎn)的高度和法向矢量,而作用力建立數(shù)據(jù)則包括作用力位置的高度和法向矢量。另外,例如插值裝置包括用于分別指定多邊形的從作用力位置開始平行于坐標(biāo)軸延伸并垂直相交的兩條邊線的裝置;用于根據(jù)這些邊線的每個(gè)末端的頂點(diǎn)數(shù)據(jù)而設(shè)置第一和第二脊線的裝置;用于確定這些脊線與兩條邊線的各自相交點(diǎn)數(shù)據(jù)的裝置;用于指定其端點(diǎn)在與兩條邊線相交點(diǎn)上的第三脊線線段的裝置;以及用于從第三脊線的各交點(diǎn)數(shù)據(jù)來(lái)確定該作用力判斷位置上的作用力建立數(shù)據(jù)的裝置。優(yōu)選地,第一到第三脊線由三次方程給定。
另外,與本發(fā)明的第二方面有關(guān)的圖象生成裝置包括用于建立虛擬三維空間中由多邊形所表示的物體和行進(jìn)路徑之間的作用力狀態(tài)的作用力建立裝置;以及用于產(chǎn)生表現(xiàn)物體在保持上述作用力狀態(tài)的同時(shí)沿行進(jìn)路徑運(yùn)動(dòng)的狀態(tài)的圖象數(shù)據(jù)的圖象數(shù)據(jù)生成裝置;其中作用力建立裝置包括用于根據(jù)由多邊形所代表的行進(jìn)路徑的屬性來(lái)校正在該物體的作用力位置上的作用力建立數(shù)據(jù)的校正裝置;以及用于根據(jù)由校正裝置進(jìn)行校正所得的作用力建立數(shù)據(jù)來(lái)表示物體在行進(jìn)路徑上的作用力的作用力表示裝置;例如,作用力建立數(shù)據(jù)為作用力位置的高度和法向矢量。另外,例如行進(jìn)路徑的屬性為行進(jìn)路徑中的凹坑,而作為粘貼到多邊形上的紋理所提供的光線和陰影數(shù)據(jù)則被用作這些凹坑的信息。
與本發(fā)明的第三方面有關(guān)的圖象生成裝置包括用于建立虛擬三維空間中由多邊形所表示的物體和行進(jìn)路徑之間的作用力狀態(tài)的作用力建立裝置;以及用于產(chǎn)生表現(xiàn)物體在保持上述作用力狀態(tài)的同時(shí)沿行進(jìn)路徑運(yùn)動(dòng)的狀態(tài)的圖象數(shù)據(jù)的圖象數(shù)據(jù)生成裝置;其中作用力建立裝置包括用于通過(guò)對(duì)指派給行進(jìn)路徑的多邊形各頂點(diǎn)的頂點(diǎn)數(shù)據(jù)進(jìn)行插值來(lái)確定物體的作用力位置上的作用力建立數(shù)據(jù)的插值裝置;用于根據(jù)由多邊形所代表的行進(jìn)路徑的屬性來(lái)校正由插值裝置插值所得的作用力建立數(shù)據(jù)的校正裝置;以及用于根據(jù)由校正裝置進(jìn)校正所得的作用力建立數(shù)據(jù)來(lái)表示行進(jìn)路徑上物體的作用力的作用力表示裝置。例如,作用力建立數(shù)據(jù)為作用力位置的高度和法向矢量。
與本發(fā)明的第四方面有關(guān)的圖象生成裝置包括用于根據(jù)該物體的運(yùn)動(dòng)狀態(tài)對(duì)從虛擬三維空間中的運(yùn)動(dòng)物體上的光源所發(fā)射出的發(fā)散光的圖象數(shù)據(jù)進(jìn)行控制的發(fā)散光控制裝置;以及用于產(chǎn)生代表了該物體的運(yùn)動(dòng)狀態(tài)并包括用于發(fā)散光的此受控圖象數(shù)據(jù)在內(nèi)的圖象數(shù)據(jù)的生成裝置。
優(yōu)選地,該發(fā)散光控制裝置包括用于確定代表了光源方向的光源矢量和代表了攝像機(jī)視點(diǎn)在虛擬三維空間中的方向的視線矢量的裝置;用于將一個(gè)單獨(dú)的多邊形表示為發(fā)散光的圖象數(shù)據(jù)的裝置;以及用于根據(jù)與兩個(gè)矢量之間的角度有關(guān)的信息來(lái)改變?cè)摱噙呅蔚拇笮〉淖冃窝b置。另外,優(yōu)選地該變形裝置是通過(guò)乘以一個(gè)當(dāng)兩個(gè)矢量的方向彼此重合時(shí)趨向于無(wú)窮的系數(shù)來(lái)改變?cè)摱噙呅蔚拇笮〉摹?br>
與本發(fā)明的第五方面有關(guān)的圖象生成裝置包括用于根據(jù)該物體的運(yùn)動(dòng)狀態(tài)對(duì)由在虛擬三維空間中的運(yùn)動(dòng)物體所產(chǎn)生的塵云的圖象數(shù)據(jù)進(jìn)行控制的塵云控制裝置;以及用于產(chǎn)生代表了該物體的運(yùn)動(dòng)狀態(tài)并包括此受控塵云圖象數(shù)據(jù)在內(nèi)的圖象數(shù)據(jù)的生成裝置。
在本情況的一個(gè)優(yōu)選示例中,塵云控制裝置包括用于將塵云圖象數(shù)據(jù)表示為多個(gè)多邊形的裝置;用于確定由包括物體行為在內(nèi)的多種因素所施加的物理影響的大小程度的裝置;用于根據(jù)這些影響的程度來(lái)計(jì)算多個(gè)多邊形的各自行為的裝置;以及用于根據(jù)計(jì)算所得的結(jié)果將該多個(gè)多邊形連在一起并重構(gòu)出一多邊形組的裝置。另外,例如塵云控制裝置可以包括用于對(duì)所重構(gòu)出的多邊形組進(jìn)行處理以表現(xiàn)出與塵云外觀有關(guān)的在透明度方面的變化以及霧態(tài)的形狀的裝置。
在上述任何一種構(gòu)造中,物體可以是賽車游戲中一輛在虛擬三維空間中運(yùn)動(dòng)的汽車。
與本發(fā)明的第六方面有關(guān)的圖象生成方法是一種用于在建立了物體與行進(jìn)路徑之間的作用力狀態(tài)的同時(shí)產(chǎn)生代表了在虛擬三維空間中由多個(gè)多邊形所表示的的物體沿行進(jìn)路徑運(yùn)動(dòng)的狀態(tài)的圖象數(shù)據(jù)的圖象生成方法,其中該物體作用力位置上的作用力建立數(shù)據(jù)由通過(guò)對(duì)指派給行進(jìn)路徑的多個(gè)多邊形各頂點(diǎn)的頂點(diǎn)數(shù)據(jù)進(jìn)行插值來(lái)確定的,而物體在行進(jìn)路徑上的作用力則是根據(jù)此插值所得的作用力建立數(shù)據(jù)來(lái)表示的。
另外,與本發(fā)明的第七方面有關(guān)的圖象生成方法是一種用于在建立了物體與行進(jìn)路徑之間的作用力狀態(tài)的同時(shí)產(chǎn)生代表了在虛擬三維空間中由多個(gè)多邊形所表示的的物體沿行進(jìn)路徑運(yùn)動(dòng)的狀態(tài)的圖象數(shù)據(jù)的圖象生成方法,其中根據(jù)由多個(gè)多邊形所表示的行進(jìn)路徑的屬性來(lái)對(duì)該物體作用力位置上的作用力建立數(shù)據(jù)進(jìn)行校正,并根據(jù)校正所得的此作用力建立數(shù)據(jù)來(lái)表示物體在行進(jìn)路徑上的作用力。
在與本發(fā)明的第八方面有關(guān)的圖象生成方法中,將使從虛擬三維空間中某一運(yùn)動(dòng)物體上的光源中發(fā)出的發(fā)散光的大小和亮度隨著發(fā)散光的方向接近空間中的攝像機(jī)視點(diǎn)的方向而不斷增大。
另外,在與本發(fā)明的第九方面有關(guān)的圖象生成方法中,將根據(jù)物體的行為來(lái)改變虛擬三維空間中某一運(yùn)動(dòng)物體所產(chǎn)生的塵云的形狀,并使得其透明感沿朝向其外邊緣的方向不斷增大。
圖1所示為根據(jù)本發(fā)明的一個(gè)實(shí)施例的游戲裝置的構(gòu)造示意圖;圖2所示為原理上由CPU所實(shí)施的主要程序的示意圖;圖3所示為用于顯示作用力判斷處理概要的輔助程序的示意圖;圖4所示為用于顯示構(gòu)成了車道表面的多個(gè)多邊形的排列形式的示意圖;圖5所示為作用力判斷處理中在多邊形內(nèi)所進(jìn)行的插值處理程序的示意圖;圖6所示為作用力判斷處理中在多邊形內(nèi)所進(jìn)行的插值處理程序的示意圖;圖7所示為作用力判斷處理中在多邊形內(nèi)所進(jìn)行的插值處理程序的示意圖;圖8所示為作用力判斷處理中的凸起(bump)校正處理程序的示意圖;圖9所示為作用力判斷處理中的凸起校正處理程序的示意圖;圖10所示為作用力判斷處理中的凸起校正處理程序的示意圖;圖11所示為作用力判斷處理中的凸起校正處理程序的示意圖;圖12所示為用于產(chǎn)生塵云的處理的簡(jiǎn)明程序的示意圖;圖13所示為用于產(chǎn)生塵云的處理的示意圖;圖14所示為用于產(chǎn)生塵云的處理的示意圖;圖15所示為用于產(chǎn)生塵云的處理的示意圖;圖16所示為用于產(chǎn)生塵云的處理的示意圖;圖17所示為用于表示發(fā)散光的處理的簡(jiǎn)明程序的示意圖;圖18所示為用于表示發(fā)散光的處理的示意圖;圖19所示為示用于表示發(fā)散光的處理的示意圖;圖20所示為用于表示發(fā)散光的處理的示意圖;圖21所示為用于表示發(fā)散光的處理的示意圖。
接下來(lái)將參照附圖對(duì)本發(fā)明的一個(gè)實(shí)施例進(jìn)行說(shuō)明。
圖1所示的游戲裝置是根據(jù)本發(fā)明的圖象生成裝置和圖象生成方法的一種實(shí)施模式。此裝置包括,作為基本元件的,游戲處理板10,輸入裝置11,輸出裝置12,視頻監(jiān)視器13和揚(yáng)聲器14。輸入裝置11包括方向盤,加速器,剎車,離合器,視點(diǎn)切換開關(guān)及諸如此類。輸出裝置12包括方向盤回轉(zhuǎn)機(jī)構(gòu),以及多種顯示燈,等等。視頻監(jiān)視器13用于顯示賽車游戲的圖象,也可以用投影儀來(lái)代替視頻監(jiān)視器。視點(diǎn)切換開關(guān)是用于改變虛構(gòu)攝像機(jī)視點(diǎn)的位置的開關(guān)。通過(guò)對(duì)此開關(guān)進(jìn)行操作,游戲者可以選擇,例如從駕駛員座位進(jìn)行觀察的前視點(diǎn),從汽車斜后方進(jìn)行觀察的視點(diǎn),或諸如此類的視點(diǎn)。
游戲處理板10包括計(jì)數(shù)器100,CPU(中央處理單元)101,用作用于記錄操作程序和游戲裝置所用數(shù)據(jù)的存儲(chǔ)介質(zhì)的ROM102,RAM103,聲音裝置104,輸入/輸出接口106,滾動(dòng)數(shù)據(jù)計(jì)算裝置107,協(xié)處理器(輔助處理單元)108,地形數(shù)據(jù)ROM109,幾何圖形生成器110,形狀數(shù)據(jù)ROM111,繪圖裝置112,紋理數(shù)據(jù)ROM113,紋理映象RAM114,幀緩沖器115,圖象合成裝置116,和D/A轉(zhuǎn)換器117。
CPU101通過(guò)總線與從某初始值開始倒計(jì)數(shù)的計(jì)數(shù)器100,存儲(chǔ)有預(yù)定程序和圖象處理程序等程序的ROM102,存儲(chǔ)有計(jì)算數(shù)據(jù)的RAM103,聲音裝置104,輸入/輸出接口106,滾動(dòng)數(shù)據(jù)計(jì)算裝置107,協(xié)處理器108和幾何圖形生成器110相連。RAM103起到了緩沖器的作用,被用來(lái)向幾何圖形生成器寫入多種命令(用于顯示物體,等等),并用來(lái)寫入進(jìn)行包括計(jì)算變換矩陣在內(nèi)的多種計(jì)算時(shí)所需的數(shù)據(jù)。
輸入/輸出接口106與輸入裝置11和輸出裝置12相連,來(lái)自輸入裝置11的多種操作信號(hào)和檢測(cè)信號(hào)作為數(shù)字量被輸入到CPU101中??梢詫⒂蒀PU101或諸如此類器件所產(chǎn)生的信號(hào)加載到輸出裝置12上。聲音裝置104通過(guò)功放105與揚(yáng)聲器14相連。由此可以在將由聲音裝置104所產(chǎn)生的聲音信號(hào)進(jìn)行功率放大之后以聲音的形式來(lái)從揚(yáng)聲器14進(jìn)行輸出。
根據(jù)ROM102中所存儲(chǔ)的程序,CPU101從輸入裝置11中讀出操作信號(hào),從地形數(shù)據(jù)ROM109中讀出地形數(shù)據(jù)或從形狀數(shù)據(jù)ROM111讀出形狀數(shù)據(jù)(諸如游戲者的汽車、對(duì)手汽車等多種“物體”以及諸如車道表面,地形,天空,觀眾,建筑物體等“背景”的三維數(shù)據(jù)),此后便進(jìn)行用于判斷地形與汽車之間的作用力,判斷汽車之間作用力的計(jì)算,并計(jì)算出四輪懸掛系統(tǒng)的行為,并進(jìn)行用于計(jì)算汽車行為的行為模擬,以及執(zhí)行包括用于產(chǎn)生塵云和用于產(chǎn)生及控制發(fā)散光的處理在內(nèi)的特效處理。
利用由游戲者通過(guò)輸入裝置11所輸入的操作信號(hào),通過(guò)汽車行為計(jì)算可以模擬出汽車在虛擬三維空間(游戲空間)中的運(yùn)動(dòng)。為了執(zhí)行此步驟,在確定了用于在虛擬三維空間中構(gòu)成汽車的多邊形的坐標(biāo)值之后,隨后便將這些坐標(biāo)值與形狀數(shù)據(jù)(多邊形數(shù)據(jù))和用于將該坐標(biāo)系轉(zhuǎn)換為二維視點(diǎn)坐標(biāo)系的變換矩陣一起提供給幾何圖形生成器110。協(xié)處理器108與地形數(shù)據(jù)ROM109相連,先前所確定的地形數(shù)據(jù)便被傳送給協(xié)處理器108和CPU101。協(xié)處理器108在判斷地形與汽車之間的作用力,以及計(jì)算汽車行為的過(guò)程中主要進(jìn)行浮點(diǎn)運(yùn)算。因此,可以減小CPU上的計(jì)算負(fù)擔(dān)。幾何圖形生成器110與形狀數(shù)據(jù)ROM111和繪圖裝置112相連。如上所述,事先在形狀數(shù)據(jù)ROM111中存儲(chǔ)有由多個(gè)多邊形所組成的形狀數(shù)據(jù)(用于汽車,地形,背景等的三維數(shù)據(jù),包括三個(gè)或更多頂點(diǎn))。此形狀數(shù)據(jù)被傳送到幾何圖形生成器110,其利用由CPU101所指定的變換矩陣對(duì)所指示的形狀數(shù)據(jù)進(jìn)行投影變換,由此產(chǎn)生已從三維虛擬空間中的坐標(biāo)系變換為視點(diǎn)坐標(biāo)系中的形狀數(shù)據(jù)。
繪圖裝置112將紋理粘貼到轉(zhuǎn)換到視點(diǎn)坐標(biāo)系中所得的此形狀數(shù)據(jù)上,并將此數(shù)據(jù)輸出至幀緩沖器115。為了將紋理粘貼到數(shù)據(jù)上,繪圖裝置112與紋理數(shù)據(jù)ROM113和紋理映象RAM114相連,并與幀緩沖器115相連。
多邊形數(shù)據(jù)指的是用于含有三個(gè)或更多頂點(diǎn)的多邊形(主要是三邊或四邊形)的每一個(gè)頂點(diǎn)的相對(duì)或絕對(duì)坐標(biāo)的坐標(biāo)數(shù)據(jù)組。上述地形數(shù)據(jù)ROM109中存儲(chǔ)有以足夠進(jìn)行預(yù)定判斷處理(作用力判斷及諸如此類的處理)的相對(duì)較粗糙的條件所設(shè)置的多邊形數(shù)據(jù)。另一方面,形狀數(shù)據(jù)ROM111存儲(chǔ)有以更精確條件設(shè)置的與構(gòu)成汽車、背景和諸如此類圖象的形狀有關(guān)的多邊形數(shù)據(jù)。
滾動(dòng)數(shù)據(jù)計(jì)算裝置107計(jì)算用于諸如文本或諸如此類(存儲(chǔ)在ROM102中)的滾動(dòng)圖象的數(shù)據(jù)。此計(jì)算裝置107和幀緩沖器115通過(guò)圖象合成裝置116和D/A轉(zhuǎn)換器117與視頻監(jiān)視器相連。由此,根據(jù)所設(shè)定的優(yōu)先級(jí)將暫時(shí)存儲(chǔ)在幀緩沖器115中的汽車、地形(背景)及諸如此類的多邊形圖形(模擬結(jié)果),和諸如速度、單圈時(shí)間等文本信息的滾動(dòng)圖象合成在一起,并以均勻定時(shí)產(chǎn)生用于每幀的最終圖象數(shù)據(jù)。D/A轉(zhuǎn)換器117將此圖象數(shù)據(jù)轉(zhuǎn)換為模擬信號(hào),并隨后將其提供給視頻監(jiān)視器13,在此將其實(shí)時(shí)地顯示在游戲屏上。(動(dòng)作)(主例程處理)接下來(lái),將對(duì)根據(jù)本實(shí)施例的游戲裝置中的車賽有關(guān)的圖象生成處理進(jìn)行說(shuō)明。圖2所示為圖象生成處理的主例程。例如,由CPU101與顯示中斷保持同步地為每個(gè)場(chǎng)(60分之一秒)重復(fù)執(zhí)行此主例程。在圖象屏幕中,至少由多個(gè)多邊形(例如,三角形)形成有一輛汽車以及構(gòu)成了讓該汽車行駛于其上的路徑的車道表面。具體地說(shuō),對(duì)于代表了車道表面的每個(gè)多邊形的每個(gè)頂點(diǎn),提供有與距離虛擬空間中的參考位置的高度有關(guān)的信息(換句話說(shuō),頂點(diǎn)位置信息),以及在該頂點(diǎn)位置上的法向矢量,此信息被事先存儲(chǔ)在存儲(chǔ)器中。
首先,CPU101讀入所檢測(cè)到的由游戲者通過(guò)輸入裝置11輸入的操作信息以及在前一中斷中計(jì)算所得的計(jì)算信息(步驟201)。在此,操作信息包括,例如,由游戲者所操作的方向盤和加速器的角度。另外,計(jì)算信息包括由CPU101計(jì)算所得的游戲者的汽車和對(duì)手汽車的位置,車輛行為信息,以及與塵云、發(fā)散光和諸如此類的有關(guān)特效處理。游戲者的汽車由CPU101根據(jù)操作信息來(lái)控制,而對(duì)手汽車則由CPU101根據(jù)預(yù)定程序來(lái)獨(dú)立地進(jìn)行控制。
此后,根據(jù)上述操作信息和前一中斷中的計(jì)算信息(游戲者的汽車和對(duì)手汽車的行進(jìn)位置和方向等)計(jì)算出前一中斷中每部車的作用力判斷位置(汽車輪胎的地面作用力位置)(步驟202)。
CPU101隨后對(duì)每部車的每個(gè)作用力判斷位置進(jìn)行作用力判斷處理(步驟203)。其后,作為與車輛行為有關(guān)的特效處理,將順序地執(zhí)行用于產(chǎn)生塵云的處理和用于繪制發(fā)散光的處理(步驟204,205)。稍后將對(duì)步驟203到205中所涉及的處理進(jìn)行說(shuō)明。
CPU101隨后在同時(shí)考慮操作信息和作用力判斷結(jié)果的情況下計(jì)算出車輛的行為(步驟206),生成并指明投影變換矩陣(步驟207),并確定繪圖處理所需的多邊形數(shù)據(jù),及諸如此類的數(shù)據(jù)(步驟208)。通過(guò)此種方式,在每個(gè)中斷均要對(duì)圖象數(shù)據(jù)進(jìn)行更新,而隨著賽車游戲情節(jié)的不斷發(fā)展,將在視頻監(jiān)視器13上顯示出與之對(duì)應(yīng)的圖象和其它文本信息。以此方式,游戲者能夠在觀看顯示屏的同時(shí)通過(guò)提供經(jīng)由輸入裝置11所輸入的所需操作輸入來(lái)操控游戲。(作用力判斷處理)接下來(lái)將參照?qǐng)D3到圖10對(duì)在步驟203中所執(zhí)行的作用力判斷處理,以及所述處理的原理進(jìn)行詳細(xì)地說(shuō)明。
圖3所示為在步驟203中所實(shí)施的處理的輔助例程的示意圖。利用此例程,從構(gòu)成了如圖4所示的車道表面的多個(gè)多邊形PG中可以在虛擬三維空間中的平面xz上發(fā)現(xiàn)其中含有針對(duì)每部車輛計(jì)算所得的作用力判斷點(diǎn)并將受到作用力判斷處理的多邊形(步驟203a)。
其后,通過(guò)插值計(jì)算可以重新計(jì)算出作用力判斷點(diǎn)的高度和主題多邊形的法向矢量(步驟203b)。接下來(lái)將對(duì)其計(jì)算方法進(jìn)行說(shuō)明。
如圖5所示,取多邊形ABC作為主題多邊形,取P(Px,Pz)作為位于此多邊形中的作用力判斷點(diǎn)。如果將判斷點(diǎn)P取成與x軸平行,則其將會(huì)碰到多邊形ABC的邊線AB或邊線BC。相應(yīng)交點(diǎn)被分別標(biāo)注為PAB和PBC。我們現(xiàn)在考慮的是例如由邊線AB和y軸所構(gòu)成的二維系統(tǒng)。如圖5和6所示,可以假設(shè)有一條連接點(diǎn)A處高度為YA的線段頂點(diǎn)和點(diǎn)B處的高度為YB的線段頂點(diǎn)的曲線。此曲線被稱作脊線。
通過(guò)引入一個(gè)在點(diǎn)A處等于0而在點(diǎn)B處等于1的位置參數(shù)t,可以假設(shè)出表示上述脊線的公式fAB(t)fAB(t)=Y(jié)=at3+bt2+ct+d (1)(見圖6)。由邊界條件,其能夠確定f(0)=d=Y(jié)A=點(diǎn)A處的高度f(wàn)(1)=a+b+c+d=Y(jié)B=點(diǎn)B處的高度f(wàn)’(0)=c=nA=點(diǎn)A處的法線梯度f(wàn)’(1)=3a+2b+c=nB=點(diǎn)B處的法線梯度由此,可以計(jì)算出各系數(shù)a=2YA-2YB+nA+nBb=-3YA+3YB-2nA-nBc=nAd=Y(jié)A因此,由于事先提供了點(diǎn)A,B處的高度YA,YB以及法線梯度nA,nB,所以可以計(jì)算出系數(shù)a,b,c,d。因此,可以實(shí)時(shí)地計(jì)算出所需的表示了與點(diǎn)A,B有關(guān)的脊線的系數(shù)a,b,c,d,或者也可以事先計(jì)算出這些系數(shù)并將其以系數(shù)表數(shù)據(jù)的形式存儲(chǔ)在存儲(chǔ)器中,并在需要的時(shí)候再將其讀出。從處理速度的角度來(lái)看,后一種方法有其優(yōu)勢(shì)。
通過(guò)將計(jì)算出的或讀出的系數(shù)值a,b,c,d代入到公式(1)中的函數(shù)fAB中,便可以求出交點(diǎn)PAB處的函數(shù)值fAB(PAB)。因此,點(diǎn)PAB的坐標(biāo)則為(Px’,fAB(P’),Pz)。其中,Px’為P與AB之間當(dāng)P沿X軸移動(dòng)時(shí)的交點(diǎn)的坐標(biāo)位置。此時(shí)該函數(shù)值為P’。
另外,利用如下公式,通過(guò)對(duì)點(diǎn)A和B處的法向矢量NA和NB進(jìn)行線性插值計(jì)算出交點(diǎn)PAB處的法向矢量Np’,矢量Np’=[(1-tP)NA+tPNB]/|(NA+NB)| (2)根據(jù)由另一邊線BC所形成的脊線,以類似于上述方法的方式計(jì)算出交點(diǎn)PBC的坐標(biāo)和另一邊線BC上的法向矢量。
另外,對(duì)于上述兩個(gè)交點(diǎn)PAB和PBC之間的線段PABPBC,可以假設(shè)有一條如圖7所示由三次方程給定的脊線,而以類似于上述方法的方式,根據(jù)此脊線則可以計(jì)算出判斷點(diǎn)P處的y坐標(biāo)(高度)和法向矢量(大小,方向)。以此方式,可以從多邊形頂點(diǎn)的高度信息和法向矢量信息中簡(jiǎn)單地推導(dǎo)出與判斷點(diǎn)P處的y坐標(biāo)(高度)和法向矢量有關(guān)的信息。
另外,除了將此計(jì)算過(guò)程中所用的主題多邊形的邊線僅限于邊線AB和邊線BC之外,其也可以通過(guò)將作用力判斷點(diǎn)P取成與z軸平行來(lái)用邊線AC和邊線AB進(jìn)行計(jì)算。簡(jiǎn)言之,可以用任何兩條邊線來(lái)進(jìn)行計(jì)算。
此后,在圖3中,CPU101執(zhí)行用于根據(jù)車道表面上的凸起(凹坑)來(lái)對(duì)作用力判斷點(diǎn)P處的高度和法向矢量進(jìn)行精細(xì)校正的處理(步驟203c,203d,203e)。通過(guò)將用于生成凸起的紋理的光線和陰影看作是代表了車道表面上的凹坑的高度信息來(lái)執(zhí)行此校正處理,而此處理被稱作凸起處理。此處理的特征是應(yīng)用于多邊形上的紋理的多種屬性被用于凸起校正(換句話說(shuō),最后用于作用力判斷),而除了上述紋理的光線和陰影以外,其還可以通過(guò)將作為紋理提供的諸如玻璃,石頭等物件作為凸起信息來(lái)執(zhí)行凸起校正。
在步驟203c中,其可以利用一個(gè)標(biāo)志或諸如此類的方法來(lái)確定在當(dāng)前所正在處理的多邊形內(nèi)是否已施加了凸起紋理。如果沒(méi)有施加凸起紋理(NO),則將跳過(guò)步驟203d。而如果施加了凸起紋理(YES),則在步驟203d,將根據(jù)該凸起紋理計(jì)算出作用力判斷位置上的高度和法向矢量。接下來(lái)將對(duì)此計(jì)算過(guò)程進(jìn)行詳細(xì)地說(shuō)明。
通常,如圖8所示,在紋理的uv坐標(biāo)系和多邊形的xz坐標(biāo)系中,利用如下矩陣M,M^來(lái)表示三點(diǎn)圖象。換句話說(shuō),從uv坐標(biāo)系到xz坐標(biāo)系的變換矩陣為M=m00m010m10m110m20m211]]>而從xz坐標(biāo)系到uv坐標(biāo)系的變換矩陣為M‾=m‾00m‾010m‾01m‾110m‾20m‾211]]>如果如圖9所示選中了對(duì)應(yīng)于uv坐標(biāo)系中的作用力判斷位置的點(diǎn)(u0,v0)周圍的四個(gè)象素,則這四個(gè)象素的高度數(shù)據(jù)分別為T00,T10,T11和T01。
通過(guò)對(duì)與平行于v軸的一邊線上的兩個(gè)象素相對(duì)應(yīng)的高度數(shù)據(jù)T00-T10以及與另一條這樣的邊線上的兩個(gè)象素相對(duì)應(yīng)的高度數(shù)據(jù)T01-T11進(jìn)行線性插值,可以分別計(jì)算出位置v0處的高度Tu0,Tu1。
類似地,通過(guò)對(duì)與平行于u軸的一邊線上的兩個(gè)象素相對(duì)應(yīng)的高度數(shù)據(jù)T00-T01以及與另一條這樣的邊線上的兩個(gè)象素相對(duì)應(yīng)的高度數(shù)據(jù)T10-T11進(jìn)行線性插值,可以分別計(jì)算出位置u0處的高度T0v,T1v。
此后,從進(jìn)行插值計(jì)算所得的此高度數(shù)據(jù)中,可以推導(dǎo)出平行于u軸所畫的一條線段的高度數(shù)據(jù)Tu0-Tu1的梯度并將其取為點(diǎn)(u0,v0)處沿u軸方向的導(dǎo)數(shù)值(等于梯度)。另外,也可以推導(dǎo)出平行于v軸所畫的一條線段的高度數(shù)據(jù)T0v-T1v的梯度并將其取為點(diǎn)(u0,v0)處沿v軸方向的導(dǎo)數(shù)值。
將這兩個(gè)梯度轉(zhuǎn)換為沿u軸和v軸方向的切向矢量du,dv,并利用如上所述的矩陣M將這兩個(gè)矢量從紋理uv坐標(biāo)系變換到多邊形xz坐標(biāo)系中。
另外,與轉(zhuǎn)換所得到的兩個(gè)切向矢量du,dv均垂直相交的直線則成為作用力判斷點(diǎn)P(Px,Py)處的凸起校正法向矢量(見圖10)。通過(guò)對(duì)四個(gè)象素的高度數(shù)據(jù)進(jìn)行雙線性插值可以推導(dǎo)出作用力判斷點(diǎn)P(Px,Py)的凸起校正高度。
此后,CPU101運(yùn)行到圖3所示的步驟203e,在此根據(jù)步驟203b中所計(jì)算出的多邊形的插值數(shù)據(jù)(高度,法向矢量)以及步驟203d中所計(jì)算出的凸起插值數(shù)據(jù)(高度,法向矢量)合成出作用力判斷位置的最終高度和法向矢量。對(duì)于高度,則是將這兩個(gè)值相加或相減。
另一方面,對(duì)法向矢量進(jìn)行如下變換。將根據(jù)多邊形的插值所得到的法向矢量取作矢量n,而將通過(guò)凸起插值所得到的法向矢量取作矢量m。由于假定矢量m的方向?yàn)槭噶縩指向(0,1,0)時(shí)的法線方向,所以可以根據(jù)此關(guān)系推導(dǎo)出將(0,1,0)變換為矢量n(見圖11)的變換矩陣。隨后便利用此變換矩陣來(lái)對(duì)矢量m進(jìn)行變換。變換所得的矢量m便構(gòu)成了最終合成所得的法向矢量。
以此方式,通過(guò)凸起校正可以對(duì)在多邊形內(nèi)進(jìn)行插值所得的高度和法向矢量數(shù)據(jù)進(jìn)行更精細(xì)地校正。作為此處理的結(jié)果所得到的作用力判斷位置的最終高度數(shù)據(jù)和法向矢量數(shù)據(jù)將被用于確定車輛輪胎與主題多邊形之間作用力(圖3;步驟203f)。
通過(guò)重復(fù)地以均勻的短時(shí)間間隔來(lái)執(zhí)行如上所述的一系列作用力判斷處理步驟,可以對(duì)游戲者的汽車和對(duì)手汽車的每個(gè)輪胎進(jìn)行連續(xù)的作用力判斷。
根據(jù)本實(shí)施例,首先,對(duì)多邊形數(shù)據(jù)進(jìn)行插值得到作用力判斷位置上的高度和法向矢量。因此,由于與常規(guī)方法相比作為作用力判斷方向所提供的法向矢量的方向可以更加平滑地改變,所以即使當(dāng)作用力判斷位置從一個(gè)多邊形轉(zhuǎn)換到另一個(gè)多邊形而兩個(gè)多邊形表面之間又存在角度差時(shí),作用力判斷的方向也可以平滑地改變,由此與常規(guī)方法相比作用力判斷的精度得到了提高,所以其能夠抑制異樣效果的產(chǎn)生。
因此在本實(shí)施例中,采用兩級(jí)校正方法,通過(guò)其將利用構(gòu)成了紋理屬性的光線和陰影數(shù)據(jù)對(duì)如上所述根據(jù)多邊形進(jìn)行插值所得的高度和法向矢量進(jìn)行進(jìn)一步的凸起校正。因此,當(dāng)平滑地實(shí)現(xiàn)了車道表面的高度上的大范圍變化后,將利用精確反應(yīng)了車道表面中的精細(xì)凹坑的高度和法向矢量數(shù)據(jù)來(lái)執(zhí)行作用力判斷,并由此可以得到很高的作用力判斷精度,并且能夠更精確地以表現(xiàn)出車道表面屬性的方式來(lái)模擬出車輛的行為。
本發(fā)明的另一個(gè)優(yōu)點(diǎn)是其并不總是需要如上所述同時(shí)使用根據(jù)多邊形數(shù)據(jù)的插值處理以及根據(jù)紋理的插值處理,即使在只獨(dú)立地執(zhí)行這些處理中的一種的情況下,其作用力判斷處理的精度與常規(guī)的作用力判斷相比也高了許多。(用于產(chǎn)生塵云的處理)接下來(lái)將根據(jù)圖2所示的步驟204對(duì)用于產(chǎn)生塵云的處理進(jìn)行說(shuō)明。在如上所述完成了作用力判斷處理之后,為了在顯示屏上產(chǎn)生更逼真的視覺感受,CPU101將執(zhí)行作為賽車游戲的特效處理之一的塵云生成處理。下面將參照?qǐng)D12到16對(duì)此處理進(jìn)行說(shuō)明。本處理的大致概要如圖12所示。
首先,在存儲(chǔ)器中事先存儲(chǔ)了作為用于表示塵云的多邊形數(shù)據(jù)的網(wǎng)格形狀的一組多邊形。圖13所示為這樣一組多邊形的一個(gè)簡(jiǎn)例,其形成了其中垂直方向R代表了煙塵的分辨率維向,而水平方向T則代表了時(shí)間軸維向的二維映射。為了給出一個(gè)具體的例子,垂直方向上的多邊形的數(shù)目Rmax=5,而水平方向上的多邊形的數(shù)目Tmax=20。可以根據(jù)顯示器的精度和計(jì)算負(fù)擔(dān)來(lái)合適地確定多邊形的上述數(shù)目。
在塵云計(jì)算的過(guò)程中分別為每個(gè)多邊形的頂點(diǎn)指定了其當(dāng)前空間位置,速度和其它參數(shù)。這些參數(shù)的數(shù)目以及代表了垂直方向上的分辨率和水平方向上的時(shí)間的多邊形的數(shù)目越大,則塵云的模擬將變得更準(zhǔn)確。由于實(shí)施了通過(guò)其塵云中的該組多邊形響應(yīng)于多種因素而在顯示過(guò)程中改變形狀的處理,用于將網(wǎng)格中每個(gè)多邊形的頂點(diǎn)相互連在一起的連接信息被用作圖象數(shù)據(jù)。這樣作將使得塵云可以作為一個(gè)整體來(lái)改變形狀。
現(xiàn)在假設(shè)其中塵云是由車輛前輪向上揚(yáng)起的。首先,前輪接地面的位置和從輪胎相對(duì)于車道表面的自轉(zhuǎn)速率中推導(dǎo)出的初始速度和一個(gè)隨機(jī)數(shù)被指派給屬于分辨率R方向上位于時(shí)間軸位置T=0處一列的多邊形集合中的每一個(gè)多邊形(圖12,步驟2031)。此后,時(shí)間軸上的位置平移到T=1,并為位于分辨率R方向上在T=1處的一列中的每個(gè)多邊形設(shè)置位置和速度。具體地說(shuō),通過(guò)將在當(dāng)前幀顯示中所要獲得的各種塵云參數(shù)加到為前一幀顯示所處理的在T=0位置上的每個(gè)多邊形的位置和速度上便可以確定位置T=1上的每個(gè)多邊形(步驟2302)。這里,諸如自然風(fēng)的方向和強(qiáng)度,由重力所引起的加速度,空氣阻力以及諸如此類的因素,均被用作上述參數(shù)。在需要時(shí)可以從操作信息,當(dāng)前汽車速度以及諸如此類的信息中推導(dǎo)出這些參數(shù)。由此,可以在第二列T=1中的多邊形提供反應(yīng)了前一處理步驟過(guò)程中前一列中的多邊形的運(yùn)動(dòng)的運(yùn)動(dòng)狀態(tài)。
以類似方式從第三列位置T=2開始重復(fù)上述計(jì)算直到第n+1列的位置T=n處(例如n=10)。換句話說(shuō),對(duì)T=2處的每個(gè)多邊形均指定了通過(guò)將塵云參數(shù)加到前一處理步驟中T=1處的多邊形的位置和速度上所得到的位置和速度。另外,T=3處的每個(gè)多邊形被指定了通過(guò)將塵云參數(shù)加到前一處理步驟中T=2處的多邊形的位置和速度上所得到的位置和速度。以此方式重復(fù)進(jìn)行上述計(jì)算直到最后T=n處的每個(gè)多邊形被指定了通過(guò)將塵云參數(shù)加到前一處理步驟中T=n-1處的多邊形的位置和速度上所得到的位置和速度。
利用此一系列的計(jì)算可以重構(gòu)出每個(gè)多邊形集合的頂點(diǎn)的位置以利用將各頂點(diǎn)連在一起的連接數(shù)據(jù)形成出代表了塵云的物體(步驟2033)。由此,該物體回復(fù)到單一形狀,在顯示其時(shí)其頂點(diǎn)將如同塵云一樣移動(dòng)。
另外,將對(duì)以上述方式轉(zhuǎn)換所得的多邊形集合進(jìn)一步進(jìn)行多種處理以調(diào)節(jié)該塵云的外觀(步驟2034)。此處理包括(1)用于在多邊形沿時(shí)間軸T移動(dòng)時(shí)增大透明度的處理;(2)用于以當(dāng)從人行道方向?qū)m云作為一個(gè)整體來(lái)看時(shí)其最上方的多邊形和背景之間的邊界并不十分顯著的方式沿向上方向增大透明度的處理;(3)用于為了在攝像機(jī)視點(diǎn)進(jìn)入到塵云的氣體中之后不致產(chǎn)生異樣效果而將具有相同顏色的煙霧用作煙塵并使得此煙霧的密度向塵云中心不斷增大的處理;以及諸如此類的處理。
因此,在本實(shí)施例中,塵云由一組多邊形來(lái)表示,而通過(guò)利用物理計(jì)算來(lái)設(shè)置每個(gè)多邊形的頂點(diǎn)并使得該組多邊形在其之后留下一條尾跡而顯示出塵云。具體地說(shuō),在進(jìn)行物理計(jì)算時(shí),將前一處理周期中的前一列多邊形的運(yùn)動(dòng)反應(yīng)在下一列多邊形中,另外主要應(yīng)用的是塵云的參數(shù)值,也應(yīng)用了諸如風(fēng)向和風(fēng)強(qiáng),由重力引起的加速度,空間阻力及諸如此類的環(huán)境因素。因此,如圖14和圖15所示,將塵云SS顯示成在車輛后部留下一條隨著向觀察者靠近而不斷增大的尾跡,其形狀將根據(jù)多種塵云參數(shù)值而自由地變化。由于這些頂點(diǎn)的運(yùn)動(dòng)是利用物理計(jì)算來(lái)確定的,所以與常規(guī)裝置相比塵云作為一個(gè)整體的行為(上升,翻滾)將表現(xiàn)的更為自然,因此其能夠從實(shí)際上消除掉由于塵云的仿真顯示所產(chǎn)生的異樣效果。
該塵云作為整體還沿向上方向和向后方向增大其透明度。換句話說(shuō),所顯示的塵云的微粒密度沿這兩個(gè)方向均不斷減小,因此該塵云的輪廓是以一種模糊方式來(lái)顯示的。由此,其能夠消除掉常規(guī)裝置所產(chǎn)生的其中塵云和周圍環(huán)境之間的邊界太明顯所造成的不自然的印象。利用此方法,還大大提高了在描繪塵云方面的真實(shí)性。
另外如圖16所示,當(dāng)游戲者的汽車被一輛正在加速的對(duì)手汽車EC超過(guò)時(shí),位于游戲者汽車內(nèi)的游戲者所在位置上的攝像機(jī)視點(diǎn)可能會(huì)完全進(jìn)入到由對(duì)手汽車所揚(yáng)起的塵云中。在此種情況中,根據(jù)常規(guī)方法,其只能顯示出造成一種游戲者進(jìn)入到一條中空的煙塵隧道中假象的畫面。然而,在本實(shí)施例中,則施加了具有與塵云相同顏色的煙霧,所顯示的是其中煙霧的密度向塵云中心不斷增大的畫面,因此其能夠表現(xiàn)出進(jìn)入到塵云中心位置時(shí)的真實(shí)狀態(tài)。從而可以消除掉由常規(guī)方法所產(chǎn)生的異樣效果,描繪了及其真實(shí)的塵云,由此提高了游戲的真實(shí)性,另外,利用此種煙霧處理,其能夠利用畫面剪裁(利用其在某物體運(yùn)動(dòng)到超出畫面某一距離之外時(shí)便不再顯示該物體的處理),而能夠在減小計(jì)算處理量的同時(shí)避免顯示不自然的效果。
另外,當(dāng)采用的是四輪驅(qū)動(dòng)車輛時(shí),將會(huì)從所有四個(gè)車輪中產(chǎn)生塵云,但當(dāng)該汽車向前行進(jìn)時(shí),由后輪所產(chǎn)生的塵云的多邊形將與前輪所產(chǎn)生的塵云的多邊形混合在一起,因此可以不用再產(chǎn)生這些塵云多邊形。而另一方面當(dāng)汽車倒車時(shí),其則能夠不用產(chǎn)生由前輪所產(chǎn)生的塵云多邊形。
接下來(lái),將根據(jù)圖2中所示的步驟205對(duì)用于顯示發(fā)散光的處理進(jìn)行說(shuō)明。緊接著塵云生成處理,CPU101通過(guò)執(zhí)行作為用于賽車游戲的特效處理之一的用于描繪發(fā)散光的處理而在顯示器中表現(xiàn)出真實(shí)性的視覺感受。現(xiàn)在將根據(jù)圖17-21對(duì)此處理進(jìn)行說(shuō)明。圖17所示為其中所涉及的處理序列的概要。
圖18所示為虛擬三維空間中車輛與攝像機(jī)視點(diǎn)之間位置關(guān)系的示意圖。令Mc為表示了車輛空間位置的矩陣,而令Me為表示了攝像機(jī)視點(diǎn)的空間位置的矩陣。這些矩陣如下所示Mc=mc00mc01mc02mc10mc11mc12mc20mc21mc22mc30mc31mc32]]>Me=me00me01me02me10me11me12me20me21me22me30me31me32]]>首先,如圖19(a)和(b)各示例所示,先確定車輛和攝像機(jī)視點(diǎn)的各自方向矢量Vc(光源的方向),Ve(圖17;步驟2041)。這些方向矢量指示了車輛方向(所要顯示的光源的方向)以及攝像機(jī)視點(diǎn)在游戲空間內(nèi)所朝向的方向,通過(guò)將(0,0,1)乘以各自矩陣Mc,Me中的方向分量可以推導(dǎo)出這些方向矢量,即,Vc=(001)mc00mc01mc02mc10mc11mc12mc30mc21mc22]]>=(mc00mc10mc20)Ve=(001)me00me01me02me10me11me12me20me21me22]]>=(me00me10me20)其后便可以確定這兩個(gè)方向矢量之間的角度(步驟2042)。具體地說(shuō),通過(guò)計(jì)算這兩個(gè)方向矢量的內(nèi)積并確定出該方向的余弦便可以推導(dǎo)出此角度。
換句話說(shuō),此方向的余弦可以由如下公式來(lái)計(jì)算cosθ=(Vc·Ve)÷(|Vc|×|Ve|)=(mc00me00+mc10me10+mc20me20)÷=[(mc002+mc102+mc202)1/2×(mc002+mc102+mc202)1/2]由上述計(jì)算結(jié)果,此角度的正弦的計(jì)算公式如下sinθ=(1-cos2θ)1/2(步驟2043)其后,便可以確定其倒數(shù),1/sinθ(步驟2044)。此函數(shù)1/sinθ形成了一條當(dāng)兩個(gè)方向矢量Vc,Ve相互平行時(shí)趨向于無(wú)窮的曲線(見圖20)。此函數(shù)起到了如下所述與發(fā)散光顯示物體有關(guān)的放大系數(shù)的作用。
此后,將一個(gè)單獨(dú)的光源多邊形PGL(優(yōu)選地,每個(gè)光源使用一個(gè)多邊形)定位在諸如車輛前燈或諸如此類光源的位置上,并實(shí)施其中由函數(shù)1/sinθ沿與視線垂直相交的平面的方向?qū)υ摴庠炊噙呅芜M(jìn)行放大的處理(步驟2045)。由于光源多邊形并不總是垂直于視線矢量,所以在上述放大處理中要計(jì)算出光多邊形與光源多邊形之間所形成的角度(車輛的方向矢量),將光多邊形放大并根據(jù)此角度將其變?yōu)闄E圓形狀(在虛擬三維空間中,X軸方向或Y軸方向以橢圓形狀來(lái)進(jìn)行放大)。如果光源多邊形與視線矢量垂直(換句話說(shuō),如果光源多邊形正朝向視線矢量),則將執(zhí)行用于以圓形放大光源多邊形的處理。對(duì)該光源多邊形進(jìn)行映射以使其從其邊緣上的透明狀態(tài)變?yōu)橄蚱渲行奶幍哪:庠搭伾珷顟B(tài)。
由此,如圖21(b)和(c)所示,當(dāng)攝像機(jī)視點(diǎn)與車輛之間的角度(光源的方向)接近平行時(shí),從光源發(fā)散出的光線的狀態(tài)將以增長(zhǎng)速率從橢圓形到無(wú)限大圓形來(lái)變化。另外,由于位于該發(fā)散光中心處的發(fā)光源是模糊不清的,所以其可以用最亮點(diǎn)來(lái)表示。圖21(a)所示為如上所述與光源有關(guān)的計(jì)算處理的初始狀態(tài),而在此狀態(tài)中,光源的形狀是小直徑的圓形或橢圓形。因此,其能夠可靠地傳達(dá)給正在觀看畫面的游戲者(虛構(gòu)攝像機(jī)視點(diǎn)處的觀察者)以一種發(fā)散光的方向性印象,而由于此印象與通常在真實(shí)汽車所感受到的感覺十分類似,所以其將十分可靠地改善車輛行為所表現(xiàn)出的真實(shí)性感覺。光源形狀的變化并不僅局限于此處所描述的形式,其也可以采用其它多種類型的形狀,如星形或諸如此類。
具體地說(shuō),由于將發(fā)散光表示為當(dāng)光發(fā)射狀態(tài)處于攝像機(jī)視點(diǎn)與車輛方向重合時(shí)的狀態(tài)時(shí)將變得大于顯示屏,從而其將對(duì)游戲者產(chǎn)生很大的印象,由此增加游戲者對(duì)游戲本身的興趣并提供出以自然方式所看到的圖象。
另外,用于表示發(fā)散光的這種處理與常規(guī)方法相比較明顯不同,盡管其產(chǎn)生了十分顯著的視覺沖擊,但該處理計(jì)算方法仍舊是基于用于放大單個(gè)多邊形的處理,因此仍十分簡(jiǎn)單。此方法特征在于其中所涉及的計(jì)算負(fù)擔(dān)將會(huì)很小而其處理速度很快。
用于表示發(fā)散光的處理并不局限于車輛的前燈,其當(dāng)然也可以應(yīng)用于汽車的尾燈,或其同時(shí)應(yīng)用于這兩種車燈。另外,用于表示發(fā)散光的此處理可以被十分滿意地應(yīng)用于,其中表現(xiàn)了比如從戰(zhàn)機(jī)游戲中的飛機(jī)座艙的玻璃表面所反射的太陽(yáng)光的發(fā)散狀態(tài)的情況中。
本發(fā)明并不局限于游戲裝置中構(gòu)成了執(zhí)行賽車游戲的圖象生成裝置的實(shí)施例。也可以將其滿意地應(yīng)用于任何其中在虛擬三維空間中一個(gè)運(yùn)動(dòng)物體沿所設(shè)定的行進(jìn)路徑運(yùn)動(dòng),例如水上賽艇,滑板游戲等諸如此類的游戲裝置中。
另外,除了塵云之外還可以將本發(fā)明應(yīng)用于水霧。其還可以應(yīng)用于煙霧。簡(jiǎn)言之,可以將其應(yīng)用于顯示任何從某一運(yùn)動(dòng)物體中所發(fā)出的描繪了此運(yùn)動(dòng)結(jié)果的現(xiàn)象。
作為本發(fā)明中的存儲(chǔ)介質(zhì),其還可以包括任何其它存儲(chǔ)裝置,例如硬盤、卡式ROM、CD-ROM或諸如此類的常見存儲(chǔ)介質(zhì),或通信介質(zhì)(因特網(wǎng),個(gè)人電腦通信網(wǎng)絡(luò),或位于這些網(wǎng)絡(luò)中的服務(wù)器上的信息,等等)。
如上所述,根據(jù)本發(fā)明,其能夠提供一種通過(guò)其在不顯著增加其中所涉及的計(jì)算負(fù)擔(dān)或數(shù)據(jù)量的情況下可以更逼真地表現(xiàn)與構(gòu)成了移動(dòng)體的車輛與其周圍環(huán)境之間的相互影響有關(guān)的因素的圖象生成裝置和圖象生成方法,由此根據(jù)運(yùn)動(dòng)車輛的主題可以增加游戲中真實(shí)性感受,并提高游戲者對(duì)游戲的興趣。
具體地說(shuō),通過(guò)實(shí)施其中防止當(dāng)一部車穿過(guò)兩個(gè)多邊形的結(jié)點(diǎn)時(shí)在作用力判斷處理過(guò)程中判斷方向發(fā)生突變而不易產(chǎn)生異樣效果的更自然的作用力判斷處理,以及實(shí)施其中將車道表面上的凹坑考慮在內(nèi)的作用力判斷處理,而使得與現(xiàn)有技術(shù)相比,在表現(xiàn)車輛行為方面其能夠顯著地提高真實(shí)性和確實(shí)性。
另外通過(guò)描繪出塵云由微粒構(gòu)成的感覺,其還能夠消除掉由常規(guī)方法平滑或不真實(shí)外觀的塵云所產(chǎn)生的異樣效果,再者,當(dāng)從攝像機(jī)視點(diǎn)觀看時(shí),即使當(dāng)攝像機(jī)視點(diǎn)位于塵云內(nèi)部時(shí)其也能夠在不產(chǎn)生異樣效果的情況下來(lái)表示出塵云。
另外,其還能夠以動(dòng)態(tài)方式來(lái)生成從運(yùn)動(dòng)車輛上,如前燈、尾燈發(fā)射出的具有一定方向的發(fā)散光,或反射光的圖象,并由此能夠以更逼真的方式來(lái)表示發(fā)散光。
權(quán)利要求書1.一種圖象生成裝置,包括用于建立虛擬三維空間中由多邊形所表示的某個(gè)物體與行進(jìn)路徑之間的作用力狀態(tài)的作用力建立裝置;以及用于生成表示其中所述物體在保持上述作用力狀態(tài)的同時(shí)沿所述行進(jìn)路徑運(yùn)動(dòng)的狀態(tài)的圖象數(shù)據(jù)的生成裝置;其中所述作用力建立裝置包括用于通過(guò)對(duì)指派給所述行進(jìn)路徑的多邊形各頂點(diǎn)的頂點(diǎn)數(shù)據(jù)進(jìn)行插值而確定所述物體的作用力位置上的作用力建立數(shù)據(jù)的插值裝置;以及用于根據(jù)由所述插值裝置進(jìn)行插值所得的作用力建立數(shù)據(jù)來(lái)表示出所述物體在所述行進(jìn)路徑上的作用力的作用力表示裝置。
2.如權(quán)利要求1所述的圖象生成裝置,其特征在于所述頂點(diǎn)數(shù)據(jù)包括每個(gè)頂點(diǎn)的高度和法向矢量,而所述作用力建立數(shù)據(jù)則包括所述作用力位置的高度和法向矢量。
3.如權(quán)利要求1或2所述的圖象生成裝置,其特征在于所述插值裝置包括用于分別指定所述多邊形的從所述作用力位置開始平行于坐標(biāo)軸延伸并垂直相交的兩個(gè)邊線的裝置;用于根據(jù)所述邊線的每個(gè)末端的頂點(diǎn)數(shù)據(jù)設(shè)定第一和第二脊線的裝置;用于確定所述脊線與所述兩個(gè)邊線的交點(diǎn)的各自數(shù)據(jù)的裝置;用于指定其端點(diǎn)在與所述兩邊線的交點(diǎn)上的第三脊線線段的裝置;以及用于根據(jù)此第三脊線上的所述各交點(diǎn)的各自數(shù)據(jù)確定出在所述作用力判斷位置的所述作用力建立數(shù)據(jù)的裝置。
4.如權(quán)利要求3所述的圖象生成裝置,其特征在于第一到第三脊線由三次方程來(lái)給定。
5.一種圖象生成裝置,包括
用于建立虛擬三維空間中由多邊形所表示的某個(gè)物體與行進(jìn)路徑之間的作用力狀態(tài)的作用力建立裝置;以及用于生成表示其中所述物體在保持上述作用力狀態(tài)的同時(shí)沿所述行進(jìn)路徑運(yùn)動(dòng)的狀態(tài)的圖象數(shù)據(jù)的圖象數(shù)據(jù)生成裝置;其中所述作用力建立裝置包括用于根據(jù)由所述多邊形所表示的所述行進(jìn)路徑的屬性來(lái)對(duì)所述物體的作用力位置上的作用力建立數(shù)據(jù)進(jìn)行校正的校正裝置;以及用于根據(jù)由所述校正裝置進(jìn)行校正所得的所述作用力建立數(shù)據(jù)來(lái)表示出所述物體在所述行進(jìn)路徑上的作用力的作用力表示裝置。
6.如權(quán)利要求5所述的圖象生成裝置,其特征在于所述作用力建立數(shù)據(jù)為所述作用力位置的高度和法向矢量。
7.如權(quán)利要求5所述的圖象生成裝置,其特征在于所述行進(jìn)路徑的所述屬性是行進(jìn)路徑中的凹坑,而作為紋理所提供的用來(lái)粘貼到所述多邊形上的光線和陰影數(shù)據(jù)則被用作所述凹坑的信息。
8.一種圖象生成裝置,包括用于建立虛擬三維空間中由多邊形所表示的某個(gè)物體與行進(jìn)路徑之間的作用力狀態(tài)的作用力建立裝置;以及用于生成表示其中所述物體在保持上述作用力狀態(tài)的同時(shí)沿所述行進(jìn)路徑運(yùn)動(dòng)的狀態(tài)的圖象數(shù)據(jù)的圖象數(shù)據(jù)生成裝置;其中所述作用力建立裝置包括用于通過(guò)對(duì)指派給所述行進(jìn)路徑的多邊形各頂點(diǎn)的頂點(diǎn)數(shù)據(jù)進(jìn)行插值而確定所述物體的作用力位置上的作用力建立數(shù)據(jù)的插值裝置;用于根據(jù)由所述多邊形所表示的所述行進(jìn)路徑的屬性對(duì)由所述插值裝置插值所得的作用力建立數(shù)據(jù)進(jìn)行校正的校正裝置;以及用于根據(jù)由所述校正裝置進(jìn)行校正所得的所述作用力建立數(shù)據(jù)來(lái)表示出所述物體在所述行進(jìn)路徑上的作用力的作用力表示裝置。
9.如權(quán)利要求8所述的圖象生成裝置,其特征在于所述作用力建立數(shù)據(jù)為所述作用力位置的高度和法向矢量。
10.(刪除)11.一種圖象生成裝置,包括用于根據(jù)在虛擬三維空間中運(yùn)動(dòng)的某物體的運(yùn)動(dòng)狀態(tài),對(duì)從所述物體上的光源發(fā)射出的發(fā)散光的圖象數(shù)據(jù)進(jìn)行控制的發(fā)散光控制裝置;以及用于生成代表了所述物體的運(yùn)動(dòng)狀態(tài)并包括發(fā)散光的此受控圖象數(shù)據(jù)在內(nèi)的圖象數(shù)據(jù)的生成裝置;其中所述發(fā)散光控制裝置包括用于確定代表了所述虛擬三維空間中所述光源方向的光源矢量以及代表了攝像機(jī)視點(diǎn)方向的視線矢量的裝置;用于將至少單獨(dú)多邊形表示為所述發(fā)散光的圖象數(shù)據(jù)的裝置;以及用于根據(jù)與兩個(gè)矢量之間的角度有關(guān)的信息改變所述多邊形大小的變形裝置。
12.如權(quán)利要求11所述的圖象生成裝置,其特征在于所述變形裝置是用于通過(guò)乘以一個(gè)當(dāng)所述兩個(gè)矢量彼此重合時(shí)趨向于無(wú)窮的系數(shù)來(lái)改變所述多邊形大小的裝置。
13.(刪除)14.一種圖象生成裝置,包括用于根據(jù)在虛擬三維空間中運(yùn)動(dòng)的某物體的運(yùn)動(dòng)狀態(tài),對(duì)由在虛擬三維空間中運(yùn)動(dòng)的物體所產(chǎn)生的塵云的圖象數(shù)據(jù)進(jìn)行控制的塵云控制裝置;以及用于生成代表了所述物體的運(yùn)動(dòng)狀態(tài)并包括此受控塵云圖象數(shù)據(jù)在內(nèi)的圖象數(shù)據(jù)的生成裝置;其中所述塵云控制裝置包括用于將所述塵云圖象數(shù)據(jù)表示為多個(gè)多邊形的裝置;用于確定由包括所述物體行為在內(nèi)的多種因素所施加的物理影響的大小程度的裝置;用于根據(jù)這些影響程度來(lái)計(jì)算所述多個(gè)多邊形各自行為的裝置;以及用于根據(jù)上述計(jì)算結(jié)果將所述多個(gè)多邊形連在一起并將其重構(gòu)成多邊形組的裝置。
15.如權(quán)利要求14所述的圖象生成裝置,其特征在于所述塵云控制裝置包括用于為了表現(xiàn)出與塵云外觀有關(guān)的透明度的變化和霧態(tài)形狀而對(duì)所述重構(gòu)所得的多邊形組進(jìn)行處理的裝置。
16.根據(jù)權(quán)利要求1到15任一條的圖象生成裝置,其特征在于所述物體為在所述虛擬三維空間運(yùn)動(dòng)進(jìn)行賽車的汽車。
17.一種用于生成在虛擬三維空間中沿行進(jìn)路徑運(yùn)動(dòng)的由多個(gè)多邊形所表示的物體的狀態(tài),而同時(shí)建立出所述物體與所述行進(jìn)路徑之間的作用力狀態(tài)的圖象數(shù)據(jù)的圖象生成方法,其中所述物體的作用力位置上的作用力建立數(shù)據(jù)是通過(guò)對(duì)指派給所述行進(jìn)路徑的多邊形各頂點(diǎn)的頂點(diǎn)數(shù)據(jù)進(jìn)行插值來(lái)確定的,而所述物體在所述行進(jìn)路徑上的作用力則是根據(jù)插值所得的此作用力建立數(shù)據(jù)來(lái)表示的。
18.一種用于生成在虛擬三維空間中沿行進(jìn)路徑運(yùn)動(dòng)的由多個(gè)多邊形所表示的物體的狀態(tài),而同時(shí)建立出所述物體與所述行進(jìn)路徑之間的作用力狀態(tài)的圖象數(shù)據(jù)的圖象生成方法,其中將根據(jù)由所述多邊形所表示的所述行進(jìn)路徑的屬性來(lái)對(duì)所述物體的作用力位置上的作用力建立數(shù)據(jù)進(jìn)行校正,而所述物體在所述行進(jìn)路徑上的作用力則是根據(jù)校正后的此作用力建立數(shù)據(jù)來(lái)表示的。
19.一種圖象生成方法,其中使從在虛擬三維空間中運(yùn)動(dòng)的某個(gè)物體上的光源所發(fā)射出的發(fā)散光的大小和亮度隨著所述發(fā)散光的方向接近所述空間中的攝像機(jī)視點(diǎn)的方向而不斷增大。
20.一種圖象生成方法,其中將使由在虛擬三維空間中運(yùn)動(dòng)的某個(gè)物體所產(chǎn)生的塵云隨著所述物體的行為變化而變化,同時(shí)還將使其透明感沿朝向其外邊緣的方向不斷增大。
權(quán)利要求
1.一種圖象生成裝置,包括用于建立虛擬三維空間中由多邊形所表示的某個(gè)物體與行進(jìn)路徑之間的作用力狀態(tài)的作用力建立裝置;以及用于生成表示其中所述物體在保持上述作用力狀態(tài)的同時(shí)沿所述行進(jìn)路徑運(yùn)動(dòng)的狀態(tài)的圖象數(shù)據(jù)的生成裝置;其中所述作用力建立裝置包括用于通過(guò)對(duì)指派給所述行進(jìn)路徑的多邊形各頂點(diǎn)的頂點(diǎn)數(shù)據(jù)進(jìn)行插值而確定所述物體的作用力位置上的作用力建立數(shù)據(jù)的插值裝置;以及用于根據(jù)由所述插值裝置進(jìn)行插值所得的作用力建立數(shù)據(jù)來(lái)表示出所述物體在所述行進(jìn)路徑上的作用力的作用力表示裝置。
2.如權(quán)利要求1所述的圖象生成裝置,其特征在于所述頂點(diǎn)數(shù)據(jù)包括每個(gè)頂點(diǎn)的高度和法向矢量,而所述作用力建立數(shù)據(jù)則包括所述作用力位置的高度和法向矢量。
3.如權(quán)利要求1或2所述的圖象生成裝置,其特征在于所述插值裝置包括用于分別指定所述多邊形的從所述作用力位置開始平行于坐標(biāo)軸延伸并垂直相交的兩個(gè)邊線的裝置;用于根據(jù)所述邊線的每個(gè)末端的頂點(diǎn)數(shù)據(jù)設(shè)定第一和第二脊線的裝置;用于確定所述脊線與所述兩個(gè)邊線的交點(diǎn)的各自數(shù)據(jù)的裝置;用于指定其端點(diǎn)在與所述兩邊線的交點(diǎn)上的第三脊線線段的裝置;以及用于根據(jù)此第三脊線上的所述各交點(diǎn)的各自數(shù)據(jù)確定出在所述作用力判斷位置的所述作用力建立數(shù)據(jù)的裝置。
4.如權(quán)利要求3所述的圖象生成裝置,其特征在于第一到第三脊線由三次方程來(lái)給定。
5.一種圖象生成裝置,包括用于建立虛擬三維空間中由多邊形所表示的某個(gè)物體與行進(jìn)路徑之間的作用力狀態(tài)的作用力建立裝置;以及用于生成表示其中所述物體在保持上述作用力狀態(tài)的同時(shí)沿所述行進(jìn)路徑運(yùn)動(dòng)的狀態(tài)的圖象數(shù)據(jù)的圖象數(shù)據(jù)生成裝置;其中所述作用力建立裝置包括用于根據(jù)由所述多邊形所表示的所述行進(jìn)路徑的屬性來(lái)對(duì)所述物體的作用力位置上的作用力建立數(shù)據(jù)進(jìn)行校正的校正裝置;以及用于根據(jù)由所述校正裝置進(jìn)行校正所得的所述作用力建立數(shù)據(jù)來(lái)表示出所述物體在所述行進(jìn)路徑上的作用力的作用力表示裝置。
6.如權(quán)利要求5所述的圖象生成裝置,其特征在于所述作用力建立數(shù)據(jù)為所述作用力位置的高度和法向矢量。
7.如權(quán)利要求5所述的圖象生成裝置,其特征在于所述行進(jìn)路徑的所述屬性是行進(jìn)路徑中的凹坑,而作為紋理所提供的用來(lái)粘貼到所述多邊形上的光線和陰影數(shù)據(jù)則被用作所述凹坑的信息。
8.一種圖象生成裝置,包括用于建立虛擬三維空間中由多邊形所表示的某個(gè)物體與行進(jìn)路徑之間的作用力狀態(tài)的作用力建立裝置;以及用于生成表示其中所述物體在保持上述作用力狀態(tài)的同時(shí)沿所述行進(jìn)路徑運(yùn)動(dòng)的狀態(tài)的圖象數(shù)據(jù)的圖象數(shù)據(jù)生成裝置;其中所述作用力建立裝置包括用于通過(guò)對(duì)指派給所述行進(jìn)路徑的多邊形各頂點(diǎn)的頂點(diǎn)數(shù)據(jù)進(jìn)行插值而確定所述物體的作用力位置上的作用力建立數(shù)據(jù)的插值裝置;用于根據(jù)由所述多邊形所表示的所述行進(jìn)路徑的屬性對(duì)由所述插值裝置插值所得的作用力建立數(shù)據(jù)進(jìn)行校正的校正裝置;以及用于根據(jù)由所述校正裝置進(jìn)行校正所得的所述作用力建立數(shù)據(jù)來(lái)表示出所述物體在所述行進(jìn)路徑上的作用力的作用力表示裝置。
9.如權(quán)利要求8所述的圖象生成裝置,其特征在于所述作用力建立數(shù)據(jù)為所述作用力位置的高度和法向矢量。
10.一種圖象生成裝置,包括用于根據(jù)在虛擬三維空間中運(yùn)動(dòng)的某物體的運(yùn)動(dòng)狀態(tài),對(duì)從所述物體上的光源發(fā)射出的發(fā)散光的圖象數(shù)據(jù)進(jìn)行控制的發(fā)散光控制裝置;以及用于生成代表了所述物體的運(yùn)動(dòng)狀態(tài)并包括發(fā)散光的此受控圖象數(shù)據(jù)在內(nèi)的圖象數(shù)據(jù)的生成裝置。
11.如權(quán)利要求10所述的圖象生成裝置,其特征在于所述發(fā)散光控制裝置包括用于確定代表了所述虛擬三維空間中所述光源方向的光源矢量以及代表了攝像機(jī)視點(diǎn)方向的視線矢量的裝置;用于將單獨(dú)多邊形表示為所述發(fā)散光的圖象數(shù)據(jù)的裝置;以及用于根據(jù)與兩個(gè)矢量之間的角度有關(guān)的信息改變所述多邊形大小的變形裝置。
12.如權(quán)利要求11所述的圖象生成裝置,其特征在于所述變形裝置是用于通過(guò)乘以一個(gè)當(dāng)所述兩個(gè)矢量彼此重合時(shí)趨向于無(wú)窮的系數(shù)來(lái)改變所述多邊形大小的裝置。
13.一種圖象生成裝置,包括用于根據(jù)在虛擬三維空間中運(yùn)動(dòng)的某物體的運(yùn)動(dòng)狀態(tài),對(duì)由在虛擬三維空間中運(yùn)動(dòng)的物體所產(chǎn)生的塵云的圖象數(shù)據(jù)進(jìn)行控制的塵云控制裝置;以及用于生成代表了所述物體的運(yùn)動(dòng)狀態(tài)并包括此受控塵云圖象數(shù)據(jù)在內(nèi)的圖象數(shù)據(jù)的生成裝置。
14.如權(quán)利要求13所述的圖象生成裝置,其特征在于所述塵云控制裝置包括用于將所述塵云圖象數(shù)據(jù)表示為多個(gè)多邊形的裝置;用于確定由包括所述物體行為在內(nèi)的多種因素所施加的物理影響的大小程度的裝置;用于根據(jù)這些影響程度來(lái)計(jì)算所述多個(gè)多邊形各自行為的裝置;以及用于根據(jù)上述計(jì)算結(jié)果將所述多個(gè)多邊形連在一起并將其重構(gòu)成多邊形組的裝置。
15.如權(quán)利要求14所述的圖象生成裝置,其特征在于所述塵云控制裝置包括用于為了表現(xiàn)出與塵云外觀有關(guān)的透明度的變化和霧態(tài)形狀而對(duì)所述重構(gòu)所得的多邊形組進(jìn)行處理的裝置。
16.根據(jù)權(quán)利要求1到15任一條的圖象生成裝置,其特征在于所述物體為在所述虛擬三維空間運(yùn)動(dòng)進(jìn)行賽車的汽車。
17.一種用于生成在虛擬三維空間中沿行進(jìn)路徑運(yùn)動(dòng)的由多個(gè)多邊形所表示的物體的狀態(tài),而同時(shí)建立出所述物體與所述行進(jìn)路徑之間的作用力狀態(tài)的圖象數(shù)據(jù)的圖象生成方法,其中所述物體的作用力位置上的作用力建立數(shù)據(jù)是通過(guò)對(duì)指派給所述行進(jìn)路徑的多邊形各頂點(diǎn)的頂點(diǎn)數(shù)據(jù)進(jìn)行插值來(lái)確定的,而所述物體在所述行進(jìn)路徑上的作用力則是根據(jù)插值所得的此作用力建立數(shù)據(jù)來(lái)表示的。
18.一種用于生成在虛擬三維空間中沿行進(jìn)路徑運(yùn)動(dòng)的由多個(gè)多邊形所表示的物體的狀態(tài),而同時(shí)建立出所述物體與所述行進(jìn)路徑之間的作用力狀態(tài)的圖象數(shù)據(jù)的圖象生成方法,其中將根據(jù)由所述多邊形所表示的所述行進(jìn)路徑的屬性來(lái)對(duì)所述物體的作用力位置上的作用力建立數(shù)據(jù)進(jìn)行校正,而所述物體在所述行進(jìn)路徑上的作用力則是根據(jù)校正后的此作用力建立數(shù)據(jù)來(lái)表示的。
19.一種圖象生成方法,其中使從在虛擬三維空間中運(yùn)動(dòng)的某個(gè)物體上的光源所發(fā)射出的發(fā)散光的大小和亮度隨著所述發(fā)散光的方向接近所述空間中的攝像機(jī)視點(diǎn)的方向而不斷增大。
20.一種圖象生成方法,其中將使由在虛擬三維空間中運(yùn)動(dòng)的某個(gè)物體所產(chǎn)生的塵云隨著所述物體的行為變化而變化,同時(shí)還將使其透明感沿朝向其外邊緣的方向不斷增大。
全文摘要
本發(fā)明包括用于建立在虛擬空間中由多邊形所表示的車輛與道路表面之間的作用力狀態(tài)的作用力建立裝置,以及用于生成表示了其中所述車輛沿道路表面運(yùn)動(dòng)而同時(shí)保持上述作用力狀態(tài)的狀態(tài)的圖象數(shù)據(jù)的生成裝置。該作用力建立裝置包括用于通過(guò)對(duì)道路表面多邊形的各頂點(diǎn)進(jìn)行插值而確定車輛在作用力位置上的作用力建立數(shù)據(jù)的插值裝置,用于根據(jù)道路表面的凹坑來(lái)對(duì)插值所得的作用力建立數(shù)據(jù)進(jìn)行校正的校正裝置,以及用于根據(jù)校正所得的作用力建立數(shù)據(jù)來(lái)表示出車輛在道路表面上的作用力的作用力表示裝置。
文檔編號(hào)G06T19/00GK1251674SQ98801716
公開日2000年4月26日 申請(qǐng)日期1998年11月6日 優(yōu)先權(quán)日1997年11月7日
發(fā)明者黑澤雅仁, 杉山一 申請(qǐng)人:世雅企業(yè)股份有限公司