專利名稱:三維圖像處理系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及三維圖像處理系統(tǒng)。更特別地本發(fā)明涉及依據(jù)模擬操縱桿那樣的操作裝置的操作構(gòu)件的傾斜方向及傾斜量、使顯示器上所顯示的物體尤如存在于三維空間中那樣移動(dòng)的、視頻游戲機(jī)那樣的三維圖像處理系統(tǒng)。
背景技術(shù):
以前的視頻游戲機(jī)中,通過(guò)在控制器上設(shè)置十字型鍵(上下左右四鍵)、并操作這十字型鍵來(lái)使顯示器上所顯示的物體移動(dòng)。這樣的十字型鍵是所謂的數(shù)字操縱桿,僅能指示物體的移動(dòng)方向,不能指示物體的移動(dòng)速度。
另外,也有一種相應(yīng)于按壓這種十字型鍵的時(shí)間長(zhǎng)短、使物體的移動(dòng)速度變化的方法。采用這種方法,每隔一定按壓時(shí)間,就以一定的加速度或一定的減速度來(lái)加速或減速物體。若采用這種方法,雖然用數(shù)字操縱桿也能控制物體的移動(dòng)方向和移動(dòng)速度,但存在下述缺點(diǎn)。即,在這種方法中,由于僅僅只能以由軟件方面的計(jì)算而確定的一定的加減速度來(lái)改變物體速度,所以,不能任意控制物體的移動(dòng)速度。此外,因?yàn)槭且罁?jù)按壓時(shí)間長(zhǎng)短來(lái)決定速度的,所以,如果不連續(xù)按壓十字型超過(guò)一定時(shí)間,應(yīng)答性能會(huì)不好。
因此,本專利申請(qǐng)者在平成2年(1990年)3月22日公開(kāi)申請(qǐng)的實(shí)開(kāi)平2-41342號(hào)中,提出一個(gè)技術(shù)方案,該技術(shù)是在十字型鍵的一個(gè)方向上設(shè)置三個(gè)接點(diǎn),然后利用相應(yīng)于十字型鍵的按壓時(shí)間量來(lái)改變所接通的接點(diǎn)這一點(diǎn),不僅可改變物體的移動(dòng)方向,而且可改變移動(dòng)速度。
然而,采用以前這些技術(shù),移動(dòng)方向被限定于上下左右四個(gè)方向(以及它們的中間方向),移動(dòng)速度也還只能以三個(gè)等級(jí)變化。也就是說(shuō),在這些以前的技術(shù)中,存在著移動(dòng)方向及移動(dòng)速度上的限制。
此外,大家知道有一種游戲機(jī),它將模擬操縱桿用作飛機(jī)的操縱桿來(lái)使用,但在這種游戲機(jī)中,模擬操縱桿僅僅只能控制飛機(jī)的傾斜度,不能控制移動(dòng)方向和移動(dòng)速度。
發(fā)明概述因此,本發(fā)明的主要目的在于提供應(yīng)答性好、并且移動(dòng)方向和移動(dòng)速度兩方面都可以任意控制的三維圖像處理系統(tǒng)。
本發(fā)明是包含有圖像處理裝置和操作裝置的三維圖像處理系統(tǒng)。圖像處理裝置被連接至顯示器,并依據(jù)程序產(chǎn)生將存在于三維空間中的物體顯示到顯示器的圖像數(shù)據(jù);操作裝置包含有其基端可以支承轉(zhuǎn)動(dòng)、且其自由端受操作者操作的操作構(gòu)件,并可相應(yīng)于操作構(gòu)件的動(dòng)作,使圖像數(shù)據(jù)產(chǎn)生變化。在該三維圖像處理系統(tǒng)中,操作裝置包含有檢測(cè)操作構(gòu)件的傾斜量、并輸出傾斜量數(shù)據(jù)的傾斜量數(shù)據(jù)輸出手段。圖像處理裝置具備基于傾斜量數(shù)據(jù)、決定三維空間中物體的移動(dòng)方向的方向決定手段;基于傾斜量數(shù)據(jù)、決定顯示的一幀中應(yīng)移動(dòng)物體的移動(dòng)量的移動(dòng)量決定手段;相應(yīng)于移動(dòng)方向和移動(dòng)量、決定三維空間中的物體的位置的位置決定手段;以及輸出在由位置決定手段所決定的位置上顯示物體的圖像數(shù)據(jù)的圖像數(shù)據(jù)輸出手段。
操作裝置是一種諸如模擬操縱桿的裝置,它包含其基端可支承在一定角度范圍內(nèi)轉(zhuǎn)動(dòng)、且其自由端可由操作者操作的操作構(gòu)件,該操作構(gòu)件依照操作者的操作,被傾斜至任一方向、例如X計(jì)數(shù)器及Y計(jì)數(shù)器那樣的傾斜量數(shù)據(jù)輸出手段檢測(cè)操作構(gòu)件的傾斜量并輸出傾斜量數(shù)據(jù)。
圖像處理裝置具有程序存儲(chǔ)手段,令人滿意的是該程序存儲(chǔ)手段是一個(gè)外部存儲(chǔ)裝置,它可裝卸自在地安裝于圖像處理裝置主體上、遵循這一程序存儲(chǔ)手段的程度,由例如CPU所構(gòu)成的方向決定手段及移動(dòng)量決定手段分別基于從操作裝置得到的傾斜量數(shù)據(jù),決定三維空間中的物體的移動(dòng)方向以及在顯示的一幀內(nèi)應(yīng)移動(dòng)物體的移動(dòng)量。
具體地說(shuō),將X計(jì)數(shù)器和Y計(jì)數(shù)器的計(jì)數(shù)值歸一化后變換至UV座標(biāo)。CPU根據(jù)這一UV座標(biāo)位置(u、v)求得傾斜量(L),與此同時(shí),還求得傾斜方向(tan-1)。方向決定手段是例如CPU之類的,它基于該傾斜方向(tan-1)和被看作為正在三維空間中攝影物體的視點(diǎn)(攝像角),決定物體的移動(dòng)方向。移動(dòng)量決定手段是例如CPU之類的,它基于傾斜量(L)和最大速度(max-speed),決定物體在一幀中的移動(dòng)量,即移動(dòng)速度。
從而,位置決定手段相應(yīng)于移動(dòng)方向和移動(dòng)量,決定三維空間中物體的位置。由此,圖像數(shù)據(jù)輸出手段輸出能在該位置上顯示物體的圖像數(shù)據(jù)。
采用本發(fā)明,則可以通過(guò)操作模擬操縱桿那樣的一個(gè)操作裝置來(lái)控制物體的移動(dòng)方向和移動(dòng)量(移動(dòng)速度)。
本發(fā)明的上述目的、其它目的、特征及優(yōu)點(diǎn),通過(guò)參照附圖并詳細(xì)說(shuō)明下面幾個(gè)實(shí)施例將會(huì)更清楚。
附圖簡(jiǎn)單說(shuō)明
圖1是表示本發(fā)明一實(shí)施例的概略圖解圖。
圖2是詳細(xì)表示圖1實(shí)施例中的圖像處理裝置的框圖。
圖3是更詳細(xì)地表示圖2實(shí)施例中的總線控制電路的框圖。
圖4是表示圖2實(shí)施例中RAM存儲(chǔ)變換的圖解圖。
圖5是詳細(xì)表示圖2實(shí)施例中的控制器控制電路的框圖。
圖6是表示圖5的RAM存儲(chǔ)變換的圖解圖。
圖7是從圖2實(shí)施例中的控制器的上方看到的立體圖。
圖8是從圖2實(shí)施例中的控制器的下方看到的立體圖。
圖9是詳細(xì)表示控制器及擴(kuò)充裝置的框圖。
圖10是表示控制器的模擬操縱桿及各按鈕的數(shù)據(jù)的圖解圖。
圖11是表示圖2實(shí)施例中CPU動(dòng)作的流程圖。
圖12是表示圖2實(shí)施例中總線控制電路即圖3的RCP(Reality Co-Processor)動(dòng)作的流程圖。
圖13是表示圖2實(shí)施例中控制器控制電路動(dòng)作的流程圖。
圖14是表示用于變更圖2實(shí)施例中物體位置的子程序的流程圖。
圖15是表示模擬操縱桿可傾斜范圍與圓形修正的關(guān)系的圖解圖。
圖16是表示物體移動(dòng)方向的圖解圖。
實(shí)施發(fā)明的最佳方式下面,參照附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行說(shuō)明。
圖1是表示本發(fā)明的一實(shí)施例的三維圖像處理系統(tǒng)的系統(tǒng)構(gòu)成的外觀圖。圖像處理系統(tǒng)是例如視頻游戲機(jī)系統(tǒng)那樣的,它由下述部分構(gòu)成圖像處理裝置主體10、外部存儲(chǔ)裝置之一例的ROM盒式磁盤(pán)20、連接至圖像處理裝置主體10的顯示手段之一例的監(jiān)視器30、操作手段之一例的控制器40、裝卸自由地安裝于控制器40上的擴(kuò)充裝置之一例的RAM盒式磁盤(pán)50。又,外部存儲(chǔ)裝置在存儲(chǔ)用作游戲機(jī)等的圖像處理的圖像數(shù)據(jù)、程序數(shù)據(jù)的同時(shí),還相應(yīng)于需要存儲(chǔ)音樂(lè)、效果音等聲音數(shù)據(jù),也可以用CD-ROM或磁盤(pán)替代ROM盒式磁盤(pán)、當(dāng)這一實(shí)施例的圖像處理系統(tǒng)適用于個(gè)人計(jì)算機(jī)時(shí),操作手段采用鍵盤(pán)、鼠標(biāo)等輸入裝置。
圖2是這一實(shí)施例的圖像處理系統(tǒng)的框圖。圖像處理裝置10中,內(nèi)置有中央處理單元(以下稱為“CPU”)11和總線控制電路12??偩€控制電路12上,連接著盒式磁盤(pán)連接器13,用以裝卸自由安裝ROM盒式磁盤(pán)20,與此同時(shí),還連接著RAM14。另外,總線控制電路12上,連接有音樂(lè)信號(hào)發(fā)生電路15及圖像信號(hào)發(fā)生電路16分別用以輸出由CPU11處理了的聲音信號(hào)以及圖像信號(hào),還連接有控制器控制電路17,用以串行傳送一個(gè)或多個(gè)控制器40的操作數(shù)據(jù)和/或ROM盒式磁盤(pán)50的數(shù)據(jù)??刂破骺刂齐娐?7上連接著設(shè)在圖像處理裝置10前面的控制器連接器(以下簡(jiǎn)稱為連接器)181~184。控制器40經(jīng)過(guò)連接插孔41及電纜42裝卸自由地連接至連接器18上。這樣,通過(guò)將控制器40連接至連接器181~184,控制器40就與圖像處理裝置10實(shí)現(xiàn)電連接,并且相互間可發(fā)送數(shù)據(jù)。
更具體地說(shuō),總線控制電路12經(jīng)由總線接收CPU11以并行信號(hào)方式輸出的命令,進(jìn)行并一串變換,將命令以串行信號(hào)方式輸出至控制器控制電路17,并將從控制器控制電路17輸入的串行信號(hào)的數(shù)據(jù)變換為并行信號(hào),輸出至總線。從總線輸出的數(shù)據(jù),將由CPU11處理,或作存儲(chǔ)于RAM等的處理。換言之,RAM是用于暫時(shí)存儲(chǔ)將要由CPU11處理的數(shù)據(jù)的存儲(chǔ)器,使經(jīng)由總線控制電路12進(jìn)行數(shù)據(jù)的讀出、寫(xiě)入變?yōu)榭赡堋?br>
包含于圖2圖像處理裝置10中的總線控制電路12,具體地說(shuō),如圖3所示那樣,是作為RISC處理器的RCP(Reality Co-Processor)所構(gòu)成的,它包含I/O控制121、信號(hào)處理器122和繪畫(huà)處理器123。I/O控制121不僅控制CPU11和RAM14間的數(shù)據(jù)傳送,而且控制信號(hào)處理器122、繪畫(huà)處理器123和RAM14、CPU11間的數(shù)據(jù)流。即,CPU11中的數(shù)據(jù)經(jīng)由I/O控制121,被送至RAM14,而RAM14中的數(shù)據(jù)被送至信號(hào)處理器122和繪畫(huà)處理器123進(jìn)行處理。信號(hào)處理器122和繪畫(huà)處理器123對(duì)RAM14送來(lái)的音樂(lè)信號(hào)數(shù)據(jù)和圖像信號(hào)數(shù)據(jù)作處理,再將它存入RAM14中。然后,I/O控制121依據(jù)CPU11的指示,從RAM14讀出音樂(lè)信號(hào)數(shù)據(jù)和圖像信號(hào)數(shù)據(jù),并傳送至音樂(lè)信號(hào)發(fā)生電路(D/A轉(zhuǎn)換器)15及圖像信號(hào)發(fā)生電路(D/A轉(zhuǎn)換器)16。音樂(lè)信號(hào)通過(guò)連接器195傳送至包含于TV監(jiān)視器30上的揚(yáng)聲器31。圖像信號(hào)通過(guò)連接器196傳送至包含于TV監(jiān)視器30上的顯示器32。
又,如圖3所示那樣,也可以將磁盤(pán)驅(qū)動(dòng)器21連接至圖像處理裝置10,該磁盤(pán)驅(qū)動(dòng)器21可以取代外部ROM20,或與外部ROM20一起,從光盤(pán)或磁盤(pán)讀出數(shù)據(jù)或?qū)懭霐?shù)據(jù)。此時(shí),磁盤(pán)驅(qū)動(dòng)器21通過(guò)連接器197,被連接至RCP12即I/O控制121。
圖4是表示分配給CPU的存儲(chǔ)器空間的各存儲(chǔ)器區(qū)域的圖解圖。CPU11經(jīng)由總線控制電路即RCP12能夠訪問(wèn)的RAM14包括圖像數(shù)據(jù)區(qū)域201和程序數(shù)據(jù)區(qū)域202,前者是存儲(chǔ)必要的圖像數(shù)據(jù)用于在圖像處理裝置10上產(chǎn)生游戲用的圖像信號(hào),后者是存儲(chǔ)必要的程序數(shù)據(jù)用于CPU11進(jìn)行所定的動(dòng)作。程序區(qū)域202內(nèi),固定存儲(chǔ)有用來(lái)基于圖像數(shù)據(jù)201進(jìn)行圖像顯示的圖像顯示程序、用于進(jìn)行計(jì)時(shí)處理的計(jì)時(shí)程序、用于判斷盒式磁盤(pán)20與后述的擴(kuò)充裝置50處于所定關(guān)系的判斷程序。RAM14還包含有暫時(shí)存儲(chǔ)區(qū)域141和速度數(shù)據(jù)區(qū)域142,前者暫存儲(chǔ)表示來(lái)自控制墊片的操作狀態(tài)的數(shù)據(jù),后者用于存入物體的移動(dòng)速度(顯示的一幀中物體移動(dòng)的移動(dòng)量)的數(shù)據(jù)。
控制器控制電路17是為在總線控制電路即RCP12和連接器181~184之間以串行方式發(fā)送接收數(shù)據(jù)而設(shè)置的,如圖5所示那樣,它包括數(shù)據(jù)傳送控制電路171、發(fā)送電路172、接收電路173和用于暫時(shí)存儲(chǔ)發(fā)送接收數(shù)據(jù)的RAM174。數(shù)據(jù)傳送控制電路171包括數(shù)據(jù)傳送時(shí)用于變換數(shù)據(jù)格式的并-串變換電路和串-并變換電路,同時(shí)還作RAM174的寫(xiě)入讀出控制。串-并變換電路把總線控制電路12供給的串行數(shù)據(jù)變換為并行數(shù)據(jù),并傳送至RAM174或發(fā)送電路172。并-串變換電路把RAM174或接收電路173供給的并行數(shù)據(jù)變換為串行數(shù)據(jù),并傳送至總線控制電路12。發(fā)送電路172將數(shù)據(jù)傳送控制電路171供給的用作控制器40控制信號(hào)讀入的數(shù)據(jù)及送至RAM盒式磁盤(pán)50的寫(xiě)入數(shù)據(jù)(并行數(shù)據(jù))變換為串行數(shù)據(jù),并分別從對(duì)應(yīng)于多個(gè)控制器40的通道CH1~CH4發(fā)送出去。接收電路173以串行方式接收從對(duì)應(yīng)于各控制器40的通道CH1~CH4輸入的、表示各控制器40的操作狀態(tài)的數(shù)據(jù)及來(lái)自RAM盒式磁盤(pán)50的讀出數(shù)據(jù),并變換為并行數(shù)據(jù),傳送至數(shù)據(jù)傳送控制電路171。
控制器控制電路17中的RAM174包括圖6存儲(chǔ)變換所示那樣的存儲(chǔ)區(qū)域174a~174h。具體地說(shuō),174a區(qū)域內(nèi)存儲(chǔ)1通道用的命令,174b區(qū)域內(nèi)存儲(chǔ)1通道用的發(fā)送數(shù)據(jù)及接收數(shù)據(jù)。174c區(qū)域內(nèi)存儲(chǔ)2通道用的命令,174d區(qū)域內(nèi)存儲(chǔ)2通道用的發(fā)送數(shù)據(jù)及接收數(shù)據(jù)。174e區(qū)域內(nèi)存儲(chǔ)了通道用的命令,174f區(qū)域內(nèi)存儲(chǔ)3通道用的發(fā)送數(shù)據(jù)及接收數(shù)據(jù)。174g區(qū)域內(nèi)存儲(chǔ)4通道用的命令,174h區(qū)域內(nèi)存儲(chǔ)4通道用的發(fā)送數(shù)據(jù)及接收數(shù)據(jù)。
因此,數(shù)據(jù)傳送控制電路171的作用是將總線控制電路所傳送的數(shù)據(jù)或接收電路173所接收的控制器40的操作狀態(tài)數(shù)據(jù)、RAM盒式磁盤(pán)50的讀出數(shù)據(jù)控制寫(xiě)入到RAM174,或基于來(lái)自總線控制電路12的命令,讀出RAM174的數(shù)據(jù),并將之傳送給總線控制電路12。
圖7和圖8是控制器40的表面及里面的外觀立體圖??刂破?0是呈兩手或單手可掌握的形狀,由通過(guò)在其外殼外部按壓而產(chǎn)生電信號(hào)的按鈕以及垂直直立的操作部向上突出而形成。具體地說(shuō),控制器40由上外殼和下外殼構(gòu)成。控制器40的外殼上,在具有橫向較長(zhǎng)的平面形狀的上面,形成操作部區(qū)域。在控制器40的操作部區(qū)域上,左側(cè)設(shè)有十字型的數(shù)字方向開(kāi)關(guān)(以下稱之為“十字開(kāi)關(guān)”)403,右側(cè)設(shè)有多個(gè)按鈕開(kāi)關(guān)(以下稱之為“開(kāi)關(guān)”)404A~404F,在橫向的接近中間部位上設(shè)有開(kāi)始開(kāi)關(guān)405,在中間下部處設(shè)有可模擬輸入的操作桿45。十字開(kāi)關(guān)403是指示主人公人物或光標(biāo)的移動(dòng)方向的方向開(kāi)關(guān),具有上、下、左、右四個(gè)按壓點(diǎn),用于指定四個(gè)方向的移動(dòng)。開(kāi)關(guān)404A~404F因游戲軟件不同而不同,例如在發(fā)射游戲中可用作導(dǎo)彈的發(fā)射按鈕,在動(dòng)作游戲中可用于指示跳躍、踢球或取物等各種動(dòng)作。操縱桿45用來(lái)代替十字開(kāi)關(guān)403、指示物體的移動(dòng)方向和移動(dòng)速度,它可作360度的全角度范圍的方向指示,所以,作為模擬方向指示開(kāi)關(guān)使用。
控制器40的外殼上,在操作部區(qū)域的下方,有三個(gè)柄402L、402C及402R,形成三處突出形狀。柄402L、402C及402R當(dāng)用手握著的時(shí)候,是與手掌、中指、無(wú)名指及小指形成的棒狀形,其形狀是根部較細(xì),中間處變粗,接近柄的端部處(圖7的下方側(cè))又變細(xì)??刂破?0的下外殼的中間上部處有用于裝卸自由地安裝作為擴(kuò)充裝置的RAM盒式磁盤(pán)50的插入口409,它從里面突出形成。在罩殼上部側(cè)面的左右方,在對(duì)應(yīng)于選手伸展了左右食指處的位置上設(shè)有按鈕開(kāi)關(guān)406L及406R。當(dāng)使用操縱桿45代替十字開(kāi)關(guān)403時(shí),中間的柄402C的根部的里面設(shè)有開(kāi)關(guān)407,它作為替代開(kāi)關(guān)406L的功能開(kāi)關(guān)而使用。
外殼的下半部的背面?zhèn)妊氐酌娣较蜓娱L(zhǎng),其頂端處形成開(kāi)口部408。開(kāi)口部408的里頭設(shè)有擴(kuò)充盒式磁盤(pán)與之連接的連接器(圖上未表示)。另外,在開(kāi)口部408上,還形成有用于排出插入至開(kāi)口部408的盒式磁盤(pán)50的控制桿409。上述插入盒式磁盤(pán)50的開(kāi)口部408的控制桿409的相對(duì)側(cè)上,形成凹口410,使用控制桿409取出擴(kuò)充盒式磁盤(pán)時(shí),該凹口410形成一個(gè)空間以拉出擴(kuò)充盒式磁盤(pán)。
圖9是控制器40及擴(kuò)充裝置的一例的RAM盒式磁盤(pán)50的詳細(xì)電路圖。為了檢測(cè)各開(kāi)關(guān)403~407或操縱桿45等的操作狀態(tài)、并將該檢測(cè)數(shù)據(jù)傳送給控制器控制電路,在控制器40的外殼內(nèi),內(nèi)置有操作信號(hào)處理電路44等電子電路。操作信號(hào)處理電路44包含接收電路441、控制電路442、開(kāi)關(guān)信號(hào)檢測(cè)電路443、計(jì)算器電路444、發(fā)送電路445、操縱桿端口控制電路446、復(fù)位電路447及NOR(或非)門(mén)448。
接收電路441將控制器控制電路17送出的控制信號(hào)及要送往RAM盒式磁盤(pán)50的寫(xiě)入數(shù)據(jù)等串行信號(hào)變換為并行信號(hào),并傳送給控制電路442??刂齐娐?42在控制器控制電路17發(fā)出的控制信號(hào)是操縱桿45的X、Y座標(biāo)的復(fù)位信號(hào)時(shí)產(chǎn)生復(fù)位信號(hào),并經(jīng)由NOR門(mén)448,使包含于計(jì)數(shù)器444中的X軸用計(jì)數(shù)器444X和Y軸用計(jì)數(shù)器444Y的計(jì)數(shù)值復(fù)位(O)。操縱桿45包括X軸用和Y軸用的光遮斷器,以將控制桿的傾斜方向分解為X軸方向和Y軸方向,產(chǎn)生與傾斜量成比例的脈沖數(shù);并將兩類脈沖信號(hào)分別送至計(jì)數(shù)器444X和計(jì)數(shù)器444Y。當(dāng)操縱桿45傾斜于X軸方向時(shí),計(jì)數(shù)器444X就對(duì)相應(yīng)于該傾斜量而產(chǎn)生的脈沖數(shù)計(jì)數(shù)。當(dāng)操縱桿45傾斜于Y軸方向時(shí),計(jì)數(shù)器444Y就對(duì)相應(yīng)于該傾斜量而產(chǎn)生的脈沖數(shù)計(jì)數(shù)。因此,如同后面將要敘述那樣,根據(jù)由計(jì)數(shù)器444X及計(jì)數(shù)器444Y的計(jì)數(shù)值而確定的X軸和Y軸的合成矢量,就可決定物體或光標(biāo)的移動(dòng)方向和移動(dòng)速度。
又,計(jì)數(shù)器444X和計(jì)數(shù)器444Y依據(jù)電源接通時(shí)復(fù)位信號(hào)發(fā)生電路447所給予的復(fù)位信號(hào),其計(jì)數(shù)值將置“O”,另外依據(jù)操作者同時(shí)按預(yù)先確定的二個(gè)開(kāi)關(guān)信號(hào)檢測(cè)電路443所給予的復(fù)位信號(hào),其計(jì)數(shù)值也將置“O”。
開(kāi)關(guān)信號(hào)檢測(cè)電路443相應(yīng)于控制電路442按一定周期(例如電視一幀周期1/30秒的間隔)給出的開(kāi)關(guān)狀態(tài)輸出指令信號(hào),讀出因十字開(kāi)關(guān)403、開(kāi)關(guān)404A~404F、405、406L、406R及407的按壓狀態(tài)而變化的信號(hào),并將其傳送給控制電路442。
控制電路442相應(yīng)于來(lái)自控制器控制電路17的操作狀態(tài)數(shù)據(jù)讀出指令信號(hào),將各開(kāi)關(guān)403~407的操作狀態(tài)數(shù)據(jù)及計(jì)數(shù)器444X、444Y的計(jì)數(shù)值按所定的數(shù)據(jù)格式順序傳送給發(fā)送電路445。發(fā)送電路445將這些由控制電路442輸出的并行信號(hào)變換為串行信號(hào),并經(jīng)由變換電路43及信號(hào)線42,傳送給控制器控制電路17。
另外,經(jīng)由地址總線、數(shù)據(jù)總線及端口連接器46,將端口控制電路連接至控制電路442上。當(dāng)擴(kuò)充裝置之一例的RAM盒式磁盤(pán)50連接至端口連接器46時(shí),端口控制電路446將遵照CPU11的命令進(jìn)行數(shù)據(jù)輸入輸出控制(或發(fā)送接收控制)。RAM盒式磁盤(pán)50內(nèi)包括RAM51及電池52,由這兩者構(gòu)成,RAM51連接至地址總線和數(shù)據(jù)總線,電池52用于給RAM51供電。RAM51是一個(gè)容量在使用地址總線、可訪問(wèn)最大存儲(chǔ)器的容量的一半以下的RAM,例如它可由256Kbit的RAM組成。該RAM51存儲(chǔ)為游戲有關(guān)的后備數(shù)據(jù),即使將RAM盒式磁盤(pán)50從端口連接器46撥出,它也可接受電池52的電源供給,以保持存儲(chǔ)數(shù)據(jù)。
圖10是表示圖像處理裝置從控制器讀出表示開(kāi)關(guān)403~407及操縱桿45的各操作狀態(tài)的數(shù)據(jù)時(shí)的數(shù)據(jù)格式的圖解圖。由控制器40產(chǎn)生的數(shù)據(jù)由四個(gè)字節(jié)的數(shù)據(jù)組成。第1字節(jié)的數(shù)據(jù)表示B、A、G、START、上、下、左及右,即開(kāi)關(guān)404B、404A、407、405及十字開(kāi)關(guān)403的上下左右各按壓點(diǎn)被按壓的狀態(tài)。例如,當(dāng)B按鈕即開(kāi)關(guān)404B被按壓時(shí),則第1字節(jié)的最上一位呈“1”。同樣,第2字節(jié)表示JSRST、O(實(shí)施例中該位末使用)、L、R、E、D、C及F,即開(kāi)關(guān)409、406L、406R、404E、404D、404C。404F被按壓的狀態(tài)。第3字節(jié)以二進(jìn)制數(shù)表示對(duì)應(yīng)于操縱桿45的X方向傾斜角度的數(shù)值的X座標(biāo)(X計(jì)數(shù)器444X的計(jì)數(shù)值)。第4字節(jié)以二進(jìn)制數(shù)表示對(duì)應(yīng)于操縱桿45的Y方向傾斜角度的數(shù)值的Y座標(biāo)(Y計(jì)數(shù)器444Y的計(jì)數(shù)值)。由于X、Y座標(biāo)值分別以8位二進(jìn)制數(shù)表示,所以,若將它變換成十進(jìn)制數(shù)時(shí),即可以0~255的數(shù)值表示操縱桿45的傾斜角度。另外,如果將最上一位用于表示負(fù)值的正負(fù)符號(hào)差,則可以用-128~127的數(shù)值表示操縱桿45的傾斜角度。
下面,說(shuō)明有關(guān)圖像處理裝置10和控制器40間的數(shù)據(jù)發(fā)送接收以及遵循控制器40發(fā)來(lái)的數(shù)據(jù)控制物體移動(dòng)的動(dòng)作。
首先,參照?qǐng)D11的圖像處理裝置10中CPU11的流程,作關(guān)于圖像處理的說(shuō)明。在步驟S11,CPU11基于圖5中程序數(shù)據(jù)區(qū)域202所存儲(chǔ)的初始值(未圖示)進(jìn)行初始設(shè)定。舉例說(shuō),在這一步驟S11中,CPU11將物體移動(dòng)速度的初始值設(shè)定于RAM14的速度數(shù)據(jù)區(qū)域142(圖4)上。
接著,在步驟S12,CPU11將程序數(shù)據(jù)區(qū)域所存儲(chǔ)的控制墊片數(shù)據(jù)請(qǐng)求命令輸出至RCP或控制電路12。因而,在步驟S12,CPU11接受此時(shí)控制器40發(fā)出的如圖10所示那樣的命令,并將它存入各通道的命令收存場(chǎng)所174a~174d。這時(shí),X計(jì)數(shù)器444X及Y計(jì)數(shù)器444Y的計(jì)數(shù)值作為XY座標(biāo)數(shù)據(jù)被傳送至CPU11。
接著,在步驟S12a,CPU11相應(yīng)于各通道的命令收存場(chǎng)所174a~174d(圖6)所存入的來(lái)自控制器40的操縱桿數(shù)據(jù),進(jìn)行物體位置變更處理。關(guān)于這一步驟S12a,后面將參照?qǐng)D14,作詳細(xì)說(shuō)明。
然后,在步驟S13,CPU11基于圖4的程序數(shù)據(jù)區(qū)域202所存儲(chǔ)的程序及圖像數(shù)據(jù)區(qū)域201,進(jìn)行所定的圖像處理。另外,CPU11執(zhí)行步驟S13時(shí),總線控制電路12執(zhí)行圖12所示的步驟S21~S24。接著,在步驟14,CPU11基于圖4的控制墊片(控制器)數(shù)據(jù)區(qū)域141所存儲(chǔ)的控制墊片數(shù)據(jù)輸出圖像數(shù)據(jù)。步驟S14結(jié)束后,CPU11反復(fù)執(zhí)行步驟S12~步驟S14。
下面,用圖來(lái)說(shuō)明RCP或總線控制電路12的動(dòng)作。在步驟21,總線控制電路12判斷CPU11有否輸出控制器數(shù)據(jù)請(qǐng)求命令(控制器40的開(kāi)關(guān)數(shù)據(jù)或擴(kuò)充裝置50的數(shù)據(jù)等的請(qǐng)求命令)。若未輸出控制器數(shù)據(jù)請(qǐng)求命令;則待機(jī)直至有輸出。在步驟S22,總線控制電路12輸出命令用以將控制器40的數(shù)據(jù)讀入控制器控制電路17。接著,在步驟23,總線控制電路12判斷控制器控制電路12有否從控制器40接收數(shù)據(jù)并存儲(chǔ)至RAM174。若控制器控制電路17未從控制器40接收數(shù)據(jù)并存儲(chǔ)至RAM174,則將在步驟S23待機(jī),若控制器控制電路17已從控制器40接收數(shù)據(jù)并存儲(chǔ)至RAM174,則轉(zhuǎn)移至步驟24。在步驟24,總線控制電路12將控制器控制電路17中RAM174所存儲(chǔ)的控制器40的數(shù)據(jù)傳送給RAM14??偩€控制電路12一結(jié)束對(duì)RAM14的數(shù)據(jù)傳送,即返回步驟S21,并反復(fù)執(zhí)行步驟S21~步驟S24的動(dòng)作。
又,在圖11和圖12的流程圖中,表示了總線控制電路1 2將數(shù)據(jù)從RAM174傳送給RAM14后、CPU11處理RAM14內(nèi)所存儲(chǔ)的數(shù)據(jù)的一個(gè)例子,但也可以由CPU11經(jīng)過(guò)總線控制電路12直接對(duì)RAM174的數(shù)據(jù)作處理。
圖13是用來(lái)說(shuō)明控制器控制電路17的動(dòng)作的流程圖。在步驟31,判斷有否從總線控制電路12的寫(xiě)入等待,如無(wú)寫(xiě)入等待,則數(shù)據(jù)傳送控制電路171一直待機(jī)、直至有從總線控制電路12的寫(xiě)入等待。如有寫(xiě)入等待,則在下一步驟S32,數(shù)據(jù)傳送控制電路171將對(duì)第1~第4通道的命令和/或數(shù)據(jù)(以下簡(jiǎn)稱“命令/數(shù)據(jù)”)存儲(chǔ)至RAM174。在步驟S33,發(fā)送第1通道的命令/數(shù)據(jù)至連接器181所連接的控制器40??刂齐娐?42基于命令/數(shù)據(jù),進(jìn)行所定的動(dòng)作,輸出應(yīng)發(fā)送給圖像處理裝置10的數(shù)據(jù)。該數(shù)據(jù)的內(nèi)容下面在介紹控制電路442的動(dòng)作說(shuō)明時(shí)再敘述。在步驟34,數(shù)據(jù)傳送控制電路174接收控制電路442輸出的數(shù)據(jù),并使此數(shù)據(jù)存儲(chǔ)至RAM。
以后,與步驟33及步驟34的第1通道的動(dòng)作相同,在步驟35,第2通道的命令/數(shù)據(jù)被發(fā)送至控制器40??刂齐娐?42基于該命令/數(shù)據(jù),進(jìn)行所定的動(dòng)作,并將應(yīng)發(fā)送的數(shù)據(jù)輸出至圖像處理裝置10。在步驟36,進(jìn)行第2通道的數(shù)據(jù)傳送及寫(xiě)入處理。又,在步驟37,將第3通道的命令/數(shù)據(jù)發(fā)送給控制器40,并將應(yīng)發(fā)送的數(shù)據(jù)輸出至圖像處理裝置10。在步驟38,進(jìn)行第3通道的數(shù)據(jù)傳送及寫(xiě)入處理。進(jìn)而,在步驟39,發(fā)送第4通道的命令/數(shù)據(jù)至控制器40,控制器40的控制電路442基于該命令/數(shù)據(jù)進(jìn)行所定的動(dòng)作,將應(yīng)發(fā)送的數(shù)據(jù)輸出至圖像處理裝置10。在步驟40,進(jìn)行第4通道的數(shù)據(jù)傳送及寫(xiě)入處理。在緊接著的步驟41,數(shù)據(jù)傳送控制電路171將在步驟S34、S36、S38及S40中接收的數(shù)據(jù)成批傳送給總線控制電路12。
如上所述,第1通道至第4通道的數(shù)據(jù),即對(duì)連接器181~184所連接的各控制器40的命令以及應(yīng)從各控制器40讀出的操作狀態(tài)數(shù)據(jù),將通過(guò)時(shí)分處理,在數(shù)據(jù)傳送控制電路171和各控制器40內(nèi)的控制電路442間傳送。
下面,參照?qǐng)D14,詳細(xì)說(shuō)明圖11中的步驟S12a。在圖14的最初的步驟S301,CPU11修正來(lái)自控制器40的操縱桿數(shù)據(jù)、即X座標(biāo)數(shù)據(jù)和Y座標(biāo)數(shù)據(jù)。因而操縱桿45(圖7)做成如圖15所示那樣,可以在平面內(nèi)的八角形范圍451內(nèi)傾斜。所以,在這一步驟301,將八角形傾斜范圍的數(shù)據(jù)變換或修正成圖15所示的圓形范圍452的數(shù)據(jù)。但是,這一修正步驟沒(méi)有必要特別執(zhí)行。也就是說(shuō),八角形傾斜范圍的數(shù)據(jù)不作變換、并執(zhí)行以后的各個(gè)步驟也是可以的。
而在該步驟301中,如圖15所示那樣,操縱桿的XY座標(biāo)數(shù)據(jù)變換成UV平面內(nèi)的座標(biāo)數(shù)據(jù)(u、v)。此時(shí),將操作桿45的最大傾斜量歸一化為“1”。也說(shuō)是說(shuō),操縱桿45在圖15的UV平面內(nèi),在-1.0≤u≤1.0及-1.0≤v≤1.0的范圍內(nèi)被傾斜。這是如后面要敘述的那樣,由于計(jì)算物體移動(dòng)速度S時(shí)使用平方曲線,所以為了要相對(duì)地?cái)U(kuò)大低速區(qū)域的緣故。由此,可以很緩慢地使物體移動(dòng)。
在接著的步驟S302、S303及S304中,CPU11基于修正好的操縱桿數(shù)據(jù)(u、v)、依據(jù)后面的公式(1)、(2)、(3)分別計(jì)算或檢測(cè)操縱桿45的傾斜量L、物體的移動(dòng)速度S及移動(dòng)方向α。L=u2+V2------···(1)]]>S=L2×max-speed…(2)
α=tan-1(u/-v)+camera-angle…(3)其中,L操縱桿的傾斜量u、vU、V軸的傾斜量(座標(biāo)位置)S物體移動(dòng)速度max-speed物體自動(dòng)行走的最大速度(如32cm/幀)α物體移動(dòng)方向上式(3)意味著在三維空間中,物體的移動(dòng)方向α是依據(jù)操縱桿45的傾斜方向和攝像頭角度的相對(duì)關(guān)系而確定的。
這樣,在步驟S302、S303及S304中,依據(jù)式(1)、(2)和(3)分別計(jì)算出操縱桿的傾斜量L、物體的移動(dòng)速度S以及移動(dòng)方向α后,在步驟S305中,CPU11比較RAM14的速度數(shù)據(jù)區(qū)域142所存入的前一幀的物體實(shí)體移動(dòng)速度S1和步驟303所計(jì)算得到的速度S,判斷這兩者是否相等、或兩者不一致(S1≠S),則在下一步驟S306中,CPU11判斷是否S1>S。
若在步驟306判斷為“否”,則在步驟S307執(zhí)行加速處理,若判斷為“是”,則在步驟S308執(zhí)行減速處理。在步驟S307的加速處理中,遵照式(4),將所定的加速度A加到前一幀實(shí)際移動(dòng)速度S1上。其中,加速度A作為一例,由下述式(5)給出。
S=S1+A…(4)A=1.1-S1/43.0 …(5)另外,在步驟S308的減速處理中,遵照式(6),從前一幀實(shí)際移動(dòng)速度S1減去所定的減速度。其中,減速度B作為一例,由下述式(7)給出。
S=S1-B…(6)B=2.0 …(7)又,在式(5)中,基于前一幀的速度S1來(lái)決定加速度A的理由,是為了回避急速的速度變化的緣故。另外,在式(7),減速度B作為常量設(shè)定,但它和加速度A一樣,作為前一幀的移動(dòng)速度S1的函數(shù)來(lái)處理也是可以的。又,也可以把加速度作為常量處理。
在步驟S305判斷為“是”時(shí),與執(zhí)行步驟S307或S308過(guò)后時(shí)相同,進(jìn)展至步驟309。在步驟S309,將在步驟S303計(jì)算得到的移動(dòng)速度S、在步驟S307求得的移動(dòng)速度S或在步驟S308求得的移動(dòng)速度S中的某一個(gè)寫(xiě)入RAM14中的速度數(shù)據(jù)區(qū)域142,更新速度數(shù)據(jù)。
接著,在步驟S310,基于上述決定了的移動(dòng)速度S,遵照下述式(8)和(9)計(jì)算物體的位置x和z。也就是說(shuō),根據(jù)矢量值S和矢量角α決定物體位置。
x=x+S×Sinα…(8)z=z+S×Cosα…(9)在步驟S311,CPU11將由式(8)及式(9)求得的位置數(shù)據(jù)輸出至總線控制電路、即RCP12。作為響應(yīng),在RCP12中,依據(jù)所得到的物體位置數(shù)據(jù),執(zhí)行信號(hào)處理及圖像處理,并通過(guò)I/O控制12,將圖像數(shù)據(jù)輸出至D/A轉(zhuǎn)換器。
這樣,在上述實(shí)施例中,基于控制器40中的操縱桿45的傾斜量數(shù)據(jù),決定物體的移動(dòng)方向及移動(dòng)量(移動(dòng)速度),并由此變化三維空間中物體的位置。也就是說(shuō),在顯示器32(監(jiān)視器30)的下一幀上,物體顯示于該變化后的位置上。
工業(yè)上的實(shí)用性本發(fā)明雖作了詳細(xì)說(shuō)明并圖示,但這僅僅是用作為圖解及一個(gè)例子而已,顯然不應(yīng)該被理解為是一種限定,本發(fā)明的精神以及范圍僅由權(quán)利要求書(shū)中的詞句所限定。
權(quán)利要求
1.一種三維圖像處理系統(tǒng),包括被連接至顯示器并依據(jù)程序、產(chǎn)生將存在于三維空間中的物體顯示于所述顯示器的圖像數(shù)據(jù)的圖像處理裝置;和包含其基端可以支承轉(zhuǎn)動(dòng)、其自由端受操作者操作的操作構(gòu)件、并響應(yīng)于所述操作構(gòu)件的動(dòng)作使圖像數(shù)據(jù)產(chǎn)生變化的操作裝置,其特征在于,所述操作裝置還包括檢測(cè)所述操作構(gòu)件的傾斜量、并輸出傾斜量數(shù)據(jù)的傾斜量數(shù)據(jù)輸出手段,所述圖像處理裝置具備基于所述傾斜量數(shù)據(jù)、決定三維空間中物體的移動(dòng)方向的方向決定手段;基于所述傾斜量數(shù)據(jù)、決定顯示的一幀中應(yīng)移動(dòng)物體的移動(dòng)量的移動(dòng)量決定手段;根據(jù)所述移動(dòng)方向和所述移動(dòng)量、決定三維空間中所述物體的位置的位置決定手段以及輸出在由所述位置決定手段所控制的位置上、顯示所述物體于所述顯示器的圖像數(shù)據(jù)的圖像數(shù)據(jù)輸出手段。
2.如權(quán)利要求1所述的三維圖像處理系統(tǒng),其特征還在于,所述移動(dòng)量決定手段具備基于所述傾斜量數(shù)據(jù)計(jì)算所述移動(dòng)量的第1計(jì)算手段;用于存儲(chǔ)緊前面的所述物體實(shí)際移動(dòng)量的移動(dòng)存儲(chǔ)手段;比較所述移動(dòng)量存儲(chǔ)手段的所述實(shí)際移動(dòng)量和所述第1計(jì)算手段的所述移動(dòng)量的比較手段;以及相應(yīng)于所述比較手段的比較結(jié)果、增減所述計(jì)算手段所計(jì)算了的移動(dòng)量的移動(dòng)量變化手段。
3.如權(quán)利要求2所述的三維圖像處理系統(tǒng),其特征還在于,所述第1計(jì)算手段根據(jù)所述傾斜量數(shù)據(jù)計(jì)算移動(dòng)量,并根據(jù)該移動(dòng)量和所確定的量值計(jì)算所述移動(dòng)量。
4.如權(quán)利要求2所述的三維圖像處理系統(tǒng),其特征還在于,所述移動(dòng)量變化手段依據(jù)所述移動(dòng)量存儲(chǔ)手段的移動(dòng)量的函數(shù)、增減所述移動(dòng)量。
5.如權(quán)利要求2所述的三維圖像處理系統(tǒng),其特征還在于,所述移動(dòng)量變化手段依據(jù)固定值、增減所述移動(dòng)量。
6.如權(quán)利要求1至5任一項(xiàng)所述的三維圖像處理系統(tǒng),其特征還在于,所述移動(dòng)方向決定手段包括基于所述傾斜量數(shù)據(jù)、計(jì)算所述操作構(gòu)件的傾斜方向的第2計(jì)算手段,并基于所述傾斜方向和攝像角決定所述移動(dòng)方向。
7.一種程序存儲(chǔ)媒體,在包括連接至顯示器、產(chǎn)生將存在于三維空間的物體顯示于所述顯示器的圖像數(shù)據(jù)的圖像處理裝置、和包含其基端可以支承轉(zhuǎn)動(dòng)、其自由端受操作者操作的操作構(gòu)件及檢測(cè)所述操作構(gòu)件的傾斜量、輸出傾斜量數(shù)據(jù)的傾斜量數(shù)據(jù)輸出手段、并可響應(yīng)于所述操作構(gòu)件的動(dòng)作,使所述圖像數(shù)據(jù)發(fā)生變化的操作裝置的三維圖像處理系統(tǒng)中,存儲(chǔ)用作產(chǎn)生所述圖像數(shù)據(jù)的程序,其特征在于,所述程序(a)基于所述傾斜量數(shù)據(jù)、決定三維空間中物體的移動(dòng)方向;(b)基于所述傾斜量數(shù)據(jù)、決定在所述顯示的一幀中應(yīng)移動(dòng)物體的移動(dòng)量;(c)根據(jù)所述移動(dòng)方向及所述移動(dòng)量,決定三維空間中物體的位置;(d)輸出在所述所決定的位置上顯示物體的圖像數(shù)據(jù)。
8.如權(quán)利要求7所述的程序存儲(chǔ)媒體,其特征還在于,所述圖像處理裝置包含用于存儲(chǔ)所述物體實(shí)際移動(dòng)量的存儲(chǔ)手段,所述程序(d1)基于所述傾斜量數(shù)據(jù),求出移動(dòng)量;(d2)比較所述存儲(chǔ)手段所存儲(chǔ)的實(shí)際的移動(dòng)量和求得的移動(dòng)量;(d3)相應(yīng)于比較結(jié)果,增減所述求得的移動(dòng)量。
9.如權(quán)利要求8所述的程序存儲(chǔ)媒體,其特征還在于,所述程序根據(jù)基于所述傾斜量數(shù)據(jù)而計(jì)算得到的移動(dòng)量和所定值,求得所述移動(dòng)量。
10.如權(quán)利要求8所述的程序存儲(chǔ)媒體,其特征還在于,所述程序根據(jù)所述移動(dòng)量存儲(chǔ)手段所存儲(chǔ)的移動(dòng)量的函數(shù),增減所述求得的移動(dòng)量。
11.如權(quán)利要求8所述的程序存儲(chǔ)媒體,其特征還在于,所述程序根據(jù)固定值、增減所述求得的移動(dòng)量。
12.如權(quán)利要求7至11任一項(xiàng)所述的程序存儲(chǔ)媒體,其特征還在于,所述程序(a1)基于所述傾斜量數(shù)據(jù)、計(jì)算所述操作構(gòu)件的傾斜方向;(a2)基于所述傾斜方向和攝像頭角度,決定所述移動(dòng)方向。
全文摘要
本發(fā)明揭示一種三維圖象處理系統(tǒng),包括圖像處理裝置和與之連接的操作裝置。操作裝置包括模擬操縱桿以及輸出模擬操縱桿的傾斜量數(shù)據(jù)的X計(jì)數(shù)器和Y計(jì)數(shù)器。將X計(jì)數(shù)器和Y計(jì)數(shù)器的計(jì)數(shù)值變換成UV座標(biāo)數(shù)據(jù)。CPU根據(jù)該座標(biāo)數(shù)據(jù),求得傾斜量,并同時(shí)求得傾斜方向。CPU基于該傾斜方向和被看作正在三維空間中攝影物體的視點(diǎn)(攝像角),決定物體的移動(dòng)方向,基于CPU的傾斜量和最大速度,決定物體在一幀中的移動(dòng)量、即移動(dòng)速度。
文檔編號(hào)A63F13/10GK1166215SQ96191193
公開(kāi)日1997年11月26日 申請(qǐng)日期1996年9月20日 優(yōu)先權(quán)日1995年10月9日
發(fā)明者西海聰, 幸島一雄, 宮本茂, 西田泰也 申請(qǐng)人:任天堂株式會(huì)社