CN101188025B - 一种高效实时的群体动画系统 - Google Patents

一种高效实时的群体动画系统 Download PDF

Info

Publication number
CN101188025B
CN101188025B CN2007100506653A CN200710050665A CN101188025B CN 101188025 B CN101188025 B CN 101188025B CN 2007100506653 A CN2007100506653 A CN 2007100506653A CN 200710050665 A CN200710050665 A CN 200710050665A CN 101188025 B CN101188025 B CN 101188025B
Authority
CN
China
Prior art keywords
level
grouping
information
individual
behavior
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.)
Expired - Fee Related
Application number
CN2007100506653A
Other languages
English (en)
Other versions
CN101188025A (zh
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.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
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 University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN2007100506653A priority Critical patent/CN101188025B/zh
Publication of CN101188025A publication Critical patent/CN101188025A/zh
Application granted granted Critical
Publication of CN101188025B publication Critical patent/CN101188025B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

本发明公开了一种群体动画的高效实时框架,用于实现通用的群体行为系统,该框架包括群体层次、分组层次、个体层次3个部分,外部指令发送至群体层次后通过网格划分传输至对分组层次,在通过分组层次感知虚拟环境的变化,并结合获得的指令对个体层次进行控制,个体层次在依照分组层次的控制信息和环境信息控制做出相应的细节层次动作。本发明的群体动画的高效实时框架解决方案,可以有效降低资源消耗、提升渲染和计算的实时性能。

Description

一种高效实时的群体动画系统
技术领域
本发明设计一般的图像数据处理和产生,具体的说是用计算机软件技术创作生动逼真的人群或动物群体动画,创作过程中,不仅要求群体的运动协调一致,而且要求各角色分别具有独特的运动轨迹。
目前群体动画的研究工作主要集中在对群体角色进行建模。
在建模的过程中会涉及下述一些术语:
网格划分:将群体动画的场景空间划分为一组连续的二维或三维的格子(立方体格或者矩形格),划分的目的是为了将个体检索、个体间交互、碰撞检测等行为限定在较小的区域内,从而减轻程序的计算负荷。
LOD:细节层次。通过计算削减模型的三角形数和顶点数,为不同观察层次的模型设置不同分辨率的图片,从而减少渲染时计算负荷。
群体:本发明中的群体是指由多个单位根据其共有属性构成的一个实体,是群体动画中最高层次的逻辑单位,比如一群人、鸟群、兽群等。群体的共性代表了对其下每个单位的约束能力,也即群体当中包含每个个体的通有状态、一般规则、特定约束等等。
分组:本发明中的分组是指群体与个体之间的一个层次,每个群体中包含多个分组,每个分组除了具备群体的共性外,还应具备自己独有一套规则、目的和约束。如一支军队下面的每一支小队可以看作一个分组。
个体:本发明中的个体是指运动对象不可再分的最小单位。个体作为上层逻辑的实施者、交互行为的产生者、渲染动作的触发者,是群体动画中最下的一层逻辑单位。
群体动画广泛应用于建筑规划、电影动漫、游戏以及火灾等灾难现场模拟与辅助指挥中。通过群体行为的真实模拟,可以辅助电影动漫产生真实宏大场景效果;可以在公共场所(商场、体育场馆、娱乐场所等)规划设计中模拟验证安全通道等设计的合理性;可以为智能交通管理(红绿灯有效设置,主干路口的交通流量管理)提供模拟环境;也可以为灾难现场指挥提供指导和训练平台。目前这个方面的研究得到了广泛的重视,对群体动画的研究和创作工具产生了极大的需求,同时一套完整高效的群体动画设计与制作工具也将促进该方面数字媒体产业的发展。
群体行为(Group Behaviors)涉及的是在虚拟环境中自动地仿真群体的运动(Locomotion)、感知(Perception)以及作出相应反应(Response)的各种行为。
群体由大量个体(individual)按照某些规则(Rules)有机组成;群体有共性,个体有个性;对群体当中的个体特征(个性)加上一组约束(或者规则)之后构成群体的整体特征(共性)。
一般来说,要构建起仿真群体行为的框架(Framework),主要考虑的问题是:
第一步:形成个体的个性特征,如随机速度向量。第二步:对个体特征加约束(Rules),从而形成群体特征,如初始速度(Initial Velocity)、方向(Direction),预定义轨迹(Trajectory)、预定义时间点(Time Step)(形成群体图案有用)、邻居(Neighbors)速度匹配、群体中心约束(COM-center-of-mass)等等。第三步:让群体自动对外部环境产生交互,如向目的地(Destination)行进、日常行为/习惯(Habit/对环境的适应,包括冷暖明暗、列队稍息等等)、避开障碍物(Obstacle)、逃避掠食者(Avoid Predator)或威胁、路径选择(Optional Path);
游戏(主要是策略类游戏)中的群体还特别提到敌军遭遇(Enemy Encounter)、资源采集(Resource Gathering)、群体攻击(Group Attack)、紧急情况(Emergency)等等。
现有技术中对群体动画的研究工作的成果有:
中国发明专利申请,公开号CN1889044A,2007年1月3日公开的《一种虚拟人群运动仿真框架》。
该发明公开了一种虚拟人群运动仿真框架,包括:1)总控台部分,由显示控制、渲染管理、环境管理、群体管理、时钟更新控制等子部分构成,提供程序正常运行所需要的各种配置和各部分调度管理;2)环境表示部分,组织管理群体所处环境的环境信息,支持对环境信息的查询和更新;3)个体模拟部分,由行为生成层、行为执行层和物理实现层三个子部分组成,提供对群体中单个个体运动行为的模拟,通过对群体中每个个体的行为模拟的有机结合,来实现群体的运动仿真。
该发明的虚拟人群运动仿真框架由三部分组成,包括:总控台部分、环境表示部分和个体模拟部分。
总控台部分进行程序运行的总体管理和控制,提供程序运行所需要的各种配置,进行各部分的调度管理,监控程序是否按照设定的方式正常运行。总控台部分主要由显示控制、渲染管理、环境管理、群体管理、时钟更新控制五个子部分构成。其中,显示控制子部分用于确定显示角度,提供仿真结果的显示模式,它相当于一个照相机,负责根据需要调整程序仿真结果在屏幕上的显示方式。渲染管理子部分负责在程序运行时根据显示模式对物体和个体的渲染管理,确定需要渲染显示的物体并调用相应的渲染函数进行渲染。环境管理子部分负责读取环境图纸和物体模型,加载环境,生成环境信息库,将环境中物体信息数据加入信息库,在程序结束时销毁信息库。群体管理子部分负责在程序需要时生成群体,并进行初始化,以及在程序运行结束时销毁群体。时钟更新控制子部分巧相当于系统时钟,主要负责根据需要的方式进行系统时间的设定和更新,并根据时间进行环境和个体位置的更新。
环境表示部分主要负责环境的表示和设定,组织和管理环境信息,支持对于环境信息的查询和更新。环境表示部分由物体模型子部分和环境信息库子部分组成。其中物体模型子部分使用包含三维信息的几何模型和包含使用信息的功能模型来进行表示,几何模型可用3DMax等建模软件获得,功能模型可以通过功能函数进行实现。环境信息库子部分由总控台的环境管理子部分在环境加载后创建,通过一定的数据结构和操作方式支持信息的查询和更新,比如现在经常采用的二分树、八叉树等结构。
个体模拟部分主要负责个体运动仿真的实现,并通过对个体运动仿真的有机结合,实现群体运动的仿真。它具体包括行为生成层、行为执行层和物理实现层三个子部分。
其中,行为生成层将根据个体所处的情况查询获取环境信息,并基于获得的环境信息生成个体需要采取的行为,交行为执行层去执行。目前,可以用来进行行为生成的方法有很多,比如基于if-then规则的方法、基于概率的方法、基于状态自动机的方法或是基于物理学的方法等。行为生成层还可以做进一步的划分,包括:感知单元、行为规划及监督执行单元、个体状态管理单元。所述的感知单元根据需要的感知方式,从环境信息库中查询并提取所需的信息,将需要的信息传递给行为规划及监督执行单元。所述的行为规划及监督执行单元根据感知单元感知得来的信息数据,以及如果需要,同时考虑个体状态管理单元提供的个体状态信息,给出需要执行的单个或多个行为以及执行所需的信息,并监控动作的执行,直到执行动作结束或者新情况出现。所述的个体状态管理单元在需要的情况下,为行为规划及监督执行单元提供个体物理层次和精神层次的状态信息,同时,根据执行情况对本身状态进行调整。
行为执行层主要负责执行行为生成层生成的行为,同时考虑各种行为的轻重紧急程度对同时并发的多种行为予以融合,最终得到一个合理的综合执行结果。目前,普遍采用的行为融合法有矢量运算法、平均融合法、权重融合法、公式计算法和概率投票法等多种。
所述的行为执行层犯还可以进一步划分为单个行为执行单元、多执行结果融合单元和运动特性单元。所述的单个行为执行单元执行行为规划及监督执行单元2给出的需要同时执行的单个或多个行为,给出单个或多个执行结果。所述的多执行结果融合单元将多个单个行为执行的执行结果按照一定的融合规则和方法进行融合,得出最终的行为执行结果。所述的运动特性单元在需要时将运动特性提供给单个行为执行单元和多执行结果融合单元,以生成有特性的行为执行结果。所述的运动特性包括最大速度、反应时间等,可根据个体状态进行调整。
物理实现层则主要负责在具有特定运动属性的物理模型上将行为执行层得出的综合行为执行结果进行实现。其中的物理模型可以简单的视为质点,也可以为人或动物,还可以为机器人或自行车等可驱动运动的器物工具。通过对这些物体模型运动方式的建模,可以驱动不同的物理模型生成仿真运动。在每次运动更新后物理实现层还负责更新个体在信息库中的信息。
在华中科技大学控制科学与工程系的陈世明、方华京的论文《大规模移动智能群体的建模及联合行为分析》也提出了一种基于个体局部信息的移动智能群体的模型,该论文发表于2005年12月《控制与决策》的第20卷第12期,文章编号:100120920(2005)1221392205。
该模型的建立仅依靠相互可检测到的个体之间的局部位置信息。在此模型基础上,研究了移动智能群体联合趋向目标行为的稳定性问题。仿真实验表明,基于局部位置信息的群体模型能够实现群体的联合跟踪全局目标的行为,同时对群体的规模具有较强的可扩展性。
该方案对移动智能群体的定义如下:
细菌、蜜蜂和鸟类经常以群体行动的方式搜索食物;一组机器人协作完成目标搜索和收集的任务;合作型网络化无人驾驶自动车群的技术研究也随着军事和商业的需求而发展起来,这些群体都可称之为“移动智能群体”。从移动智能群体模型的设计要求上来讲,一方面需要有保持群体集聚在一起的能力,另一方面也要有对环境所施加的刺激(例如群体所要跟踪的目标物的位置信息)作出适当反应的能力。
该方案对移动智能群体的模型设计如下:
定义1:S={1,2,…,m}表示所有个体的集合。个体i的视线范围内面向目标位置xgoal的正半区域内的所有个体的集合定义为:
A i + = { j : - &pi; 2 < [ &angle; ( x i , x j ) -
&angle; ( x i , x goal ) ] < &pi; 2 , j &Element; A i }
其中, A i = { j : | | x i - x j | | &le; &epsiv; , &ForAll; j &Element; s } ; ∠(xi,xj)表示向量xi与xj之间的夹角;ε为个体所能检测到的最远空间距离,采用2-范数 | | x i - x j | | = ( x i - x j ) T ( x i - x j ) 表示n维空间中任意两个坐标点之间的距离,即由两点形成的向量的长度。
定义2:个体i的排斥域定义为
R i = { j : &rho; < | | x i - x j | | < r , &ForAll; j &Element; s , j &NotEqual; i } 其中:r为个体间的斥力作用函数的最大距离,ρ为个体间的最小安全距离
定义3:最小外接圆,设ξ为最小外接圆半径。
定义4:个体可观测链。
在满足上述假设的情况下,本文提出一种以连续2离散时间表示的基于个体局部信息的移动智能群体模型,其中:每个个体i以离散时间表示的形式在每一采样时刻计算Ai +区域内所有个体的最小外接圆圆心位置,在两个采样时间间隔内则保持该最小外接圆圆心位置不变;以连续时间表示的形式设计每个个体的位置控制方程,该控制方程为:
x i ( t ) = g a ( x goal , x io + &OverBar; ( t ) ) +
g r ( min j &Element; R i | | x i ( t ) - x j ( t ) | | ) , i=1,2,…,m.
引力/斥力函数的具体形式为
ga(xgoal,xio+(t))=
1a(xi(t)-xio+(t))-
σ2Aσ(xi(t)-xgoal),a>0,Aσ>0;
&sigma; 1 = 1 , | | x i ( t ) - x goal | | > e , 0 , | | x i ( t ) - x goal | | &le; e ,
&sigma; 2 = 1 , | | x i ( t ) - x goal | | &le; e , 0 , | | x i ( t ) - x goal | | > e ,
g r ( x i ( t ) - x j ( t ) ) =
b ( r - | | x i ( t ) - x j ( t ) | | ) ( | | x i ( t ) - x j ( t ) | | - &rho; ) ( x i ( t ) - x j ( t ) ) , b > 0 , &rho; < | | x i ( t ) - x j ( t ) | | < r , 0 , r &le; | | x i ( t ) - x j ( t ) | | ; &infin; , x i ( t ) - x j ( t ) | | &le; &rho; ,
论文中讨论了不能直接观测到全局目标位置的个体(即“跟踪者”)如何保持群体集聚的行为,并跟随群体中比其更接近于全局目标位置的个体(即“领导者”)最终收敛到全局目标位置的问题。
在电影制作方面,PDI和PIXAR致力于将群体动画效果搬上电影屏幕。在电影“蚁哥正传”中建立了两个系统,用这两个系统实现电影中成千上万蚁群的活动场面。其中,群体模拟系统(Crowd Simulator System)实现上千个蚂蚁的运动模型,综合考虑个体受力的情况(比如障碍物、目标等),以及过程控制规则(比如羊群行为,有限状态机等)。混合系统(Blending System)的目地则是简化设计者的工作,避免他们为群体中的一个个个体去创建和指派个体动作。在另一个电影“Bugs Life”中,4466种不同的个体动作被创建,用来描述228种不同的行为,比如紧张,好奇,大笑,欢呼,鼓掌,奔跑,行走,惊慌等等。Pixar的团队开发了一个系统,允许基本动作以一种可变的灵活的方式被接合在一起形成新的行为。
实时群体模拟非常困难,因为大规模群体所表现出来的行为是极其复杂的。一个群体模型不仅包含个体的动作和环境的约束,同时还要解决人与人之间的交互问题。更进一步,模型还必须能够反映出动态变化环境中的智能路径规划,如个体不断地调整他们的路径以响应拥塞及其它动态信息。前面很多研究都是基于代理的模式,也就是说,每个个体的计算都是分别进行的。基于代理的方法使用较多的原因是:1)真实人群都是每个个体各自分别的计算自身的决定,这样的模型可以捕获每个人的特殊状态:可见性、与其它步行者的距离等局部因素;2)不同的个体可以设置不同的模拟参数,从而产生不同的复杂行为。然而基于代理的模型也存在缺陷:不容易产生出一贯真实的行为准则;对每个个体的全局路径计算很快就变为资源杀手,特别是在实时环境中。结果,大多数代理模型都将局部碰撞规避从全局路径规划中分离出来,而这两种不同目的的计算不可避免的要产生冲突。此外,局部路径规划通常会导致“近视”,从而产生不真实的人群行为。这些问题会在拥塞严重和环境变化快速的情况下将迅速恶化。
在现有条件限制中实现实时群体模拟困难在于:大规模群体所表现出来的行为是极其复杂的。目前各类系统根据特殊的应用给出了不同的群体规则和局部约束,但也存在着明显的缺陷:
1)不容易产生出一贯真实的行为准则;
2)对每个个体的全局路径计算很快就变为资源杀手,特别是在实时环境中。
结果,大多数模型都将局部碰撞规避从全局路径规划中分离出来,而这两种不同目的的计算不可避免的要产生冲突。此外,局部路径规划通常会导致“近视”,从而产生不真实的群体行为。这些问题会在拥塞严重和环境变化快速的情况下将迅速恶化。
发明内容
本发明的目的在于:针对现有技术的不足,在现有的分层次群体动画模型基础上,建立实时计算模块,包括创建大规模个体对象数组、网格划分、LOD等,形成一套群体动画的高效实时系统。
分析在实时群体模拟过程中计算负荷的三大主要来源:
渲染:对任何实时的计算机动画应用程序,一个重要的开销是对透视图中的二维光学、纹理、场景的渲染;
思维:第二个重要的计算开销是每个自主个体进行思考的时间,自主个体的“脑”是一段程序,基于当前的环境决定采取何种行为。虽然这些计算相对简单,但必须对每个个体均执行,于是代价要乘以个体的数目,复杂度为阶n,记为o(n);
位置查询:第三个也是潜在的最大的计算源,是个体之间进行位置查询的开销。群体行为模拟(或任何空间可分的多智能体系统)能被视为一个交互的粒子系统每个粒子需要与所有其它粒子进行交互,只是为了决定谁是它们真正想与之交互的对象,于是交互的粒子具有渐进于o(n2)的复杂度,个体数目加倍会四倍化用来执行位置查寻的时间。无论每次位置查询能完成的多快,随着数日的增加,花在位置查询上的开销最终会远远超过所有其它的计算开销。
本发明的技术方案如下:
一种高效实时的群体动画系统,包括以下3个部分:
群体层次1:包括外部控制模块13、群体信息12、网格划分模块11。外部控制模块13接收/转译模块对外部控制命令,进行处理并转化为统一格式的控制数据输入群体信息12,群体信息由网格划分模块11处理后分发到分组层次2中的分组信息处理21;
分组层次2:一个相对小规模的群体,具有共同的意图和协调的行为动作,包括分组信息处理21、分组感知模块22、事件处理模块23、分组意图级处理24、分组低层行为25和网格划分模块26,分组信息处理21接收由网格划分模块11分发过来的信息,分组感知模块22是获得分组主动跟环境交互的信息,事件处理模块23是分组被动获得信息,并可能作为条件之一触发预定的行为规则,分组信息处理21、分组感知模块22、事件处理模块23分别输出信息至分组意图级处理24,分组意图级处理24根据输入信息并产生出分组低层行为25提交给网格划分模块26,然后提交给个体层次3;
个体层次3:系统所处理的最小粒度单元,也就是单独的智能成员本身,包括从虚拟环境中获得信息的个体感知模块31、接收由分组层次2分发过来的信息的个体意图级行为32、个体低层行为33、动作处理34和细节层次图形渲染35,个体意图级行为32接收到分组层次2分发过来的个体在长时间段内要实施的行为信息和个体感知模块31传输来的虚拟环境信息,个体低层行为33接收到个体意图级行为意图信息后产生个体具体的动作处理34,最后,进入细节层次图形渲染35进行个体行为的绘制。
特别地,LOD图形渲染35模块应用到LOD技术为不同细节级别的要求设置不同分辨率的显示,既满足了细节逼真程度又减少了渲染资源消耗。
本发明的有益效果:框架内形成大规模个体对象数组,记录与更新个体在网格区域中的位置信息,该数组结构简单、计算快速;通过在群体内进行网格划分,将运动群体的大区域划分为多个网格小区域,碰撞检测、个体之间的交互和个体与环境的交互等动作发生在较小的区域内,从而避免了大范围的全局检索,将计算复杂度从o(n2)降低到了o(kn);在LOD图形渲染中,个体图形渲染模块采用LOD技术为个体动作创建多分辨率图形,进一步减低系统渲染时开销。综上所述,群体动画的高效实时框架,不仅能为针对不同应用的群体行为系统提供一个通用的可编程框架,并且该框架的结构具有满足计算性能高效实时、易于实现、良好的可扩展性的要求。
附图说明
图1是本发明的群体动画实时框架的框图。
图2是本发明空间群体的网格划分示意图。
图3是本发明的平面、曲面群体的网格划分示意图。
图4是本发明的单格群体的网格划分示意图。
具体实施方式
下面结合附图和实施例对本发明进一步说明。
一套群体动画高效实时的框架,如图1,框架中的网格划分模块11、26与LOD图形渲染35模块是特别为计算的高效与实时而设计的。
如图1所示,在群体粒度上分成了3个等级:群体层次1、分组层次2、个体层次3。群体层次1通常指我们3D虚拟场景里面所“生活”的智能成员全体。分组层次2是我们系统所处理的基本单元,基本上可以理解为一个相对小规模的群体,具有共同的意图和协调的行为动作。个体层次3就是本系统所处理的最小粒度单元,也就是单独的智能成员本身。
群体层次1:包括外部控制模块13、群体信息12、网格划分模块11。外部控制模块13接收/转译模块对外部控制命令,进行处理并转化为统一格式的控制数据输入群体信息12,群体信息由网格划分模块11处理后分发到分组层次2中的分组信息处理21。在群体层次1,主要是由接收/转译模块对外部控制命令(可以是通过网络发送过来的命令或者图形界面操作)进行处理并转化为统一格式的控制数据,控制数据经由网格划分模块11处理后分发到相关的各个分组。大规模个体对象数组适用于在群体信息12与分组信息21之间保存和分发的,可以实现计算的高效与实时。
分组层次2:一个相对小规模的群体,具有共同的意图和协调的行为动作,包括分组信息处理21、分组感知模块22、事件处理模块23、分组意图级处理24、分组低层行为25和网格划分模块26,分组信息处理21接收由网格划分模块11分发过来的信息,分组感知模块22是获得分组主动跟环境交互的信息,事件处理模块23是分组被动获得信息,并可能作为条件之一触发预定的行为规则,分组信息处理21、分组感知模块22、事件处理模块23分别输出信息至分组意图级处理24,分组意图级处理24根据输入信息并产生出分组低层行为25提交给网格划分模块26,然后提交给个体层次3。在分组层次2,分组信息处理21接收由网格划分模块11分发过来的信息。分组信息处理的产生过程基本上就是预定义信息和外部信息整理分发,比如哪些信息针对哪些分组都会进行分流。分组信息模块21、分组感知模块22(是分组主动跟环境交互获得信息)、事件处理模块23(是分组被动获得信息,并可能作为条件之一触发某些行为规则)三个模块发送过来的信息,根据高级行为的决策(如优先级)决定出恰当的高级行为传送到分组意图级处理24,并产生出分组低层行为25提交给网格划分模块26。
个体层次3:系统所处理的最小粒度单元,也就是单独的智能成员本身,包括从虚拟环境中获得信息的个体感知模块31、接收由分组层次2分发过来的信息的个体意图级行为32、个体低层行为33、动作处理34和细节层次图形渲染35,个体意图级行为32接收到分组层次2分发过来的个体在长时间段内要实施的行为信息和个体感知模块31传输来的虚拟环境信息,个体低层行为33接收到个体意图级行为意图信息后产生个体具体的动作处理34,最后,进入细节层次图形渲染35进行个体行为的绘制。在个体层次3,个体意图级行为32由分组分发过来的信息和个体感知模块31从虚拟环境中获得的信息共同构成。个体意图级行为32指个体在较长一段时间要实施的行为(比如从A地到B地行进),个体低层行为33模块接收到该意图信息后产生个体具体的动作处理34(比如当前往θ方向以v速度行进L步长)。最后,进入LOD图形渲染35(也就是实质的图形显示模块)进行个体行为的绘制。特别地,LOD图形渲染35应用到LOD技术为不同细节级别的要求设置不同分辨率的显示,既满足了细节逼真程度又减少了渲染资源消耗。
实施例1
在将上述框架应用于一个具体的三维虚拟现实方案:运动的群体呈空间分布,此时,框架中网格划分模块26将群体空间划分为一组“立方体区域”的集合,如图2所示。为方便起见,大区域的边及形成小立方体面的切分平面都与全局轴对齐。运动一开始,个体基于其初始位W被分布进对应的“立方体区域”内。个体在运动时定期(不是每帧地)检查自己是否进入了新“立方体区域”,是则更新其区域号码。大区域用来包围所感兴趣的地区。沿每条轴的网格划分数目要选的适中,即能对个体的定位更准确(划分数多),又要减少个体运动时箱子切换时的额外开销(划分数少),一个10*10*10网格,1000个区域通常是个比较好的选择。
实施例2
将上述框架应用于平面、曲面群体动画实时方案的实施过程:在很多情况下,运动的群体是分布在一个平面或者曲面上的,如街道上的行人、山谷中的军队、草原上的兽群等等。此时,框架中网格划分模块26将群体空间划分为一组“矩形区域”的集合,如图3所示。运动一开始,个体基于其初始位W被分布进对应的“矩形区域”内。个体在运动时定期(不是每帧地)检查自己是否进入了新“矩形区域”,是则更新其区域号码。
实施例3
如图4所示,上述框架应用于平面、曲面群体动画实时方案的情况中的矩形数目取为1*1的时候,本方案演变成为单网格的群体动画,也即通常的不划分网格、以天空盒作为群体动画区域的方案,如图4。此方案适合在群体数量不大、渲染资源不多的情况下操作。
上述三种情况针对的应用领域不同,总的来说,实施例3是对实施例2的简化;实施例4是对实施例3的简化。简化的优点是减轻了运算复杂度,缺点是降低了效率。所以,从情况1到情况3简化的过程中,编程实现愈发简单、效率愈发降低、渲染资源消耗愈发增大。

Claims (2)

1.一种高效实时的群体动画系统,包括以下3个部分:
群体层次(1):包括外部控制模块(13)、群体信息(12)、网格划分模块(11),外部控制模块(13)接收/转译模块对外部控制命令,进行处理并转化为统一格式的控制数据输入群体信息(12),群体信息由网格划分模块(11)处理后分发到分组层次(2)中的分组信息处理(21);
分组层次(2):一个相对小规模的群体,具有共同的意图和协调的行为动作,包括分组信息处理(21)、分组感知模块(22)、事件处理模块(23)、分组意图级处理(24)、分组低层行为(25)和网格划分模块(26),分组信息处理(21)接收由网格划分模块(11)分发过来的信息,分组感知模块(22)是获得分组主动跟环境交互的信息,事件处理模块(23)是分组被动获得信息,并可能作为条件之一触发预定的行为规则,分组信息处理(21)、分组感知模块(22)、事件处理模块(23)分别输出信息至分组意图级处理(24),分组意图级处理(24)根据输入信息并产生出分组低层行为(25)提交给网格划分模块(26),然后提交给个体层次(3);
个体层次(3):系统所处理的最小粒度单元,也就是单独的智能成员本身,包括从虚拟环境中获得信息的个体感知模块(31)、接收由分组层次(2)分发过来的信息的个体意图级行为(32)、个体低层行为(33)、动作处理(34)和细节层次图形渲染(35),个体意图级行为(32)接收到分组层次(2)分发过来的个体在长时间段内要实施的行为信息和个体感知模块(31)传输来的虚拟环境信息,个体低层行为(33)接收到个体意图级行为意图信息后产生个体具体的动作处理(34),最后,进入细节层次图形渲染(35)进行个体行为的绘制。
2.根据权利要求1所述的高效实时的群体动画系统,其特征在于,细节层次图形渲染(35)应用到细节层次技术为不同细节级别的要求设置不同分辨率的显示。
CN2007100506653A 2007-11-30 2007-11-30 一种高效实时的群体动画系统 Expired - Fee Related CN101188025B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2007100506653A CN101188025B (zh) 2007-11-30 2007-11-30 一种高效实时的群体动画系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2007100506653A CN101188025B (zh) 2007-11-30 2007-11-30 一种高效实时的群体动画系统

Publications (2)

Publication Number Publication Date
CN101188025A CN101188025A (zh) 2008-05-28
CN101188025B true CN101188025B (zh) 2010-08-11

Family

ID=39480397

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007100506653A Expired - Fee Related CN101188025B (zh) 2007-11-30 2007-11-30 一种高效实时的群体动画系统

Country Status (1)

Country Link
CN (1) CN101188025B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101847269B (zh) * 2009-03-27 2011-11-09 上海科泰世纪科技有限公司 多图层动画渲染系统及方法
CN101540060B (zh) * 2009-04-09 2011-11-09 清华大学 一种基于物理仿真的气流模拟方法及其系统
CN101615301B (zh) * 2009-07-29 2013-03-27 腾讯科技(深圳)有限公司 计算机虚拟环境中目标的路径控制方法和系统
CN101702243B (zh) * 2009-11-03 2013-06-19 中国科学院计算技术研究所 一种基于关键队形约束的群体运动实现方法及系统
CN101877142B (zh) * 2009-11-18 2012-05-30 胡晓峰 一种基于多尺度层次细节的仿真方法
CN102208111B (zh) * 2011-06-09 2013-03-06 河海大学 群体动画运动控制系统及方法
CN102768766A (zh) * 2012-06-11 2012-11-07 天津大学 一种三维群体动画建模
CN105512194A (zh) * 2015-11-26 2016-04-20 北京像素软件科技股份有限公司 一种游戏场景的管理方法和装置
CN105635806B (zh) * 2015-12-28 2018-12-28 北京像素软件科技股份有限公司 群体运动场景的渲染方法
US10664741B2 (en) * 2016-01-14 2020-05-26 Samsung Electronics Co., Ltd. Selecting a behavior of a virtual agent
CN107679062B (zh) * 2017-07-31 2021-02-05 石河子大学 一种推理群体意图的方法及电子设备
CN108830916A (zh) * 2018-06-27 2018-11-16 河南职业技术学院 一种包含大量角色的三维动画制作方法及系统
CN112569598A (zh) * 2020-12-22 2021-03-30 上海幻电信息科技有限公司 目标对象控制方法及装置
CN117119127B (zh) * 2023-10-24 2024-01-26 北京世冠金洋科技发展有限公司 一种集群控制系统及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1277392A (zh) * 1999-06-11 2000-12-20 迫斯娱乐股份有限公司 三维动画制作系统和方法
CN1734504A (zh) * 2004-08-11 2006-02-15 上海景海软件科技有限公司 一种三维物体造型方法和计算机动画和游戏角色制作方法
CN1896985A (zh) * 2005-07-15 2007-01-17 英业达股份有限公司 计算机游戏开发系统以及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1277392A (zh) * 1999-06-11 2000-12-20 迫斯娱乐股份有限公司 三维动画制作系统和方法
CN1734504A (zh) * 2004-08-11 2006-02-15 上海景海软件科技有限公司 一种三维物体造型方法和计算机动画和游戏角色制作方法
CN1896985A (zh) * 2005-07-15 2007-01-17 英业达股份有限公司 计算机游戏开发系统以及方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JP特开2001-344615A 2001.12.14
刘丰庄等.基于多自主智能体的群体动画创作.计算机研究与发展Vol.41 No.1.2004,Vol.41 No.1104-110. *
董刚等.基于智能体的群体动画创作方法的研究与实现.计算机仿真Vol.22 No.12.2005,Vol.22 No.12143-150. *

Also Published As

Publication number Publication date
CN101188025A (zh) 2008-05-28

Similar Documents

Publication Publication Date Title
CN101188025B (zh) 一种高效实时的群体动画系统
CN108491598B (zh) 一种基于路径规划的人群疏散仿真方法及系统
CN101901012B (zh) 一种分布式的多机器人同步蜂拥控制方法
Lima et al. A cellular automata ant memory model of foraging in a swarm of robots
CN101216951A (zh) 虚拟场景中的智能群体运动模拟方法
Jain et al. MVO-based path planning scheme with coordination of UAVs in 3-D environment
Sun et al. Crowd navigation in an unknown and dynamic environment based on deep reinforcement learning
CN104317297A (zh) 一种未知环境下机器人避障方法
CN102693550A (zh) 虚拟场景中的智能群体运动模拟方法
Hu et al. HG-SMA: hierarchical guided slime mould algorithm for smooth path planning
Ciou et al. Composite reinforcement learning for social robot navigation
Liu et al. An information perception-based emotion contagion model for fire evacuation
CN109885082A (zh) 一种基于任务驱动下的无人机航迹规划的方法
Sidiropoulos et al. Crowd simulation for crisis management: The outcomes of the last decade
Nasir et al. A survey on simulating real-time crowd simulation
Rabiaa et al. Toward a hybrid approach for crowd simulation
Chen et al. Controlling the movement of crowds in computer graphics by using the mechanism of particle swarm optimization
Torrens Exploring behavioral regions in agents’ mental maps
Wang et al. Object behavior simulation based on behavior tree and multi-agent model
Nishikawa et al. Coordination control design of heterogeneous swarm robots by means of task-oriented optimization
Kontovourkis Design of circulation diagrams in macro-scale level based on human movement behavior modeling
Xiaoxi et al. Path planning based on grid-potential fields
Solar et al. High performance individual-oriented simulation using complex models
Araújo et al. Cooperative observation of malicious targets in a 3d urban traffic environment using uavs
Tang et al. Crowd Intelligent Grouping Collaboration Evacuation via Multi-agent Reinforcement Learning

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100811

Termination date: 20191130

CF01 Termination of patent right due to non-payment of annual fee