利用方向预测的低时延模拟装置及方法、用于该方法的计算机程序与流程

文档序号:12310920阅读:298来源:国知局
各实施例涉及模拟装置及方法、和用于该方法的计算机程序,更为详细地涉及修正通过传感器测定的信号和显示图像之间的时差而降低时延(latency)的模拟技法。
背景技术
::最近,随着如智能手机(smartphone)等移动设备的处理能力的飞速发展,在移动设备上执行计算机模拟的案例也在增加。经模拟的对象经过渲染过程转换为图像,并在游戏等应用程序中使用,或者显示在移动设备上而构成与移动设备操作系统相关的用户界面(userinterface)的一部分。作为移动设备上的一种模拟类型,已知通过反映对象体的动作来对虚拟对象即模型(model)进行模拟,并将模拟结果渲染(rendering)为图像。作为模拟基础的对象体的动作可通过一个以上的传感器来测定,并且根据传感器数据对模型进行模拟,从而仿真对象体的动作,或者与对象提的动作相应地使模型发生动作。然而,由于传感器的测定周期与经模拟的模型被渲染为图像的周期不一致(asynchronous),会产生时延(latency)。即,与移动设备的传感器数据相比较,在通过渲染显示的图像中产生时间延迟。因这种时间延迟,用户在观看图像时感到不自然,或与图像交互作用时感到不舒服。技术实现要素:根据本发明的一方面能够提供通过修正由传感器测定的信号和显示的图像之间的时间延迟来降低时延(latency)的模拟装置及方法、用于该方法的计算机程序。一实施例的模拟装置可包括:传感器部,被构造为利用一个以上的传感器,获得对象体的动作信息;方向计算部,被构造为利用所述动作信息,计算所述对象体的方向信息;及模拟部,被构造为基于从所述方向计算部接收的所述方向信息,对物理对象进行模拟并且渲染(rendering)为图像。所述方向计算部可包括:时间延迟修正部,被构造为利用所述动作信息的获取时刻与渲染时刻之间的时差来修正所述方向信息。所述传感器部可被构造为按周期获得所述动作信息,所述模拟部可被构造为按周期渲染所述图像。此时,所述时间延迟修正部可被构造为计算所述动作信息的从各获取时刻到后续渲染时刻的时间延迟,并且利用所述时间延迟来修正所述方向信息。此外,所述时间延迟修正部可被构造为基于所述动作信息计算对象体的角速度,并将所述角速度及所述时间延迟的乘值加上所述方向信息,从而修正所述方向信息。所述方向计算部可被构造为进一步利用渲染时刻与所述图像在显示部上显示的时刻之间的时差,修正所述对象体的方向信息。所述模拟部可被构造为按周期渲染所述图像,所述显示部可被构造为按周期显示所述图像。此时,所述时间延迟修正部可被构造为进一步利用从各渲染时刻到后续的图像显示时刻的时间延迟,修正所述方向信息。一实施例的模拟方法可包括步骤:模拟装置利用一个以上的传感器,获得对象体的动作信息;所述模拟装置利用所述动作信息,计算所述对象体的方向信息;所述模拟装置利用所述动作信息的获取时刻与渲染时刻之间的时差,修正所述方向信息;及所述模拟装置利用修正后的方向信息,对物理对象进行模拟并且渲染为图像。可按周期执行获得所述动作信息的步骤及渲染所述图像的步骤。此时,修正所述方向信息的步骤可包括:计算从所述动作信息的各获取时刻到后续的渲染时刻的时间延迟;及利用所述时间延迟修正所述方向信息。此外,利用所述时间延迟修正所述方向信息的步骤可包括:基于所述动作信息计算对象体的角速度;及将所述角速度及所述时间延迟的乘值加上所述方向信息。所述模拟方法可进一步包括在显示部上显示所述图像的步骤。此时,修正所述方向信息的步骤可进一步利用渲染时刻与所述图像的显示时刻之间的时差来执行。此外,可按周期执行渲染所述图像的步骤及在显示部上显示所述图像的步骤,修正所述方向信息的步骤还可进一步利用从各渲染时刻到后续的图像显示时刻的时间延迟来执行。一实施例的计算机程序可为存储于介质中的程序,其与硬件结合而执行所述模拟方法。本发明的一方面的模拟装置及方法考虑到传感器的测定周期和图像渲染(rendering)周期之间的时间延迟及/或从图像渲染到在实际画面上显示图像的时间延迟,利用预测的方向信息来执行模拟。其结果,能够降低对象体的动作与显示图像之间的时延(latency),并且获得自然的模拟结果。附图说明图1为一实施例的模拟装置的方框示意图。图2为用于说明在一实施例的模拟方法中动作信息的获取时刻、渲染时刻及图像显示时刻之间的时差的概念图。具体实施方式下面,参照附图详细说明本发明的实施例。实施例的模拟装置被构造为根据对象体的动作对模型(model)进行模拟,并将经过模拟的模型渲染(rendering)为图像。在本说明书中,对象体表示需要测定动作的装置或人。例如,对象体可为用户携带的智能手机(smartphone)等移动设备、或者如头戴式装置(headmounteddevice;hmd)等用户可穿戴的穿戴(wearable)式设备。或者,用户可直接成为对象体,通过附着在用户身上或者设置于远程位置上的一个以上的传感器来测定用户动作。本说明书中的模型表示与需要通过反映对象体的动作来模拟的虚拟物理对象对应的数据。例如,模型也可为包括一个以上的顶点(vertex)来定义的网格(mesh)。也可以测定对象体的动作,并运算物理方程式,以便将由动作产生的相互作用反映到模型各部分的位置及速度,从而根据对象体的动作对模型进行模拟。例如,以下情况可属于该方法:当用户使移动设备倾斜时,使显示在移动设备上的图像也同样地倾斜;或者当用户在传感器前面活动时,使仿真用户的角色与用户同样地移动等。图1为一实施例的模拟装置的方框示意图。参照图1,模拟装置可包括传感器部10、方向计算部20及模拟部30。在一实施例中模拟装置还可进一步包括显示部40。实施例的模拟装置可全部为硬件,或全部为软件,或部分为硬件、部分为软件。例如,模拟装置可为具备数据处理能力的硬件及用于驱动该硬件的操作软件的总称。在本说明书中,“部(unit)”、“系统”及“装置”等术语意指硬件及由该硬件驱动的软件的组合。例如,硬件可为包括cpu或其他处理器(processor)的数据处理设备。此外,通过硬件驱动的软件可指执行中的进程、对象(object)、执行文件(executable)、执行线程(threadofexecution)及程序(program)等。构成实施例的模拟装置的各部并不刻意指物理上分开的独立的结构要素。在图1中,传感器部10、方向计算部20、模拟部30及显示部40表示为彼此分开的独立的方框,但根据实施例,传感器部10、方向计算部20、模拟部30及显示部40中的部分或全部可在同一个装置内集成化。此外,方向计算部20及模拟部30只是根据实现这些部的计算装置中其所执行的操作按功能区分装置的,并不一定表示彼此分开的独立的元件。例如,实施例的模拟装置也可由在如智能手机的移动设备上集成化的形式实现,从而将移动设备作为对象体来测定移动设备的动作,并根据所测定的动作对规定的模型进行模拟,并将模拟出的图像显示在移动设备的画面上。但这只是示意性的,在其他实施例中,模拟装置也可由传感器部10、方向计算部20、模拟部30及显示部40中的一个以上与其他部物理上区分的分离的装置来实现。例如,传感器部10、方向计算部20、模拟部30及显示部40也可为在分布式计算环境下可彼此通信连接的元件。传感器部10为用于获得对象体的动作信息的部分。动作信息为用于计算对象体的方向信息的基础,传感器部10可包括一种或多种类型的被构造为获得可用于计算方向信息的传感器数据的传感器。例如在一实施例中,传感器部10可由加速度计(accelerometer)110、磁强计(magnetometer)120及陀螺仪(gyroscope)130来构成,但并不限于此。通过传感器部10获得的动作信息的形式可根据传感器的类型而不同。例如,当传感器为加速度计110时获得重力矢量形式的动作信息,当传感器为磁强计120时获得相对于磁北的方向信息形式的动作信息,当传感器为陀螺仪130时获得角速度形式的动作信息。方向计算部20为用于接收通过传感器部10测定的动作信息,并且基于该动作信息计算对象体的方向信息的部分。在一实施例中,方向计算部20可包括信号合并部210及时间延迟修正部220。信号合并部210用于合并通过传感器部10的各传感器测定的动作信息,并且基于这些动作信息计算方向信息。在一实施例中,信号合并部210首先合并加速度计110及磁强计120的动作信息计算第一方向信息,并且利用陀螺仪130的动作信息计算第二方向信息。此时,第一方向信息依赖于磁方向及加速度,因此方向偏移(drift)较小但包括杂讯,第二方向信息虽然几乎没有杂讯但包括方向偏移。信号合并部210可由以下数学式1合并第一方向信息及第二方向信息,并计算合并后的方向信息。[数学式1]θfusion=αθg+(1-α)θam在上述数学式1中θam表示第一方向信息,θg表示第二方向信息,θfusion表示合并后的方向信息。此外,在上述数学式1中α及(1-α)分别为第一方向信息及第二方向信息的加权值,α的取值可确定为适当值,以使合并后的方向信息θfusion符合实际对象体的方向。通过如上计算方向信息,能够获得方向偏移及杂讯均减少的方向信息。时间延迟修正部220为考虑到在方向信息的计算中使用的动作信息的获取时刻与渲染时刻之间的时差,修正在信号合并部210中计算出的对象体的方向信息的部分。此外,在一实施例中,时间延迟修正部220也可进一步利用渲染时刻与图像在显示部40上实际显示的时刻之间的时差来修正方向信息。为此,时间延迟修正部220可从模拟部30及/或显示部40分别获得该模拟部30及/或显示部40的操作周期信息。对于时间延迟修正部220的具体操作,参照图2在后面进行说明。模拟部30为用于从方向计算部20接收对象体的方向信息,并基于该方向信息对模型进行模拟的部分。模拟部30接收的方向信息是指由信号合并部210初步计算,并由时间延迟修正部220修正后的方向信息。模拟部30反映对象体的方向信息,并按时间阶段更新模型各部分的位置及速度,从而根据对象体的动作对模型进行模拟。此外,模拟部30将经过模拟的模型渲染为用于在画面上显示的图像。可由以下方式进行模拟:使模型仿真对象体的动作,或者根据对象体的动作而改变模型或使模型与对象体交互作用。但并不限于特定方式的模拟。此外,对二维或三维模型利用给定的条件来执行计算机模拟运算的过程为本发明所属
技术领域
:的技术人员公知的技术,因此为了明确本发明的要点,在本说明书中省略该过程的详细说明。显示部40为用于显示通过模拟部30渲染的图像以使用户能够观看的部分。例如,显示部40可包括液晶显示装置(liquidcrystaldisplay)或主动式有机发光二极管(active-matrixorganiclight-emittingdiode;amoled)等,但并不局限于此。当本实施例的模拟装置在如智能手机的移动设备内集成化来实现时,显示部40也可由作为移动设备的显示装置且输入装置的触摸屏的形式实现。图2为用于说明在一实施例的模拟方法中动作信息的获取时刻、渲染时刻及图像显示时刻之间的时差的概念图。参照图1及图2,传感器部10按周期测定动作信息,每隔第一周期(t1)轮到各测定时刻。此外,模拟部30也按周期进行渲染过程,每隔第二周期(t2)轮到各渲染时刻。第一周期(t1)和第二周期(t2)可以相同或不同,但因周期或开始时刻的不同,各测定时刻和各渲染时刻不一致(asynchronous)。其结果,在各测定时刻和与此相邻的各渲染时刻之间将产生时间延迟(dt1)。当第一周期(t1)与第二周期(t2)彼此不同时,时间延迟(dt1)在每个时刻不同。方向计算部20的时间延迟修正部220利用从方向信息的计算中使用的动作信息的获取时刻到后续渲染时刻的时间延迟(dt1)来修正对象体的方向信息。即,通过时间延迟修正部220修正的方向信息相当于事先预测的渲染时刻的方向信息。时间延迟修正部220将预测的方向信息传送给模拟部30,以使模拟部30根据该信息进行模拟及渲染。具体地,若以图2的时刻501及502为例,则时间延迟修正部220计算从当前方向信息的计算中使用的动作信息的测定时刻501到最接近该测定时刻501的后续渲染时刻502的时间延迟503。接下来,时间延迟修正部220根据该测定时刻501获得的动作信息计算对象体的角速度,并对计算出的角速度乘以时间延迟503后加上方向信息。即,当将被时间延迟修正部220修正之前的方向信息为θcurrent,将根据最新测定的动作信息得到的对象体的角速度为ω,将最新动作信息的测定时刻和与该测定时刻相邻的后续的渲染时刻之间的时间延迟为dt1时,通过时间延迟修正部220修正的方向信息θnew可由以下数学式2计算。[数学式2]θnew=θcurrent+ωxdt1在一实施例中,时间延迟修正部220也可进一步考虑渲染时刻与图像在显示部40上实际显示的时刻之间的时间延迟来修正方向信息。即,如此修正的方向信息相当于事先预测的对象体在实际图像显示时刻的方向。参照图2,显示部40按周期进行图像显示,每隔第三周期(t3)轮到各图像显示时刻。此时,各渲染时刻与显示部40的各图像显示时刻之间将产生时间延迟(dt2),时间延迟修正部220可在前述的传感器测定时刻与渲染时刻之间的时间延迟(dt1)的基础上进一步考虑时间延迟(dt2)来修正方向信息。此时,通过时间延迟修正部220修正的方向信息θnew可由以下数学式3计算。[数学式3]θnew=θcurrent+ωx(dt1+dt2)即,以上说明的实施例的模拟装置及方法被构造为考虑传感器的测定周期和图像渲染周期之间的时间延迟来预测渲染时刻的对象体的方向信息,或者在此基础上进一步考虑渲染周期和图像显示周期之间的时间延迟来预测图像显示时刻的对象体的方向信息。利用如此预测的方向信息来进行模拟及渲染,具有如下的优点:能够降低因传感器的测定周期与模拟或显示周期不一致而产生的时延(latency),并且根据对象体的动作获得自然的模拟结果。以上说明的实施例的模拟装置的操作至少其中一部分可由计算机程序来实现,并被存储在计算机可读存储介质中。所述计算机可读存储介质包括用于存储计算机可读数据的所有类型的记录装置。计算机可读存储介质的示例中有rom、ram、cd-rom、磁带、软盘及光学数据存储装置等,此外还包括以载波(carrierwave)(例如,网络传输)形式实现的存储介质。此外,计算机可读存储介质还可分散到由网络连接的计算机系统中,并以分散方式存储并运行计算机可读代码。此外,本实施例所属
技术领域
:的技术人员应能容易理解用于实现本实施例的功能程序、代码及代码段(segment)。以上描述的本发明,虽然参照附图所示的实施例进行了说明,但这些实施例只不过是示意性的,本发明所属
技术领域
:的技术人员应能理解基于上述内容可以进行多种变形及实施例的变形。但是,这种变形应被视为在本发明的技术保护范围内。因此,本发明的真正的技术保护范围应以所附的权利要求书的技术思想来界定。产业上的可利用性实施例涉及模拟装置及方法、用于该方法的计算机程序。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1