CN117015425A - 信息处理系统、信息处理程序、信息处理方法以及信息处理装置 - Google Patents

信息处理系统、信息处理程序、信息处理方法以及信息处理装置 Download PDF

Info

Publication number
CN117015425A
CN117015425A CN202280008714.XA CN202280008714A CN117015425A CN 117015425 A CN117015425 A CN 117015425A CN 202280008714 A CN202280008714 A CN 202280008714A CN 117015425 A CN117015425 A CN 117015425A
Authority
CN
China
Prior art keywords
bonding
virtual
adhesion
preferential
virtual objects
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202280008714.XA
Other languages
English (en)
Inventor
深田直希
高山贵裕
佐藤祐也
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nintendo Co Ltd
Original Assignee
Nintendo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nintendo Co Ltd filed Critical Nintendo Co Ltd
Publication of CN117015425A publication Critical patent/CN117015425A/zh
Pending legal-status Critical Current

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/63Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor by the player, e.g. authoring using a level editor
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • A63F13/577Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game using determination of contact between game characters or objects, e.g. to avoid collision between virtual racing cars

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)

Abstract

提供一种信息处理系统,在将虚拟对象彼此连接来生成由多个虚拟对象构成的对象时能够提高可用性。在信息处理系统的一例中,通过用户的选择操作来选择多个虚拟对象中的第一对象,生成示出所选择的第一对象上的粘接位置和多个虚拟对象中的第二对象上的粘接位置的粘接对象。根据用户的粘接指示来将第一对象与第二对象在第一对象上的粘接位置和第二对象上的粘接位置处粘接。

Description

信息处理系统、信息处理程序、信息处理方法以及信息处理 装置
技术领域
本发明涉及一种能够通过用户的操作来将多个虚拟对象组合的信息处理系统、信息处理程序、信息处理方法以及信息处理装置。
背景技术
以往以来,存在一种游戏系统,使操作目标对象移动来使该操作目标对象与存在于虚拟空间的对象接触,由此将多个对象构成为一体(例如,参照专利文献1)。
现有技术文献
专利文献
专利文献1:日本特开2007-21248号公报
发明内容
发明要解决的问题
然而,在使用独立的多个虚拟对象通过用户的操作来生成由该多个虚拟对象构成的对象的情况下,在提高可用性这一观点上存在改善的余地。
因此,本发明的目的在于,提供一种在使用独立的多个虚拟对象来生成由该多个虚拟对象构成的对象时能够提高可用性(usability)的信息处理系统、信息处理程序、信息处理方法以及信息处理装置。
用于解决问题的方案
为了解决上述问题,本发明采用了以下结构。
本发明的信息处理系统具备:配置单元,其将能够在游戏空间内移动且能够彼此粘接的多个虚拟对象配置于所述游戏空间;选择单元,其用于通过用户的选择操作来选择配置于所述游戏空间的多个虚拟对象中的第一对象;粘接对象生成单元,其生成示出通过所述选择操作所选择的所述第一对象上的位置和所述多个虚拟对象中的第二对象上的位置的粘接对象;以及粘接单元,其根据用户的粘接指示来将所述第一对象与所述第二对象在所述粘接对象所示出的所述第一对象上的所述位置和所述第二对象上的所述位置处粘接。所述粘接对象生成单元根据在进行所述粘接指示之前在所述游戏空间内所述所选择的所述第一对象进行了移动或发生了姿势变化,来使所述粘接对象所示出的所述第一对象上的所述位置和所述第二对象上的所述位置变化。
根据上述,能够通过粘接对象来示出将第一对象上的哪个位置与第二对象上的哪个位置粘接。由此,在用户将多个虚拟对象粘接来构成由多个虚拟对象构成的对象时能够提高便利性。
另外,关于上述信息处理系统,也可以是,还具备控制单元,在所述第一对象移动的情况下,所述控制单元进行所述第一对象与所述第二对象的碰撞判定,在所述第一对象与所述第二对象发生了碰撞的情况下,所述控制单元控制所述第一对象和所述第二对象中的至少任一方的移动。
根据上述,在将第一对象与第二对象进行组装时进行碰撞判定,并控制各对象的行为。由此,用户能够一边识别出第一对象与第二对象之间的距离一边将第一对象与第二对象进行组装。
另外,关于上述信息处理系统,也可以是,还具备投影单元,所述投影单元生成将所述第一对象投影到所述第二对象的表面所得到的投影像。
根据上述,能够使用户容易地识别出第一对象与第二对象的位置关系。
另外,也可以是,所述投影单元生成将所选择的所述第一对象在第一方向上进行投影所得到的第一投影像、以及将所选择的所述第一对象在与所述第一方向正交的第二方向上进行投影所得到的第二投影像。
根据上述,能够将第一对象在相正交的两个方向上进行投影,因此用户能够更容易地识别出第一对象与第二对象的位置关系。
另外,关于上述信息处理系统,也可以是,还具备影子生成单元,所述影子生成单元基于所述游戏空间中设定的光源,来生成与所述投影像不同的、所述第一对象的影子。
根据上述,能够生成第一对象的影子和投影像。
另外,也可以是,所述所选择的所述第一对象以规定的颜色进行显示,所述第一对象的投影像以所述规定的颜色进行显示。
根据上述,第一对象和该第一对象的投影像以相同的颜色进行显示,因此用户能够容易地识别出在第二对象的表面映现出的投影像是第一对象的投影像,能够容易地识别出第一对象与第二对象的位置关系。
另外,也可以是,在所述虚拟对象设定相比于其它部分而言易于粘接的优先粘接部。
根据上述,能够优先在优先粘接部将多个虚拟对象粘接。
另外,也可以是,在所述第一对象的所述优先粘接部和所述第二对象的所述优先粘接部满足第一条件的情况下,所述粘接对象生成单元生成示出所述第一对象的所述优先粘接部和所述第二对象的所述优先粘接部的所述粘接对象。也可以是,在所述第一对象的所述优先粘接部和所述第二对象的所述优先粘接部不满足所述第一条件的情况下,所述粘接对象生成单元生成示出满足第二条件的、所述第一对象上的位置和所述第二对象上的位置的所述粘接对象。
根据上述,在第一对象和第二对象双方的优先粘接部满足第一条件的情况下,能够将第一对象与第二对象在它们的优先粘接部处粘接。另外,在不满足第一条件的情况下,能够在满足第二条件的、第一对象上的位置和第二对象上的位置将第一对象与第二对象粘接。
另外,也可以是,在所述第一对象的所述优先粘接部和所述第二对象的所述优先粘接部满足第一条件的情况下,所述粘接对象生成单元生成示出所述第一对象的所述优先粘接部和所述第二对象的所述优先粘接部的所述粘接对象。也可以是,在所述第一对象和所述第二对象中的至少一方没有被设定所述优先粘接部的情况下,所述粘接对象生成单元生成示出满足第二条件的、所述第一对象上的位置和所述第二对象上的位置的所述粘接对象。
根据上述,在第一对象的优先粘接部和第二对象的优先粘接部满足第一条件的情况下,能够优先将该优先粘接部彼此粘接。另外,在第一对象和第二对象中的至少一方没有被设定优先粘接部的情况下,能够在满足第二条件的、第一对象上的位置和第二对象上的位置将第一对象与第二对象粘接。
另外,也可以是,所述粘接单元在将所述第一对象与所述第二对象在所述第一对象的所述优先粘接部和所述第二对象的所述优先粘接部处粘接的情况下,使用基于各优先粘接部的规定的方向来调整所述第一对象和所述第二对象中的至少任一方的姿势后将所述第一对象与所述第二对象粘接。
根据上述,在将优先粘接部彼此粘接的情况下,能够使用基于各优先粘接部的规定的方向来调整第一对象或第二对象的姿势。例如,能够基于在各优先粘接部处设定的方向来调整各对象的姿势后将各对象粘接。
另外,也可以是,所述粘接单元在将所述第一对象与所述第二对象在所述第一对象的所述优先粘接部和所述第二对象的所述优先粘接部处粘接的情况下,以使各优先粘接部的法线方向平行的方式将所述第一对象与所述第二对象粘接。
根据上述,能够以能够使各优先粘接部的法线方向一致、例如第一对象的某个面与第二对象的某个面平行的方式调整第一对象及第二对象的姿势后将两个对象粘接。
另外,也可以是,所述粘接单元在将所述第一对象与所述第二对象在所述第一对象的所述优先粘接部和所述第二对象的所述优先粘接部处粘接的情况下,以使在所述第一对象的所述优先粘接部处设定的切线方向与在所述第二对象的所述优先粘接部处设定的切线方向之间为预先决定的角度的方式将所述第一对象与所述第二对象粘接。
根据上述,能够以使在各优先粘接部处设定的切线方向之间为预先决定的角度的方式调整第一对象及第二对象的姿势后将两个对象粘接。
另外,也可以是,所述粘接对象是将所述第一对象上的所述位置与所述第二对象上的所述位置连结的对象。
根据上述,能够使用户直观地识别出将第一对象与第二对象在由粘接对象示出的粘接位置处粘接。
另外,也可以是,所述选择单元在所述第一对象与所述第二对象被粘接起来的状态下选择所述第一对象和所述第二对象中的任一方。也可以是,所述粘接对象生成单元生成示出所选择的所述任一方的虚拟对象上的位置和所述多个虚拟对象中的第三对象上的位置的所述粘接对象。也可以是,所述粘接单元根据用户的粘接指示来将所选择的所述任一方的虚拟对象与所述第三对象在所述粘接对象所示出的所述任一方的虚拟对象上的所述位置和所述第三对象上的所述位置处粘接。
根据上述,用户能够对由第一对象和第二对象构成的对象容易地在期望的位置进一步粘接第三对象。
另外,也可以是,显示将通过所述粘接单元粘接起来的所述第一对象与所述第二对象的粘接位置覆盖的覆盖对象。
根据上述,在将所述第一对象与所述第二对象粘接的位置处显示将该粘接位置覆盖的覆盖对象,因此能够使用户识别出粘接位置。
另外,也可以是,在通过所述粘接单元将所述第一对象与所述第二对象在所述粘接对象所示出的所述位置处粘接之后,所述粘接对象作为所述覆盖对象残留在所述位置。
根据上述,能够在粘接指示后也使粘接对象作为覆盖对象残留。
另外,也可以是,在通过所述粘接单元将所述第一对象与所述第二对象在所述粘接对象所示出的所述位置处粘接之后,所述粘接对象残留在包含该位置的规定范围内。
根据上述,在第一对象与第二对象被粘接起来之后,也能够显示这些第一对象与第二对象通过用户的操作被进行了粘接。
另外,也可以是,所述粘接单元在将所述第一对象与所述第二对象粘接的情况下,使所述第一对象和所述第二对象以相互接近的方式移动,来将所述第一对象与所述第二对象粘接。
根据上述,在将第一对象与第二对象粘接时,能够使第一对象和第二对象一边相互接近一边移动。
另外,也可以是,对所述多个虚拟对象中的各个虚拟对象设定了重量。也可以是,所述粘接单元使所述第一对象和所述第二对象以较轻一方的对象的移动距离比较重一方的对象的移动距离长的方式移动。
根据上述,用户例如能够通过两个虚拟对象被进行粘接时的行为来掌握两个虚拟对象的重量的关系。
另外,也可以是,所述粘接单元根据所述粘接指示来生成将多个所述虚拟对象粘接而得到的合体对象。另外,也可以是,上述信息处理系统还具备:脱离单元,其使包含多个所述虚拟对象的合体对象中的至少任一个虚拟对象脱离;合体对象信息计算单元,其基于构成所述合体对象的多个所述虚拟对象来计算与所述合体对象有关的合体对象信息,并存储该合体对象信息;以及动作控制单元,其基于所述合体对象信息来控制所述合体对象的动作。也可以是,每当通过所述粘接单元粘接所述虚拟对象时,所述合体对象信息计算单元计算并存储所述合体对象信息,每当通过所述脱离单元使所述虚拟对象从所述合体对象脱离时,所述合体对象信息计算单元计算并存储所述合体对象信息。
根据上述,在计算合体对象的行为时,即使不是每次都调查合体对象中包含的多个虚拟对象之间的粘接,也能够使用合体对象信息来计算作为合体对象的行为。
另外,其它发明也可以是使信息处理装置的计算机作为上述各单元发挥功能的信息处理程序。另外,其它发明也可以是在上述信息处理系统中进行的信息处理方法。
发明的效果
根据本发明,能够通过粘接对象来示出将第一对象上的哪个位置与第二对象上的哪个位置粘接。
附图说明
图1是表示在主体装置2上安装有左控制器3和右控制器4的状态的一例的图。
图2是表示从主体装置2分别卸下左控制器3和右控制器4后的状态的一例的图。
图3是表示主体装置2的一例的六面视图。
图4是表示左控制器3的一例的六面视图。
图5是表示右控制器4的一例的六面视图。
图6是表示主体装置2的内部结构的一例的框图。
图7是表示主体装置2、左控制器3以及右控制器4的内部结构的一例的框图。
图8是在执行了本实施方式的游戏的情况下显示的游戏图像的一例的图。
图9是表示用户选择了发动机对象70a的情形的游戏图像的一例的图。
图10是表示用户角色PC从图9的位置向斜上方向移动后的游戏图像的一例的图。
图11是表示用户角色PC从图10的位置进一步向深度方向移动后的游戏图像的一例的图。
图12是表示在图11所示的状态下由用户进行了粘接指示后的游戏图像的一例的图。
图13是表示作为由发动机对象70a和机翼对象70b构成的合体对象的飞机对象75的一例的图。
图14是表示紧挨着选择了车轮对象70c之后的游戏图像的一例的图。
图15是表示在选择了车轮对象70c之后使车轮对象70c的姿势变化后的游戏图像的一例的图。
图16是表示使所选择的车轮对象70c接近了板对象70d时的游戏图像的一例的图。
图17是表示车轮对象70c被粘接于板对象70d之后的游戏图像的一例的图。
图18是表示选择构成合体对象76的板对象70d并使车轮对象70c粘接于板对象70d的情形的一例的图。
图19是表示作为合体对象的四轮车对象76的一例的图。
图20是表示紧挨着选择了岩石对象70g之后的游戏图像的一例的图。
图21是表示使所选择的岩石对象70g接近了箱对象70f时的游戏图像的一例的图。
图22是表示从图21的状态移动了岩石对象70g时的游戏图像的一例的图。
图23是表示在图22的状态下进行了粘接指示时的游戏图像的一例的图。
图24是表示粘接对象78的基本形状的一例的图。
图25是用于说明使粘接对象78变形的方法的图。
图26是用于说明使粘接对象78变形的方法的图。
图27是用于说明使粘接对象78变形的方法的图。
图28是用于说明使粘接对象78变形的方法的图。
图29是用于说明两个虚拟对象70在优先粘接部BP被进行粘接的情况下的粘接对象78的生成的图。
图30是表示在两个虚拟对象70在优先粘接部BP被进行粘接的情况下进行粘接指示之前的两个虚拟对象70的位置关系和进行粘接指示之后的两个虚拟对象70的位置关系的图。
图31是用于说明根据切线向量TL来控制选择对象的姿势的例子的图。
图32是表示在两个虚拟对象70被粘接起来的状态下进行了粘接解除操作时的一例的图。
图33是表示使虚拟摄像机VC的朝向向右方向变化时的选择对象的移动的一例的图。
图34是表示在两个虚拟对象70被粘接起来的状态下进行了不满足规定的解除条件的输入时的一例的图。
图35是表示在四个虚拟对象70被粘接起来的状态下进行了粘接解除操作的情况下的粘接解除的一例的图。
图36是表示在执行游戏处理的期间存储于主体装置2的存储器的数据的一例的图。
图37是表示由主体装置2的处理器81执行的游戏处理的一例的流程图。
图38是表示步骤S106的合体对象生成处理的一例的流程图。
图39是表示步骤S152的粘接对象生成处理的一例的流程图。
图40是表示步骤S108的粘接解除处理的一例的流程图。
具体实施方式
下面,对本实施方式的一例所涉及的游戏系统进行说明。本实施方式中的游戏系统1的一例包括主体装置(信息处理装置,在本实施方式中作为游戏装置主体发挥功能)2、左控制器3以及右控制器4。左控制器3和右控制器4分别能够相对于主体装置2进行装卸。
图1是表示在主体装置2上安装有左控制器3和右控制器4的状态的一例的图。如图1所示,左控制器3及右控制器4分别安装于主体装置2从而一体化。主体装置2是执行游戏系统1中的各种处理(例如,游戏处理)的装置。主体装置2具备显示器12。左控制器3及右控制器4是具备用于供用户进行输入的操作部的装置。
图2是表示从主体装置2分别卸下左控制器3及右控制器4后的状态的一例的图。如图1和图2所示,左控制器3及右控制器4能够相对于主体装置2进行装卸。此外,在下面,有时作为左控制器3及右控制器4的统称,记载为“控制器”。
图3是表示主体装置2的一例的六面视图。如图3所示,主体装置2具备大致板状的外壳(housing)11。在本实施方式中,外壳11的主面(换言之,正面侧的面,即设置有显示器12的面)大致上为矩形形状。
如图3所示,主体装置2具备设置于外壳11的主面的显示器12。显示器12用于显示主体装置2所生成的图像。
另外,主体装置2在显示器12的画面上具备触摸面板13。在本实施方式中,触摸面板13是能够进行多点触摸输入(multi-touch input)的方式(例如,静电电容方式)的触摸面板。
主体装置2在外壳11的内部具备扬声器(即,图6所示的扬声器88)。如图3所示,在外壳11的主面形成有扬声器孔11a及11b。
另外,主体装置2具备作为用于供主体装置2与左控制器3进行有线通信的端子的左侧端子17、以及用于供主体装置2与右控制器4进行有线通信的右侧端子21。
如图3所示,主体装置2具备槽23。槽23设置于外壳11的上侧面。槽23具有能够安装规定种类的存储介质的形状。
主体装置2具备下侧端子27。下侧端子27是用于供主体装置2与托架(日语:クレードル)进行通信的端子。在本实施方式中,下侧端子27是USB连接器(更具体地说,凹形侧连接器)。在将上述一体型装置或主体装置2单体载置于托架的情况下,游戏系统1能够将由主体装置2生成并输出的图像显示在固置型监视器上。
图4是表示左控制器3的一例的六面视图。如图4所示,左控制器3具备外壳31。
左控制器3具备类比摇杆(analog stick)32。如图4所示,类比摇杆32设置于外壳31的主面。类比摇杆32能够用作能够输入方向的方向输入部。用户能够通过使类比摇杆32倾倒来输入与倾倒方向相应的方向(以及输入与倾倒的角度相应的大小)。此外,左控制器3也可以具备十字键或能够进行滑动输入的滑动摇杆等来取代类比摇杆作为方向输入部。另外,在本实施方式中,能够进行按下类比摇杆32的输入。
左控制器3具备各种操作按钮。左控制器3在外壳31的主面上具备4个操作按钮33~36(具体地说,右方向按钮33、下方向按钮34、上方向按钮35以及左方向按钮36)。并且,左控制器3具备录像按钮37和-(负)按钮47。左控制器3在外壳31的侧面的左上部具备第一L按钮38和ZL按钮39。另外,左控制器3在外壳31的侧面的、安装于主体装置2时被安装的一侧的面上具备第二L按钮43和第二R按钮44。这些操作按钮用于进行与由主体装置2执行的各种程序(例如,OS程序、应用程序)相应的指示。
另外,左控制器3具备用于供左控制器3与主体装置2进行有线通信的端子42。
图5是表示右控制器4的一例的六面视图。如图5所示,右控制器4具备外壳51。
右控制器4与左控制器3同样地具备类比摇杆52来作为方向输入部。在本实施方式中,类比摇杆52是与左控制器3的类比摇杆32相同的结构。另外,右控制器4也可以具备十字键或能够进行滑动输入的滑动摇杆等来取代类比摇杆。另外,右控制器4与左控制器3同样地,在外壳51的主面上具备4个操作按钮53~56(具体地说,A按钮53、B按钮54、X按钮55以及Y按钮56)。并且,右控制器4具备+(正)按钮57和Home按钮58。另外,右控制器4在外壳51的侧面的右上部具备第一R按钮60和ZR按钮61。另外,右控制器4与左控制器3同样地,具备第二L按钮65和第二R按钮66。
另外,右控制器4具备用于供右控制器4与主体装置2进行有线通信的端子64。
图6是表示主体装置2的内部结构的一例的框图。主体装置2除了图3所示的结构以外,还具备图6所示的各构成要素81~91、97以及98。这些构成要素81~91、97以及98中的若干个构成要素也可以作为电子部件安装在电子电路基板上来收纳于外壳11内。
主体装置2具备处理器81。处理器81是执行在主体装置2中执行的各种信息处理的信息处理部,例如既可以仅由CPU(Central Processing Unit:中央处理单元)构成,也可以由包括CPU功能、GPU(Graphics Processing Unit:图形处理单元)功能等多个功能的SoC(System-on-a-chip:片上系统)构成。处理器81通过执行存储部(具体地说,是快闪存储器84等内部存储介质、或者安装于槽23的外部存储介质等)中存储的信息处理程序(例如,游戏程序),来执行各种信息处理。
作为自身中内置的内部存储介质的一例,主体装置2具备快闪存储器84和DRAM(Dynamic Random Access Memory:动态随机存取存储器)85。快闪存储器84及DRAM 85与处理器81连接。快闪存储器84是主要用于存储主体装置2中保存的各种数据(也可以是程序)的存储器。DRAM 85是用于暂时性地存储在信息处理中使用的各种数据的存储器。
主体装置2具备槽接口(以下简记为“I/F”。)91。槽I/F 91与处理器81连接。槽I/F91与槽23连接,根据处理器81的指示来进行对安装于槽23的规定种类的存储介质(例如,专用存储卡)的数据的读出和写入。
处理器81在快闪存储器84、DRAM 85以及上述各存储介质之间适当地进行数据的读出或写入,来执行上述的信息处理。
主体装置2具备网络通信部82。网络通信部82与处理器81连接。网络通信部82经由网络来与外部的装置进行通信(具体地说,无线通信)。在本实施方式中,作为第一通信方式,网络通信部82通过遵循Wi-Fi标准的方式,与无线LAN连接来与外部装置进行通信。另外,作为第二通信方式,网络通信部82通过规定的通信方式(例如,基于独特协议的通信、红外线通信),来与相同种类的其它主体装置2之间进行无线通信。
主体装置2具备控制器通信部83。控制器通信部83与处理器81连接。控制器通信部83与左控制器3和/或右控制器4进行无线通信。
处理器81与上述的左侧端子17、右侧端子21以及下侧端子27连接。处理器81在与左控制器3进行有线通信的情况下,经由左侧端子17向左控制器3发送数据,并且经由左侧端子17从左控制器3接收操作数据。另外,处理器81在与右控制器4进行有线通信的情况下,经由右侧端子21向右控制器4发送数据,并且经由右侧端子21从右控制器4接收操作数据。另外,处理器81在与托架进行通信的情况下,经由下侧端子27向托架发送数据。这样,在本实施方式中,主体装置2能够与左控制器3及右控制器4之间分别进行有线通信和无线通信这两方。另外,在左控制器3及右控制器4安装于主体装置2的一体型装置或主体装置2单体安装于托架的情况下,主体装置2能够经由托架来将数据(例如,图像数据、声音数据)输出到固置型监视器等。
主体装置2具备触摸面板控制器86,该触摸面板控制器86是进行触摸面板13的控制的电路。触摸面板控制器86连接于触摸面板13与处理器81之间。触摸面板控制器86基于来自触摸面板13的信号,生成例如表示进行了触摸输入的位置的数据并将该数据输出到处理器81。
另外,显示器12与处理器81连接。处理器81将(例如通过执行上述的信息处理而)生成的图像和/或从外部获取到的图像显示在显示器12上。
主体装置2具备编解码电路(codec circuit)87和扬声器(具体地说,左扬声器和右扬声器)88。编解码电路87与扬声器88及声音输入输出端子25连接,并且与处理器81连接。编解码电路87是控制对扬声器88和声音输入输出端子25的声音数据的输入输出的电路。
另外,主体装置2具备加速度传感器89。在本实施方式中,加速度传感器89检测沿着规定的3个轴(例如,图1所示的xyz轴)方向的加速度的大小。此外,加速度传感器89也可以检测1个轴方向或2个轴方向的加速度。
另外,主体装置2具备角速度传感器90。在本实施方式中,角速度传感器90检测绕规定的3个轴(例如,图1所示的xyz轴)的角速度。此外,角速度传感器90也可以检测绕1个轴或绕2个轴的角速度。
加速度传感器89及角速度传感器90与处理器81连接,加速度传感器89和角速度传感器90的检测结果被输出到处理器81。处理器81能够基于上述的加速度传感器89和角速度传感器90的检测结果来计算与主体装置2的活动和/或姿势有关的信息。
主体装置2具备电力控制部97和电池98。电力控制部97与电池98及处理器81连接。
图7是表示主体装置2、左控制器3以及右控制器4的内部结构的一例的框图。此外,关于与主体装置2有关的内部结构的详情,在图6中已示出,因此在图7中省略。
左控制器3具备与主体装置2之间进行通信的通信控制部101。如图7所示,通信控制部101与包括端子42在内的各构成要素连接。在本实施方式中,通信控制部101能够通过经由端子42的有线通信和不经由端子42的无线通信这两方来与主体装置2进行通信。通信控制部101控制左控制器3对主体装置2进行的通信方法。即,在左控制器3安装于主体装置2的情况下,通信控制部101经由端子42来与主体装置2进行通信。另外,在左控制器3脱离于主体装置2的情况下,通信控制部101与主体装置2(具体地说,控制器通信部83)之间进行无线通信。例如遵循Bluetooth(注册商标)的标准来进行控制器通信部83与通信控制部101之间的无线通信。
另外,左控制器3例如具备快闪存储器等存储器102。通信控制部101例如由微型计算机(也称为微处理器)构成,通过执行存储器102中存储的固件来执行各种处理。
左控制器3具备各按钮103(具体地说,按钮33~39、43、44以及47)。另外,左控制器3具备类比摇杆(在图7中记载为“摇杆”)32。各按钮103和类比摇杆32将与对自身进行的操作有关的信息在适当的时机反复输出到通信控制部101。
左控制器3具备惯性传感器。具体地说,左控制器3具备加速度传感器104。另外,左控制器3具备角速度传感器105。在本实施方式中,加速度传感器104检测沿着规定的3个轴(例如,图4所示的xyz轴)方向的加速度的大小。此外,加速度传感器104也可以检测1个轴方向或2个轴方向的加速度。在本实施方式中,角速度传感器105检测绕规定的3个轴(例如,图4所示的xyz轴)的角速度。此外,角速度传感器105也可以检测绕1个轴或绕2个轴的角速度。加速度传感器104和角速度传感器105分别与通信控制部101连接。而且,加速度传感器104和角速度传感器105的检测结果在适当的时机反复被输出到通信控制部101。
通信控制部101从各输入部(具体地说,各按钮103、类比摇杆32、各传感器104及105)获取与输入有关的信息(具体地说,与操作有关的信息或传感器的检测结果)。通信控制部101将包括所获取到的信息(或对所获取到的信息进行规定的加工后得到的信息)的操作数据发送到主体装置2。此外,以每规定时间发送1次的比例来反复发送操作数据。此外,向主体装置2发送与输入有关的信息的间隔在各输入部中既可以相同也可以不同。
通过向主体装置2发送上述操作数据,主体装置2能够获知对左控制器3进行的输入。即,主体装置2能够基于操作数据来判别对各按钮103和类比摇杆32的操作。另外,主体装置2能够基于操作数据(具体地说,加速度传感器104和角速度传感器105的检测结果)来计算与左控制器3的活动和/或姿势有关的信息。
左控制器3具备电力供给部108。在本实施方式中,电力供给部108具有电池和电力控制电路。虽未进行图示,但是电力控制电路与电池连接,并且与左控制器3的各部(具体地说,接受电池的电力的供给的各部)连接。
如图7所示,右控制器4具备与主体装置2之间进行通信的通信控制部111。另外,右控制器4具备与通信控制部111连接的存储器112。通信控制部111与包括端子64在内的各构成要素连接。通信控制部111和存储器112具有与左控制器3的通信控制部101和存储器102相同的功能。
右控制器4具备与左控制器3的各输入部相同的各输入部。具体地说,具备各按钮113、类比摇杆52、惯性传感器(加速度传感器114及角速度传感器115)。关于这些各输入部,具有与左控制器3的各输入部相同的功能,同样地进行动作。
右控制器4具备电力供给部118。电力供给部118具有与左控制器3的电力供给部108相同的功能,同样地进行动作。
(游戏的概要)
接着,对本实施方式的游戏进行说明。在本实施方式的游戏中,在虚拟空间(游戏空间)配置有用户角色PC,游戏通过用户角色PC时而在虚拟空间内移动、时而进行规定的动作、时而击败敌方角色而进展。在虚拟空间中配置有虚拟摄像机。虚拟摄像机以其拍摄范围包含用户角色PC的方式配置。例如,虚拟摄像机也可以被设定在用户角色PC的背后。使用虚拟摄像机来生成包含用户角色PC的游戏图像,并在显示器12或固置型监视器中显示该游戏图像。
图8是表示在执行了本实施方式的游戏的情况下显示的游戏图像的一例的图。如图8所示,在虚拟空间配置有用户角色PC和多个虚拟对象70(70a~70g)。另外,虽然省略图示,但是在虚拟空间配置有在虚拟空间中固定的树、建筑物等对象。
用户角色PC是由用户操作的角色。用户角色PC根据对控制器(3或4)的输入而在虚拟空间内移动或者在虚拟空间内进行规定的动作。另外,用户角色PC将多个虚拟对象70组合来制作合体对象。
多个虚拟对象70是能够根据用户的操作而在虚拟空间内移动的对象,并且是能够相互粘接的对象。多个虚拟对象70通过被相互粘接而构成合体对象。例如,多个虚拟对象70被预先配置在虚拟空间的地面。另外,也可以是,基于用户的操作而使多个虚拟对象70出现在虚拟空间。例如,也可以是,在用户角色PC击败了敌方角色的情况下、完成了规定的课题的情况下,虚拟对象70出现在虚拟空间。另外,多个虚拟对象70也可以被作为用户角色PC所拥有的道具进行管理,通常不被配置在虚拟空间而作为素材对象收容在用户角色PC的虚拟的收容区域内。而且,也可以是,在被用户进行了操作的情况下,收容区域内中收容的虚拟对象70出现在虚拟空间内。
用户能够通过将多个虚拟对象70组合来生成合体对象。例如,用户能够生成作为合体对象的车辆、战车、飞机等,并且能够使用所生成的合体对象来使游戏进展。例如,用户能够将所生成的合体对象使用于虚拟空间内的移动、对敌方角色的攻击。
例如,多个虚拟对象70包括发动机对象70a、机翼对象70b、车轮对象70c、板对象70d、操纵杆对象70e、箱对象70f以及岩石对象70g。此外,除了这些虚拟对象以外,也可以还准备用于构成合体对象的另外的虚拟对象。
发动机对象70a是模拟了喷气式发动机的对象,是具有动力的虚拟对象。发动机对象70a在构成为合体对象的一部分的情况下,对合体对象整体施加速度、加速度、角速度。机翼对象70b是用于在空中飞行的虚拟对象,在以规定的速度以上的速度在虚拟空间内移动的情况下产生升力。
车轮对象70c是具有动力的虚拟对象,例如是能够构成为车辆的车轮的对象。车轮对象70c构成为能够向预先决定的一个方向进行旋转。另外,板对象70d是平面状的虚拟对象。板对象70d例如能够用作车辆的车身。另外,还能够通过将多个板对象70d立起来排列来在虚拟空间形成壁,或者使用多个板对象70d来形成六面体。
操纵杆对象70e是在构成为合体对象的一部分的情况下用于控制合体对象的移动的虚拟对象。例如,操纵杆对象70e对合体对象施加旋转来控制合体对象的移动方向。
另外,箱对象70f是具有例如立方体形状的虚拟对象,是能够构成为各种各样的合体对象的一部分的对象。另外,岩石对象70g是曲面形状的虚拟对象,是模拟了岩石的对象。
如图8所示,有时在虚拟对象70的表面设定一个或多个优先粘接部BP。优先粘接部BP是在将虚拟对象70彼此粘接时相比于其它部分而言优先粘接的位置,其详情后述。
这里,在本实施方式中,虚拟对象70彼此的“粘接”是指虚拟对象70在彼此接近的位置作为一体的对象进行动作。例如,也可以是,在两个虚拟对象70被粘接起来的情况下,该两个虚拟对象70相互接合。另外,在两个虚拟对象70被粘接起来的情况下,两个虚拟对象70也可以不是严格地接合,例如也可以在两个虚拟对象70之间存在间隙或者存在后述的粘接对象。另外,“多个虚拟对象70作为一体的对象进行动作”包括以下情况:维持多个虚拟对象70的相对位置关系,从而多个虚拟对象70仿佛为一个对象那样在虚拟空间内移动或改变姿势。此外,也可以是,被粘接起来的多个虚拟对象70的相对位置关系不是完全固定的,例如,在对多个虚拟对象70中的任一者施加了力或者施加了冲击的情况下,在保持这些虚拟对象粘接着的状态下这些虚拟对象的位置关系存在稍微的变化。
优先粘接部BP是由游戏制作者在各虚拟对象70预先设定的。例如,在发动机对象70a的底面设定一个优先粘接部BP。另外,在机翼对象70b的上表面设定三个优先粘接部BP。另外,在板对象70d的上表面及侧面设定多个优先粘接部BP。另外,在车轮对象70c和操纵杆对象70e也预先设定一个或多个优先粘接部BP。
另一方面,在箱对象70f和岩石对象70g没有设定优先粘接部BP。
用户能够通过选择虚拟空间中配置的任一个虚拟对象70并将其与其它虚拟对象70粘接,来生成将多个虚拟对象70粘接所得到的合体对象。图9是表示用户选择了发动机对象70a的情形的游戏图像的一例的图。
用户例如能够使用左控制器3的类比摇杆32来使用户角色PC在虚拟空间内移动。当用户角色PC在虚拟空间内移动时,虚拟摄像机也以追随用户角色PC的方式在虚拟空间内移动。另外,用户能够使用右控制器4的类比摇杆52来控制虚拟摄像机的朝向(视线方向)。虚拟摄像机以使其拍摄范围包含用户角色PC的方式在虚拟空间内移动。
例如,在画面的中央显示有用于指示虚拟对象70的指示标识(未图示),用户通过使用户角色PC移动或使虚拟摄像机的朝向变化,来使发动机对象70a位于画面的中央。在利用指示标识指示了发动机对象70a时(即,在使发动机对象70a位于画面的中央时),当按下了左控制器3或右控制器4的规定的按钮时,如图9所示那样,发动机对象70a被选择。被选择的虚拟对象70成为与其它虚拟对象70的显示方式不同的显示方式。例如,各虚拟对象70在没有被用户选择时具有各自固有的颜色,但是在被用户选择了时,变化为规定的颜色(例如黄色)。例如,如图9所示那样,被选择的发动机对象70a以与其它虚拟对象70的颜色不同的规定的颜色(例如黄色)进行显示。此外,也可以通过显示将被选择的虚拟对象70包围那样的图像、或者显示用于指示被选择的虚拟对象70的箭头,来将被选择的虚拟对象70以与其它虚拟对象70的显示方式不同的显示方式进行显示。
此外,以下,有时将由用户选择的虚拟对象70称为“选择对象”。另外,有时将没有被用户选择的虚拟对象70称为“其它虚拟对象70”。
另外,在选择了虚拟对象70的情况下,显示表示选择了该虚拟对象70的选择图像77。选择图像77是从用户角色PC延伸至选择对象的图像。
被选择的发动机对象70a通过用户的操作(或自动地)以从地面浮起的方式显示。在被选择的发动机对象70a从地面浮起的情况下,在地面投影出发动机对象70a的像71a(投影像)。另外,表示发动机对象70a的规定位置(例如中心位置)的点72a也在地面被投影出来。
当在选择了发动机对象70a的状态下用户角色PC在虚拟空间内移动时,发动机对象70a也以追随用户角色PC的移动的方式移动。即,选择对象根据用户角色PC的移动而移动。
另外,如后述那样,存在以下情况:即使用户角色PC的位置没有变化,选择对象也移动。例如,在用户角色PC的朝向发生了变化的情况下选择对象也会移动。具体而言,选择对象以选择对象位于用户角色PC的正面的方式根据用户角色PC的朝向的变化而移动。另外,还存在以下情况:选择对象由于用户角色PC与选择对象之间的距离发生变化而移动。例如,在用户角色PC的朝向变化为虚拟空间的上方的情况下,选择对象也向虚拟空间的上方移动。用户角色PC朝向虚拟空间的上方时的用户角色PC与选择对象之间的距离变得比用户角色PC朝向与地面平行的方向时的用户角色PC与选择对象之间的距离长。
图10是表示用户角色PC从图9的位置向斜上方向移动后的游戏图像的一例的图。如图10所示,当用户角色PC移动时,被选择的发动机对象70a也移动。具体而言,用户角色PC根据左控制器3的类比摇杆32的输入方向而移动,虚拟摄像机也根据用户角色PC的移动而移动。选择对象以维持与用户角色PC的位置关系的方式移动。因此,当用户角色PC在虚拟空间中向规定方向移动时,被选择的发动机对象70a也向规定方向移动。
图11是表示用户角色PC从图10的位置进一步向深度方向移动后的游戏图像的一例的图。如图11所示,当用户角色PC从图10的位置进一步向深度方向移动时,发动机对象70a也进一步向深度方向移动。在该情况下,发动机对象70a位于配置于地面的机翼对象70b的上方。此时,出现将发动机对象70a与机翼对象70b连结的粘接对象78。
这里,粘接对象78是用于将选择对象与其它虚拟对象70粘接的对象,是模拟了具有粘性的粘接剂的对象。粘接对象78是示出选择对象上的粘接位置和其它虚拟对象70上的粘接位置的对象。这里,“粘接位置”是在选择对象与其它虚拟对象70被粘接起来的情况下选择对象与其它虚拟对象70接合的位置。粘接对象78将两个虚拟对象70的粘接位置连结,使得在用户进行了粘接指示的情况下用户能够识别出这两个虚拟对象70在粘接位置被进行粘接。粘接对象78在选择对象与其它虚拟对象70被进行粘接之前在选择对象和其它虚拟对象70满足规定的粘接条件的情况下才出现。规定的粘接条件是选择对象与其它虚拟对象70能够粘接的条件。例如,规定的粘接条件是通过选择对象与其它虚拟对象70之间的距离、选择对象及其它虚拟对象70的大小、形状、姿势等决定的条件。具体而言,在选择对象被移动的情况下,搜索满足规定的粘接条件的其它虚拟对象70。在搜索的结果是找到了能够与选择对象接触的其它虚拟对象70的情况下,出现将选择对象与该其它虚拟对象70连结的粘接对象78。通过粘接对象78,用户能够在粘接前识别出选择对象会与哪个虚拟对象70粘接、选择对象上的哪个位置与其它虚拟对象70上的哪个位置粘接。
此外,粘接对象78也可以形成为:响应于选择了虚拟对象70(虚拟对象70被设定为选择对象),粘接对象78出现在选择对象的表面和其它虚拟对象70的表面,之后,在选择对象和其它虚拟对象70满足了规定的粘接条件时,粘接对象78将选择对象与其它虚拟对象70连结。
在选择对象和其它虚拟对象70满足规定的粘接条件的情况下,当在选择对象和其它虚拟对象70设定有优先粘接部BP时,优先将优先粘接部彼此粘接。具体而言,在设定于选择对象的优先粘接部BP和设定于其它虚拟对象70的优先粘接部BP满足第一条件(详情后述)的情况下,这些优先粘接部BP被设定为粘接位置。而且,粘接对象78形成为将这些优先粘接部BP彼此连结。
在设定于选择对象的优先粘接部BP和设定于其它虚拟对象70的优先粘接部BP不满足第一条件的情况下,优先粘接部BP或其它部分被设定为粘接位置(此时,优先粘接部BP能够不被特别与其它部分区别地设定为粘接位置)。具体而言,满足第二条件的、选择对象上的位置和其它虚拟对象70上的位置被设定为粘接位置,并生成将该粘接位置彼此连结的粘接对象78。例如,满足第二条件的位置是选择对象与其它虚拟对象70最接近的位置。另外,在选择对象和其它虚拟对象70中的至少任一方没有被设定优先粘接部BP的情况下,也是满足第二条件的、选择对象上的位置和其它虚拟对象70上的位置(最接近位置)被设定为粘接位置。此外,例如,在选择对象的优先粘接部BP和其它虚拟对象70的除优先粘接部以外的部分满足第二条件的情况下,选择对象的优先粘接部BP和其它虚拟对象70的除优先粘接部以外的部分被设定为粘接位置。关于粘接对象78的生成方法的详情,在后面叙述。
在图11所示的例子中,所选择的发动机对象70a的优先粘接部BP和机翼对象70b的优先粘接部BP满足第一条件,因此粘接对象78以将这些优先粘接部BP连结的方式显示。
另外,如图11所示,在发动机对象70a移动到机翼对象70b的上方的情况下,在机翼对象70b的表面投影出发动机对象70a的像71a。通过在其它虚拟对象70的表面投影出选择对象的像71和该选择对象的中心位置72,用户能够识别出选择对象与其它虚拟对象70的位置关系。
图12是表示在图11所示的状态下由用户进行了粘接指示后的游戏图像的一例的图。如图12所示,在优先粘接部BP处于彼此通过粘接对象78被连结起来的状态时,当由用户进行了粘接指示(例如,按下操作按钮53~56)时,发动机对象70a与机翼对象70b在优先粘接部BP被进行粘接。即,发动机对象70a与机翼对象70b以优先粘接部BP彼此重合的方式粘接。在两个虚拟对象70a、70b粘接时,两个虚拟对象70a、70b中的至少一方以两个虚拟对象70a、70b彼此拉进的方式移动。在两个虚拟对象70a、70b粘接之后,对粘接指示之前选择的发动机对象70a的选择被解除,发动机对象70a的显示方式恢复为通常的显示方式。通过发动机对象70a与机翼对象70b被粘接,发动机对象70a和机翼对象70b构成为合体对象,此后这两个虚拟对象70成一体地进行动作。即,两个虚拟对象70被粘接之后,这两个虚拟对象70的相对位置关系不再变化。此外,在进行了满足规定的解除条件的输入的情况下,两个虚拟对象70之间的粘接被解除。关于两个虚拟对象70的粘接状态的解除的详情,在后面叙述。
在选择对象与其它虚拟对象70被粘接之后,粘接对象78仍然残留在选择对象与其它虚拟对象70之间。具体而言,粘接对象78以沿着选择对象的粘接位置的周边的表面和其它虚拟对象70的粘接位置的周边的表面的方式残留。在该情况下,选择对象与其它虚拟对象70被粘接之后的粘接对象78的形状会相对于选择对象与其它虚拟对象70被粘接之前的粘接对象78的形状发生变化。关于粘接对象78的形状的变化,在后面叙述。
图13是表示作为由发动机对象70a和机翼对象70b构成的合体对象的飞机对象75的一例的图。在图13中,示出用户角色PC坐在飞机对象75上在空中飞行的情形。
飞机对象75整体上的行为是根据构成飞机对象75的一部分的各部件(发动机对象70a和机翼对象70b)和不构成飞机对象75的一部分的对象(例如用户角色PC)决定的。具体而言,发动机对象70a具有动力,对飞机对象75整体施加规定的速度(或加速度)。另外,机翼对象70b对飞机对象75整体施加与飞机对象75的速度相应的升力。另外,发动机对象70a、机翼对象70b以及用户角色PC各自具有预先决定的重量。另外,飞机对象75受虚拟空间的风的影响。基于通过发动机对象70a产生的速度、通过机翼对象70b产生的升力、各对象的重量、通过风产生的力等进行物理计算,由此求出飞行对象75整体的行为。例如,飞行对象75在通过发动机对象70a而被施加足够的速度、且通过机翼对象70b而得到足够的升力的情况下,在虚拟空间的空中飞行。
此外,还能够对图13所示的由发动机对象70a和机翼对象70b构成的飞机对象75进一步粘接另外的虚拟对象70。例如,能够对机翼对象70b粘接两个以上的发动机对象70a。在该情况下,具有两个以上的发动机对象70a的飞机对象75的速度变得更大。另外,还能够通过在一个机翼对象70b的旁边粘接另外的机翼对象70b,来构成两个机翼对象70b成为一体的大的机翼。具有两个机翼对象70b的飞机对象75能够得到更大的升力,即使载着更重的对象也能够飞行。
接着,参照图14~图19来说明使用多个虚拟对象70生成作为合体对象的四轮车对象的情况。图14是表示紧挨着选择了车轮对象70c之后的游戏图像的一例的图。图15是表示在选择了车轮对象70c之后使车轮对象70c的姿势变化后的游戏图像的一例的图。图16是表示使所选择的车轮对象70c接近了板对象70d时的游戏图像的一例的图。图17是表示车轮对象70c被粘接于板对象70d之后的游戏图像的一例的图。图18是表示选择构成合体对象76的板对象70d并使车轮对象70c粘接于板对象70d的情形的一例的图。图19是表示作为合体对象的四轮车对象76的一例的图。
如图14所示,在配置于地面的车轮对象70c被显示于画面的大致中央时由用户进行了选择操作的情况下,车轮对象70c被选择。在所选择的车轮对象70c被抬起时,在地面上投影出车轮对象70c的像71c。地面上投影出的像71c的形状与从虚拟空间的正上方观察车轮对象70时的形状相同。另外,表示车轮对象70c的中心位置的点72c在地面被投影出来。
在图14所示的状态下由用户进行了旋转操作的情况下,所选择的车轮对象70c在虚拟空间内的姿势发生变化(图15)。具体而言,车轮对象70c的姿势以使车轮对象70c的旋转轴(车轮旋转的轴)与地面平行的方式发生变化。在该情况下,地面上投影出的车轮对象70c的像71c也发生变化。
在图15所示的状态下用户角色PC向板对象70d的方向移动。此外,在图15中,示出在板对象70d已经粘接有两个车轮对象70c的例子。
在通过用户角色PC的移动(车轮对象70c的移动)而车轮对象70c和板对象70d满足了规定的粘接条件的情况下,出现将车轮对象70c与板对象70d连结的粘接对象78(图16)。具体而言,以将所选择的车轮对象70c的优先粘接部BP与在板对象70d的侧面设定的优先粘接部BP连结的方式生成粘接对象78。另外,在板对象70d的侧面投影出车轮对象70c的像71cx。
这里,在地面和板对象70d的侧面均投影出所选择的车轮对象70c的像71c。选择对象的像71不是单纯地利用虚拟空间内的光源产生的影子,而是用于使用户易于识别出选择对象与其它虚拟对象70的位置关系的像。在虚拟空间的上下方向、左右方向以及深度方向上形成选择对象的像71。具体而言,通过基于与虚拟空间的上下方向平行的直线投影选择对象,来在地面形成选择对象的上下方向上的像71y。另外,通过基于与虚拟摄像机的左右方向平行的直线投影选择对象,来在存在于该选择对象的左右方向上的其它虚拟对象70的面形成该选择对象的左右方向上的像71x。另外,通过基于与从虚拟摄像机来看的虚拟空间的深度方向平行的直线投影选择对象,来在存在于该选择对象的深度方向上的其它虚拟对象70的面形成该选择对象的深度方向上的像71z。此外,根据虚拟空间内有无光源以及光源的位置,虚拟对象70的影子也与像71相独立地被显示出来。
在图16所示的例子中,在所选择的车轮对象70c的左侧存在板对象70d,因此在板对象70d的侧面形成车轮对象70c的左右方向上的像71cx的一部分。另外,在板对象70d的侧面还显示表示所选择的车轮对象70c的中心位置的点72cx。
像这样,在上下方向、左右方向以及深度方向这三个方向上投影选择对象,因此在选择对象的附近存在其它虚拟对象70的情况下,在该其它虚拟对象70的表面显示选择对象的像71以及表示中心位置的点72。由此,用户能够容易地识别出选择对象与其它虚拟对象70的位置关系。例如,根据选择对象的左右方向上的像71x,用户能够识别出选择对象位于其它虚拟对象70的正旁边、还是在斜向上错开。另外,根据在其它虚拟对象70的表面形成的选择对象的像71的形状,用户能够识别出选择对象的姿势。
在车轮对象70c与板对象70d处于通过粘接对象78被连结起来的状态时,当用户进行了粘接指示时,车轮对象70c与板对象70d在优先粘接部BP被进行粘接(图17)。由此,形成包含三个车轮对象70c和一个板对象70d的合体对象76。
用户能够通过同样的过程来进一步对合体对象76粘接虚拟对象70。例如,用户能够选择配置于虚拟空间的另外的车轮对象70c,并且在图17所示的板对象70d的左侧的侧面粘接所选择的该车轮对象70c。另外,如图18所示,用户选择构成合体对象76的板对象70d,使包含板对象70d的合体对象76整体移动来使其接近配置于虚拟空间的车轮对象70c。这样一来,出现将板对象70d的优先粘接部BP与车轮对象70c的优先粘接部BP连结的粘接对象78。然后,用户能够通过粘接指示来对所选择的板对象70d粘接车轮对象70c。
由此,生成具有四个车轮对象70c的合体对象76。若进一步在板对象70d上粘接操纵杆对象70h,则生成作为合体对象的如图19所示那样的四轮车对象76。
如图19所示,四轮车对象76包含构成车身的板对象70d、构成车轮的四个车轮对象70c、以及操纵杆对象70h。四个车轮对象70d中的各个车轮对象70d对四轮车对象76整体施加速度(速度和移动方向)。另外,操纵杆对象70对四轮车对象76整体施加旋转,来使四轮车对象76整体的行进方向变化。用户通过使用户角色PC坐在四轮车对象76上并对例如类比摇杆32进行操作,能够使四轮车对象76向与类比摇杆32的输入方向相应的方向移动。由此,能够使用户角色PC在虚拟空间内移动。
接着,参照图20~图23来说明将未被设定优先粘接部BP的虚拟对象70彼此粘接的情况。图20是表示紧挨着选择了岩石对象70g之后的游戏图像的一例的图。图21是表示使所选择的岩石对象70g接近了箱对象70f时的游戏图像的一例的图。图22是表示从图21的状态移动了岩石对象70g时的游戏图像的一例的图。图23是表示在图22的状态下进行了粘接指示时的游戏图像的一例的图。
如图20和图21所示,在选择了配置在地面上的岩石对象70g并使其接近了箱对象70f的情况下,出现将所选择的岩石对象70g与箱对象70f连结的粘接对象78。这里,在岩石对象70g和箱对象70f未设定优先粘接部BP。在该情况下,岩石对象70g的表面的最接近箱对象70f的位置被设定为粘接位置。同样地,箱对象70f的表面的最接近岩石对象70g的位置被设定为粘接位置。粘接对象78以将这两个粘接位置连结的方式显示。例如,在图21中,岩石对象70g上的点P1和箱对象70f的角部是最接近位置,因此这些位置通过粘接对象78被连结。
当从图21的状态移动了岩石对象70g时,粘接对象78所示出的粘接位置发生变化(图22)。例如,在图21中,通过粘接对象78来示出岩石对象70g上的点P1和箱对象70f的角部作为粘接位置。与此相对地,在图22中,岩石对象70g上的点P2和箱对象70f的侧面的中央部分是最接近位置,因此通过粘接对象78来示出这些位置作为粘接位置。
另外,如上所述,在虚拟空间的上下方向、左右方向以及深度方向上分别投影选择对象,因此如果在某个方向上存在投影面,则在投影面生成选择对象的像71。在图21中,由于箱对象70f不存在于岩石对象70g的正旁边,因此在箱对象70f的侧面未显示出岩石对象70g的像71gx。另一方面,在图22中,由于箱对象70f位于岩石对象70g的大致正旁边的方向上,因此在箱对象70f的侧面显示出岩石对象70g的像71gx。另外,虽然省略图示,但是表示岩石对象70g的中心位置的点72gx也在箱对象70f的侧面显示出来。另外,在图21和图22中,在地面上投影出岩石对象70g的像71gy。
当在图22的状态下进行了粘接指示时,岩石对象70g与箱对象70f被粘接(图23)。具体而言,岩石对象70g上的点P2与箱对象70f的侧面的中央部分被粘接。即,岩石对象70g和箱对象70f中的至少一方以使岩石对象70g上的点P2与箱对象70f的侧面的中央部分重合的方式移动。在岩石对象70g与箱对象70f被粘接之后,粘接对象78仍然残留。
(粘接对象78的生成方法的详情)
接着,说明粘接对象78的生成方法的详情。参照图24~图28来说明将两个虚拟对象70在优先粘接部BP以外的部分处粘接的情况。
图24是表示粘接对象78的基本形状的一例的图。如图24所示,粘接对象78包括构成底面或上表面的两个第一部分782、以及将两个第一部分782连结的第二部分783。第一部分782被粘接于虚拟对象70的粘接位置。第一部分782和第二部分783包括多个骨头781。骨头781为用于决定粘接对象78的形状的骨骼。以包围多个骨头781的方式形成表面。通过使多个骨头781中的各个骨头781变形,来使粘接对象78整体变形。以下,说明在两个虚拟对象70之间生成粘接对象78的方法。
图25~图28是用于说明使粘接对象78变形的方法的图。
如上所述,在两个虚拟对象70不在优先粘接部BP彼此粘接的情况下,两个虚拟对象70最接近的位置被设定为粘接位置。具体而言,首先,判定选择对象和其它虚拟对象70是否满足规定的粘接条件。
如图25所示,在选择对象70A和其它虚拟对象70B满足规定的粘接条件的情况下,计算选择对象70A与其它虚拟对象70B的最接近位置。计算最接近位置的方法是任意的,例如,从选择对象70A的中心开始递归地求出选择对象70A与其它虚拟对象70B最接近的位置。其结果,例如计算出选择对象70A上的点MPA和其它虚拟对象70B上的点MPB作为最接近位置。
接着,计算选择对象70A的点MPA处的法线向量和其它虚拟对象70B的点MPB处的法线向量,并分别计算与各法线向量垂直的平面。接着,计算将所计算出的两个平面进行平均所得到的截平面(cut plane)74。具体而言,截平面74是穿过点MPA与点MPB的中点且以将点MPA处的法线向量与点MPB处的法线向量进行平均所得到的向量为法线的平面。
接着,如图26所示,使用所计算出的截平面74来裁切选择对象70A的边界框(bounding box)73A和其它虚拟对象70B的边界框73B。这里,边界框是将各虚拟对象70包围的立体,是针对各虚拟对象70设定的。边界框是其形状相比于与该边界框对应的虚拟对象70的形状而言被简化的立体或者是其形状同与该边界框对应的虚拟对象70的形状相同的立体。具体而言,将所计算出的截平面74配置到相对于点MPA与点MPB的中点MPC向该截平面74的法线方向上的点MPA侧分离规定距离的位置,使用配置到该位置的截平面74A来裁切边界框73A。另外,将所计算出的截平面74配置到相对于中点MPC向该截平面74的法线方向上的点MPB侧分离规定距离的位置,使用配置到该位置的截平面74B来裁切边界框73B。
图27中示出用截平面74A裁切选择对象70A的边界框73A所得到的截面SA、以及用截平面74B裁切其它虚拟对象70B的边界框73B所得到的截面SB。计算这两个截面SA与截面SB重合的面SAB。该面SAB是能够将截面SA投影到截面SB(或者将截面SB投影到截面SA)的面。基于该面SAB的大小来决定粘接对象78的各骨头781的大小。例如,以使粘接对象78的第一部分782与面SAB的形状一致的方式决定第一部分782的各骨头781大小。然后,在面SAB配置粘接对象78的第一部分782。即,在截面SA中的与面SAB相当的部分配置粘接对象78的一方的第一部分782,在截面SB中的与面SAB相当的部分配置粘接对象78的另一方的第一部分782。
然后,如图28所示,粘接对象78的各骨头781以沿着各虚拟对象70的表面的方式变形。例如,粘接对象78的第一部分782中包含的用虚线表示的骨头781以沿着选择对象70A的表面的方式变形。在图28中,用虚线表示变形前的骨头781,用实线表示变形后的骨头781。通过使各骨头781像这样进行变形,来使粘接对象78以与选择对象70A及其它虚拟对象70B的表面紧密接合的方式发生变形。具体而言,粘接对象78的一方的第一部分782与选择对象70A的包含点MPA的规定范围的表面紧密接合,粘接对象78的另一方的第一部分782与其它虚拟对象70B的包含点MPB的规定范围的表面紧密接合。另外,粘接对象78的第二部分783根据点MPA与点MPB之间的距离变形。因此,在选择对象70A与其它虚拟对象70B之间的距离近的情况下,粘接对象78变短,在该距离长的情况下,粘接对象78变长。
如上所述,在两个虚拟对象70不在优先粘接部BP彼此粘接的情况下,首先,两个虚拟对象70的最接近位置MPA、MPB被设定为粘接位置。然后,在两个虚拟对象70之间以将粘接位置彼此连结的方式生成粘接对象78。在两个虚拟对象70尚未被粘接的情况下(即,在两个虚拟对象70之间出现粘接对象78后尚未进行粘接指示的情况下),当两个虚拟对象70的位置关系发生了变化时,粘接位置也发生变化。例如,当使选择对象70A远离其它虚拟对象70B或接近其它虚拟对象70B时,最接近位置MPA、MPB发生变化。另外,当使选择对象70A的姿势变化时,最接近位置MPA、MPB发生变化。粘接对象78以始终将最接近位置MPA、MPB连结的方式变化。换言之,粘接对象78所示出的两个虚拟对象70的粘接位置根据两个虚拟对象70的位置关系的变化(根据选择对象70A的移动)而变化。另外,粘接对象78整体的形状也根据两个虚拟对象70的位置关系的变化(根据选择对象70A的移动)而变化。
通过像这样生成粘接对象78,用户能够容易地识别出两个虚拟对象70粘接的位置。由此,能够易于将两个虚拟对象70进行组装。
在图28所示的状态下由用户进行了粘接指示的情况下,选择对象70A和其它虚拟对象70B在最接近位置MPA、MPB被彼此粘接。具体而言,选择对象70A的位置和其它虚拟对象70B的位置以两个最接近位置MPA、MPB之间的距离花费规定时间(多个帧时间)来变为0的方式变化。在此期间,其它虚拟对象70B相对于选择对象70A的相对姿势不发生变化。另外,在该期间也如上述那样求出粘接对象78的形状,粘接对象78的形状也根据最接近位置MPA、MPB之间的距离而变化。然后,在两个最接近位置MPA、MPB一致的情况下,两个虚拟对象70的粘接完成。在两个虚拟对象70被粘接之后,粘接对象78仍然残留在粘接位置的周边。两个虚拟对象70被粘接之后的粘接对象78的形状也通过上述的方法求出。在两个虚拟对象70被粘接之后,它们的相对位置关系不再变化,因此粘接对象78的形状不再变化。
这里,所谓粘接对象“残留”,也可以包括严格来说在数据上与粘接前的粘接对象相同的粘接对象保持原样地残留、以及数据不同于粘接前的粘接对象的数据但是外观上以看起来如同粘接对象存在的方式残留。例如,如上所述,粘接对象包括多个骨头(用于决定粘接对象的三维形状的数据),但是两个虚拟对象70被粘接之后残留的粘接对象也可以与粘接前的粘接对象同样地包括多个骨头。另外,两个虚拟对象70被粘接之后残留的粘接对象既可以是外观上看起来与包括多个骨头的上述粘接对象相同、但是不包括多个骨头,或者也可以作为骨头的数量有所减少的对象被显示于两个虚拟对象70之间。另外,两个虚拟对象70被粘接之后残留的粘接对象也可以作为在外观上看起来与上述粘接对象相同的单纯的图像被显示于两个虚拟对象70之间。
此外,也可以显示将被粘接起来的两个虚拟对象70的粘接位置覆盖的覆盖对象。也可以是,在粘接前显示出来的上述粘接对象在粘接后作为该覆盖对象残留在粘接位置。覆盖对象既可以是在数据上与粘接对象相同的对象,也可以是在外观上能够被视为粘接对象的对象(还包括单纯的图像),还可以是在外观上也与粘接对象不同的对象。
通过像这样存在两个虚拟对象70被粘接之后覆盖粘接位置的覆盖对象(上述粘接对象、在外观上能够被视为粘接对象的对象、在外观上也与粘接对象不同的对象),用户能够识别出粘接位置。另外,例如,在两个大的虚拟对象70进行点接触而形成合体对象的情况下,当在该点接触的部分不存在覆盖对象时,会导致看起来两个虚拟对象70通过点接触就进行了合体,有可能使用户产生不自然感。在本实施方式中,在两个虚拟对象70接触的部分存在覆盖该接触部分的量的覆盖对象,因此看起来如同两个虚拟对象70通过这样的覆盖对象(例如,如纽带那样的粘接对象)进行了粘接,能够减少这样的不自然感。
接着,说明两个虚拟对象70在优先粘接部BP被进行粘接的情况。图29是用于说明两个虚拟对象70在优先粘接部BP被进行粘接的情况下的粘接对象78的生成的图。
在选择对象70A和其它虚拟对象70B满足规定的粘接条件的情况下,当选择对象70A上的优先粘接部BPa和其它虚拟对象70B上的优先粘接部BPb满足第一条件时,两个优先粘接部BP被设定为粘接位置。然后,生成将这两个优先粘接部BP连结的粘接对象78。例如,在选择对象70A的优先粘接部BPa1和其它虚拟对象70B的优先粘接部BPb1满足第一条件的情况下,生成将优先粘接部BPa1与优先粘接部BPb1连结的粘接对象78。
这里,第一条件是以下所示的三个条件A~C。
(条件A)选择对象70A的优先粘接部BPa与其它虚拟对象70B的优先粘接部BPb之间的距离在规定的阈值以内。
(条件B)优先粘接部BPa处设定的法线向量NVa与优先粘接部BPb处设定的法线向量NVb的逆向量之间所形成的角为规定的阈值以下。
(条件C)(C-1)优先粘接部BPa相对于穿过优先粘接部BPb且与法线向量NVb垂直的平面Sb存在于法线向量NVb所示的一侧、且(C-2)优先粘接部BPb相对于穿过优先粘接部BPa且与法线向量NVa垂直的平面Sa存在于法线向量NVa所示的一侧。
例如,在图29所示的例子中,优先粘接部BPa1与优先粘接部BPb1之间的距离在规定的阈值以内,因此这两个优先粘接部BPa1、BPb1满足条件A。另外,在图29中,法线向量NVa1和法线向量NVb1朝向相反方向。即,法线向量NVa1与法线向量NVb1的逆向量之间所形成的角为0度。因此,在图29所示的例子中,两个优先粘接部BPa1、BPb1满足条件B。在各优先粘接部BP处预先设定了表示该点处的法线的法线向量NV。此外,优先粘接部BP处的法线向量NV也可以不是预先设定的,而是每次通过计算求出的。
另外,上述条件C是指如图29的优先粘接部BPa1、BPb1那样两个优先粘接部BPa、BPb具有彼此相向那样的关系。即,优先粘接部BPa1相对于穿过优先粘接部BPb1且与法线向量NVb1垂直的平面Sb1存在于法线向量NVb1所示的一侧(图29的右侧)(满足上述C-1)。另外,优先粘接部BPb1相对于穿过优先粘接部BPa1且与法线向量NVa1垂直的平面Sa1存在于法线向量NVa1所示的一侧(图29的左侧)(满足上述C-2)。因此,在图29所示的例子中,优先粘接部BPa1和优先粘接部BPb1满足条件C。
此外,优先粘接部BPb2与优先粘接部BPb1之间的关系不满足条件C。即,优先粘接部BPa1不是相对于穿过优先粘接部BPb2且与法线向量NVb2垂直的平面Sb2存在于法线向量NVb2所示的一侧(图29的左侧)。换言之,优先粘接部BPa1相对于平面Sb2位于与法线向量NVb2相反的一侧。
因而,与优先粘接部BPa1之间的关系满足上述三个条件A~C的只有优先粘接部BPb1。因此,优先粘接部BPa1和优先粘接部BPb1被设定为粘接位置。然后,如图29所示那样以将优先粘接部BPa1与优先粘接部BPb1连结的方式生成粘接对象78。
粘接对象78是通过与上述的方法相同的方法生成的。即,在图25~图28中,选择对象70A与其它虚拟对象70B的最接近位置被设定为粘接位置,但是能够替代最接近位置而将优先粘接部BPa1、BPb1设定为粘接位置。然后,以将这两个粘接位置连结的方式生成粘接对象78。具体而言,粘接对象78以与选择对象70A的包含优先粘接部BPa1的规定范围的表面紧密接合且与其它虚拟对象70B的包含优先粘接部BPb1的规定范围的表面紧密接合的方式生成。
此外,还可能存在以下情况:针对选择对象70A上的某一个优先粘接部BPa,存在多个满足第一条件的、其它虚拟对象70B的优先粘接部BPb。在该情况下,选择与优先粘接部BPa之间的关系满足第一条件的多个优先粘接部BPb中的某一个优先粘接部BPb作为与该优先粘接部BPa形成对的优先粘接部BPb。例如,可以选择多个优先粘接部BPb中的、最接近优先粘接部BPa的优先粘接部BPb。另外,也可以选择多个优先粘接部BPb中的、具有朝向最接近优先粘接部BPa处设定的法线向量NVa的朝向(与法线向量NVa之间的角度接近180度)的法线向量NVb的优先粘接部BPb。然后,该形成对的两个优先粘接部BPa、BPb被设定为粘接位置,并生成将这两个优先粘接部BPa、BPb连结的粘接对象78。
另外,还存在以下情况:满足第一条件的优先粘接部BPa、BPb的对存在多个。在该情况下,也可以选择多个优先粘接部BPa、BPb的对中的距离最短的对,并生成将所选择的该对的两个优先粘接部BPa、BPb连结的粘接对象78。此外,在距离最短的对存在多个的情况下,生成多个将各个对连结的粘接对象78。
在优先粘接部BPa1与优先粘接部BPb1处于通过粘接对象78被连结起来的状态时由用户进行了粘接指示的情况下,两个优先粘接部BP彼此被进行粘接。在该情况下,以使优先粘接部BPa1的位置与优先粘接部BPb1的位置一致且法线向量NVa1与法线向量NVb1的逆向量的角为0度的方式变更两个虚拟对象70的位置关系。
图30是表示在两个虚拟对象70在优先粘接部BP被进行粘接的情况下进行粘接指示之前的两个虚拟对象70的位置关系和进行粘接指示之后的两个虚拟对象70的位置关系的图。
如图30的上方的图所示,在进行粘接指示之前,选择对象70A的优先粘接部BPa1和其它虚拟对象70B的优先粘接部BPb1虽然不是两个虚拟对象70的最接近位置,但是满足第一条件。即,(条件A)优先粘接部BPa1与优先粘接部BPb1之间的距离在规定的阈值以内。另外,(条件B)优先粘接部BPa1处的法线向量NVa1与优先粘接部BPb1处的法线向量NVb1的逆向量虽然具有比0度大的角度,但是该角度为规定的阈值以下。另外,根据图,优先粘接部BPa1和优先粘接部BPb1满足条件C。因而,优先粘接部BPa1和优先粘接部BPb1满足第一条件。因此,优先粘接部BPa1、BPb1被设定为粘接位置,生成将优先粘接部BPa1、BPb1连结的粘接对象78。
在该状态下由用户进行了粘接指示的情况下,如图30的下方的图所示那样优先粘接部BPa1与优先粘接部BPb1被粘接。具体而言,优先粘接部BPa1的位置与优先粘接部BPb1的位置一致。另外,以使法线向量NVa1与法线向量NVb1的逆向量的角为0度的方式调整两个虚拟对象70的姿势。换言之,以使优先粘接部BPa1的法线方向与优先粘接部BPb1的法线方向平行的方式调整选择对象70A和其它虚拟对象70B中的至少任一方的姿势。
此外,在各优先粘接部BP处,除了设定有法线向量NV以外,还设定有与法线向量NV垂直的切线向量TL。切线向量TL是表示优先粘接部BP处的切线的向量。在将两个虚拟对象70在优先粘接部BP处粘接的情况下,根据该切线向量TL来控制两个虚拟对象70的相对姿势。
图31是用于说明根据切线向量TL来控制选择对象的姿势的例子的图。
在图31的上方的图中,板对象70d与操纵杆对象70h尚未被粘接起来,板对象70d的优先粘接部BPd与操纵杆对象70h的优先粘接部BPh通过粘接对象78被连结起来。例如,在设定于板对象70d的上表面的优先粘接部BPd处预先设定有与板对象70d的上表面平行且朝向板对象70d的前方的切线向量TLd。另外,在设定于操纵杆对象70h的底面的优先粘接部BPh处预先设定有与操纵杆对象70h的底面平行且朝向操纵杆对象70h的前方的切线向量TLh。在图31的上方的图中,切线向量TLd与切线向量TLh之间的角不为0度,而是具有一定程度的角度。
在该状态下进行了粘接指示的情况下,如图31的下方的图所示,以使切线向量TLd与切线向量TLh之间的角为预先决定的多个角度中的某一个角度的方式控制操纵杆对象70h的朝向,并将操纵杆对象70h与板对象70d粘接。预先决定的角度例如也可以是0度、45度、90度、135度或180度。例如,在紧挨着进行粘接指示之前的切线向量TLd与切线向量TLh之间的角度在0度到30度的范围内的情况下,在进行了粘接指示时,以使切线向量TLd与切线向量TLh之间的角度为0度的方式调整操纵杆对象70h的朝向。另外,在紧挨着进行粘接指示之前的切线向量TLd与切线向量TLh之间的角度在31度到74度的范围内的情况下,在进行了粘接指示时,以使切线向量TLd与切线向量TLh之间的角度为45度的方式调整操纵杆对象70h的朝向。即,在切线向量TLd与切线向量TLh之间的角度在第一范围内的情况下,以使切线向量TLd与切线向量TLh之间的角度为第一角度的方式进行调整,在切线向量TLd与切线向量TLh之间的角度在第二范围的情况下,以使切线向量TLd与切线向量TLh之间的角度为第二角度的方式进行调整。
在图31的例子中,以使操纵杆对象70h的切线向量TLh与板对象70d的切线向量TLd之间的角度为0度的方式控制操纵杆对象70h的朝向。由此,能够容易地将操纵杆对象70h粘接为与四轮车对象76的行进方向相同的朝向。
如以上那样,优先在优先粘接部将选择对象70A与其它虚拟对象70B粘接。优先粘接部是在各虚拟对象70预先设定的,被设定在各虚拟对象70的中心、左右对称的位置等。由于是以使选择对象70A的优先粘接部BPa与其它虚拟对象70B的优先粘接部BPb重合的方式进行粘接,因此用户即使不细致地控制选择对象70A的位置,也能够将选择对象70A与其它虚拟对象70B在适当地位置处粘接。
另外,在各优先粘接部BP处预先设定有法线向量NV,在将两个优先粘接部BP粘接的情况下,以使两个法线向量NV为相反方向的方式进行控制。因此,用户即使不细致地控制选择对象70A的姿势,也能够将选择对象70A与其它虚拟对象70B以适当的姿势粘接。
另外,在各优先粘接部BP处预先设定有切线向量TL,在将两个优先粘接部BP粘接的情况下,以使两个切线向量TL为预先决定的多个角度中的某一个角度的方式进行控制。因此,用户能够使选择对象70A以适当的姿势粘接于其它虚拟对象70B。
此外,只有在将选择对象70A的优先粘接部BP与其它虚拟对象70B的优先粘接部BP彼此粘接的情况下,才进行这样的基于法线向量NV或切线向量TL对选择对象70A和其它虚拟对象70B的姿势的调整。
(粘接解除的详情)
接着,说明在多个虚拟对象70被粘接起来的情况下将多个虚拟对象70的粘接解除的方法。在如上述那样将多个虚拟对象70粘接而构成了合体对象之后,在进行了满足规定的解除条件的输入(以下称为“粘接解除操作”)的情况下,虚拟对象70的粘接被解除。
图32是表示在两个虚拟对象70被粘接起来的状态下进行了粘接解除操作时的一例的图。
当在箱对象70f与岩石对象70g处于通过粘接对象78被粘接起来的状态时进行了选择操作时,两个虚拟对象70f、70g中的某一方被选择。例如,在指示了构成合体对象的箱对象70f和岩石对象70g之中的岩石对象70g时进行了选择操作的情况下,如图32所示那样岩石对象70g被选择为选择对象。当选择了岩石对象70g时,岩石对象70g的显示方式发生变化。另外,当选择了岩石对象70g时,在地面上投影出构成合体对象的箱对象70f和岩石对象70g的像71f及71g。另外,在地面上投影出表示所选择的岩石对象70g的中心位置的点72g。当在选择了岩石对象70g的状态下进行了粘接解除操作时,箱对象70f与岩石对象70g的粘接被解除。
这里,粘接解除操作例如是在规定时间内进行规定次数的使用户角色PC的朝向(虚拟摄像机的朝向)反转的操作。在设定了选择对象的情况下(即,在选择了虚拟对象70的情况下),选择对象、用户角色PC以及虚拟摄像机维持规定的位置关系。具体而言,以使用户角色PC的朝向与虚拟摄像机的朝向大致一致、且选择对象位于用户角色的大致正面(虚拟摄像机的正面)的方式进行控制。因此,当用户角色PC的朝向(虚拟摄像机的朝向)发生了变化时,选择对象在虚拟空间中的位置也发生变化。
例如,用户角色PC的朝向(虚拟摄像机的朝向)根据类比摇杆52的输入方向而变化。在规定时间内使用类比摇杆52进行了规定次数的相反方向上的方向输入操作的情况下,检测到粘接解除操作,从而箱对象70f与岩石对象70g的粘接被解除。这里,相反方向上的方向输入操作是指在进行了向第一方向的方向输入之后进行向与第一方向之间具有大于规定的阈值(例如150度)的角度的第二方向的方向输入。
另外,用户角色PC的朝向(虚拟摄像机的朝向)例如也可以根据右控制器4(也可以是左控制器3,还可以是主体装置2)的姿势而变化。例如,右控制器4的姿势是基于角速度传感器115(和加速度传感器114)的输出计算出的。例如,也可以是,基于角速度传感器115的输出来检测右控制器4的抖动操作,根据抖动操作的检测结果来将箱对象70f与岩石对象70g的粘接解除。具体而言,也可以是,在作为粘接解除操作而在规定时间内使用右控制器4进行了规定次数的相反方向上的抖动操作的情况下,箱对象70f与岩石对象70g的粘接被解除。使用右控制器4进行的相反方向上的抖动操作也可以是在进行了向第一方向的抖动操作之后进行向与第一方向之间具有大于规定的阈值(例如90度)的角度的第二方向的抖动操作。
图33是表示使用户角色PC的朝向(虚拟摄像机VC的朝向)向右方向变化时的选择对象的移动的一例的图。在图33中,示出从虚拟空间的上方观察虚拟摄像机VC、用户角色PC以及选择对象70的图。如图33所示,在虚拟对象70被设定为选择对象的情况下,用户角色PC和虚拟摄像机VC朝向相同的方向。例如,在输入了类比摇杆52的左右方向的情况下,用户角色PC的朝向沿左右方向变化,并且虚拟摄像机VC以用户角色PC为中心沿着横摆方向旋转,同时虚拟摄像机VC的朝向也沿左右方向变化。另外,以使选择对象70位于用户角色PC的正面(虚拟摄像机VC的正面)的方式移动选择对象70。例如,在输入了类比摇杆52的右方向的情况下,用户角色PC(虚拟摄像机VC)的朝向向右方向变化,选择对象70也向右方向移动。另一方面,即使输入了类比摇杆52的右方向,用户角色PC也不移动。例如,在规定时间(例如1秒期间)使用类比摇杆52进行了规定次数的向左方向的输入和向右方向的输入的情况下,用户角色PC和虚拟摄像机VC的朝向向左方向和右方向变化,选择对象70在虚拟空间内向左方向和右方向移动。在该情况下,选择对象被显示为以用户角色PC为中心沿左右方向摆动。然后,选择对象与粘接在该选择对象上的其它虚拟对象的粘接被解除,其它虚拟对象从选择对象脱离。
在输入了类比摇杆52的上下方向的情况下也是同样的。即,在输入了类比摇杆52的上下方向的情况下,用户角色PC的朝向沿上下方向变化,并且虚拟摄像机VC以用户角色PC为中心沿着俯仰方向旋转,同时虚拟摄像机VC的朝向也沿上下方向变化。在作为粘接解除操作而在规定时间(例如1秒期间)输入了规定次数的类比摇杆52的上下方向的情况下,选择对象被显示为以用户角色PC为中心沿上下方向摆动,选择对象与其它虚拟对象的粘接被解除。
像这样,当使用户角色PC的朝向沿规定方向摇动时,选择对象也以沿规定方向抖动的方式运动,从而选择对象与其它虚拟对象的粘接被解除,其它虚拟对象从选择对象脱离。由此,成为用户对象PC使选择对象摇动来将粘接于选择对象的其它虚拟对象甩掉那样的行为。因而,能够通过与用户的直观一致的操作来将选择对象与其它虚拟对象的粘接解除。
另外,在本实施方式中,选择对象不仅与用户角色PC的朝向连动地移动,还与虚拟摄像机VC的朝向连动地移动。即,还能够理解成:通过使虚拟摄像机VC的朝向沿规定方向摇动,选择对象也以沿规定方向抖动的方式运动,从而选择对象与其它虚拟对象的粘接被解除。由此,成为如下行为:在保持选择对象被显示于画面的中心附近的状态下,画面整体以沿规定方向抖动的方式运动,从而将粘接于选择对象的其它虚拟对象甩掉。因而,能够通过与用户的直观一致的操作来将选择对象与其它虚拟对象的粘接解除。
此外,对于在左右方向上的用户角色PC的朝向、虚拟摄像机的设定及选择对象的移动与在上下方向上的用户角色PC的朝向、虚拟摄像机的设定及选择对象的移动,也可以进行不同的控制。例如,对于使用类比摇杆52进行的左右方向上的输入,用户角色PC和虚拟摄像机的朝向与该输入量(倾倒的程度)相应地在左右方向上变化,选择对象也同样地在左右方向上移动。另一方面,在使用类比摇杆52进行了上下方向上的输入的情况下,用户角色PC的朝向在上下方向上变化,选择对象也同样地在上下方向上移动,但是用户角色PC的朝向的在上下方向上的变化量也可以比选择对象的在上下方向上的移动量小。另外,虚拟摄像机的朝向的变化量可以也是同样的。另外,也可以是,在使用类比摇杆52进行了上下方向上的输入的情况下,虚拟摄像机推近镜头(Zoom in)/拉远镜头(Zoom out)。例如,根据使用类比摇杆52进行的向上方向的输入,用户角色PC朝向上方向,并且选择对象向上方向移动,用户角色PC与选择对象之间的距离变长。此时,虚拟摄像机拉远镜头,以使用户角色PC和选择对象包含在虚拟摄像机的拍摄范围内。另外,在使用类比摇杆52进行了向下方向的输入的情况下,选择对象由于地面的存在而不会向下方向移动,用户角色PC的朝向也不会变为下方向而是大致成为水平方向,虚拟摄像机也可以推近镜头。另外,使用右控制器4(也可以是左控制器3、主体装置2)的姿势来进行上下方向上的输入的情况也是同样的。
此外,也可以是,左右方向上的输入被检测为上述粘接解除操作,另一方面,上下方向上的输入不被检测为上述粘接解除操作。即,也可以是,选择对象根据上下方向上的输入而在上下方向上移动,但是选择对象与其它虚拟对象70的粘接不会根据上下方向上的输入而被解除。并且,也可以是,使用类比摇杆52进行的上下方向上的输入不被检测为粘接解除操作,另一方面,使用控制器(3或4。也可以是主体装置2)的姿势进行的上下方向上的输入(上下抖动控制器或主体装置2的操作)被检测为粘接解除操作。
返回图32,在选择了岩石对象70g的状态下进行了粘接解除操作的情况下,岩石对象70g与箱对象70f的粘接被解除。如图32所示,在岩石对象70g与箱对象70f的粘接被解除了的情况下,箱对象70f离开岩石对象70g,箱对象70f向地面落下。原本将箱对象70f与岩石对象70g粘接起来的粘接对象78被消除。在岩石对象70g与箱对象70f的粘接被解除之后,岩石对象70g仍保持被选择的状态,并且保持漂浮在空中的状态。
图34是表示在两个虚拟对象70被粘接起来的状态下进行了不满足规定的解除条件的输入时的一例的图。
如图34所示,在选择了岩石对象70g的状态下进行了对类比摇杆52的输入并且该输入不满足规定的解除条件的情况下,岩石对象70g根据用户角色PC(虚拟摄像机)的朝向的变化移动。在该情况下,岩石对象70g与箱对象70f的粘接不被解除,合体对象(岩石对象70g和箱对象70f)根据用户角色PC(虚拟摄像机)的朝向的变化而在虚拟空间内移动。例如,在选择了岩石对象70g的状态下输入了类比摇杆52的右方向的情况下,用户角色PC(虚拟摄像机)的朝向向右方向变化,从而能够看到相对于图34的上方的图而言右侧的虚拟空间(图34的下方的图)。在该情况下,岩石对象70g和箱对象70f也向右方向移动。
此外,在选择了岩石对象70g的状态下进行了对左控制器3的类比摇杆32的输入的情况下,用户角色PC在虚拟空间内移动,并且虚拟摄像机也在虚拟空间内移动。合体对象(岩石对象70g和箱对象70f)也伴随用户角色PC和虚拟摄像机的移动而移动。即,在进行了对类比摇杆32的输入的情况下,用户角色PC与选择对象的相对位置关系不变,用户角色PC和选择对象根据对类比摇杆32的输入而移动。由于该伴有用户角色PC的移动进行的输入(对类比摇杆32的输入),上述解除条件没有被满足。例如,假定在使用用于使用户角色PC移动的类比摇杆32在规定时间内进行了规定次数的向反方向的输入的情况下,岩石对象70g与箱对象70f的粘接不被解除。在该情况下,合体对象(岩石对象70g和箱对象70f)根据使用类比摇杆32进行的输入而在虚拟空间内移动。另一方面,根据对类比摇杆52的输入,用户角色PC和虚拟摄像机的朝向变化,选择对象以被用户角色PC抖动的方式移动。通过该选择对象被进行抖动那样的移动,选择对象与其它虚拟对象70的粘接被解除。
在三个以上的虚拟对象70被进行粘接来构成了合体对象的情况下,也能够通过同样的粘接解除操作将粘接状态解除。图35是表示在四个虚拟对象70被粘接起来的状态下进行了粘接解除操作的情况下的粘接解除的一例的图。
如图35的上方的图所示,在箱对象70f上粘接了岩石对象70g1和岩石对象70g2。另外,在岩石对象70g2上又粘接了岩石对象70g3。由此,形成了由四个虚拟对象70构成的合体对象。在这样的状态下,通过用户的选择操作来选择构成合体对象的四个虚拟对象70中的任一个虚拟对象。例如,四个虚拟对象70中的箱对象70f被选择为选择对象。
在选择了选择对象时,在由用户进行了粘接解除操作的情况下,选择对象与该选择对象上粘接的所有虚拟对象70的粘接被解除(图35的下方的图)。具体而言,箱对象70f与岩石对象70g1的粘接被解除,原本将箱对象70f与岩石对象70g1粘接起来的粘接对象78被消除。另外,箱对象70f与岩石对象70g2的粘接也被解除,原本将箱对象70f与岩石对象70g2粘接起来的粘接对象78也被消除。另一方面,箱对象70f与岩石对象70g2的粘接被解除,但是岩石对象70g2与岩石对象70g3的粘接未被解除。
即,在选择对象上粘接了多个虚拟对象70时,在进行了粘接解除操作的情况下,选择对象与该选择对象上粘接的虚拟对象70的粘接状态被解除,但是选择对象以外的虚拟对象70的粘接状态被维持。换言之,通过粘接解除操作使选择对象上粘接的所有粘接对象78消除,而选择对象以外的虚拟对象70上粘接的粘接对象78继续存在。
像这样,在本实施方式中,在将多个虚拟对象70粘接而生成合体对象之后,在选择了构成合体对象的多个虚拟对象70中的任一个虚拟对象并且进行了满足规定的解除条件的输入的情况下,所选择的虚拟对象70与该虚拟对象70上粘接的其它虚拟对象的粘接被解除。在选择了构成合体对象的多个虚拟对象70中的任一个虚拟对象并且进行了不满足规定的解除条件的输入的情况下,合体对象整体移动。另外,在选择了构成合体对象的多个虚拟对象70中的任一个虚拟对象的情况下,还能够在所选择的虚拟对象上进一步粘接其它的虚拟对象70。例如,选择构成合体对象的多个虚拟对象70中的任一个虚拟对象,使用户角色PC移动来使合体对象整体移动。当选择对象接近了配置于虚拟空间中的其它虚拟对象70时,出现将选择对象与该其它虚拟对象70连结的粘接对象78。然后,根据用户的粘接指示来将选择对象与该其它虚拟对象70粘接。
由此,用户在将多个虚拟对象70粘接来生成合体对象之后,能够将虚拟对象70之间的粘接解除。通过使所制作成的合体对象中包含的虚拟对象70的一部分脱离并粘接另外的虚拟对象,能够重新构成合体对象。
由于能够选择构成合体对象的一个虚拟对象并且仅使选择对象上粘接的虚拟对象从合体对象脱离,因此能够提高用户的便利性。例如,在将合体对象的粘接解除的情况下,还能够想到将合体对象中包含的所有虚拟对象70之间的所有粘接状态解除的情况。然而,在所有粘接状态被解除的情况下,用户需要从头进行组装。与此相对地,在本实施方式中,用户能够选择构成合体对象的一部分虚拟对象并且仅将所选择的虚拟对象的粘接状态解除,因此能够在维持一部分粘接状态的状态下重新构建合体对象。
另外,在本实施方式中,选择对象固定于用户角色PC(虚拟摄像机)的前方,通过使用户角色PC(虚拟摄像机)的朝向变化,来使选择对象在虚拟空间内移动。因此,例如,当使用户角色PC(虚拟摄像机)的朝向在左右方向或上下方向上摇动时,选择对象在左右方向、上下方向上摇动。能够通过这样的对用户来说直观且易于理解的操作来将虚拟对象的粘接状态解除。即,能够通过将选择对象上粘接的虚拟对象甩掉那样的操作来将选择对象的粘接状态解除。
(对游戏处理中使用的数据的说明)
接着,对上述的游戏处理中使用的数据进行说明。图36是表示在执行游戏处理的期间存储于主体装置2的存储器的数据的一例的图。
如图36所示,在主体装置2的存储器(DRAM 85、快闪存储器84或外部存储介质)中存储有游戏程序、用户角色数据、虚拟对象数据、选择对象数据、粘接对象数据、虚拟摄像机数据以及多个合体对象数据。
游戏程序是用于执行上述的游戏处理的程序。游戏程序被预先存储在安装于槽23的外部存储介质或快闪存储器84中,在执行游戏时被读入到DRAM 85中。此外,游戏程序也可以经由网络(例如因特网)从其它装置获取。
用户角色数据是与用户角色PC有关的数据,包含与用户角色PC在虚拟空间中的位置、姿势有关的信息。另外,用户角色数据也可以包含表示用户角色PC所拥有的道具、能力等的信息。
虚拟对象数据是与配置于虚拟空间且未构成为合体对象的一部分的虚拟对象70有关的数据。虚拟对象数据包含表示各虚拟对象70(70a~70g)的种类、重量、在虚拟空间中的位置、姿势的信息。另外,虚拟对象数据包含与在各虚拟对象70设定的优先粘接部BP在虚拟对象70上的位置、法线向量NV、切线向量TL有关的信息。
选择对象数据是与由用户选择的选择对象有关的数据。
粘接对象数据包含与上述的粘接对象78的位置、形状等有关的信息。粘接对象数据包含表示虚拟对象70的粘接位置的信息。
虚拟摄像机数据包含与虚拟摄像机的位置、朝向有关的信息。
合体对象数据是与由用户制作成的由多个虚拟对象70构成的一个合体对象有关的数据。在虚拟空间中配置有多个合体对象的情况下,按每个合体对象存储合体对象数据。
具体而言,合体对象数据包含与构成合体对象的多个虚拟对象70有关的虚拟对象数据、以及与将虚拟对象70之间粘接的粘接对象78有关的粘接对象数据。另外,合体对象数据包含合体对象信息。
合体对象信息是在计算合体对象的行为时使用的信息,例如包含合体对象的重量、重心位置。合体对象的重心位置是基于构成该合体对象的多个虚拟对象70的重量、在合体对象中的位置、姿势等计算的。另外,合体对象信息也可以包含与合体对象的速度有关的信息。在合体对象包含具有动力的一个或多个虚拟对象70的情况下,也可以基于该具有动力的虚拟对象70在合体对象中的位置、姿势等来计算合体对象的速度。像这样计算出的合体对象的速度被作为合体对象信息进行存储。每当构成合体对象的虚拟对象70有变化时,重新计算合体对象信息。例如,在存在由两个虚拟对象70A、70B构成的合体对象的情况下,基于虚拟对象70A、70B各自的位置、姿势、种类、重量等来计算合体对象信息(例如重心位置、速度等),并存储该合体对象信息。在对合体对象粘接了另外的虚拟对象70C的情况下,基于三个虚拟对象70A~70C各自的位置、姿势、种类、重量等来重新计算合体对象信息,并存储该合体对象信息。
(主体装置2中的游戏处理的详情)
接着,对在主体装置2中进行的游戏处理的详情进行说明。图37是表示由主体装置2的处理器81执行的游戏处理的一例的流程图。
如图37所示,首先,处理器81执行初始处理(步骤S100)。具体而言,处理器81设定虚拟空间,并在虚拟空间中配置用户角色PC、虚拟摄像机以及多个虚拟对象70等。除此以外还将各种各样的对象(例如,表示虚拟空间的地面的对象、虚拟空间在固定的树、建筑物等对象)配置于虚拟空间。
接着,处理器81获取来自控制器的操作数据(步骤S101)。操作数据包含来自左控制器3的各按钮103、类比摇杆32、加速度传感器104及角速度传感器105、右控制器4的各按钮113、类比摇杆52、加速度传感器114及角速度传感器115的数据。主体装置2以规定的时间间隔(例如,1/200秒间隔)从各控制器接收操作数据,并将该操作数据存储于存储器。在步骤S101中,处理器81获取从各控制器发送并存储于存储器中的操作数据。另外,处理器81获取来自主体装置2的加速度传感器89、角速度传感器90以及触摸面板13的数据作为操作数据。
接着,处理器81进行对象选择处理(步骤S102)。对象选择处理是将一个虚拟对象70设定为选择对象的处理。具体而言,处理器81基于操作数据来判定是否进行了虚拟对象70的选择操作,在进行了选择操作的情况下,将所指示的虚拟对象70设定为选择对象。例如,在指示了不构成合体对象的一个虚拟对象70时,在左控制器3的规定的按钮被按下的情况下,该不构成合体对象的虚拟对象70被设定为选择对象。另外,在指示了构成合体对象的一个虚拟对象70时,在左控制器3的规定的按钮被按下的情况下,该构成合体对象的虚拟对象70被设定为选择对象。另外,处理器81在设定了选择对象的情况下,使选择对象的显示方式变化为与通常的显示方式不同的显示方式(例如黄色)。另外,处理器81在将构成合体对象的一个虚拟对象70设定为选择对象的情况下,使包含选择对象的合体对象整体的显示方式变化为与通常的显示方式不同的显示方式(例如黄色)。在该情况下,也可以将合体对象中的选择对象与合体对象中的其它虚拟对象70以不同的显示方式进行显示。
接着,处理器81进行角色移动处理(步骤S103)。具体而言,处理器81基于操作数据来判定是否进行了用户角色PC的移动操作,在进行了移动操作的情况下,使用户角色PC在虚拟空间内移动。例如,在进行了对左控制器3的类比摇杆32的方向输入的情况下,处理器81使用户角色PC根据类比摇杆32的输入方向在虚拟空间内移动。另外,处理器81使虚拟摄像机伴随用户角色PC的移动而在虚拟空间内移动。虚拟摄像机根据用户角色PC的移动而移动,以将用户角色PC包含在虚拟摄像机的拍摄范围内。另外,在设定了选择对象的情况下,处理器81使选择对象伴随用户角色PC的移动而移动。在选择对象是构成合体对象的虚拟对象70的情况下,包含选择对象的合体对象整体移动。
接着,处理器81进行朝向控制处理(步骤S104)。具体而言,处理器81基于操作数据来判定是否进行了使虚拟摄像机的朝向变化的操作,在进行了该操作的情况下,使虚拟摄像机的朝向变化。更具体而言,在设定了选择对象的情况下,在进行了对右控制器4的类比摇杆52的方向输入的情况下,处理器81使用户角色PC及虚拟摄像机的朝向根据类比摇杆52的输入方向而变化。另外,在设定了选择对象的情况下,处理器81也可以例如基于来自右控制器4的角速度传感器的数据来计算右控制器4的姿势,并基于所计算出的姿势来使用户角色PC及虚拟摄像机的朝向变化。另外,在设定了选择对象的情况下,处理器81使选择对象根据用户角色PC及虚拟摄像机的朝向的变化而移动。以使选择对象位于用户角色PC及虚拟摄像机的正面方向的方式控制该选择对象。在选择对象是构成合体对象的一个虚拟对象70的情况下,包含选择对象的合体对象整体移动。此外,在该步骤S104中,用户角色PC不移动。
接着,处理器81进行生成选择对象的像71的处理(步骤S105)。具体而言,在设定了选择对象的情况下,处理器81进行向虚拟空间的上下方向、从虚拟摄像机观察时的左右方向、以及深度方向投影选择对象的处理。由此,在存在于选择对象的上下方向、左右方向、深度方向的面上生成选择对象的像71(投影像)。例如,在处于选择对象的左侧的其它虚拟对象70的表面上投影出选择对象71的像71,并且在处于选择对象的右侧的另外的虚拟对象70的表面上投影出选择对象71的像71。
继步骤S105之后,处理器81进行合体对象生成处理(步骤S106)。合体对象生成处理进行用于将选择对象与其它虚拟对象70粘接来生成合体对象的处理。例如,在根据用户的粘接指示而将选择对象与其它虚拟对象70粘接的情况下,选择对象和其它虚拟对象70以彼此拉进的方式移动,最终选择对象与其它虚拟对象70被粘接起来。关于合体对象生成处理的详情,在后面叙述。
接着,处理器81进行对象控制处理(步骤S107)。在步骤S107中,针对虚拟空间内的所有对象,基于其位置、大小、重量、速度、旋转速度、对其施加的力、摩擦等来进行按照物理法则的计算,以控制各对象的动作。在使虚拟空间内的虚拟对象70、合体对象移动的情况下,进行与其它对象的碰撞判定,根据碰撞判定的结果来计算各对象的行为。
例如,在为了使选择对象粘接于其它虚拟对象70而移动了选择对象的情况下,也进行选择对象与其它虚拟对象70的碰撞判定。碰撞判定是基于各对象的位置、姿势、大小、形状进行的。在碰撞判定的结果是选择对象与其它虚拟对象70会发生碰撞的情况下,基于各对象的重量、碰撞时的速度等来计算各对象的行为。例如,由于选择对象与其它虚拟对象70的碰撞,其它虚拟对象70会进行移动、或者妨碍选择对象的移动、或者选择对象的移动方向发生变化。
此外,对于粘接对象78,处理器81不进行上述碰撞判定。例如,在生成了将选择对象与其它虚拟对象70连结的粘接对象78的情况下,即使在选择对象与其它虚拟对象70之间存在另外的对象的情况下,也不进行粘接对象78与另外的对象的接触判定。因此,即使粘接对象78与另外的对象发生碰撞,也不影响另外的对象的运动。即,粘接对象78不是会妨碍虚拟对象70、用户角色PC、其它对象的运动的对象,而是不具有实体的显示上的对象。另外,在选择对象与其它虚拟对象70被粘接起来之后,粘接对象78仍然残留,但是对残留的粘接对象78也不进行碰撞判定。此外,也可以对粘接对象78也进行上述碰撞判定。即,也可以是,对选择对象与其它虚拟对象70被进行粘接之前的粘接对象78、以及选择对象与其它虚拟对象70被进行粘接之后的粘接对象78进行碰撞判定。而且,也可以是,在粘接对象78与另外的对象发生了碰撞的情况下,给该另外的对象的运动带来影响。
另外,在对象控制处理中,在根据粘接指示将选择对象与其它虚拟对象70粘接的情况下,两个虚拟对象70以彼此拉进的方式移动。在该情况下,以使比较重的虚拟对象70的移动距离短、比较轻的虚拟对象70的移动距离长的方式进行控制。另外,在两个虚拟对象70的重量差或重量比为规定值以上的情况下,也可以仅使较轻一方的虚拟对象70移动。
另外,在对象控制处理中,处理器81基于合体对象信息和操作数据来控制合体对象的动作。例如,处理器81使图19所示的具有操纵杆对象70h的四轮车对象76作为合体对象移动。在该情况下,处理器81基于合体对象信息中包含的速度、重心位置来使四轮车对象76移动,并且基于操作数据来使四轮车对象76的移动方向变化。
接着,处理器81进行粘接解除处理(步骤S108)。粘接解除处理是将被粘接起来的虚拟对象70之间的粘接解除的处理,是使一个或多个虚拟对象70从合体对象脱离的处理。关于粘接解除处理的详情,在后面叙述。
接着,处理器81进行输出处理(步骤S109)。具体而言,处理器81基于虚拟摄像机来生成游戏图像,使该游戏图像显示于显示器12或固置型监视器。另外,处理器81使扬声器输出与游戏处理的结果相应的声音。
接下来,处理器81判定是否结束游戏处理(步骤S110)。例如,在由用户指示了游戏结束的情况下,处理器81在步骤S110中判定为“是”,结束图37所示的游戏处理。在步骤S110中判定为“否”的情况下,处理器81再次执行步骤S101的处理。此外,处理器81以规定的帧时间间隔(例如,1/60秒间隔)反复执行步骤S101~步骤S110的处理。以上,结束对图37的说明。
(合体对象生成处理)
接着,对上述步骤S106的合体对象生成处理的详情进行说明。图38是表示步骤S106的合体对象生成处理的一例的流程图。
处理器81判定是否设定了选择对象(步骤S150)。在没有设定选择对象的情况下(步骤S150中为“否”),处理器81结束图38所示的处理。
在设定了选择对象的情况下(步骤S150中为“是”),处理器81判定选择对象和其它虚拟对象70是否满足规定的粘接条件(步骤S151)。具体而言,处理器81基于选择对象的位置、移动方向来搜索满足规定的粘接条件的其它虚拟对象70。在搜索的结果是找到了满足规定的粘接条件的其它虚拟对象70的情况下,处理器81在步骤S151中判定为“是”。另一方面,在没有找到满足规定的粘接条件的其它虚拟对象70的情况下,处理器81在步骤S151中判定为“否”。
在步骤S151中判定为“是”的情况下,处理器81进行粘接对象生成处理(步骤S152)。关于粘接对象生成处理的详情,在后面叙述。
接下来,处理器81基于操作数据来判定用户是否进行了粘接指示(步骤S153)。
在进行了粘接指示的情况下(在步骤S153中为“是”),处理器81进行将选择对象与其它虚拟对象70粘接的粘接处理(步骤S154)。这里,是在步骤S152中设定的粘接位置将选择对象与其它虚拟对象70粘接。由此,生成由多个虚拟对象70构成的合体对象。在设定了两个优先粘接部BP作为粘接位置的情况下,以使两个优先粘接部BP的法线方向平行的方式将两个优先粘接部BP粘接。
另外,在步骤S154的粘接处理中,处理器81计算合体对象信息。具体而言,处理器81基于构成合体对象的各虚拟对象70的种类、重量、粘接位置等来计算合体对象信息,并将所计算出的合体对象信息存储于存储器中。每当粘接虚拟对象70时,计算合体对象信息并将该合体对象信息存储于存储器中。
在完成了步骤S154的处理的情况下、或者在步骤S150中判定为“否”的情况下、或者在步骤S151中判定为“否”的情况下、或者在步骤S153中判定为“否”的情况下,处理器81结束图38所示的处理。
(粘接对象生成处理)
接着,对上述步骤S152的粘接对象生成处理的详情进行说明。图39是表示步骤S152的粘接对象生成处理的一例的流程图。
如图39所示,处理器81判定优先粘接部彼此是否能够粘接(步骤S200)。具体而言,处理器81判定选择对象的各优先粘接部BP和在步骤S151中判定为满足规定的粘接条件的其它虚拟对象70的各优先粘接部BP是否满足上述第一条件(条件A~条件C的所有条件)。在存在满足第一条件的优先粘接部BP的对的情况下,处理器81在步骤S200中判定为“是”。在不存在满足第一条件的优先粘接部BP的对的情况下,处理器81在步骤S200中判定为“否”。
在步骤S200中判定为“是”的情况下,处理器81将满足第一条件的两个优先粘接部BP设定为粘接位置(步骤S201)。在满足第一条件的两个优先粘接部BP的对存在多对的情况下,处理器81将两个优先粘接部BP之间的距离最近的优先粘接部BP的对设定为粘接位置。
另一方面,在步骤S200中判定为“否”的情况下,处理器81计算选择对象与其它虚拟对象70的最接近位置,将该最接近位置设定为粘接位置(步骤S202)。此外,在步骤S202中,对于选择对象和其它虚拟对象70,在选择对象和其它虚拟对象70中的一方的优先粘接部BP与另一方的除优先粘接部以外的部分为最接近位置的情况下,将它们设定为粘接位置。
在执行了步骤S201或步骤S202的处理的情况下,处理器81决定粘接对象78的各骨头781的大小(步骤S203)。决定粘接对象78的各骨头781的大小的方法如参照图26和图27所说明的那样。
接着,处理器81基于在步骤S201或步骤S202中设定的粘接位置来配置粘接对象78(步骤S204)。具体而言,将粘接对象78的一方的第一部分782配置在选择对象的粘接位置,将粘接对象78的另一方的第一部分782配置在其它虚拟对象70的粘接位置。
接着,处理器81以使粘接对象78的各骨头781沿着虚拟对象70的表面的方式决定各骨头781的姿势(步骤S205)。这里,在各骨头781的形状维持不变的状态下,使各骨头781的姿势变化。由此,生成将选择对象的接触位置与其它虚拟对象70的接触位置连结的粘接对象78。粘接对象78的一方的第一部分782沿着选择对象的包含粘接位置的表面,粘接对象78的另一方的第一部分782沿着其它虚拟对象70的包含粘接位置的表面。此外,也可以是,使各骨头781的形状以沿着虚拟对象70的表面的方式变化。
在执行了步骤S205的处理的情况下,处理器81结束图39所示的粘接对象生成处理。
(粘接解除处理)
接着,对上述步骤S108的粘接解除处理的详情进行说明。图40是表示步骤S108的粘接解除处理的一例的流程图。
如图40所示,处理器81判定是否选择了构成合体对象的一个虚拟对象70(步骤S300)。
在步骤S300中判定为“是”的情况下,处理器81基于操作数据来判定是否进行了粘接解除操作(步骤S301)。具体而言,处理器81判定是否在规定时间(例如1秒期间)进行了规定次数的使用户角色PC(虚拟摄像机)的朝向反转的操作。例如,在规定时间内使用类比摇杆52进行了规定次数的相反方向上的方向输入操作的情况下,处理器81判定为进行了粘接解除操作。另外,处理器81基于角速度传感器115的输出来计算右控制器4的姿势,从而检测右控制器4的抖动操作。在规定时间内检测到规定次数的使用右控制器4进行的相反方向上的抖动操作的情况下,处理器81判定为进行了粘接解除操作。在规定时间内检测到使用类比摇杆52进行的相反方向上的方向输入操作以及使用右控制器4进行的相反方向上的抖动操作的情况下,将各种操作的次数相加。而且,在规定时间内进行相加所得到的操作的次数达到规定次数的情况下,判定为进行了粘接解除操作。例如,在规定次数被设定为4次的情况下,在规定时间内进行了两次使用类比摇杆52进行的相反方向上的方向输入操作、并且进行了两次使用右控制器4进行的相反方向上的抖动操作的情况下,处理器81判定为进行了粘接解除操作。此外,使用类比摇杆52进行的方向输入操作和使用右控制器4进行的抖动操作也可以不被相加,而是作为单独的操作被进行计数。
在进行了粘接解除操作的情况下(在步骤S301中为“是”),处理器81将选择对象与该选择对象上粘接的所有虚拟对象70的粘接解除(步骤S302)。另外,处理器81将与选择对象粘接的粘接对象78消除。
接着,处理器81重新计算合体对象信息(步骤S303)。这里,是重新计算通过步骤S302的处理构成的合体对象的合体对象信息,并将该合体对象信息存储于存储器中。例如,在由三个虚拟对象70构成的合体对象通过步骤S302的处理变为了由两个虚拟对象70构成的合体对象的情况下,重新计算该由两个虚拟对象70构成的合体对象的合体对象信息。
在完成了步骤S303的处理的情况下、或者在步骤S300中判定为“否”的情况下、或者在步骤S301中判定为“否”的情况下,处理器81结束图40所示的粘接解除处理。
此外,上述流程图中表示的处理只不过是单纯的例示,处理的顺序、内容等也可以被适当变更。
如以上那样,在本实施方式中,用户能够通过选择操作来选择能够在虚拟空间内移动且能够彼此粘接的多个虚拟对象70中的第一对象(步骤S102)。在被选择的第一对象(选择对象)与没有被选择的第二对象(其它虚拟对象70)满足规定的粘接条件的情况下(在步骤S151中为“是”),出现示出第一对象的粘接位置和第二对象的粘接位置的粘接对象78(步骤S152)。根据用户的粘接指示将第一对象与第二对象在由粘接对象示出的粘接位置处粘接(步骤S154)。在通过用户的操作而第一对象进行了移动或发生了姿势变化的情况下,粘接对象78所示出的第一对象的粘接位置和第二对象的粘接位置发生变化(步骤S201、S202)。
通过显示粘接对象,用户在将多个虚拟对象粘接来组装合体对象时能够容易地识别出第一对象与第二对象被进行粘接,并且能够识别出第一对象与第二对象在哪个部分被进行粘接。由于粘接对象所示出的粘接位置根据第一对象的移动、姿势变化而变化,因此能够一边调整粘接位置一边将第一对象与第二对象粘接。
另外,在本实施方式中,在用户使第一对象移动以将第一对象与第二对象粘接的情况下,进行第一对象与第二对象的碰撞判定(步骤S106)。即,在用户将多个虚拟对象组装时也进行碰撞判定。在第一对象与第二对象发生了碰撞的情况下,控制第一对象和第二对象中的至少任一方的移动。例如,根据碰撞,第二对象会进行移动、或者第一对象的移动方向会发生变化、或者第一对象的移动速度会降低。
由于在将多个虚拟对象组装时也进行碰撞判定并控制各虚拟对象的行为,因此用户能够识别出第一对象与第二对象之间的距离。另外,在为了避免碰撞而使两个虚拟对象分离了的情况下,通过粘接对象显示两个虚拟对象的粘接位置,因此用户能够识别出第一对象与哪个虚拟对象被进行粘接、以及在哪个位置被进行粘接。
另外,在本实施方式中,在第二对象(其它虚拟对象70)的表面生成第一对象(选择对象)的像71(步骤S105)。具体而言,在正交的三个方向(上下方向、左右方向、前后方向)上投影第一对象,从而在三个方向上生成像71(投影像)。像71是不同于利用虚拟空间的光源生成的第一对象的影子而另外生成的。由用户选择了的第一对象以与第一对象被选择之前的颜色不同的规定的颜色(例如黄色)进行显示,第一对象的像71也以相同的规定的颜色进行显示。因此,用户能够容易地识别出第一对象与第二对象的位置关系。另外,由于第一对象与该第一对象的像71以相同的显示方式进行显示,因此用户能够容易地识别出第二对象的表面上映现出的像71是第一对象的像,并且能够容易地识别出第一对象与第二对象的位置关系。此外,所选择的第一对象的颜色与该第一对象的像71的颜色也可以不是以完全相同的颜色进行显示,例如也可以是两者均以同一颜色系的颜色显示,其中一方的颜色比另一方的颜色浓。
另外,在本实施方式中,在虚拟对象70设定相比于其它部分而言易于粘接的优先粘接部。在第一对象和第二对象这双方设定了优先粘接部的情况下,这些优先粘接部被设定为粘接位置。具体而言,在第一对象的优先粘接部和第二对象的优先粘接部满足第一条件(条件A~C)的情况下,第一对象的优先粘接部和第二对象的优先粘接部被设定为粘接位置。当在该状态下进行了粘接指示时,第一对象的优先粘接部与第二对象的优先粘接部被进行粘接。另一方面,在第一对象的优先粘接部和第二对象的优先粘接部不满足第一条件的情况下、或者在第一对象和第二对象中的至少任一方没有被设定优先粘接部的情况下,满足第二条件的、第一对象上的位置和第二对象上的位置(最接近位置)被设定为粘接位置。
另外,在将第一对象的优先粘接部与第二对象的优先粘接部粘接的情况下,使用基于各优先粘接部的规定的方向(例如,法线方向、切线方向)来调整第一对象和第二对象中的至少任一方的姿势后将第一对象与第二对象粘接。由此,用户即使不细致地调整第一对象相对于第二对象的姿势,也能够将第一对象与第二对象以适当的姿势粘接。
具体而言,在各优先粘接部处设定法线方向,以使各优先粘接部的法线方向平行(例如,使法线向量为相反方向)的方式将第一对象与第二对象粘接。由此,例如能够以使第一对象的某个面与第二对象的某个面平行的方式将第一对象与第二对象粘接。
另外,在各优先粘接部处设定切线方向。以使在第一对象的优先粘接部处设定的切线方向与在第二对象的优先粘接部处设定的切线方向之间为预先决定的角度的方式将第一对象与第二对象粘接。由此,能够以使第一对象的朝向与第二对象的朝向为规定的角度的方式将第一对象与第二对象粘接。例如,能够将两个虚拟对象以相同的朝向粘接、或者将两个虚拟对象以使它们的朝向为直角的方式粘接。
另外,在本实施方式中,粘接对象将第一对象的粘接位置与第二对象的粘接位置连结。在第一对象的粘接位置与第二对象的粘接位置的位置关系根据第一对象的移动或姿势变化而发生了变化的情况下,粘接对象的形状发生变化。因此,用户能够直观地识别出两个对象被进行粘接。另外,由于粘接对象的形状根据第一对象的移动、姿势变化而发生变化,因此用户能够识别出第一对象与第二对象的位置关系的变化。
另外,在本实施方式中,在第一对象与第二对象被粘接起来的状态下选择第一对象和第二对象中的任一方,生成将所选择的一方的对象的粘接位置与第三对象的粘接位置连结的粘接对象。然后,根据用户的粘接指示将所选择的一方的对象与第三对象粘接。由此,能够容易地对由多个虚拟对象构成的合体对象在期望的位置进一步粘接新的对象。假定在选择了包含多个虚拟对象的合体对象整体从而合体对象整体成为新的对象的粘接范围的情况下,有时难以指定粘接位置。然而,在本实施方式中,用户选择构成合体对象的多个虚拟对象中的任一个虚拟对象、并在所选择的虚拟对象粘接新的对象,因此易于指定粘接位置。
另外,在本实施方式中,在第一对象与第二对象在由粘接对象示出的粘接位置被粘接起来之后,粘接对象残留在包含粘接位置的规定范围。由此,能够显示通过用户的操作将第一对象与第二对象进行了粘接。此外,由于第一对象与第二对象是在粘接位置接合,因此严格来说粘接对象不是残留在两个对象的粘接位置(粘接点),而是残留在粘接位置的周边。所谓“粘接对象残留在包含粘接位置的规定范围”,设为还包括像这样严格来说粘接对象不是残留在粘接位置而是残留在粘接位置的周边的情况。
另外,在本实施方式中,对多个虚拟对象中的各个虚拟对象设定了重量,在将第一对象与第二对象粘接的情况下,以使较轻一方的对象的移动距离比较重一方的对象的移动距离长的方式移动。由此,能够通过两个虚拟对象被进行粘接时的行为来掌握两个虚拟对象的重量的关系,能够估计粘接后的合体对象的重心位置。另外,能够表现出重量不同的对象以彼此拉进的方式移动从而两个对象被进行粘接的情形。
另外,在本实施方式中,根据粘接指示将虚拟对象粘接来构成合体对象,每当虚拟对象被进行粘接时计算并存储合体对象信息。另外,根据粘接解除操作来使虚拟对象从合体对象脱离,每当虚拟对象脱离时计算并存储合体对象信息。合体对象信息(例如,合体对象的重心位置)是基于构成合体对象的多个虚拟对象计算的信息。基于合体对象信息来控制合体对象的动作。由此,在计算合体对象的行为时,即使不是每次都调查合体对象中包含的多个虚拟对象之间的粘接,也能够使用合体对象信息来计算作为合体对象的行为,从而能够减轻与计算有关的负荷。
另外,在本实施方式中,在通过将多个虚拟对象粘接来生成合体对象之后,将构成合体对象的多个虚拟对象中的任一个虚拟对象设定为选择对象,基于对输入单元的输入来使包含选择对象的合体对象移动,从而能够对该合体对象进一步粘接另外的虚拟对象。另外,在设定了选择对象的情况下,根据使用输入单元(例如类比摇杆52、控制器的角速度传感器)进行的移动输入来使包含选择对象的合体对象移动(步骤S104)。在设定了选择对象的情况下,在使用输入单元进行的移动输入满足解除条件时,将构成合体对象的虚拟对象中的粘接于选择对象的其它虚拟对象与选择对象的粘接解除(步骤S302),另一方面,维持没有粘接于选择对象上的其它虚拟对象的粘接。由此,能够选择合体对象中包含的独立的虚拟对象并仅将一部分的粘接解除,从而能够提高通过用户操作将多个虚拟对象组装起来而构成合体对象时的用户的便利性。即,若将合体对象中包含的所有虚拟对象的粘接解除,则用户需要从头重新进行组装,但是在本实施方式中,由于能够将一部分的粘接解除,因此不需要从头重新进行组装。另外,用于移动合体对象的输入单元还被用于虚拟对象的脱离,因此能够通过直观的操作来进行虚拟对象的脱离和合体对象的移动。
另外,在本实施方式中,在选择对象与其它虚拟对象的粘接被解除的情况下,选择对象持续保持被选择的状态(保持设定了选择对象的状态)。由此,用户能够在使其它虚拟对象从选择对象脱离之后立即转移到对选择对象粘接另外的虚拟对象的操作。
另外,在本实施方式中,基于使用第一输入单元(类比摇杆32)进行的移动输入来使用户角色移动、并且使包含选择对象的合体对象移动(步骤S103)。另外,基于使用第二输入单元(类比摇杆52)进行的移动输入,不使用户角色移动而使包含选择对象的合体对象移动,在使用第二输入单元进行的移动输入满足解除条件时,将选择对象与其它虚拟对象的粘接解除。通过不使用户角色移动而使选择对象移动来将与其它虚拟对象的粘接解除,因此能够通过直观且易于理解的操作来使其它虚拟对象脱离。
另外,在本实施方式中,还能够对选择对象粘接所述另外的虚拟对象。由此,能够通过对输入单元的输入来使其它虚拟对象从选择对象脱离、或者对选择对象粘接另外的虚拟对象。
另外,在本实施方式中,在规定时间内合体对象的移动方向的变化的次数达到规定次数的情况下,选择对象与其它虚拟对象的粘接被解除。“合体对象的移动方向的变化”是指合体对象从向第一方向移动的状态变化为向与第一方向不同的第二方向移动的状态。另外,例如,在规定时间内合体对象在相反方向上的移动的次数达到规定次数的情况下,选择对象与其它虚拟对象的粘接被解除。这里所谓的“合体对象在相反方向上的移动”也可以是指合体对象从向第一方向移动的状态变化为向与第一方向之间具有规定的角度(例如,150度~180度)的第二方向移动的状态。由此,能够通过直观的操作来使其它虚拟对象脱离。例如,在规定时间内进行了规定次数的相反方向上的移动的情况下,合体对象以摇动的方式进行动作。因此,能够通过从合体对象甩掉粘接于选择对象上的其它虚拟对象那样的直观的操作来使其它虚拟对象脱离。
此外,解除条件也可以是规定时间内的使用输入单元进行的移动输入的变化的次数越多则越易于满足的条件。即,也可以是,规定时间内的使用输入单元进行的移动输入的变化的次数越多,则越易于判定为满足解除条件,在判定为满足解除条件的情况下,选择对象与其它虚拟对象的粘接被解除。这里,“使用输入单元进行的移动输入的变化”是指用于移动选择对象的输入发生变化,例如也可以是从使用类比摇杆52进行的向第一方向的输入变化为向第二方向的输入。另外,“使用输入单元进行的移动输入的变化”例如也可以是指从输入用于移动的第一按钮的状态变化为输入用于移动的第二按钮的状态。另外,“规定时间内的使用输入单元进行的移动输入的变化的次数越多则越易于满足解除条件”例如也可以包括以下情况:在规定时间内的使用输入单元进行的移动输入的变化的次数达到规定次数的情况下满足解除条件。即,也可以是,对规定时间内的使用输入单元进行的移动输入的变化的次数进行计数,在进行计数所得到的数为“规定次数”的情况下,选择对象与其它虚拟对象的粘接被解除。“规定次数”既可以是预先由游戏制作者设定的恒定的值,也可以是在游戏期间变化的值,还可以是由用户设定的值。
另外,不限于是对规定时间内的使用输入单元进行的移动输入的变化的次数进行计数的方法,也可以通过其它方法来判定是否满足了解除条件。例如,也可以是,对与规定时间内的使用输入单元进行的移动输入有关的值(例如,表示输入方向的角度)进行累计,在累计的值达到规定值的情况下满足解除条件。在该情况下也是,规定时间内的使用输入单元进行的移动输入的变化的次数越多则越易于满足解除条件。
另外,在本实施方式中,也可以是,规定时间内的使用第三输入单元(类比摇杆52)进行的移动输入的变化的次数越多,则越易于判定为满足了解除条件。另外,也可以是,规定时间内的使用第四输入单元(角速度传感器)进行的移动输入的变化的次数越多,则越易于判定为满足了解除条件。也可以是,在规定时间内进行了对第三输入单元和第四输入单元这两方的移动输入的情况下,相比于进行了对第三输入单元和第四输入单元中的一方的移动输入的情况而言,更易于判定为满足了解除条件。例如,也可以是,在使用第三输入单元进行的移动输入的变化的次数达到规定次数时判定为满足了解除条件,在使用第四输入单元进行的移动输入的变化的次数达到规定次数时判定为满足了解除条件。在该情况下,也可以是,在使用第三输入单元进行的移动输入的变化的次数与使用第四输入单元进行的移动输入的变化的次数的合计达到规定次数时判定为满足了解除条件,从而将选择对象与其它虚拟对象的粘接解除。由此,能够使用两个输入单元来将选择对象与其它虚拟对象的粘接解除,在同时进行了对两个输入单元的输入的情况下,能够快速地将粘接解除。
(变形例)
以上说明了本实施方式,但是上述实施方式是单纯的一个例子,例如也可以施加如下变形。
例如,在上述实施方式中,是将预先配置于虚拟空间内的虚拟对象70粘接来构成合体对象,但是在其它实施方式中,虚拟对象70也可以不被预先配置在虚拟空间内。例如,也可以是,在用户角色PC所具有的收容区域收容虚拟对象70,通过用户的操作选择收容区域内的虚拟对象70,使所选择的该虚拟对象70出现在虚拟空间中。
另外,也可以准备与用户角色PC、敌方角色出场的虚拟空间不同的、用于使用多个虚拟对象70来生成合体对象的另外的虚拟空间。在该情况下,在该另外的虚拟空间中配置多个虚拟对象70并生成合体对象。也可以是,在生成了合体对象的情况下,在用户角色PC、敌方角色出场的虚拟空间中出现该合体对象。
另外,在上述实施方式中,生成示出粘接位置的粘接对象78,以使由粘接对象78示出的粘接位置一致的方式将两个虚拟对象70拉进并粘接。在其它实施方式中,也可以是,例如在两个虚拟对象70处于近到某种程度的位置时才能够使用粘接命令(例如与上述粘接指示相同的操作或不同的操作),根据该粘接命令的执行,不是将两个虚拟对象70拉进,而是通过使它们的位置关系固定(维持它们的位置关系),来将它们粘接。即,也可以是,在两个虚拟对象70彼此接近到规定距离时粘接命令才变为有效,根据该粘接命令的执行,使命令执行时的位置关系(距离和姿势)固定地将两个虚拟对象70彼此粘接。在该两个虚拟对象70之间,既可以存在上述粘接对象,也可以不存在粘接对象。此外,也可以对执行了粘接命令时的两个虚拟对象70的位置关系进行校正(例如,姿势的调整等),并使校正后的位置关系固定。
另外,在上述实施方式中,以使选择对象的优先粘接部BP处的法线向量与其它虚拟对象70的优先粘接部BP处的法线向量为相反方向的方式将各优先粘接部BP进行了粘接。在其它实施方式中,也可以以使选择对象的优先粘接部BP处的法线向量与其它虚拟对象70的优先粘接部BP处的法线向量为相同方向的方式将各优先粘接部BP粘接。
另外,在上述实施方式中,在选择对象的优先粘接部BP和其它虚拟对象70的优先粘接部BP满足第一条件的情况下,将这些优先粘接部BP粘接。第一条件不限于是上述的条件,也可以是其它条件。例如,第一条件既可以是条件A~C中的任一条件,也可以是另外的条件。例如,只要是不会使用户对优先粘接部彼此的粘接感觉到不自然感的条件即可。
另外,在选择对象的优先粘接部BP和其它虚拟对象70的优先粘接部BP不满足第一条件的情况下,将两个对象在满足第二条件的、选择对象上的位置和其它虚拟对象70上的位置(最接近位置)处粘接。在其它实施方式中,满足第二条件的位置不限于是最接近位置。
另外,在其它实施方式中,在选择对象和其它虚拟对象70这两方设定了优先粘接部的情况下,优先将两个优先粘接部粘接。在其它实施方式中,在选择对象和其它虚拟对象70中的任一方设定了优先粘接部的情况下,也可以优先将任一方的优先粘接部设定为粘接位置,对于选择对象和其它虚拟对象70中的另一方,将优先粘接部以外的部分设定为粘接位置。
另外,在上述实施方式中,设为选择构成合体对象的虚拟对象,并对选择对象进一步粘接新的虚拟对象。在其它实施方式中,也可以是,选择构成合体对象的虚拟对象,能够对构成合体对象的选择对象以外的虚拟对象粘接新的虚拟对象。
另外,在上述实施方式中,在虚拟空间的正交的三个方向上投影选择对象,在某个方向上存在其它虚拟对象70的情况下,在该其它虚拟对象70的表面生成选择对象的像71。在其它实施方式中,也可以是,向从选择对象朝向其它虚拟对象70的方向投影选择对象,来在其它虚拟对象70的表面生成选择对象的像71。在该情况下,例如即使在选择对象的正旁边不存在其它虚拟对象70而在选择对象的斜方向上存在其它虚拟对象70的情况下,也在其它虚拟对象70的表面生成选择对象的像71。
另外,在上述实施方式中,设为在使第一虚拟对象移动来使其与第二虚拟对象粘接的情况下,进行两个虚拟对象的碰撞判定,但是在进行粘接指示之前的两个虚拟对象之间已经生成有粘接对象时,也可以不进行两个虚拟对象的碰撞判定。
另外,在上述实施方式中,在使第一虚拟对象移动来使其与第二虚拟对象粘接的情况下,在第二虚拟对象的表面投影出第一虚拟对象的像,但是也可以不是必须投影出这样的像。另外,在上述实施方式中,在上下方向以及与上下方向正交的左右方向上投影出第一虚拟对象的像,但是投影的方向不限于这些方向。另外,也可以不是必须在两个方向上投影出第一虚拟对象的像。另外,在使第一虚拟对象移动时,也可以不是必须生成第一虚拟对象的影子。
另外,在上述实施方式中,在选择第一虚拟对象并将第一虚拟对象粘接于第二虚拟对象的情况下,将第一虚拟对象以规定的颜色进行显示,并且将第一虚拟对象的像也以规定的颜色进行显示。在其它实施方式中,也可以是,即使选择了第一虚拟对象,也将第一虚拟对象以原来的颜色进行显示。另外,第一虚拟对象的像既可以以与原来的颜色相应的颜色进行显示,也可以不被显示出来。
另外,在上述实施方式中,设为存在被设定优先粘接部的虚拟对象和没有被设定优先粘接部的虚拟对象。在其它实施方式中,也可以仅存在没有被设定优先粘接部的虚拟对象,还可以仅存在被设定优先粘接部的虚拟对象。
另外,在上述实施方式中,使用基于优先粘接部的规定的方向(法线方向或切线方向)来调整第一虚拟对象和第二虚拟对象中的至少任一方的姿势。在其它实施方式中,也可以是,不限于基于法线方向、切线方向,而是基于任意的方向进行这样的姿势调整,姿势调整的方法也可以是任意的方法。另外,也可以不进行这样的姿势调整。
另外,在上述实施方式中,设为粘接对象是将两个虚拟对象的粘接位置连结的对象。在其它实施方式中,粘接对象也可以是示出两个虚拟对象的粘接位置、但是不将粘接位置彼此连结的对象。
另外,在上述实施方式中,根据粘接指示来使两个虚拟对象70以彼此拉进、且较轻一方的移动距离比较重一方的移动距离长的方式进行移动。在其它实施方式中,不限于是这样的移动方式,例如也可以与重量无关地移动相同的距离。
另外,在上述实施方式中,在选择了选择对象的情况下,当进行了规定次数的作为粘接解除操作的、使用类比摇杆52使用户角色PC的朝向(虚拟摄像机的朝向)变化的操作时,使粘接于选择对象上的对象脱离,而选择对象以外的对象之间的粘接被维持。在其它实施方式中,也可以是,在选择(设定)了选择对象并进行了上述粘接解除操作的情况下,使粘接于选择对象上的对象脱离,并且对于选择对象以外的对象也解除一部分或全部的粘接。即,在进行了粘接解除操作(以选择对象为中心摇动画面那样的操作)的情况下,使粘接于选择对象上的对象脱离即可,至于选择对象以外的对象,既可以解除粘接,也可以维持粘接。
另外,也可以是,通过上述选择解除操作以外的操作来使粘接于选择对象上的对象脱离,另一方面,维持选择对象以外的对象的粘接。
例如,也可以是,在进行了按下特定的按钮的操作的情况下、进行了对触摸面板的规定的触摸操作的情况下,进行粘接解除。例如也可以是,在选择了选择对象的状态下按下了特定的按钮的情况下,使粘接于选择对象上的对象脱离,维持没有粘接于选择对象上的对象之间的粘接。另外,例如也可以是,在选择了选择对象的状态下按下了特定的按钮的情况下,使粘接于选择对象上的对象脱离,将没有粘接于选择对象上的对象之间的粘接也解除一部分或全部。
另外,在上述实施方式中,选择了合体对象中包含的一个虚拟对象作为选择对象,在其它实施方式中,也可以是,能够选择合体对象中包含的多个虚拟对象作为选择对象。也可以是,在选择了合体对象中包含的多个虚拟对象作为选择对象并且进行了用于粘接解除的操作的情况下,使粘接于该多个选择对象上的其它虚拟对象脱离。在该情况下,既可以是维持所选择的多个选择对象之间的粘接,也可以是将所选择的多个选择对象之间的粘接也解除。另外,在选择了合体对象整体并且进行了用于粘接解除的操作的情况下,也可以将合体对象整体或一部分的粘接解除。
另外,也可以选择合体对象整体作为选择对象,根据粘接指示对该合体对象进一步粘接虚拟空间中配置的其它虚拟对象。在该情况下,也可以在合体对象中包含的多个虚拟对象中的任一个虚拟对象上粘接该其它虚拟对象。
另外,在上述实施方式中,设为能够将通过粘接对象被粘接起来的多个虚拟对象70的粘接解除,但是在其它实施方式中也可以构成为不能将粘接解除。
另外,在上述实施方式中,选择合体对象中包含的虚拟对象作为选择对象,使选择对象移动来根据粘接指示对合体对象进一步粘接其它虚拟对象。另外,在上述实施方式中,选择合体对象中包含的虚拟对象作为选择对象,根据粘接解除操作来使粘接于选择对象上的对象脱离。在其它实施方式中,也可以是,除了这种合体对象的生成、粘接解除的方法以外(或者代替该方法),还通过其它的方法进行合体对象的生成、粘接解除。
例如,作为合体对象的其它的生成方法,也可以是,首先,通过用户的操作来输入合体命令,接着,选择选择对象,在进一步进行了粘接指示的情况下,对选择对象粘接其它虚拟对象。合体命令的输入、选择对象的选择以及粘接指示的顺序不限于此。另外,也可以是,在输入了合体命令的状态下选择了选择对象的情况下,即使没有粘接指示,也对选择对象粘接其它虚拟对象。另外,也可以是,在选择了合体对象整体并且输入了合体命令的情况下,即使没有选择合体对象中包含的虚拟对象,也对该合体对象进一步粘接其它虚拟对象。
另外,作为其它的粘接解除的方法,也可以是,首先,通过用户的操作来输入粘接解除命令,接着,选择选择对象,在进一步进行了分离指示的情况下,进行合体对象中包含的虚拟对象之间的粘接的解除。在该情况下,也可以是进行上述粘接解除操作作为分离指示。此外,粘接解除命令的输入、选择对象的选择以及分离指示的顺序不限于此。另外,也可以是,在输入了粘接解除命令的状态下选择了选择对象的情况下,即使没有分离指示,也进行粘接解除。另外,也可以是,在选择了合体对象整体并且输入了粘接解除命令的情况下,即使没有选择合体对象中包含的虚拟对象,也将该合体对象的整体或一部分的粘接解除。
另外,也可以是,用户角色PC具有能够收容道具的虚拟的收容区域(例如,用户角色PC所拥有的虚拟的手袋、小包、道具盒等),在收容区域能够收容上述合体对象中可能包含的素材对象。收容区域既可以以由用户角色PC携带着的方式显示,也可以是通常不被显示出来,而根据用户的操作被显示出来。也可以是,在合体对象包含能够收容在该收容区域中的虚拟对象(素材对象)的情况下,当在合体对象的附近进行了特定的操作(例如按下特定的按钮)时,能够将该素材对象收容到收容区域中。在该情况下,也可以是,根据特定的按钮被按下,合体对象中包含的该素材对象的粘接被解除,并且该素材对象被收容到收容区域。例如,设为生成了包含虚拟对象70X、虚拟对象70Y以及虚拟对象70Z的合体对象。在虚拟对象70X与虚拟对象70Y通过第一粘接对象被粘接起来、并且虚拟对象70Y与虚拟对象70Z通过第二粘接对象被粘接起来的情况下,在根据特定的按钮被按下而虚拟对象70X作为素材对象被收容于收容区域时,虚拟对象70X与虚拟对象70Y的粘接被解除,第一粘接对象被消除。而且,虚拟对象70X作为素材对象被收容于收容区域。另一方面,由于虚拟对象70Y和虚拟对象70Z不是能够收容于收容区域中的虚拟对象,因此虚拟对象70Y与虚拟对象70Z的粘接不被解除,第二粘接对象不被消除。因此,虚拟对象70Y和虚拟对象70Z仍然作为合体对象存在于虚拟空间。此外,也可以在生成另外的合体对象时使用收容区域中收容的素材对象(虚拟对象70X)。
另外,在上述实施方式中,设为根据粘接解除操作而解除粘接,但是也可以存在不根据粘接解除操作而解除粘接的情况。例如,也可以是,在向构成合体对象的虚拟对象彼此分离的方向施加大的力(超过规定的阈值的力)的情况下,该虚拟对象彼此的粘接被解除。
另外,进行上述游戏的硬件的结构是单纯的一个例子,也可以在其它任意的硬件中进行上述游戏处理。例如,也可以在个人计算机、平板终端、智能手机、互联网上的服务器等任意的信息处理系统中执行上述游戏处理。另外,上述游戏处理也可以由多个装置分散执行。
另外,上述实施方式及其变形例所涉及的结构能够在不相互矛盾的情况下任意地进行组合。另外,上述只不过是本发明的例示,除上述以外,也可以施加各种改良、变形。
附图标记说明
1:游戏系统;2:主体装置;3:左控制器;4:右控制器;32、52:类比摇杆;81:处理器;70:虚拟对象;71:虚拟对象的像;78:粘接对象。

Claims (23)

1.一种信息处理系统,具备:
配置单元,其将能够在游戏空间内移动且能够彼此粘接的多个虚拟对象配置于所述游戏空间;
选择单元,其用于通过用户的选择操作来选择配置于所述游戏空间的多个虚拟对象中的第一对象;
粘接对象生成单元,其生成示出通过所述选择操作所选择的所述第一对象上的位置和所述多个虚拟对象中的第二对象上的位置的粘接对象;以及
粘接单元,其根据用户的粘接指示来将所述第一对象与所述第二对象在所述粘接对象所示出的所述第一对象上的所述位置和所述第二对象上的所述位置处粘接,
其中,所述粘接对象生成单元根据在进行所述粘接指示之前在所述游戏空间内所述所选择的所述第一对象进行了移动或发生了姿势变化,来使所述粘接对象所示出的所述第一对象上的所述位置和所述第二对象上的所述位置变化。
2.根据权利要求1所述的信息处理系统,其中,
还具备控制单元,在所述第一对象移动的情况下,所述控制单元进行所述第一对象与所述第二对象的碰撞判定,在所述第一对象与所述第二对象发生了碰撞的情况下,所述控制单元控制所述第一对象和所述第二对象中的至少任一方的移动。
3.根据权利要求1或2所述的信息处理系统,其中,
还具备投影单元,所述投影单元生成将所述第一对象投影到所述第二对象的表面所得到的投影像。
4.根据权利要求3所述的信息处理系统,其中,
所述投影单元生成将所选择的所述第一对象在第一方向上进行投影所得到的第一投影像、以及将所选择的所述第一对象在与所述第一方向正交的第二方向上进行投影所得到的第二投影像。
5.根据权利要求3或4所述的信息处理系统,其中,
还具备影子生成单元,所述影子生成单元基于所述游戏空间中设定的光源,来生成与所述投影像不同的、所述第一对象的影子。
6.根据权利要求3~5中的任一项所述的信息处理系统,其中,
所述所选择的所述第一对象以规定的颜色进行显示,
所述第一对象的投影像以所述规定的颜色进行显示。
7.根据权利要求1~6中的任一项所述的信息处理系统,其中,
在所述虚拟对象设定相比于其它部分而言易于粘接的优先粘接部。
8.根据权利要求7所述的信息处理系统,其中,
在所述第一对象的所述优先粘接部和所述第二对象的所述优先粘接部满足第一条件的情况下,所述粘接对象生成单元生成示出所述第一对象的所述优先粘接部和所述第二对象的所述优先粘接部的所述粘接对象,
在所述第一对象的所述优先粘接部和所述第二对象的所述优先粘接部不满足所述第一条件的情况下,所述粘接对象生成单元生成示出满足第二条件的、所述第一对象上的位置和所述第二对象上的位置的所述粘接对象。
9.根据权利要求7所述的信息处理系统,其中,
在所述第一对象的所述优先粘接部和所述第二对象的所述优先粘接部满足第一条件的情况下,所述粘接对象生成单元生成示出所述第一对象的所述优先粘接部和所述第二对象的所述优先粘接部的所述粘接对象,
在所述第一对象和所述第二对象中的至少一方没有被设定所述优先粘接部的情况下,所述粘接对象生成单元生成示出满足第二条件的、所述第一对象上的位置和所述第二对象上的位置的所述粘接对象。
10.根据权利要求7~9中的任一项所述的信息处理系统,其中,
所述粘接单元在将所述第一对象与所述第二对象在所述第一对象的所述优先粘接部和所述第二对象的所述优先粘接部处粘接的情况下,使用基于各优先粘接部的规定的方向来调整所述第一对象和所述第二对象中的至少任一方的姿势后将所述第一对象与所述第二对象粘接。
11.根据权利要求10所述的信息处理系统,其中,
所述粘接单元在将所述第一对象与所述第二对象在所述第一对象的所述优先粘接部和所述第二对象的所述优先粘接部处粘接的情况下,以使各优先粘接部的法线方向平行的方式将所述第一对象与所述第二对象粘接。
12.根据权利要求10或11所述的信息处理系统,其中,
所述粘接单元在将所述第一对象与所述第二对象在所述第一对象的所述优先粘接部和所述第二对象的所述优先粘接部处粘接的情况下,以使在所述第一对象的所述优先粘接部处设定的切线方向与在所述第二对象的所述优先粘接部处设定的切线方向之间为预先决定的角度的方式将所述第一对象与所述第二对象粘接。
13.根据权利要求1~12中的任一项所述的信息处理系统,其中,
所述粘接对象是将所述第一对象上的所述位置与所述第二对象上的所述位置连结的对象。
14.根据权利要求1~13中的任一项所述的信息处理系统,其中,
所述选择单元在所述第一对象与所述第二对象被粘接起来的状态下选择所述第一对象和所述第二对象中的任一方,
所述粘接对象生成单元生成示出所选择的所述任一方的虚拟对象上的位置和所述多个虚拟对象中的第三对象上的位置的所述粘接对象,
所述粘接单元根据用户的粘接指示来将所选择的所述任一方的虚拟对象与所述第三对象在所述粘接对象所示出的所述任一方的虚拟对象上的所述位置和所述第三对象上的所述位置处粘接。
15.根据权利要求1~14中的任一项所述的信息处理系统,其中,
显示将通过所述粘接单元粘接起来的所述第一对象与所述第二对象的粘接位置覆盖的覆盖对象。
16.根据权利要求15所述的信息处理系统,其中,
在通过所述粘接单元将所述第一对象与所述第二对象在所述粘接对象所示出的所述位置处粘接之后,所述粘接对象作为所述覆盖对象残留在所述位置。
17.根据权利要求1~14中的任一项所述的信息处理系统,其中,
在通过所述粘接单元将所述第一对象与所述第二对象在所述粘接对象所示出的所述位置处粘接之后,所述粘接对象残留在包含该位置的规定范围内。
18.根据权利要求1~17中的任一项所述的信息处理系统,其中,
所述粘接单元在将所述第一对象与所述第二对象粘接的情况下,使所述第一对象和所述第二对象以相互接近的方式移动,来将所述第一对象与所述第二对象粘接。
19.根据权利要求18所述的信息处理系统,其中,
对所述多个虚拟对象中的各个虚拟对象设定了重量,
所述粘接单元使所述第一对象和所述第二对象以较轻一方的对象的移动距离比较重一方的对象的移动距离长的方式移动。
20.根据权利要求1~19中的任一项所述的信息处理系统,其中,
所述粘接单元根据所述粘接指示来生成将多个所述虚拟对象粘接而得到的合体对象,
所述信息处理系统还具备:
脱离单元,其使包含多个所述虚拟对象的合体对象中的至少任一个虚拟对象脱离;
合体对象信息计算单元,其基于构成所述合体对象的多个所述虚拟对象来计算与所述合体对象有关的合体对象信息,并存储该合体对象信息;以及
动作控制单元,其基于所述合体对象信息来控制所述合体对象的动作,
每当通过所述粘接单元粘接所述虚拟对象时,所述合体对象信息计算单元计算并存储所述合体对象信息,每当通过所述脱离单元使所述虚拟对象从所述合体对象脱离时,所述合体对象信息计算单元计算并存储所述合体对象信息。
21.一种信息处理程序,是在信息处理装置的计算机中执行的信息处理程序,所述信息处理程序使所述计算机作为以下单元发挥功能:
配置单元,其将能够在游戏空间内移动且能够彼此粘接的多个虚拟对象配置于所述游戏空间;
选择单元,其用于通过用户的选择操作来选择配置于所述游戏空间的多个虚拟对象中的第一对象;
粘接对象生成单元,其生成示出通过所述选择操作所选择的所述第一对象上的位置和所述多个虚拟对象中的第二对象上的位置的粘接对象;以及
粘接单元,其根据用户的粘接指示来将所述第一对象与所述第二对象在所述粘接对象所示出的所述第一对象上的所述位置和所述第二对象上的所述位置处粘接,
其中,所述粘接对象生成单元根据在进行所述粘接指示之前在所述游戏空间内所选择的所述第一对象进行了移动或发生了姿势变化,来使所述粘接对象所示出的所述第一对象上的所述位置和所述第二对象上的所述位置变化。
22.一种信息处理方法,是在信息处理系统中执行的信息处理方法,包括以下步骤:
配置步骤,将能够在游戏空间内移动且能够彼此粘接的多个虚拟对象配置于所述游戏空间;
选择步骤,通过用户的选择操作来选择配置于所述游戏空间的多个虚拟对象中的第一对象;
粘接对象生成步骤,生成示出通过所述选择操作所选择的所述第一对象上的位置和所述多个虚拟对象中的第二对象上的位置的粘接对象;以及
粘接步骤,根据用户的粘接指示来将所述第一对象与所述第二对象在所述粘接对象所示出的所述第一对象上的所述位置和所述第二对象上的所述位置处粘接,
其中,在所述粘接对象生成步骤中,根据在进行所述粘接指示之前在所述游戏空间内所述第一对象进行了移动或发生了姿势变化,来使所述粘接对象所示出的所述第一对象上的所述位置和所述第二对象上的所述位置变化。
23.一种信息处理装置,具备:
配置单元,其将能够在游戏空间内移动且能够彼此粘接的多个虚拟对象配置于所述游戏空间;
选择单元,其用于通过用户的选择操作来选择配置于所述游戏空间的多个虚拟对象中的第一对象;
粘接对象生成单元,其生成示出通过所述选择操作所选择的所述第一对象上的位置和所述多个虚拟对象中的第二对象上的位置的粘接对象;以及
粘接单元,其根据用户的粘接指示来将所述第一对象与所述第二对象在所述粘接对象所示出的所述第一对象上的所述位置和所述第二对象上的所述位置处粘接,
其中,所述粘接对象生成单元根据在进行所述粘接指示之前在所述游戏空间内所述所选择的所述第一对象进行了移动或发生了姿势变化,来使所述粘接对象所示出的所述第一对象上的所述位置和所述第二对象上的所述位置变化。
CN202280008714.XA 2022-03-03 2022-03-03 信息处理系统、信息处理程序、信息处理方法以及信息处理装置 Pending CN117015425A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/009226 WO2023157320A1 (ja) 2022-03-03 2022-03-03 情報処理システム、情報処理プログラム、情報処理方法、および情報処理装置

Publications (1)

Publication Number Publication Date
CN117015425A true CN117015425A (zh) 2023-11-07

Family

ID=87578255

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280008714.XA Pending CN117015425A (zh) 2022-03-03 2022-03-03 信息处理系统、信息处理程序、信息处理方法以及信息处理装置

Country Status (4)

Country Link
US (1) US20230277941A1 (zh)
JP (2) JP7397237B1 (zh)
CN (1) CN117015425A (zh)
WO (1) WO2023157320A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA3212973A1 (en) * 2021-03-10 2022-09-15 Bungie, Inc. Markup free ledge grab

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004104811A2 (en) 2003-05-20 2004-12-02 Lego A/S Method and system for manipulating a digital representation of a three-dimensional object
KR20140099415A (ko) * 2013-02-02 2014-08-12 태양광발전도로(주) 게임 등의 프로그램에서 가상적으로 작업 및 조립한 작품의 실물 제작 및 전달 방법, 프로그램 및 이를 수행하는 모바일 기기, 실물 제작을 실행하는 원격지 운영 서버
JP2019155062A (ja) * 2018-10-17 2019-09-19 株式会社コナミデジタルエンタテインメント 表示システム、表示制御装置、及びプログラム

Also Published As

Publication number Publication date
JPWO2023157320A1 (zh) 2023-08-24
US20230277941A1 (en) 2023-09-07
JP7397237B1 (ja) 2023-12-12
JP2024015493A (ja) 2024-02-02
WO2023157320A1 (ja) 2023-08-24

Similar Documents

Publication Publication Date Title
US9789391B2 (en) Method and apparatus for using a common pointing input to control 3D viewpoint and object targeting
US8797264B2 (en) Image processing apparatus and storage medium storing image processing program
US10510189B2 (en) Information processing apparatus, information processing system, and information processing method
US20190022528A1 (en) Game system, game device, storage medium storing game program, and game process method
US7831064B2 (en) Position calculation apparatus, storage medium storing position calculation program, game apparatus, and storage medium storing game program
US8308563B2 (en) Game system and storage medium having game program stored thereon
JP6877893B2 (ja) ゲーム装置、ゲームシステム、ゲームプログラム、および振り入力判定方法
US20120119992A1 (en) Input system, information processing apparatus, information processing program, and specified position calculation method
EP3417918B1 (en) Information processing system, case, and cardboard member
US20120214591A1 (en) Game device, storage medium storing game program, game system, and game process method
US10688395B2 (en) Storage medium having stored therein information processing program, information processing apparatus, information processing system, and information processing method
WO2012051351A2 (en) System for enabling a handheld device to capture video of an interactive application
KR20070025950A (ko) 게임 시스템 및 게임 프로그램을 저장한 저장 매체
JP5756299B2 (ja) ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法
US8430751B2 (en) Computer-readable storage medium having game program stored therein and game apparatus
JP2024015493A (ja) 情報処理システム、情報処理プログラム、情報処理方法、および情報処理装置
EP3482806B1 (en) Operation input system, operation input device, and game system
CN117295545A (zh) 信息处理系统、信息处理程序、信息处理方法以及信息处理装置
US20230277936A1 (en) Information processing system, non-transitory computer-readable storage medium having stored therein information processing program, information processing method, and information processing apparatus
WO2023157323A1 (ja) ゲームプログラム、ゲーム装置、ゲームシステム、およびゲーム処理方法
JP2020155139A (ja) プログラム、情報処理装置、及び情報処理方法
JP2003325966A (ja) キャラクタ移動速度制御プログラム
JP2018118129A (ja) 情報処理システム、ケース、および厚紙部材

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination