專利名稱:可檢測(cè)碰撞的交互式視頻及圖形系統(tǒng)及方法
技術(shù)領(lǐng)域:
本發(fā)明涉及2-D視頻及圖形領(lǐng)域,尤其涉及一種可檢測(cè)碰撞的交 互式視頻及圖形系統(tǒng)以及方法。
背景技術(shù):
在電視游戲機(jī)中, 一般由圖形引擎(graphic engine)執(zhí)行背景 (background)圖像及小精靈(sprite)的繪制,并顯示于顯示屏幕上。該圖 形引擎還接受使用者的輸入,以在該顯示屏幕上操縱小精靈,進(jìn)而達(dá) 到互動(dòng)游戲的效果。由于使用者對(duì)于視頻品質(zhì)的要求越來(lái)越高,以往 的圖形引擎所繪制的背景圖像品質(zhì)已無(wú)法滿足使用者的需求。
為了解決上述問(wèn)題, 一種現(xiàn)有技術(shù)使用MPEG4譯碼器播放背景視 頻動(dòng)畫,且使用圖形引擎執(zhí)行小精靈(sprite)的繪制。然而, 一般視頻 動(dòng)畫的顏色基本上為YUV格式,且視頻動(dòng)畫是由MPEG4譯碼器譯碼 后以幀方式儲(chǔ)存在幀緩沖器(framebuffer)中,再由幀緩沖器中將幀一個(gè) 個(gè)讀出并播放。此時(shí),幀緩沖器中所儲(chǔ)存的幀為YUV格式,如果要對(duì) 幀緩沖器中所儲(chǔ)存的幀執(zhí)行OSD處理或是其它圖形疊加效果,會(huì)破壞 MPEG4譯碼器的渲染(render)方法而無(wú)法進(jìn)行動(dòng)畫播放。
為解決MPEG4譯碼器中無(wú)法執(zhí)行OSD處理或是其它圖形疊加的 問(wèn)題,現(xiàn)有技術(shù)使用三維(3D)游戲引擎執(zhí)行播放背景影片動(dòng)畫、繪制 小精靈、執(zhí)行背景影片動(dòng)畫及小精靈疊加等操作。三維(3D)游戲引擎 可提供接近實(shí)景的視覺效果,故其非常適合于游戲平臺(tái)使用。然而, 3D游戲引擎不僅價(jià)格高昂、學(xué)習(xí)周期長(zhǎng),同時(shí)游戲制作公司還必須要 擁有3D游戲的制作經(jīng)驗(yàn)才能在3D游戲引擎上順利開發(fā)3D游戲。這 對(duì)于一般2D電視游戲的開發(fā)廠商來(lái)說(shuō)是很困難的。由此可知,現(xiàn)有交 互式游戲視頻及圖形引擎及方法仍有改善的空間
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種可檢測(cè)碰撞的交互式視頻及圖形系統(tǒng)及
方法,以避免在現(xiàn)有MPEG4譯碼器中無(wú)法執(zhí)行OSD處理或是其它圖 形疊加效果的問(wèn)題。
本發(fā)明的另一目的是提供一種可檢測(cè)碰撞的交互式視頻及圖形系 統(tǒng)及方法,以避免使用成本昂貴的3D游戲引擎及其學(xué)習(xí)周期長(zhǎng)的問(wèn)題。
依據(jù)本發(fā)明的特色,本發(fā)明提出一種可檢測(cè)碰撞的交互式視頻及
圖形系統(tǒng),其包含存儲(chǔ)設(shè)備、視頻引擎、圖形引擎。該存儲(chǔ)設(shè)備儲(chǔ)存
多個(gè)視頻數(shù)據(jù)流,每一該視頻數(shù)據(jù)流包含標(biāo)頭,該標(biāo)頭具有至少一個(gè)
位置坐標(biāo)字段,該至少一個(gè)位置坐標(biāo)字段對(duì)應(yīng)于該視頻數(shù)據(jù)流中的至
少一個(gè)對(duì)象;'該視頻引擎耦合至該存儲(chǔ)設(shè)備,用以播放該多個(gè)視頻數(shù)
據(jù)流的第一視頻數(shù)據(jù)流;該圖形引擎接收小精靈圖像數(shù)據(jù),該小精靈
圖像數(shù)據(jù)包含該小精靈的位置坐標(biāo),該圖形引擎耦合至該存儲(chǔ)設(shè)備及
該視頻引擎,以接收該第一視頻數(shù)據(jù)流的標(biāo)頭,當(dāng)該小精靈的位置坐 標(biāo)與該第一視頻數(shù)據(jù)流的至少一個(gè)對(duì)象的位置坐標(biāo)重疊時(shí),該圖形引
擎驅(qū)動(dòng)該視頻引擎以由該存儲(chǔ)設(shè)備中選擇第二視頻數(shù)據(jù)流并播放。
依據(jù)本發(fā)明的另一特色,本發(fā)明提出一種可以在交互式視頻及圖 形系統(tǒng)中檢測(cè)碰撞的方法,該視頻及圖形系統(tǒng)具有視頻引擎及圖形引 擎,該圖形引擎接收小精靈圖像數(shù)據(jù),該小精靈圖像數(shù)據(jù)包含該小精 靈的位置坐標(biāo),該視頻引擎接收多個(gè)視頻數(shù)據(jù)流中的視頻數(shù)據(jù)流,該 視頻數(shù)據(jù)流包含標(biāo)頭,該標(biāo)頭具有至少一個(gè)位置坐標(biāo)字段,該至少一 個(gè)位置坐標(biāo)字段對(duì)應(yīng)該視頻數(shù)據(jù)流中的至少一個(gè)對(duì)象,該方法包含下 列步驟(A)該圖形引擎及該視頻引擎分別播放小精靈圖像數(shù)據(jù)及第一 視頻數(shù)據(jù)流;(B)該圖形引擎接收該第一視頻數(shù)據(jù)流的標(biāo)頭;(C)當(dāng)該
圖形引擎判斷當(dāng)該小精靈的位置坐標(biāo)與該第一視頻數(shù)據(jù)流的至少一個(gè) 對(duì)象的位置坐標(biāo)重疊時(shí),該圖形引擎驅(qū)動(dòng)該視頻引擎選擇第二視頻數(shù) 據(jù)流并播放。
圖1是如本發(fā)明所述的可檢測(cè)碰撞的交互式視頻及圖形系統(tǒng)的方 框圖。圖2是本發(fā)明中視頻數(shù)據(jù)流的示意圖。
圖3是本發(fā)明中小精靈圖像資料的示意圖。
圖4是本發(fā)明中小精靈的圖像與至少一個(gè)對(duì)象230的圖像產(chǎn)生碰
撞的示意圖。
圖5是如本發(fā)明所述的交互式視頻及圖形系統(tǒng)中檢測(cè)碰撞的方法
的流程圖。
主要組件符號(hào)說(shuō)明
存儲(chǔ)設(shè)備110視頻引擎120
圖形引擎140YUV至RGB轉(zhuǎn)換裝置130
第一視頻數(shù)據(jù)流111第二視頻數(shù)據(jù)流112
第三視頻數(shù)據(jù)流112小精靈圖像數(shù)據(jù)143
第一幀緩沖器141第二幀緩沖器142
標(biāo)頭210數(shù)據(jù)220
對(duì)象230位置坐標(biāo)字段211
準(zhǔn)星14具體實(shí)施例方式
圖1是如本發(fā)明所述的可檢測(cè)碰撞的交互式視頻及圖形系統(tǒng)的方
框圖,其包含存儲(chǔ)設(shè)備110、視頻引擎120、圖形引擎140、及YUV 至RGB轉(zhuǎn)換裝置130。
該存儲(chǔ)設(shè)備110儲(chǔ)存多個(gè)視頻數(shù)據(jù)流,在本實(shí)施例中,該存儲(chǔ)設(shè) 備110儲(chǔ)存了第一視頻數(shù)據(jù)流111、第二視頻數(shù)據(jù)流112及第三視頻數(shù) 據(jù)流113。如圖2所示,每一視頻數(shù)據(jù)流由標(biāo)頭210及數(shù)據(jù)220所組成。 該標(biāo)頭210具有至少一個(gè)位置坐標(biāo)字段211,該至少一個(gè)位置坐標(biāo)字段 211對(duì)應(yīng)該視頻數(shù)據(jù)流中的至少一個(gè)對(duì)象230。在本實(shí)施例中,該至少 一個(gè)對(duì)象230例如可為飛機(jī)。該至少一個(gè)對(duì)象230以矩形表示,該位 置坐標(biāo)字段211記錄該至少一個(gè)對(duì)象230的矩形的左上角及右下角的 坐標(biāo)位置。該數(shù)據(jù)220是壓縮的視頻數(shù)據(jù),其壓縮格式例如可為 MPEG1、 MPEG2、 MPEG4、或H.263。
該存儲(chǔ)設(shè)備110可為動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器。其可為異步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器或同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器。當(dāng)該存儲(chǔ)設(shè)備110為雙倍速
同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器時(shí),其例如可為DDR-I、 DDR-II、 DDR-333、 或DDR-400。
該視頻引擎120耦合至該存儲(chǔ)設(shè)備110,以播放該多個(gè)視頻數(shù)據(jù)流 的第一視頻數(shù)據(jù)流111。由于現(xiàn)有的MPEG或H.263格式的視頻數(shù)據(jù) 流經(jīng)解壓縮后所產(chǎn)生的信號(hào)為YUV格式,故該視頻引擎120是以YUV 格式播放該多個(gè)解壓縮后所產(chǎn)生的視頻數(shù)據(jù)流。
該YUV至RGB轉(zhuǎn)換裝置130耦合至該視頻引擎120及該圖形引 擎140,以將該視頻引擎120輸出的YUV格式的數(shù)據(jù)轉(zhuǎn)換成RGB格 式的數(shù)據(jù),從而由該圖形引擎140播放。
該圖形引擎140耦合至該存儲(chǔ)設(shè)備110及該YUV至RGB轉(zhuǎn)換裝 置130。該圖形引擎140具有第一幀緩沖器(frame buffer)141及第二幀 緩沖器142。該第一幀緩沖器141用以暫存該YUV至RGB轉(zhuǎn)換裝置 130所輸出的數(shù)據(jù)。
該圖形引擎140接收小精靈圖像數(shù)據(jù)143,該小精靈圖像數(shù)據(jù)143 為RGB格式且包含該小精靈圖像的位置坐標(biāo)。如圖3所示,在本實(shí)施 例中,該小精靈圖像為十字形準(zhǔn)星144,該小精靈圖像位置坐標(biāo)可在該 準(zhǔn)星144的中心處,此時(shí)表示為(x3,y3)。該小精靈圖像位置坐標(biāo)也可 用矩形表示,該小精靈圖像位置坐標(biāo)則記錄該小精靈圖像的矩形的左 上角(x4,y4)及右下角(x5,y5)的坐標(biāo)位置。
該第二幀緩沖器142用以暫存小精靈的圖像數(shù)據(jù)143。該圖形引擎 140將該第一幀緩沖器141的數(shù)據(jù)及該第二幀緩沖器142的數(shù)據(jù)執(zhí)行阿 爾法混合(alphablending)處理,以將該小精靈圖像與該視頻引擎120輸 出的第一視頻數(shù)據(jù)流111疊加而輸出。
該圖形引擎140耦合至該存儲(chǔ)設(shè)備110并由該存儲(chǔ)設(shè)備110中讀
取該第一視頻數(shù)據(jù)流lll的標(biāo)頭210。該圖形引擎可通過(guò)xB^^^及 yB^2^二判別式來(lái)判斷該小精靈的位置坐標(biāo)與該第一視頻數(shù)據(jù)流
111的至少一個(gè)對(duì)象230的位置坐標(biāo)211是否重疊。如圖4所示,當(dāng)該 小精靈的位置坐標(biāo)與該第一視頻數(shù)據(jù)流111的至少一個(gè)對(duì)象230的位 置坐標(biāo)211重疊時(shí),該圖形引擎140判定該小精靈的圖像與該至少一 個(gè)對(duì)象230的圖像產(chǎn)生碰撞,該圖形引擎140驅(qū)動(dòng)該視頻引擎120從該存儲(chǔ)設(shè)備110中選擇第二視頻數(shù)據(jù)流112并播放。其中,第二視頻 數(shù)據(jù)流112例如可為一飛機(jī)墜毀的視頻數(shù)據(jù)流。
當(dāng)該小精靈的位置坐標(biāo)與第一視頻數(shù)據(jù)流111的至少一個(gè)對(duì)象230 的位置坐標(biāo)211不重疊時(shí),該視頻引擎120可持續(xù)播放該第一視頻數(shù) 據(jù)流lll,或是經(jīng)過(guò)預(yù)定時(shí)間間隔后,該圖形引擎140驅(qū)動(dòng)該視頻引擎 120以從該存儲(chǔ)設(shè)備110中選擇第三視頻數(shù)據(jù)流113并播放。其中,第 三視頻數(shù)據(jù)流113可為一飛機(jī)持續(xù)飛行的視頻數(shù)據(jù)流。
圖5是如本發(fā)明所述的交互式視頻及圖形系統(tǒng)中碰撞檢測(cè)方法的 流程圖。如上所述,該視頻及圖形系統(tǒng)具有視頻引擎120及圖形引擎 140,該圖形引擎140接收一小精靈圖像數(shù)據(jù)143,該小精靈圖像數(shù)據(jù) 143包含該小精靈的位置坐標(biāo),該視頻引擎120接收多個(gè)視頻數(shù)據(jù)流的 第一視頻數(shù)據(jù)流111,該視頻數(shù)據(jù)流111包含標(biāo)頭210,該標(biāo)頭210具 有至少一個(gè)位置坐標(biāo)字段211,該至少一個(gè)位置坐標(biāo)字段211對(duì)應(yīng)于該 第一視頻數(shù)據(jù)流lll中的至少一個(gè)對(duì)象230。首先,在步驟S510中, 該圖形引擎140及該視頻引擎120分別播放小精靈圖像數(shù)據(jù)142及該 第一視頻數(shù)據(jù)流lll。
在步驟S520中,該圖形引擎140接收該第一視頻數(shù)據(jù)流的標(biāo)頭
210。
在步驟S530中,判斷該小精靈的位置坐標(biāo)與該第一視頻數(shù)據(jù)流111 的至少一個(gè)對(duì)象230的位置坐標(biāo)是否重疊。
當(dāng)該圖形引擎140判斷當(dāng)該小精靈的位置坐標(biāo)與該第一視頻數(shù)據(jù) 流111的至少一個(gè)對(duì)象230的位置坐標(biāo)重疊時(shí),表示該小精靈的圖像 與該至少一個(gè)對(duì)象230的圖像產(chǎn)生碰撞,該圖形引擎140驅(qū)動(dòng)該視頻 引擎120選擇第二視頻數(shù)據(jù)流112并播放(步驟S540)。
當(dāng)該圖形引擎140判斷該小精靈的位置坐標(biāo)與該第一視頻數(shù)據(jù)流 111的至少一個(gè)對(duì)象230的位置坐標(biāo)不重疊時(shí),表示該小精靈的圖像與 該至少一個(gè)對(duì)象230的圖像并未產(chǎn)生碰撞,該圖形引擎140驅(qū)動(dòng)該視 頻引擎120可持續(xù)播放該第一視頻數(shù)據(jù)流111,或是經(jīng)過(guò)預(yù)定時(shí)間間隔 后,選擇第三視頻數(shù)據(jù)流并播放(步驟S550)。
由前述可知,本發(fā)明可應(yīng)用于視頻平面與圖形平面中的對(duì)象的碰 撞檢測(cè)。該視頻平面是由該視頻引擎120驅(qū)動(dòng),而圖形平面是由該圖
9形引擎140驅(qū)動(dòng)。本發(fā)明的應(yīng)用包括例如可為影片字幕選單、影片互 動(dòng)廣告、卡拉ok選歌等。
由上述說(shuō)明可知,本發(fā)明可將視頻數(shù)據(jù)流(video stream)與圖像 (gmphic)進(jìn)行疊加的處理,從而提供比現(xiàn)有的游戲畫面更加豐富的視覺 效果,同時(shí)通過(guò)檢測(cè)小精靈的位置坐標(biāo)與至少一個(gè)對(duì)象230的位置坐 標(biāo)是否重疊,以進(jìn)行碰撞檢測(cè),而達(dá)到互動(dòng)效果。同時(shí)可避免使用成 本昂貴的3D游戲引擎及3D游戲引擎學(xué)習(xí)周期長(zhǎng)的問(wèn)題。
上述實(shí)施例僅為了方便說(shuō)明而舉例而已,本發(fā)明所主張的權(quán)利范 圍應(yīng)以權(quán)利要求所述為準(zhǔn),而非僅限于上述實(shí)施例。
權(quán)利要求
1.一種可檢測(cè)碰撞的交互式視頻及圖形系統(tǒng),其包含存儲(chǔ)設(shè)備,其儲(chǔ)存多個(gè)視頻數(shù)據(jù)流,該每一視頻數(shù)據(jù)流包含標(biāo)頭,該標(biāo)頭具有至少一個(gè)對(duì)應(yīng)該視頻數(shù)據(jù)流中的對(duì)象的位置坐標(biāo)的字段;視頻引擎,其耦合至該存儲(chǔ)設(shè)備,用以播放該多個(gè)視頻數(shù)據(jù)流中的第一視頻數(shù)據(jù)流;圖形引擎,接收小精靈圖像數(shù)據(jù),該小精靈圖像數(shù)據(jù)包含一小精靈位置坐標(biāo),該圖形引擎耦合至該存儲(chǔ)設(shè)備及該視頻引擎,以接收該第一視頻數(shù)據(jù)流的標(biāo)頭,當(dāng)該小精靈位置坐標(biāo)與該第一視頻數(shù)據(jù)流的至少一對(duì)象的位置坐標(biāo)重疊時(shí),該圖形引擎驅(qū)動(dòng)該視頻引擎以從該存儲(chǔ)設(shè)備中選擇第二視頻數(shù)據(jù)流并播放。
2. 根據(jù)權(quán)利要求1所述的系統(tǒng),其中,當(dāng)該小精靈位置坐標(biāo)與第 一視頻數(shù)據(jù)流的至少一對(duì)象的位置坐標(biāo)沒有重疊時(shí),該圖形引擎驅(qū)動(dòng) 該視頻引擎持續(xù)播放該第一視頻數(shù)據(jù)流,或是經(jīng)過(guò)一預(yù)定時(shí)間間隔后, 從該存儲(chǔ)設(shè)備中選擇第三視頻數(shù)據(jù)流并播放。
3. 根據(jù)權(quán)利要求2所述的系統(tǒng),其中,該視頻引擎以YUV格式 播放該多個(gè)視頻數(shù)據(jù)流。
4. 根據(jù)權(quán)利要求3所述的系統(tǒng),其中,該圖形引擎以RGB格式播放。
5. 根據(jù)權(quán)利要求4所述的系統(tǒng),其還包含YUV至RGB轉(zhuǎn)換裝置,其耦合至該視頻引擎及該圖形引擎,以 將該視頻引擎輸出的數(shù)據(jù)由YUV格式轉(zhuǎn)換成RGB格式,進(jìn)而由該圖 形引擎播放。
6. 根據(jù)權(quán)利要求5所述的系統(tǒng),其中,該圖形引擎具有第一幀緩 沖器,該第一幀緩沖器用以暫存該YUV至RGB轉(zhuǎn)換裝置所輸出的數(shù)據(jù)。
7. 根據(jù)權(quán)利要求6所述的系統(tǒng),其中,該圖形引擎具有第二幀緩 沖器,該第二幀緩沖器用以暫存該小精靈的圖像數(shù)據(jù)。
8. 根據(jù)權(quán)利要求7所述的系統(tǒng),其中,該圖形引擎將該第一幀緩 沖器的數(shù)據(jù)及該第二幀緩沖器的數(shù)據(jù)執(zhí)行阿爾法混合處理。
9. 一種應(yīng)用于交互式視頻及圖形系統(tǒng)的檢測(cè)碰撞的方法,該視頻及圖形系統(tǒng)具有視頻引擎和圖形引擎,該圖形引擎接收一小精靈圖像 數(shù)據(jù),該小精靈圖像數(shù)據(jù)包含一小精靈位置坐標(biāo),該視頻引擎接收多 個(gè)視頻數(shù)據(jù)流中的視頻數(shù)據(jù)流,該視頻數(shù)據(jù)流包含標(biāo)頭,該標(biāo)頭具有 至少一個(gè)對(duì)應(yīng)于該視頻數(shù)據(jù)流中的對(duì)象的位置坐標(biāo)字段,該方法包含下列步驟(A) 該圖形引擎及該視頻引擎分別播放小精靈圖像數(shù)據(jù)及第一視 頻數(shù)據(jù)流;(B) 該圖形引擎接收該第一視頻數(shù)據(jù)流的標(biāo)頭;以及(c)當(dāng)該圖形引擎判斷當(dāng)該小精靈位置坐標(biāo)與該第一視頻數(shù)據(jù)流中的至少一對(duì)象的位置坐標(biāo)重疊時(shí),該圖形引擎驅(qū)動(dòng)該視頻引擎選擇 第二視頻數(shù)據(jù)流并播放。
10. 根據(jù)權(quán)利要求9所述的方法,其更包含下列步驟(D)當(dāng)該圖形引擎判斷該小精靈位置坐標(biāo)與該第一視頻數(shù)據(jù)流的至少一對(duì)象的位置坐標(biāo)不重疊時(shí),該圖形引擎驅(qū)動(dòng)該視頻引擎持續(xù)播 放該第一視頻數(shù)據(jù)流,或是經(jīng)過(guò)預(yù)定時(shí)間間隔后,選擇第三視頻數(shù)據(jù) 流并播放。
11. 根據(jù)權(quán)利要求9所述的方法,其中,該視頻引擎以YUV格式 播放視頻數(shù)據(jù)流。
12. 根據(jù)權(quán)利要求ll所述的方法,其中,該圖形引擎以RGB格式播放。
13.根據(jù)權(quán)利要求12項(xiàng)所述的方法,其更包含下列歩驟YUV至RGB轉(zhuǎn)換歩驟,以將該視頻引擎輸出的數(shù)據(jù)由前述YUV 格式轉(zhuǎn)換成前述RGB格式,進(jìn)而由該圖形引擎播放。
全文摘要
本發(fā)明涉及一種可檢測(cè)碰撞的交互式視頻及圖形系統(tǒng)及方法。存儲(chǔ)設(shè)備儲(chǔ)存多個(gè)視頻數(shù)據(jù)流,每一視頻數(shù)據(jù)流包含標(biāo)頭,其具有至少一個(gè)位置坐標(biāo)字段,該至少一位置坐標(biāo)字段對(duì)應(yīng)視頻數(shù)據(jù)流中的至少一個(gè)對(duì)象。視頻引擎,播放多個(gè)視頻數(shù)據(jù)流中的第一視頻數(shù)據(jù)流。圖形引擎,接收小精靈圖像數(shù)據(jù),小精靈圖像數(shù)據(jù)包含小精靈的位置坐標(biāo),并接收第一視頻數(shù)據(jù)流的標(biāo)頭,當(dāng)小精靈的位置坐標(biāo)與第一視頻數(shù)據(jù)流的至少一對(duì)象的位置坐標(biāo)重疊時(shí),圖形引擎驅(qū)動(dòng)視頻引擎以在存儲(chǔ)設(shè)備中選擇一第二視頻數(shù)據(jù)流并播放。
文檔編號(hào)H04N5/445GK101309398SQ20071010463
公開日2008年11月19日 申請(qǐng)日期2007年5月18日 優(yōu)先權(quán)日2007年5月18日
發(fā)明者張嘉慶, 林建中 申請(qǐng)人:凌陽(yáng)電通科技股份有限公司