專利名稱:用戶可創(chuàng)建機(jī)器的制作方法
用戶可創(chuàng)建機(jī)器
些旦
^r豕
某些當(dāng)前的計(jì)算機(jī)游戲允許用戶通過改變諸如擾流器、車輪等來定制諸如 賽車等車輛。然而,所允許變化的數(shù)目是有限的并且預(yù)先計(jì)算了每一所允許的
特征組合的物理性能并將其硬編碼到游戲中。這限制了可行地提供給用戶的靈活性。
某些教育軟件游戲針對兒童生存狀態(tài),其通過提供構(gòu)件包和拖放界面以允
許用戶構(gòu)建Rube-Goldberg裝置來解決難題來提供較大程度的靈活性。 概述
以下提出本發(fā)明的簡化概述以便向讀者提供基本理解。本概述并不是本發(fā) 明的詳盡概觀,且不標(biāo)識本發(fā)明的關(guān)鍵/重要元素或描繪本發(fā)明的范圍。其唯一 目的是以簡化的形式給出此處所公開的一些概念,作為后面給出的更加詳細(xì)的 描述的序言。
在游戲中向用戶呈現(xiàn)多個(gè)組成部件,他們可以從中選擇多個(gè)部件并將其組 裝成機(jī)器。某些或全部組成部件可以具有可控參數(shù),并且這些參數(shù)被映射到用 于玩游戲的游戲控制器上的輸入。
當(dāng)結(jié)合附圖參考以下詳細(xì)描述時(shí),可以更容易領(lǐng)會并更好地理解許多附帶 特征。
附圖描述
根據(jù)附圖閱讀以下詳細(xì)描述會更好地理解本發(fā)明,其中
圖1是允許用戶創(chuàng)建機(jī)器的游戲的功能元件的示意圖2是示出游戲應(yīng)用程序的操作的示例流程圖3是示出存儲在元件庫中的數(shù)據(jù)的示意圖4是示例機(jī)器的示意圖5是游戲設(shè)備的網(wǎng)絡(luò)的示意圖6是游戲服務(wù)器的操作的方法的示例流程圖;以及圖7示出其中可以實(shí)現(xiàn)本發(fā)明中所描述的方法的各實(shí)施例的示例性的基于 計(jì)算的設(shè)備。
相同的附圖標(biāo)記用于指代附圖中相同的部分。
詳細(xì)描述
以下結(jié)合附圖提供的詳細(xì)描述旨在作為對本發(fā)明的示例的描述,而并非旨在 表示可以構(gòu)建或使用本發(fā)明的示例的唯一形式。本說明書闡述本發(fā)明的示例的功能 和用于構(gòu)建和操作本發(fā)明的示例的步驟序列。然而,相同或等效的功能和序列可以 由不同的示例來實(shí)現(xiàn)。
圖1是允許用戶從組成部件庫中用他們選擇的任何方式來創(chuàng)建諸如車輛、武 器、或其他類型的機(jī)器等機(jī)器的游戲的功能元件的示意圖。這些機(jī)器接著可以在玩
游戲時(shí)使用,該游戲可以在單個(gè)控制臺上或可以通過網(wǎng)絡(luò)(例如使用諸如XboxLive (商標(biāo))的系統(tǒng))。游戲包括與之相關(guān)聯(lián)的游戲應(yīng)用程序101、元件庫102 (這些 元件也稱為組件或構(gòu)件塊)、映射數(shù)據(jù)103和控制器接口 104。元件庫102可包括 諸如金屬板、發(fā)動機(jī)、車輪、轉(zhuǎn)向(steering)元件、火箭助推器等項(xiàng)目,元件庫 102中的每個(gè)元件可以具有相關(guān)聯(lián)的物理參數(shù)集(諸如質(zhì)量、慣性力矩、重心、摩 擦力、恢復(fù)力、密度、硬度等中的一個(gè)或多個(gè))并且其中元件是可控的,多個(gè)可控 參數(shù)(諸如轉(zhuǎn)向、推力、速度、點(diǎn)火控制等)。這些可控參數(shù)的每一個(gè)被映射到游 戲控制臺上的控件(也稱為輸入)(例如轉(zhuǎn)向可控參數(shù)被映射到左/右控件,推力 可控參數(shù)被映射到向前/向后控件,點(diǎn)火控制被映射到控制器上的按鈕等),并且 映射關(guān)系被存儲在映射數(shù)據(jù)存儲103中。可以理解,所使用的特定物理參數(shù)和可控 參數(shù)可以取決于特定游戲。物理參數(shù)"咴復(fù)力'用于指當(dāng)一物體與另一物體相撞時(shí) 返回給它的能量(例如彈力球具有較高的值,而鋼梁具有較低的值)。
可以參考圖2來描述游戲應(yīng)用程序101的操作,其中將來自元件庫102的元 件提供給用戶(框201)。所提供的這些元件可以包括該庫中的元件的子集或所有 元件,并且這些元件可以通過在圖形用戶界面(GUI)中將元件的表示呈現(xiàn)給用戶 來提供。該應(yīng)用程序允許用戶例如使用GUI中的拖放界面來選擇所提供的這些元 件中的多個(gè)并且安排它們來創(chuàng)建機(jī)器(框202)。基于映射數(shù)據(jù)103將所選的多個(gè) 元件的可控參數(shù)(或特征)的每一個(gè)映射到游戲控制器上的控件(框203)。所得 的機(jī)器接著隨后可以被測試、在玩游戲時(shí)使用和/或被保存以供將來使用。該過程 可以被重復(fù)以改進(jìn)所構(gòu)建的機(jī)器(如圖2中虛線箭頭的所示)。所組裝的機(jī)器可以
6在該過程中的任一階段存儲(例如該過程進(jìn)行到中途或在結(jié)束時(shí))。當(dāng)使用機(jī)器(進(jìn)行測試或玩游戲)時(shí),基于從可控參數(shù)所映射到的控件接收到的輸入并且也基于針對每個(gè)元件所存儲的物理參數(shù)和元件的配置來實(shí)時(shí)地計(jì)算機(jī)器上的力(框204)。
如上所述,物理參數(shù)可以被存儲在元件庫102中或其他地方。這些力(以及部分或全部物理參數(shù))接著可以被輸入到定義機(jī)器的運(yùn)動的剛體模擬器(框205)。除了提供給它的那些力(在框204中計(jì)算的那些力)之外,剛體模擬器可以計(jì)算另外的力(例如由于將元件和機(jī)器連接在一起)或考慮另外的力(例如重力、摩擦力)。剛體模擬器可以包括諸如由Havok (商標(biāo))提供的物理引擎或者能以任何其他方式實(shí)現(xiàn)。
在游戲應(yīng)用程序中,可以使用控制模塊(未在圖1中示出)來計(jì)算所組裝的機(jī)器上的力(在框204中)。可以提供多于一個(gè)控制模塊(例如可以提供分開的模塊來計(jì)算諸如汽車等特定機(jī)器類型的力),并且可以將不同的力施加裝置應(yīng)用于同
一剛體。
如圖2中的虛線箭頭所示,該過程可以在任何時(shí)候重復(fù)。例如,組件可以具有能夠被破壞、磨損、耗盡、或升級/改進(jìn)的能力。在該示例或其他示例中,隨著機(jī)器的運(yùn)作它可能以某種方式受到另一機(jī)器的影響,例如通過將機(jī)器連接到一起。所得的連結(jié)的機(jī)器隨后可以由單個(gè)游戲玩家或多于一個(gè)游戲玩家來控制(如在下文中更詳細(xì)描述的)。例如,具有磁性掛鉤的"直升機(jī)"起重機(jī)可以將其自身附接到另一機(jī)器(經(jīng)由磁性掛鉤)以便將該機(jī)器運(yùn)走,而該第二機(jī)器也可以具有會影響第一機(jī)器的控制/方向/速度的推進(jìn)器。這在某些游戲應(yīng)用程序中得到利用,例如其中
(由第一機(jī)器鉤住的)第二機(jī)器由計(jì)算機(jī)人工智能(AI)或多玩家游戲中的另一玩家控制的游戲應(yīng)用程序。第二控制實(shí)體的目標(biāo)可以是在第二機(jī)器被"捕捉"或
"鉤住"時(shí)協(xié)助或阻礙第一機(jī)器的操作。
在用戶創(chuàng)建的機(jī)器(在框202中組裝的)包括具有相同的可控參數(shù)(例如兩個(gè)火箭推進(jìn)器,每一個(gè)都具有可控參數(shù)'推力')的若干元件的情況下,每個(gè)元件的可控參數(shù)可以被映射到游戲控制器上的同一控件,并且因此當(dāng)用戶操作該控件時(shí),每個(gè)元件都將在游戲中提供推力。由每個(gè)元件所提供的控制參數(shù)(例如推力)的量可以取決于與元件和與該可控參數(shù)相關(guān)聯(lián)的參數(shù)。例如,兩個(gè)同樣的火箭推進(jìn)器可以提供相同量的推力并且相等地響應(yīng)于同一控件,然而附連不同大小和類型的推進(jìn)器(火箭、噴氣式、離子、螺旋槳等)可以提供不同量的功率、不同的功率曲線和/或?qū)ν豢丶牟煌憫?yīng)。然而,在另一示例中,機(jī)器可以包括多個(gè)子機(jī)器,其中每一個(gè)子機(jī)器由分開的游戲玩家操作(例如車輛可以構(gòu)成第一子機(jī)器,而安裝 在車輛上的武器可以構(gòu)成第二子機(jī)器)。在這樣的示例中,每一特定子機(jī)器中的元 件的可控參數(shù)可以被映射到不同游戲控制器上的控件(例如子機(jī)器1映射到游戲控 制器1上的控件,子機(jī)器2映射到游戲控制器2上的控件等)。
不同于公知的游戲,上述方法和游戲不包括針對所組裝的機(jī)器的性能而預(yù)先 計(jì)算的參數(shù),而相反,使用每一組成部件的物理參數(shù)來實(shí)時(shí)地生成機(jī)器上的控制力, 該物理參數(shù)與涉及這些可控組成部件的可控參數(shù)的輸入相耦合。為力的實(shí)時(shí)計(jì)算作 準(zhǔn)備的某些初始的計(jì)算可以在組裝機(jī)器時(shí)執(zhí)行。所計(jì)算的力隨后可用于定義機(jī)器的 結(jié)果運(yùn)動。因此,可以根據(jù)用戶的選擇以任何方式來組合元件,而非從由游戲開發(fā) 人員定義的有限選項(xiàng)中進(jìn)行選擇。
可以理解,雖然所有組成部件(或元件)具有至少一個(gè)物理參數(shù),但是并非 所有的組成部件都具有可控參數(shù)(例如金屬板沒有可控參數(shù))。雖然某些組成部件 能夠移動(例如車輪),但是它們可能仍不具有可控參數(shù),因?yàn)樗鼈冃枰l(fā)動機(jī)或 其他動力源以便能夠在用戶控制下移動(否則他們將僅基于諸如重力等其他所施加 的力來移動)。
每個(gè)元件可以具有單獨(dú)的目的,并且在某些示例中,每個(gè)元件可僅具有一個(gè) 可控參數(shù),例如發(fā)動機(jī)可以具有可控參數(shù)'速度',火箭推進(jìn)器可以具有可控參數(shù) '推力'等。雖然元件具有有限數(shù)目的可控參數(shù)(例如僅一個(gè)),但是這些可控參 數(shù)對施加到所組裝的機(jī)器上的力的效果可導(dǎo)致對所組裝的機(jī)器的運(yùn)動的許多方面 的改變。例如,方向盤或舵能夠控制方向;然而,策略性地放置的多個(gè)推進(jìn)器也可 以被用于控制方向。車輪也能夠在特定的控制下提供制動力,但是所部署的錨也能 夠這么做。
與每個(gè)元件相關(guān)聯(lián)的物理參數(shù)可以表示真實(shí)世界中的相同的元件,例如鋼板 可以有諸如質(zhì)量和密度等與真實(shí)鋼板相匹配的物理參數(shù)。然而,許多游戲世界不模
擬精確的牛頓動力學(xué),并且因此在許多示例中,可以根據(jù)游戲的特定需求來調(diào)整物 理參數(shù)或計(jì)算力的方式(框204中)(例如該板可以具有小于真實(shí)生活等價(jià)物的質(zhì) 量參數(shù),這樣使得用其構(gòu)建的戰(zhàn)爭機(jī)器能夠飛行或漂浮)。
每個(gè)元件可以具有一個(gè)或多個(gè)定義的連接點(diǎn),該元件可以在這些連接點(diǎn)處連 接到另一元件(例如車輪可以具有單個(gè)輪軸連接點(diǎn)或在車輪兩側(cè)的兩個(gè)輪軸連接 點(diǎn))。這些連接點(diǎn)301的細(xì)節(jié)可以與元件302相關(guān)聯(lián)地存儲在元件庫102中,如在 圖3的示意圖中所示,圖3也示出了上述可控參數(shù)303和物理參數(shù)304。
8特定元件的所定義的連接點(diǎn)可以是選擇性的,這樣并非具有可在每一組件上的一個(gè)或多個(gè)位置可用的標(biāo)準(zhǔn)連接點(diǎn)類型,而是使得任何組件上的任何連接點(diǎn)附連到任何其他組件上的任何連接點(diǎn),某些/全部組件上的某些/全部連接點(diǎn)可以不附連到某些/全部其他組件或相同類型的組件的某些/全部連接點(diǎn)。連接點(diǎn)的這種選擇性可以在特定游戲內(nèi)的機(jī)制中定義。例如,可能不允許將可轉(zhuǎn)向的車輪直接附連到推進(jìn)器以僅僅從兩個(gè)組件形成機(jī)器;然而,游戲玩家能夠?qū)④囕喐竭B到標(biāo)準(zhǔn)底盤組件上的任何連接點(diǎn),并且將推進(jìn)器附連到同一底盤組件上的任何其余的連接點(diǎn)。
為了幫助組裝所選元件(在框202中),游戲應(yīng)用程序可以提供用于對齊元
件(或塊)的機(jī)制。以下描述了多個(gè)示例機(jī)制。
在第一示例機(jī)制中,可以在元件周圍提供示出連接點(diǎn)的三維矩陣視覺指示,并且對象可以響應(yīng)于來自用戶的控制輸入從一個(gè)連接點(diǎn)跳到下一個(gè)連接點(diǎn)。在另一示例中,當(dāng)?shù)却斎霑r(shí),對象可以在連接點(diǎn)處暫停以指示在該處連接的要求,而非從一個(gè)點(diǎn)跳到另一個(gè)點(diǎn)。
在另一示例機(jī)制中,游戲應(yīng)用程序可以在連接點(diǎn)之間提供模擬磁引力,而當(dāng)用戶試圖在除所定義的連接點(diǎn)之外的點(diǎn)處連接元件時(shí)提供相應(yīng)的模擬排斥力(例如,如果兩個(gè)元件在并非連接點(diǎn)的點(diǎn)處被放在一起,則當(dāng)用戶松開時(shí),元件可以被示為彈開)。
在又一示例機(jī)制中,當(dāng)兩個(gè)元件在正確的位置上對齊以便連結(jié)時(shí),可以向用戶提供任何其他類型的視覺或聽覺指示。另選地,當(dāng)兩個(gè)元件在并非對應(yīng)于所定義的連接點(diǎn)的位置處被放在一起時(shí)可以提供警報(bào)。
雖然對用于幫助對齊元件的機(jī)制的描述涉及單獨(dú)的元件的連結(jié),但是這些機(jī)制也可適用于元件組,諸如部分完成的機(jī)器、子機(jī)器、以及整個(gè)機(jī)器。元件組的連接點(diǎn)可以是用戶定義的(例如用戶可以定義武器的連接點(diǎn),該武器可以被認(rèn)為是子機(jī)器,因?yàn)樗S后被安裝在車輛上并且由第二游戲玩家操作),或者連接點(diǎn)可以是組中的元件的特定組合所得到的效果(例如該組中的元件的未經(jīng)使用的和可訪問的那些連接點(diǎn))。在另一示例中,用于元件組的連接點(diǎn)可以是與以上對于個(gè)別元件的描述類似的方式是選擇性的。
圖4示出了可以使用上述游戲應(yīng)用程序和方法創(chuàng)建的示例機(jī)器400。該機(jī)器包括六個(gè)元件兩個(gè)車輪401、發(fā)動機(jī)402、轉(zhuǎn)向元件403、板404和座位405。可以理解,僅出于說明的目的,該機(jī)器是二維機(jī)器,而該機(jī)器(以及組成它的元件)可以是三維的。元件中的兩個(gè)(發(fā)動機(jī)和轉(zhuǎn)向元件)可以具有可控參數(shù)(速度和方向),并且這些參數(shù)可以被映射到游戲控制器上的兩個(gè)不同的輸入(例如,速度可以被映 射到向前/向后控件,而方向可以被映射到左/右控件)。施加到機(jī)器400上的力可 以基于六個(gè)元件中每一個(gè)的物理參數(shù)以及來自可控參數(shù)所映射到的游戲控制器上 的輸入(例如來自向前/向后和左/右控件)的輸入來實(shí)時(shí)地計(jì)算。這些計(jì)算所得的 力接著可用于生成機(jī)器的運(yùn)動。
雖然庫102中的所有元件可以由游戲開發(fā)人員來提供,但是在某些示例中,
附加元件可以由諸如其他游戲開發(fā)人員等第三方來提供或者由游戲玩家生成。這會 導(dǎo)致一種情況,在聯(lián)網(wǎng)玩游戲時(shí),游戲玩家具有不同的特征集(即不同的元件庫使 得他們能夠使用其他人沒有的元件來構(gòu)建機(jī)器)。為了使具有不同特征集的游戲玩
家仍然可以一起玩游戲,可以使用2006年6月20日提交的題為'Transfer of features between gaming devices (在游戲設(shè)備之間傳輸特征),的共同待審的美國專利申請 第11/425,258號中所描述的方法。以下參考圖5和6描述了該方法,并且美國專利 申請第11/425,258號通過引用被整體結(jié)合于此。
以下描述的將游戲設(shè)備連接在一起的該方法允許在具有不同特征集的設(shè)備之 間進(jìn)行多方游戲。設(shè)備從若干游戲設(shè)備接收數(shù)據(jù)并且確定每個(gè)游戲設(shè)備需要哪些特 征。這些所需的特征是特定設(shè)備處未持有而由其他設(shè)備中的一個(gè)或多個(gè)持有的那些 特征。與每個(gè)游戲設(shè)備所需的特定特征相關(guān)的代碼接著被傳遞給這些游戲設(shè)備中的 每一個(gè)。
圖5是游戲設(shè)備的網(wǎng)絡(luò)500的示意圖。該網(wǎng)絡(luò)包括經(jīng)由服務(wù)器502(例如Xbox Live⑧服務(wù)器)連接在一起的四個(gè)游戲設(shè)備501 (例如,Xbox 360 )。每個(gè)游戲 設(shè)備包括控制臺503、顯示器504和控制器505。這些連接可以是有線的或無線的、 直接的或間接的(例如通過因特網(wǎng))。可以理解,該網(wǎng)絡(luò)可以包括更多或更少的設(shè) 備,并且每個(gè)設(shè)備可以具有連接到其上的一個(gè)或多個(gè)控制器,其中不同的游戲玩家 使用不同的控制器來玩同一游戲。服務(wù)器502的操作可以參考圖6來描述。服務(wù)器 從每個(gè)游戲設(shè)備503接收加入游戲的請求(步驟601),并且響應(yīng)于這些請求,服 務(wù)器輪詢每個(gè)游戲設(shè)備以獲取關(guān)于所述游戲的屬性信息(步驟602)。除了級別、 武器、化身和游戲的其他特征之外,該屬性信息可以包括庫(例如在圖1中的示出 的庫102)中的元件的細(xì)節(jié)。當(dāng)接收到屬性信息之后,服務(wù)器確定每個(gè)設(shè)備所持有 的特征集的差異(步驟603)并且將所需特征傳遞給每個(gè)控制臺,以使得它們具有 共同的特征集(步驟604)。 一旦每個(gè)游戲設(shè)備具有相同的特征集,則可以開始游 戲(未在圖6中示出)。
10在另一示例中,在沒有中央服務(wù)器的情況下,游戲設(shè)備501可以在不存在支配游戲設(shè)備的對等場景中操作。每個(gè)游戲設(shè)備可以使用標(biāo)準(zhǔn)對等技術(shù)在彼此之間的復(fù)雜平行聯(lián)網(wǎng)網(wǎng)格中通信和傳遞特征數(shù)據(jù)。在一個(gè)示例實(shí)現(xiàn)中,第一游戲設(shè)備可以編譯其特征集的列表,并且接著將該列表發(fā)送給下一游戲設(shè)備,該下一游戲設(shè)備分
析該列表并在其中記錄該游戲設(shè)備持有什么額外的特征以及它不持有前一游戲設(shè)備特征中的哪些。該列表接著可以被發(fā)送給每個(gè)游戲設(shè)備,而每個(gè)接收者游戲設(shè)備又如上所述地注釋該列表。在所有的游戲設(shè)備都注釋了該列表后,該列表被傳遞回第一游戲設(shè)備。此時(shí),系統(tǒng)中的每個(gè)游戲設(shè)備都知道其他游戲設(shè)備持有哪些特征以及哪些游戲設(shè)備需要它們持有的特征數(shù)據(jù)。游戲設(shè)備接著可以將所需的特征數(shù)據(jù)流傳送到需要這些數(shù)據(jù)的那些其他游戲設(shè)備。
在該對等場景的另一示例中,每個(gè)游戲設(shè)備將它所持有的特征列表發(fā)送給網(wǎng)絡(luò)中其他游戲設(shè)備中的每個(gè)。在接收到來自網(wǎng)絡(luò)中的每個(gè)其他游戲設(shè)備的列表之后,任何游戲設(shè)備可以確定需要向哪些游戲設(shè)備發(fā)送它所持有的代碼。接著該代碼可以被流傳送到需要這些特征的其他游戲設(shè)備。另選地,游戲設(shè)備可以通過使用所接收到的列表來從網(wǎng)絡(luò)中的特定其他游戲設(shè)備請求特征數(shù)據(jù)(而非在沒有首先請求數(shù)據(jù)的情況下使該數(shù)據(jù)流傳送給設(shè)備)??梢岳斫?,可以有其他方式在對等網(wǎng)絡(luò)中的游戲設(shè)備之間共享與特征集有關(guān)的數(shù)據(jù),使得與特征集中的差異相關(guān)的代碼隨后可以在游戲設(shè)備之間傳遞。
圖7示出了可以被實(shí)現(xiàn)為諸如游戲控制臺等任何形式的計(jì)算和/或電子設(shè)備并且其中可以實(shí)現(xiàn)上述方法的各實(shí)施例的示例性的基于計(jì)算的設(shè)備700的各組件。
基于計(jì)算的設(shè)備700包括一個(gè)或多個(gè)處理器701 ,該處理器可以是微處理器、控制器、或用于處理計(jì)算機(jī)可執(zhí)行指令來控制設(shè)備的操作以便執(zhí)行上述方法的任何其他合適類型的處理器。設(shè)備還可以包括有專門任務(wù)的處理器,諸如圖形處理單元(GPU) 702和/或物理處理器(在圖7中未示出)。
計(jì)算機(jī)可執(zhí)行指令可以使用諸如存儲器703等任何計(jì)算機(jī)可讀介質(zhì)來提供。存儲器可以是任何合適的類型,諸如隨機(jī)存取存儲器(RAM),諸如磁或光存儲設(shè)備、硬盤驅(qū)動器、或CD、 DVD或其他盤驅(qū)動器等任何類型的盤存儲設(shè)備。也可以使用閃存、EPROM或EEPROM。
存儲器可以被安排成存儲包括操作系統(tǒng)704的平臺軟件,或任何其他合適的平臺軟件可以在基于計(jì)算的設(shè)備處提供以允許在該設(shè)備上執(zhí)行應(yīng)用程序軟件705。存儲在存儲器703中的應(yīng)用程序軟件可以包括上述游戲應(yīng)用程序101。剛體模擬器(在以上描述)可以被包括在游戲應(yīng)用程序101中,或者可以構(gòu)成分開的應(yīng)用程序
軟件(未在圖7中示出)。存儲器還可用于存儲元件庫102和映射數(shù)據(jù)103 (也在 以上描述)。基于計(jì)算的設(shè)備700可以包括一個(gè)或多個(gè)輸入、輸出以及接口,諸如 控制器接口 104 (或到用戶輸入設(shè)備的其他接口)和網(wǎng)絡(luò)接口 706。
雖然本發(fā)明的示例在此處被描述和示為在游戲控制臺和聯(lián)網(wǎng)的游戲系統(tǒng)中實(shí) 現(xiàn),但是所描述的裝置和系統(tǒng)是作為示例而非限制來提供的。如本領(lǐng)域的技術(shù)人員 可以理解的,本發(fā)明的示例適于在各種不同類型的計(jì)算系統(tǒng)中應(yīng)用。本發(fā)明的方法 可以在其上可以玩游戲的任何設(shè)備上實(shí)現(xiàn),并且該設(shè)備可以是聯(lián)網(wǎng)的或獨(dú)立的設(shè) 備。
雖然以上描述涉及使用剛體模擬器來從計(jì)算所得的力生成所組裝的機(jī)器的運(yùn) 動,但這僅作為示例,并且可以使用任何合適的模擬工具來從計(jì)算所得的力生成機(jī) 器的運(yùn)動。在其他示例中,可以直接生成動作(例如通過框204和205的組合)而 無需首先生成對象上的力。
在本文中使用的術(shù)語H十算機(jī)'指的是具有處理能力以使它可以執(zhí)行指令的 任何設(shè)備。本領(lǐng)域的技術(shù)人員會認(rèn)識到這種處理能力被合并到許多不同的設(shè)備中, 并且因此術(shù)語H十算機(jī)'包括PC、服務(wù)器、移動電話、個(gè)人數(shù)字助理和許多其他 設(shè)備。
本文中所描述的方法可以由存儲介質(zhì)上的機(jī)器可讀形式的軟件執(zhí)行。軟件可 以適用于在并行處理器或串行處理器上執(zhí)行,以使得各方法步驟可以按任何合適的 次序或同時(shí)執(zhí)行。
這確認(rèn)了軟件可以是有價(jià)值的、可單獨(dú)交易的商品。它旨在包含在運(yùn)行于或 者控制"啞"或標(biāo)準(zhǔn)硬件以便實(shí)現(xiàn)所需功能的軟件。它還旨在包含"描述"或定義 硬件配置以實(shí)現(xiàn)所需功能的軟件,諸如用于設(shè)計(jì)硅芯片或用于配置通用可編程芯片 的HDL (硬件描述語言)軟件。
本領(lǐng)域的技術(shù)人員將認(rèn)識到用于存儲程序指令的存儲設(shè)備可分布在網(wǎng)絡(luò)上。 例如,遠(yuǎn)程計(jì)算機(jī)可存儲描述為軟件的過程的示例。本地或終端計(jì)算機(jī)可訪問遠(yuǎn)程 計(jì)算機(jī)并下載該軟件的一部分或全部以運(yùn)行該程序。另選地,本地計(jì)算機(jī)可按需下
載軟件的片斷,或者在本地終端上執(zhí)行一些軟件指令而在遠(yuǎn)程計(jì)算機(jī)(或計(jì)算機(jī)網(wǎng) 絡(luò))上執(zhí)行一些軟件指令。本領(lǐng)域的技術(shù)人員將認(rèn)識到,通過使用本領(lǐng)域技術(shù)人員 已知的常規(guī)技術(shù),軟件指令的全部或部分可由專用電路,如DSP、可編程邏輯陣 列等來執(zhí)行。如對技術(shù)人員顯而易見的是,可以擴(kuò)展或改變本文中所給出的任何范圍或設(shè) 備值,而不會失去所尋求的效果。
可以理解以上描述的好處和優(yōu)點(diǎn)可以涉及一個(gè)實(shí)施例或可以涉及若干實(shí)施 例。還可以理解對'一,項(xiàng)目的引用是指這些項(xiàng)目中的一個(gè)或多個(gè)。
本文中所描述的各方法步驟可以在適當(dāng)時(shí)按任何合適的次序或同時(shí)執(zhí)行。此 外,可以從各方法中的任一個(gè)中刪除各個(gè)框,而不背離本文中所描述的主題的精神 和范圍。上述任一示例的各方面可以與所描述的任一其他示例的各方面組合以形成 另外的示例而不會失去所尋求的效果。
可以理解以上對優(yōu)選實(shí)施例的描述僅僅是作為示例給出的,而本領(lǐng)域的技 術(shù)人員可以作出各種修改。上述說明、示例和數(shù)據(jù)提供了對對本發(fā)明的各示例 性實(shí)施例的結(jié)構(gòu)和使用的完整描述。雖然以上帶著某種程度的特殊性或?qū)σ粋€(gè) 或多個(gè)單獨(dú)實(shí)施例的參考描述了本發(fā)明的各實(shí)施例,但是本領(lǐng)域的技術(shù)人員能 夠?qū)λ_的實(shí)施例作出多種更變而不背離本發(fā)明的精神和范圍。
權(quán)利要求
1.一種游戲,包括元件庫(102);游戲應(yīng)用程序(101),其被安排成向用戶提供所述元件庫;允許用戶從所述庫選擇并安排多個(gè)元件以創(chuàng)建機(jī)器;以及將每一元件的任何可控參數(shù)映射到游戲控制器上的輸入。
2. 如權(quán)利要求1所述的游戲,其特征在于,所述游戲應(yīng)用程序還被安排成將 映射存儲在映射數(shù)據(jù)存儲中(103)。
3. 如前述權(quán)利要求中任一項(xiàng)所述的游戲,其特征在于,所述元件庫包括,針 對每一元件(302)的至少一個(gè)相關(guān)聯(lián)的物理參數(shù)(304)。
4. 如權(quán)利要求3所述的游戲,其特征在于,所述游戲應(yīng)用程序還被安排成基于從所述游戲控制器接收到的輸入和與所述多個(gè)元件的每一個(gè)相關(guān)聯(lián)的所 述至少一個(gè)物理參數(shù)來在運(yùn)行時(shí)計(jì)算所述機(jī)器上的至少一個(gè)力。
5. 如權(quán)利要求4所述的游戲,其特征在于,所述游戲應(yīng)用程序還被安排成 將所述至少一個(gè)力輸入到模擬器以用于定義所述機(jī)器的運(yùn)動。
6. 如前述權(quán)利要求中任一項(xiàng)所述的游戲,其特征在于,所述元件庫包括針對 每一元件(302)的至少一個(gè)連接點(diǎn)(301)。
7. 如權(quán)利要求6所述的游戲,其特征在于,所述游戲應(yīng)用程序還被安排成 提供用于對齊元件的機(jī)制。
8. 如前述權(quán)利要求中任一項(xiàng)所述的游戲,其特征在于,同樣的可控參數(shù)被映 射到游戲控制器上的同一輸入。
9. 如前述權(quán)利要求中任一項(xiàng)所述的游戲,其特征在于,所述機(jī)器包括第一子 機(jī)器和第二子機(jī)器,并且將每一元件的任何可控參數(shù)映射到游戲控制器上的輸入包括將所述第一子機(jī)器中的每一元件的任何可控參數(shù)映射到第一游戲控制器上的 輸入;以及將所述第二子機(jī)器中的每一元件的任何可控參數(shù)映射到第二游戲控制器上的 輸入。
10. —種游戲中的方法,包括將元件庫提供給用戶(201);以及允許用戶從所述庫選擇并安排多個(gè)元件以創(chuàng)建機(jī)器(202);以及 將每一元件的任何可控參數(shù)映射到游戲控制器上的輸入(203)。
11. 如權(quán)利要求10所述的方法,其特征在于,還包括將映射存儲在映射數(shù)據(jù)存儲中。
12. 如權(quán)利要求10或11所述的方法,其特征在于,所述元件庫包括針對每一元件的至少一個(gè)相關(guān)聯(lián)的物理參數(shù),并且其中所述方法還包括基于從所述游戲控制器接收到的輸入和與所述多個(gè)元件的每一個(gè)相關(guān)聯(lián)的所述至少一個(gè)物理參數(shù)來在運(yùn)行時(shí)計(jì)算所述機(jī)器上的至少一個(gè)力(204)。
13. 如權(quán)利要求12所述的游戲,其特征在于,所述方法還包括將所述至少一個(gè)力輸入到模擬器以用于定義所述機(jī)器的運(yùn)動(205)。
14. 如權(quán)利要求10-13中的任何一項(xiàng)所述的方法,其特征在于,將每一元件的任何可控參數(shù)映射到游戲控制器上的輸入包括將同樣的可控參數(shù)映射到游戲控制器上的同一輸入。
15. 如權(quán)利要求10-14中任何一項(xiàng)所述的方法,其特征在于,所述機(jī)器包括第 一子機(jī)器和第二子機(jī)器,并且將每一元件的任何可控參數(shù)映射到游戲控制器上的輸 入包括將所述第一子機(jī)器中的每一元件的任何可控參數(shù)映射到第一游戲控制器上的輸入;以及將所述第二子機(jī)器中的每一元件的任何可控參數(shù)映射到第二游戲控制器上的 輸入。
16. 如權(quán)利要求10-15中任何一項(xiàng)所述的方法,其特征在于,所述元件庫包括針對每一元件的至少一個(gè)連接點(diǎn),并且其中所述方法還包括提供用于對齊元件的機(jī)制。
17. —種游戲中的方法,包括 向游戲玩家顯示多個(gè)機(jī)器組件;允許接收從所述多個(gè)機(jī)器組件選擇至少兩個(gè)機(jī)器組件以便連結(jié)來創(chuàng)建機(jī)器的第一用戶輸入;以及將與所述至少兩個(gè)機(jī)器組件的每一個(gè)相關(guān)聯(lián)的任何可控參數(shù)映射到用戶輸入 設(shè)備上的至少一個(gè)控件。
18. 如權(quán)利要求17所述的游戲中的方法,其特征在于,所述第一用戶輸入還包括與所述機(jī)器中的所述至少兩個(gè)機(jī)器組件的相對位置有關(guān)的信息。
19. 如權(quán)利要求17或18所述的游戲中的方法,其特征在于,每一機(jī)器組件具有至少一個(gè)相關(guān)聯(lián)的物理參數(shù),并且其中所述方法還包括在從所述至少一個(gè)控件接收到第二用戶輸入時(shí),基于所述第二用戶輸入、與 所述至少兩個(gè)機(jī)器組件的每一個(gè)相關(guān)聯(lián)的所述可控參數(shù)、以及與所述至少兩個(gè)機(jī)器 組件的每一個(gè)相關(guān)聯(lián)的物理參數(shù)來計(jì)算所述機(jī)器上的至少一個(gè)力。
20. 如權(quán)利要求19所述的游戲中的方法,其特征在于,還包括 將所述至少一個(gè)力輸出到被安排成生成所述機(jī)器的運(yùn)動參數(shù)的模擬器。
全文摘要
在游戲中向用戶呈現(xiàn)多個(gè)組成部件,用戶可以從中選擇多個(gè)部件并將其組裝成機(jī)器。某些或全部組成部件可以具有可控參數(shù)并且這些參數(shù)被映射到用于玩游戲的游戲控制臺上的輸入。
文檔編號A63F13/00GK101687114SQ200880022402
公開日2010年3月31日 申請日期2008年6月21日 優(yōu)先權(quán)日2007年6月28日
發(fā)明者G·梅爾斯, T·斯坦拍 申請人:微軟公司