CN118012407A - 一种数据处理方法、装置、设备以及存储介质 - Google Patents
一种数据处理方法、装置、设备以及存储介质 Download PDFInfo
- Publication number
- CN118012407A CN118012407A CN202410011141.7A CN202410011141A CN118012407A CN 118012407 A CN118012407 A CN 118012407A CN 202410011141 A CN202410011141 A CN 202410011141A CN 118012407 A CN118012407 A CN 118012407A
- Authority
- CN
- China
- Prior art keywords
- simulation
- control
- interface
- code program
- code
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title abstract description 23
- 238000004088 simulation Methods 0.000 claims abstract description 296
- 230000000007 visual effect Effects 0.000 claims abstract description 43
- 238000009877 rendering Methods 0.000 claims abstract description 40
- 230000004044 response Effects 0.000 claims abstract description 35
- 238000012545 processing Methods 0.000 claims description 73
- 238000000034 method Methods 0.000 claims description 62
- 230000015654 memory Effects 0.000 claims description 24
- 230000009466 transformation Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 description 25
- 230000006870 function Effects 0.000 description 24
- 238000010586 diagram Methods 0.000 description 22
- 230000033001 locomotion Effects 0.000 description 16
- 238000013461 design Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 10
- 238000011161 development Methods 0.000 description 9
- 238000004590 computer program Methods 0.000 description 8
- 230000003993 interaction Effects 0.000 description 7
- 125000004122 cyclic group Chemical group 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000013178 mathematical model Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000012905 input function Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000005293 physical law Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请实施例提供了一种数据处理方法,用于快速识别代码程序中的问题。可应用于计算机领域。方案包括:展示可视化编程界面,可视化编程界面包含代码块展示区域、第一控件以及第二控件,代码块展示区域包括生成代码程序的至少一个代码块;响应于对第一控件的第一操作,启动代码程序的调试程序;响应于对第二控件的第二操作,运行代码程序并显示第一界面,第一界面包括初始仿真画面和调试控件展示区域;响应于对至少一个调试控件的第三操作,在第一界面播放仿真画面集合,仿真画面集合中各个仿真画面的渲染时间晚于初始仿真画面的渲染时间。
Description
技术领域
本申请涉及计算机领域,尤其涉及一种数据处理方法、装置、设备以及存储介质。
背景技术
随着编程技术的不断发展和进步,目前市面上出现了一些图形化编程工具,其核心就在于把代码形式的文本编程语言封装到一个代码块中,通过在可视化的代码编辑界面中对相应功能的代码块进行组合拼接,即可简单快速的生成代码程序。
在生成代码程序之后,通常还可以运行该代码程序,并通过物理引擎和渲染引擎对该代码程序进行画面生成,从而直观的展示代码程序的效果。整个运行过程是按照用户编写的代码程序一直运行,用户通过观察代码程序对应的仿真画面去判断自己编写的程序是否符合预期或者是否存在缺陷。例如,用户编写了一个控制机器人跳跃的程序,预期机器人会在空中停留一段时间后再落地。但在实际运行中,机器人跳跃的高度和停留时间与预期不符。按照目前的方案,用户可能需要多次运行程序或者重复播放某一个片段,通过观察机器人的轨迹和输出结果来尝试找出问题所在,这可能需要花费大量时间和精力
因此,目前亟需一种可以快速识别代码程序的问题的方案。
发明内容
本申请实施例提供了一种数据处理方法,用于快速识别代码程序中的问题。
有鉴于此,本申请一方面提供一种数据处理方法,包括:展示可视化编程界面,该可视化编程界面包含代码块展示区域、第一控件以及第二控件,该代码块展示区域包括生成代码程序的至少一个代码块;响应于对该第一控件的第一操作,启动该代码程序的调试程序;响应于对该第二控件的第二操作,运行该代码程序并显示第一界面,该第一界面包括初始仿真画面和调试控件展示区域,该调试控件展示区域包括至少一个调试控件,该至少一个调试控件用于指示基于该代码程序渲染得到仿真画面的播放形式,该初始仿真画面是基于该代码程序在第一个时间步长内渲染得到,该调试控件展示区域是基于该调试程序渲染得到;响应于对该至少一个调试控件的第三操作,在该第一界面播放仿真画面集合,该仿真画面集合中各个仿真画面的渲染时间晚于该初始仿真画面的渲染时间。
本申请另一方面提供一种数据处理装置,包括:显示模块,用于展示可视化编程界面,该可视化编程界面包含代码块展示区域、第一控件以及第二控件,该代码块展示区域包括生成代码程序的至少一个代码块;
处理模块,用于响应于对该第一控件的第一操作,启动该代码程序的调试程序;
该处理模块,用于响应于对该第二控件的第二操作,运行该代码程序;
该显示模块,用于响应于对该第二控件的第二操作,显示第一界面,该第一界面包括初始仿真画面和调试控件展示区域,该调试控件展示区域包括至少一个调试控件,该至少一个调试控件用于指示基于该代码程序渲染得到仿真画面的播放形式,该初始仿真画面是基于该代码程序在第一个时间步长内渲染得到,该调试控件展示区域是基于该调试程序渲染得到;响应于对该至少一个调试控件的第三操作,在该第一界面播放仿真画面集合,该仿真画面集合中各个仿真画面的渲染时间晚于该初始仿真画面的渲染时间。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,该处理模块,用于响应于对该第二控件的第二操作,禁用物理引擎自动模拟,并启用确定性物理设置;
基于该至少一个代码块转换生成该代码程序;
运行该代码程序,并按照时间步长进行物理模拟;
基于该物理模拟的结果对该代码程序中的虚拟对象进行渲染得到该初始仿真画面;
该显示模块,用于在该第一界面展示该初始仿真画面。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,该第一界面还包括该虚拟对象的参数信息,该参数信息包括该虚拟对象当前的位置信息、速度信息以及旋转角度。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,该处理模块,用于创建用户界面画布,其中,该用户界面画布的渲染模式用于指示该调试控件展示区域显示在该第一界面;
在该用户界面画面创建该调试控件展示区域的至少一个调试控件对应的按钮对象;
基于该调试程序为该按钮对象设置点击事件得到该至少一个调试控件,该点击事件用于指示该至少一个调式控件被选中后的执行事件。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,该至少一个调试控件包括第一调试控件、第二调试控件、第三调试控件和第四调试控件;
其中,该第一调试控件的执行事件为在该代码程序处于暂停运行状态时,恢复运行该代码程序;
该第二调试控件的执行事件为在该代码程序处于运行状态时,暂停运行该代码程序;
该第三调试控件的执行事件为在该代码程序处于暂停运行状态时,逐帧执行该代码程序的物理模拟;
该第四调试控件的执行事件为在该代码程序处于暂停运行状态时,逐秒执行该代码程序的物理模拟。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,该处理模块,用于响应于对该第一调试控件的操作,恢复运行该代码程序;
运行该代码程序,在第二个时间步长内进行物理模拟;
基于该物理模拟的结果对该代码程序中的虚拟对象进行渲染得到第一仿真画面;
该显示模块,用于在该第一界面展示该第一仿真画面;
该处理模块,用于运行该代码程序,在第三个时间步长内进行物理模拟;
基于该物理模拟的结果对该代码程序中的虚拟对象进行渲染得到第二仿真画面;
该显示模块,用于在该第一界面展示该第二仿真画面;
依此循环,直至暂停运行该代码程序,并在该第一界面展示第三仿真画面,其中,该第一仿真画面、该第二仿真画面和该第三仿真画面包含于该仿真画面集合,该第三仿真画面为该仿真画面集合中在时间顺序上的最后一个仿真画面。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,该处理模块,用于响应于对该第二调试控件的操作,暂停运行该代码程序;
该显示模块,用于在该第一界面展示该第三仿真画面。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,该处理模块,用于响应于对该第三调试控件的操作,恢复运行该代码程序;运行该代码程序,在第二个时间步长内进行物理模拟;基于该物理模拟的结果对该代码程序中的虚拟对象进行渲染得到第一仿真画面;
该显示模块,用于在该第一界面展示该第一仿真画面,其中,该第一仿真画面作为该仿真画面集合。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,该处理模块,用于响应于对该第四调试控件的操作,恢复运行该代码程序;运行该代码程序,在第二个时间步长内进行物理模拟;基于该物理模拟的结果对该代码程序中的虚拟对象进行渲染得到第一仿真画面;
该显示模块,用于在该第一界面展示该第一仿真画面;
该处理模块,用于运行该代码程序,在第三个时间步长内进行物理模拟;基于该物理模拟的结果对该代码程序中的虚拟对象进行渲染得到第二仿真画面;
该显示模块,用于在该第一界面展示该第二仿真画面;依此循环,直到运行时长达到一秒时暂停运行该代码程序并在该第一界面展示第四仿真画面,其中,该第一仿真画面、该第二仿真画面和该第四仿真画面包含于该仿真画面集合,该第四仿真画面为该运行时长内的最后一个仿真画面。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,该第一调试控件对应的执行事件以Pause()接口进行调用;
该第二调试控件对应的执行事件以Resume()接口进行调用;
该第三调试控件对应的执行事件以StepOneFrame()接口进行调用;
该第四调试控件对应的执行事件以StepOneSecond()接口进行调用。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,该第一调试控件和该第二调试控件合并对应一个按钮对象,其对应执行事件以TogglePauseOrResume()进行调用;
该第三调试控件对应的执行事件以StepOneFrame()接口进行调用;
该第四调试控件对应的执行事件以StepOneSecond()接口进行调用。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,该代码程序运行过程中设置目标变量,该目标变量用于指示代码程序是否处理暂停状态。
在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,该目标变量为布尔变量。
本申请另一方面提供一种计算机设备,包括:存储器、处理器以及总线系统;
其中,存储器用于存储程序;
处理器用于执行存储器中的程序,处理器用于根据程序代码中的指令执行上述各方面的方法;
总线系统用于连接存储器以及处理器,以使存储器以及处理器进行通信。
本申请的另一方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面的方法。
本申请的另一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方面所提供的方法。
从以上技术方案可以看出,本申请实施例具有以下优点:对代码程序的物理模拟增加调试程序,使得代码程序通过物理模拟渲染出来的仿真画面可以根据调试控件进行相应的调试,避免仿真画面只能一次性播放完成,从而实现对仿真画面进行针对性播放,进而快速识别代码程序中的问题。
附图说明
图1为本申请实施例中数据处理方法的一个应用架构示意图;
图2为本申请实施例中数据处理方法的一个实施例示意图;
图3a为本申请实施例中可视化编程界面的一个界面示意图;
图3b为本申请实施例中可视化编程界面的另一个界面示意图;
图3c为本申请实施例中代码程序运行时显示虚拟环境、虚拟对象的仿真画面以及调试控件显示区域的一个界面示意图;
图3d为本申请实施例中代码程序运行时调试控件显示区域的一个界面示意图;
图3e为本申请实施例中代码程序运行时调试控件显示区域的另一个界面示意图;
图3f为本申请实施例中代码程序运行时显示虚拟环境、虚拟对象的仿真画面以及调试控件显示区域的另一个界面示意图;
图3g为本申请实施例中代码程序运行时显示虚拟环境、虚拟对象的仿真画面以及调试控件显示区域的另一个界面示意图;
图3h为本申请实施例中代码程序运行时显示虚拟环境、虚拟对象的仿真画面以及调试控件显示区域的另一个界面示意图;
图3i为本申请实施例中代码程序运行时显示虚拟环境、虚拟对象的仿真画面以及调试控件显示区域的另一个界面示意图;
图3j为本申请实施例中代码程序运行时显示虚拟环境、虚拟对象的仿真画面以及调试控件显示区域的另一个界面示意图;
图4为代码程序的一个运行原理示意图;
图5为本申请实施例中代码程序的运行时序图;
图6为本申请实施例中代码程序的运行时序图;
图7为本申请实施例中数据处理装置的一个实施例示意图;
图8为本申请实施例中数据处理装置的另一个实施例示意图;
图9为本申请实施例中数据处理装置的另一个实施例示意图。
具体实施方式
本申请实施例提供了一种数据处理方法,用于快速识别代码程序中的问题。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“对应于”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例中,术语“模块”或“单元”是指有预定功能的计算机程序或计算机程序的一部分,并与其他相关部分一起工作以实现预定目标,并且可以通过使用软件、硬件(如处理电路或存储器)或其组合来全部或部分实现。同样的,一个处理器(或多个处理器或存储器)可以用来实现一个或多个模块或单元。此外,每个模块或单元都可以是包含该模块或单元功能的整体模块或单元的一部分。
随着编程技术的不断发展和进步,目前市面上兴起了一种blockly和scratch等图形化编程工具,其核心就在于把代码形式的文本编程语言封装到一个代码块中,通过在可视化的代码编辑界面中对相应功能的代码块进行组合拼接,即可简单快速的生成代码程序。在生成代码程序之后,通常还可以运行该代码程序,并通过物理引擎和渲染引擎对该代码程序进行画面生成,从而直观的展示代码程序的效果。整个运行过程是按照用户编写的代码程序一直运行,用户通过观察代码程序对应的仿真画面去判断自己编写的程序是否符合预期或者是否存在缺陷。例如,用户编写了一个控制机器人跳跃的程序,预期机器人会在空中停留一段时间后再落地。但在实际运行中,机器人跳跃的高度和停留时间与预期不符。按照目前的方案,用户可能需要多次运行程序或者重复播放某一个片段,通过观察机器人的轨迹和输出结果来尝试找出问题所在,这可能需要花费大量时间和精力。因此,目前亟需一种可以快速识别代码程序的问题的方案。
为了解决上述问题,本申请提供如下技术方案:展示可视化编程界面,该可视化编程界面包含代码块展示区域、第一控件以及第二控件,该代码块展示区域包括生成代码程序的至少一个代码块;响应于对该第一控件的第一操作,启动该代码程序的调试程序;响应于对该第二控件的第二操作,运行该代码程序并显示第一界面,该第一界面包括初始仿真画面和调试控件展示区域,该调试控件展示区域包括至少一个调试控件,该至少一个调试控件用于指示基于该代码程序渲染得到仿真画面的播放形式,该初始仿真画面是基于该代码程序在第一个时间步长内渲染得到,该调试控件展示区域是基于该调试程序渲染得到;响应于对该至少一个调试控件的第三操作,在该第一界面播放仿真画面集合,该仿真画面集合中各个仿真画面的渲染时间晚于该初始仿真画面的渲染时间。这样对代码程序的物理模拟增加调试程序,使得代码程序通过物理模拟渲染出来的仿真画面可以根据调试控件进行相应的调试,避免仿真画面只能一次性播放完成,从而实现对仿真画面进行针对性播放,进而快速识别代码程序中的问题。
为了方便理解,下面对本申请中的部分名词进行说明:
物理仿真平台:一种计算机软件或系统,它使用数学模型和算法来模拟现实世界中物体的运动和交互。这些平台通常提供一组工具和接口,使用户能够创建、编辑和运行物理模拟实验,以研究现实世界中的物理现象和规律,可应用于科学研究、教育培训等领域。
游戏引擎:用于创建高质量的游戏、交互式虚拟现实(VR)、增强现实(AR)和其他图形化应用程序。图形编程工具:是为应用程序添加可视代码编辑器的应用。通常可以使用卡合的图形块来表示代码概念,如变量,逻辑表达式,循环等。它使得用户可以不必关注语法细节就能直接按照编程原则进行编程。
虚拟环境:虚拟环境是应用程序在终端上运行时显示(或提供)的虚拟环境。该虚拟环境可以是对真实世界的仿真环境,也可以是半仿真半虚构的虚拟环境,还可以是纯虚构的虚拟环境。虚拟环境可以是二维虚拟环境、2.5维虚拟环境或者三维虚拟环境中的任意一种,本申请实施例对虚拟环境的维度不加以限定。例如,虚拟环境可以包括天空、陆地、海洋等,该陆地可以包括沙漠、城市等环境元素,用户可以控制虚拟对象在该虚拟环境中进行移动。
虚拟对象:是指在虚拟环境中的对象,该虚拟对象为虚构的用于模拟真实物体或生物的对象。例如,在虚拟环境中显示的人物、动物、植物、油桶、墙壁、石块、雪花等。该虚拟对象包括虚拟物体和虚拟角色,其中,虚拟物体为无生命属性的对象,例如,虚拟物体可以为虚拟建筑、虚拟载具、虚拟道具等。虚拟角色是指具有生命属性的对象,例如,虚拟对象可以为虚拟人物、虚拟动物等。
本申请实施例提供的一种数据处理方法、装置、设备及存储介质,快速识别代码程序中的问题。下面说明本申请实施例提供的电子设备的示例性应用,本申请实施例提供的电子设备可以实施为各种类型的用户终端,也可以实施为服务器。
电子设备通过运行本申请实施例提供的数据处理方法,快速识别代码程序中的问题
上述方案可以应用于诸多计算机编程领域,包括游戏开发或者教育领域下的动画场景开发。当利用本申请实施例提供的数据处理方法帮助用户进行游戏开发或者动画开发时,该方法可以实现成为独立的线上应用程序,安装在用户使用的计算机设备或者后台服务器中,方便用户使用该程序对进行动画数据处理。
在该场景下,用户在应用程序界面进行代码块编辑,计算机设备将各个代码块组合生成相应的代码程序,此时,该代码程序中可以用于表示虚拟对象在虚拟环境中的物理仿真模拟操作,在运行该代码程序时将会对该虚拟对象进行物理模拟,从而得到相应的物理模拟结果,再将物理模拟结果进行渲染生成仿真画面,并展示给用户。
一个示例性方案中,可以将该数据处理方法应用于游戏开发,比如,将对某一个游戏角色的操作通过代码块进行相应的编辑,从而得到该游戏角色的一段代码程序,然后在物理仿真平台运行该代码程序,得到该游戏角色的一段仿真画面,并进行展示。
当然,除了应用于上述场景外,本申请实施例提供方法还可以应用于其他需要动画开发或者物理仿真的场景,本申请实施例并不对具体的应用场景进行限定。
参见图1,图1是本申请实施例提供的数据处理方案的一个应用场景下的一个可选的架构示意图,为实现支撑一个数据处理方案,终端设备100通过网络200连接服务器300,服务器300连接数据库400,网络200可以是广域网或者局域网,又或者是二者的组合。其中用于实现数据处理方案的客户端部署于终端设备100上,其中,客户端可以通过浏览器的形式运行于终端设备100上,也可以通过独立的应用程序(application,APP)的形式运行于终端设备100上等,对于客户端的具体展现形式,此处不做限定。本申请涉及的服务器300可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备100可以是智能手机、平板电脑、笔记本电脑、掌上电脑、个人电脑、智能电视、智能手表、车载设备、可穿戴设备、智能语音交互设备、智能家电、飞行器等等,但并不局限于此。终端设备100以及服务器300可以通过有线或无线通信方式通过网络200进行直接或间接地连接,本申请在此不做限制。服务器300和终端设备100的数量也不做限制。本申请提供的方案可以由终端设备100独立完成,也可以由服务器300独立完成,还可以由终端设备100与服务器300配合完成,对此,本申请并不做具体限定。其中,数据库400,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、查询、更新、删除等操作。所谓“数据库”是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。数据库管理系统(Database Management System,DBMS)是为管理数据库而设计的电脑软件系统,一般具有存储、截取、安全保障、备份等基础功能。数据库管理系统可以依据它所支持的数据库模型来作分类,例如关系式、可扩展标记语言(Extensible Markup Language,XML);或依据所支持的计算机类型来作分类,例如服务器群集、移动电话;或依据所用查询语言来作分类,例如结构化查询语言(Structured Query Language,SQL)、XQuery;或依据性能冲量重点来作分类,例如最大规模、最高运行速度;亦或其他的分类方式。不论使用哪种分类方式,一些DBMS能够跨类别,例如,同时支持多种查询语言。在本申请中,数据库400可以用于存储代码程序,当然,代码程序的存储位置并不限于数据库,例如还可以存储于终端设备100、区块链或者服务器300的分布式文件系统中等。
可以理解的是,本申请所提供的数据处理方法可以由服务器300执行;相应地,数据处理装置可以设置于服务器300中。当然,本申请所提供的数据处理方法也可以由终端设备100执行;相应地,数据处理装置可以设置于终端设备100中。同样的,本申请所提供的数据处理方法也可以由终端设备100与服务器300共同执行;相应地,数据处理装置可以设置于终端设备100与服务器300中。本申请实施例对执行数据处理方法的设备形态不作任何限定。
在实际应用中,用户可以通过终端设备100访问web端图形化编程工具,并且通过终端设备100,从该web端图形化编程工具的可视化编程界面提供的可选代码块中选择代码块搭建代码块组合,从而得到一套代码程序。示例性的,用户可以使用终端设备100的鼠标,在图形化编程工具的可视化编程界面中的代码编辑区域内选择所需的代码块,并将所选择的代码块拖拽至图形化编程工具界面中的代码展示区域;用户通过多次上述操作可以从代码块编辑区域中选择多个代码块拖拽至代码块展示区域,服务器300将相应地根据被拖拽至代码块展示区域的多个代码块各自对应的拖拽顺序、或者各自对应的拖拽位置,构建多个代码块之间的关联关系,如此得到对应于一套代码程序的代码块组合。
可以理解的是,在本申请的具体实施方式中,涉及到代码程序以及调试程序等相关的数据,当本申请以上实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
结合上述介绍,下面以产品侧为描述方向,以应用平台为物理仿真平台为例,对本申请中数据处理方法进行介绍,请参阅图2,本申请实施例中数据处理方法的一个实施例包括:
201、展示可视化编程界面,该可视化编程界面包含代码块展示区域、第一控件以及第二控件,该代码块展示区域包括生成代码程序的至少一个代码块。
可选的,上述的代码块是通过对不同程序代码编写的程序内容进行打包处理而形成带有程序命令的编程模块。可以理解的是,本申请实施例中的代码块是对编程语言抽象化的图形化表示,具体是用来代替代码片段的块状结构。在使用的过程中,为了实现某一程序命令,可以通过点击或拖拽等选择操作,将选择出的代码块展示在可视化编程界面的代码块展示区域。
在一种实现方式中,可视化编程界面是用于提供可视化编程的显示界面。可视化编程是指不使用代码,只用点击或拖拽代码块就可以进行的编程方式,通过该代码块块创建的应用程序可以用于用户设备中,其可以是相对独立的应用程序(Application,APP),例如可以是在用户设备中运行的小游戏、小程序等。
可选的,可视化编程界面可以是web端的图形化编程工具中的界面。用户可以通过终端设备访问web端的图形化编程工具,并在该web端的图形化编程工具中可视化编程界面的代码块展示区域中搭建代码块组合的方式编写代码程序;或者,用户也可以在终端设备上安装图形化编程工具的客户端,并在该图形化编程工具的客户端的代码块展示区域中搭建代码块组合的方式编写程序。
一个示例性方案中,该图形化编程工具的可视化编程界面可如图3a所示,该终端设备100的显示器中显示该可视化编程界面,其中,该可视化编程界面包括代码编辑区域、代码展示区域、第一控件和第二控件,其中,该第一控件用于指示启动该代码程序的调试程序,该第二控件用于指示运行该代码程序。在图3a所示的场景下,该第一控件可以设置为文字标签为“调试”的控件,该第二控件可以设置为点击事件为“运行”的图标控件。该终端设备100响应于鼠标对该代码编辑区域的各个代码块的选中操作以及拖动操作,在该代码展示区域内展示由各个代码块组合得到的代码组合。如图3a所示,点选该代码编辑区域中的“运动”代码块,从而得到在该“运动”选项下的多个代码块,比如:以30%动力前进;以30%动力前进,持续3秒;左转,以30%动力前进,持续3秒;以30%动力刹车,直到静止;机器狗当前的运动状态:运动方向;机器狗当前的X坐标。然后点选其中的“以30%动力前进,持续3秒;左转,以30%动力前进,持续3秒”这两个代码块,并将其拖入该代码展示区域,此时将生成代码块组合“当开始运行时,以30%动力前进,持续3秒;讨红包;左转,以30%动力前进,持续3秒”。
202、响应于对该第一控件的第一操作,启动该代码程序的调试程序。
本实施例中,通过对该第一控件的选中操作,启动对该代码程序进行调试的调试程序。
一个示例性方案中,以图3a所示的可视化编程界面为例,该第一控件在设置为“调试”选项时,可以通过点选该“调试”选项,使得该可视化编程界面的代码编辑区域出现信息。比如图3b所示的“调试代码”状态的高亮提示。
203、响应于对该第二控件的第二操作,运行该代码程序并显示该第一界面,该第一界面包括初始仿真画面和调试控件展示区域,该调试控件展示区域包括至少一个调试控件,该至少一个调试控件用于指示基于该代码程序渲染得到仿真画面的播放形式,该初始仿真画面是基于该代码程序在第一个时间步长内渲染得到,该调试控件展示区域是基于该调试程序渲染得到。
本实施例中,通过对该第二控件的选中操作,运行该代码程序,从而从该可视化编程界面切换至虚拟环境中,然后在该虚拟环境中渲染该代码程序描述的虚拟对象的动态行为。
一个示例性方案中,以图3a所示的可视化编程界面为例,该第二控件设置为左下角的“运行”图标控件,当选中该“运行”图标控件之后,该图形化编程工具的可视化编程界面将切换至虚拟环境的显示界面。如图3c所示,以图3a的代码展示区域所示的代码块组合其转化成的代码程序逻辑是:当开始运行的时候,机器狗先以30%的动力速度向前持续移动3秒钟;随后播放讨红包的动画;然后再向左转15度,并且以30%的动力速度向前持续移动3秒钟。此时,该虚拟环境可以为城市街景,该代码程序描述的虚拟对象为机器狗。因此该第一界面将显示城市街景和该机器狗。同时,该第一界面中还包括该调试程序对应的调试控件展示区域。
可选的,在本申请中,该调试控件显示区域可以显示为一个调试面板,其一直显示在该第一界面中。一个示例性方案中,如图3c所示,该调试控件可以包括“继续运行”、“运行1帧”以及“运行1秒”等调试控件,同时,该调试控件显示区域还可以显示该代码程序运行过程中的具体帧数以及具体的仿真时间。
204、响应于对该至少一个调试控件的第三操作,在该第一界面播放仿真画面集合,该仿真画面集合中各个仿真画面的渲染时间晚于该初始仿真画面的渲染时间。
本实施例中,一个实现方案中,该调试显示区域的至少一个调试控件包括第一调试控件、第二调试控件、第三调试控件和第四调试控件;
其中,该第一调试控件的执行事件为在该代码程序处于暂停运行状态时,恢复运行该代码程序;
该第二调试控件的执行事件为在该代码程序处于运行状态时,暂停运行该代码程序;
该第三调试控件的执行事件为在该代码程序处于暂停运行状态时,逐帧执行该代码程序的物理模拟;
该第四调试控件的执行事件为在该代码程序处于暂停运行状态时,逐秒执行该代码程序的物理模拟。
应理解的是,该第一调试控件和该第二调试控件可以合并对应一个控件按钮也可以分开独立对应一个控件按钮。一个示例性方案中,该调试控件显示区域可以如图3d所示,即该第一调试控件和该第二调试控件分开独立对应一个控件按钮。另一个示例性方案中,该调试控件显示区域可以如图3e所示,该第一调试控件和该第二调试控件合并对应一个控件按钮。如图3e所示,在该调试控件显示区域中的控件按钮显示为“暂停运行”时,点击该“暂停运行”,则暂停运行该代码程序,同时将该控件按钮显示为“继续运行”;在点击该“继续运行”,则继续运行该代码程序,同时将该控件按钮显示为“暂停运行”。
基于上述对该调试控件的设定,下面对各个调试控件的控制效果进行说明。
一、点击“继续运行”调试控件
当用户点击“继续运行”按钮后,按钮的文案会变成“暂停运行”,同时机器狗开始按照设定的程序运行。如图3f所示,机器狗开始向前移动,同时调试控件显示区域开始实时提示当前实际运行到第几帧,整个过程中机器狗都会按照用户编写的程序逻辑运行。
二、点击“暂停运行”调试控件
如图3g所示,当用户点击“暂停运行”按钮后,按钮的文案会修改为“继续运行”,同时机器狗立刻停止在当前的状态,保持不动。
可选的,该第一界面还用于显示虚拟对象的参数信息。比如,图3g所示的,当前机器狗的位置、旋转、速度等信息。
三、点击“运行1帧”调试控件
如图3h所示,在用户点击“运行1帧”按钮后,机器狗会按照代码程序继续运行1帧的时间,即由第58帧运行到第59帧。在设定该时间步长为0.02秒时,该一帧的时间也将是0.02秒。
可选的,用户可以持续多次的点击该“运行1帧”按钮,然后该机器狗将会按照逐帧进行运动。如图3i所示,在连续8次点击之后,该代码程序将依次播放8帧仿真画面。在连接12次点击之后,该代码程序将依次播放12帧仿真画面。即由第214帧播放至第222帧以及第234帧。在此过程中,用户将可以进行逐帧的观察虚拟对象的运动状态。
四、点击“运行1秒”调试控件
如图3j所示,在用户点击“运行1秒”按钮后,机器狗会按照代码程序继续运行1秒的时间。假设设定时间步长为0.02秒时,运行开始为第400帧,则在运行1秒之后,将播放到第450帧仿真画面。
基于上述产品侧的描述,下面对各个部分的具体实现进行说明:
一、对该代码程序的运行原理进行说明,请参阅图4所示:
首先,点击开始运行。此步骤中,用户在可视化编程界面上点击“运行”按钮,启动在该可视化编程界面生成的代码块组合的物理仿真过程。
然后,禁用物理引擎自动模拟。此步骤是为了确保物理模拟的确定性,在禁用物理引擎的自动模拟功能之后,可以使得物理模拟的时间步长可以手动控制。比如,将该时间步长设置为0.02秒或者设置0.01秒,或者其他数值,具体此处不做限定,只要满足实际需求即可。
再然后,启用确定性物理模块的相关设置。此步骤是为了保证物理仿真的一致性,因此需要启用确定性物理设置。例如仿真时间,固定时间步长、固定随机数种子等。其中,确定性物理模拟用于指在物理模拟中,使用精确的数学模型和算法来描述物理规律和方程式,并使用高精度的计算方法来计算和预测物体的运动和相互作用,确保模拟结果的精确性和可预测性。
仿真时间:仿真时间中的时间概念与真实的时间并不一样,只是计算机仿真中对时间的一种表示,比如10秒的仿真时间,如果采样步长定为0.1,则需要执行100步,若把步长减小,则采样点数增加,那么实际的执行时间就会增加。一般仿真开始时间设为0,而结束时间视不同的因素而选择。总的说来,执行一次仿真要耗费的时间依赖于很多因素,包括模型的复杂程度、解法器及其步长的选择、计算机时钟的速度等等。
时间步长:用于指示时间轴上相邻两个仿真点之间的时间间隔。常用物理仿真平台通常会根据指定的时间步长在时间轴上进行离散化,从而模拟代码程序中的虚拟对象的动态行为。其中时间步长超小,仿真结果越精确,但是计算量也会增加。
再然后,将代码块组合中的各个代码块转换成一一对应的代码。在可视化编程界面,用户通过代码块编程方式编写代码程序,因此在运行该代码程序时,需要将代码块转换成实际可执行的代码。
再然后,执行代码程序。运行用户编写的代码程序,控制虚拟对象(也可以称为游戏对象)的运动和交互。比如如图3a所示的代码块组合中,该代码程序将控制机器狗进行运动。同理,也可以编程其他虚拟对象进行运动和交互,具体此处不做限定。
在该代码程序的运行过程中,其物理仿真的过程是一个循环执行的过程,即以时间步长为周期,按照时间轴对该代码程序描述的虚拟对象进行运动状态渲染,并进行展示。其循环执行的具体步骤可以如下:
a、每个FixedUpdate推进一个时间步长的物理模拟。在每个FixedUpdate方法中,手动执行一次物理模拟,以固定的时间步长(如0.02s)进行计算。其中,该FixedUpdate是指在固定时间间隔(也可以理解为本申请中的时间步长)执行物理模拟的一种更新方案。
b、渲染游戏对象的运动效果。根据物理模拟的结果,更新游戏对象的位置、速度、旋转等属性,渲染游戏对象的运动效果。
c、界面展示游戏对象的信息。在界面上实时展示游戏对象的相关信息,如位置、速度、旋转等。
d、是否结束模拟:检查是否满足结束模拟的条件,如达到预定的时间、完成特定任务等。如果满足条件,则跳出循环。
最后,输出最终运行结果。在模拟结束后,输出游戏对象的最终状态和运行结果,供用户查看和分析。
基于上述运行原理可知,在未使用本申请的数据处理方法时,该代码程序在运行过程中并不能暂停。而本申请提供的调试程序可以使得该代码程序的运行进行暂停或者按照需求进行运行。
下面以如图5所示的本申请提供的代码程序的运行时序,对本申请的数据处理方法进行说明:
在用户通过该图形编程工具(比如unity)的可视化编程界面点击开始运行之后,该数据处理装置禁用物理引擎自动模拟,同时启用确定性物理设置。然后将代码块组合中的各个代码块转换成一一对应的代码。
在代码程序的运行过程中,设置目标变量,并根据该目标变量修改该循环物理模拟的执行过程。具体如下:即该目标变量指示该代码程序处于暂停状态时,不需要推进物理引擎进行物理模拟,此时该代码程序描述的虚拟对象不动;在该目标变量指示该代码程序处于非暂停状态时,推进物理引擎进行物理模拟,此时该代码程序描述的虚拟对象将运动。
基于上述规则,在该代码程序的初始化运行的过程中,该目标变量将设置为指示该代码程序处于暂停状态。此时该第一界面(其用于显示该虚拟环境、该虚拟对象的仿真画面以及该调试控件展示区域)将仅展示在第一时间步长内渲染出来仿真画面或者仅展示该虚拟对象的虚拟形象。
本申请中,该目标变量可以设定不同取值指示不同的状态。比如以游戏开发为例进行说明,设定该目标变量的取值为1时,该游戏循环(也可以称为本申请中的循环物理模拟的执行过程,而游戏循环是指在游戏开发中,游戏引擎或程序的主要运行循环。它是一个持续运行的循环,负责处理玩家输入、更新游戏状态和渲染图形等任务,以使游戏能够以一定的帧率运行并响应玩家操作。)处于暂停状态,该目标变量的取值为0时,该游戏循环处于运行状态。或者,设定该目标变量的取值为true时,该游戏循环处于暂停状态,该目标变量的取值为false时,该游戏循环处于非暂停状态。一个可选的实现方案中,该目标变量可以设置为isPaused布尔变量,可以设置其默认值为false,同时设定在此默认值下,该代码程序处于非暂停运行状态。在此方案下,在该代码程序中设置该isPaused布尔变量的代码可以如下:private bool isPaused=false。通过在代码程序中设置该布尔变量,则可以通过该布尔变量确定该代码程序是否进行运行。
而基于该isPaused布尔变量以及该代码程序的循环物理模拟函数为FixedUpdate函数时,该FixedUpdate函数的实现代码将修改如:
即该目标变量指示该代码程序处于暂停状态时,不需要推进物理引擎进行物理模拟,此时该代码程序描述的虚拟对象不动;在该目标变量指示该代码程序处于非暂停状态时,推进物理引擎进行物理模拟,此时该代码程序描述的虚拟对象将运动。
本申请中,基于添加了调试控件,因此该代码程序还提供了不同的调用接口来实现该调试控件。下面以该调试控件为“继续运行”、“暂停运行”、“运行1帧”和“运行1秒”进行分别说明。
1、本申请中,可以设定该“继续运行”的调用接口为Resume(),该“暂停运行”的调用接口为Pause()。同理,也可以设定该代码程序的“运行控件”的调用接口为Play()接口。其中,Play()用于游戏初始化的时候,开启整个游戏循环的运行。Pause()用于在游戏循环执行的过程中,暂停游戏循环。Resume()用于在游戏循环暂停时,恢复游戏循环。基于上述接口的描述,其对应的代码可以下:
即对于每一个调用接口,其都设置一个对应的布尔变量,当调用接口运行时,其布尔变量都设置为相应的值。Play()接口设置该目标变量指示该代码程序处于非暂停状态(即isPaused=false),在Pause()接口设置该目标变量指示该代码程序处于暂停状态(即isPaused=true),在Resume()设置该目标变量指示该代码程序处于非暂停状态(即isPaused=false)。
2、本申请中,可以设定该“运行1帧”的调用接口为StepOneFrame()。其中,该StepOneFrame()的作用是在游戏循环暂停状态下执行一帧物理模拟,并实现一帧仿真画面的渲染。一个示例性方案中,具体实现可以如下:
首先,将isPaused设置为false,以便允许物理模拟执行。然后使用yield returnnew WaitForFixedUpdate()语句等待一次FixedUpdate的执行。在等待的过程中,物理模拟将执行一帧。最后,将isPaused设置为true,以便恢复游戏循环的暂停状态。
3、本申请中,可以设定该“运行1秒”的调用接口为StepOneSecond()。其中,StepOneSecond()的作用是在游戏循环暂停状态下执行一秒物理模拟,并实现一秒内的全部仿真画面的渲染。一个示例性方案中,具体实现可以如下:
首先,将isPaused设置为false,以便允许物理模拟执行。然后初始化一个计数器和一个总帧数。总帧数的值等于1秒内的帧数,可以通过将1除以fixedDeltaTime并四舍五入得到(比如假设该时间步长为0.02,则一秒内的总帧数为1除以0.02等于50)。使用while循环执行物理模拟,直到计数器达到总帧数。在每次循环中,使用yield return newWaitForFixedUpdate()语句等待一次FixedUpdate的执行。在等待的过程中,物理模拟将执行一帧。同时,将计数器加1。(在时间步长为0.02的情况下,将等待50次FixedUpdate的执行)。最后,将isPaused设置为true,以便恢复游戏循环的暂停状态。
基于上述描述,该StepOneSecond()和该StepOneFrame()的代码表示可以如下:
综合上述描述,可以得到本申请提供的数据处理方法中,该代码程序的运行代码表示可以如下:
二、调试控件显示区域的生成。
在本申请的一个实现方式中,该调试控件显示区域的具体实现过程可以如下:
1、创建一个用户界面画布(即UI Canvas)。一个示例性方案中,在Unity中,创建一个新的UI Canvas对象,用于放置调试控件对应的按钮对象和其他UI元素。设置Canvas的渲染模式为“Screen Space-Overlay”,这样调试控件显示区域内的全部UI元素始终显示在第一界面上。
2、添加按钮对象。一个示例性方案中,可以在Canvas下创建3个新的UI Button对象,分别用于后续点击触发Pause()/Resume()、StepOneFrame()和StepOneSecond()方法。为每个按钮设置一个描述性的文本标签,如“暂停运行”/“继续运行”、“运行1帧”和“运行1秒”。
3、创建一个新的脚本代码。一个示例性方案中,该脚本代码可以命名为“SimulationControlPanel”(即调试面板),并将其附加到Canvas对象(即将该脚本代码与按钮对象进行一一对应)。在此脚本中,实现以下功能:
定义4个公共方法,分别对应Play()、TogglePauseOrResume()、StepOneFrame()和StepOneSecond()接口。
在这些方法中,调用代码程序类中相应的方法。因此,需要在SimulationControlPanel脚本中创建一个对代码程序类中的引用,将其设置为一个公共变量,然后在Unity编辑器中将包括代码程序脚本的虚拟对象拖动到此变量上。基于上述描述,该调试面板的脚本代码可以如下:
4、为每个按钮添加一个点击事件。一个示例性方案中,在Unity编辑器中,选中每个按钮,然后在“Button”组件的“On Click()”部分添加一个新的事件。将包含“SimulationControlPanel”脚本的Canvas对象拖动到事件的“Object”字段,并从“Function”下拉菜单中选择相应的方法(如“Play()”、“TogglePauseOrResume()”等)。
基于上述的描述可知,用户在调试面板上的交互,最终都会调用到游戏循环(即代码程序的循环物理模拟过程)的控制接口,进而控制整个游戏循环的执行,包括开始、暂停、恢复、推进等。下面以图6所示的代码程序的运行时序图,对本申请的数据处理方法进行说明:
用户在可视化编程界面点击开始运行按钮,启动游戏循环。游戏循环开始执行物理模拟。
用户在第一界面的调试面板中可以点击暂停按钮(如图3d),暂停游戏循环。此时,物理模拟将停止执行,场景中的物体会保持当前的静止状态,用户可以查看相关的信息。
在暂停状态下,用户在第一界面的调试面板中点击恢复按钮(如图3c中的“继续运行”),恢复游戏循环。游戏循环将继续执行物理模拟,场景中的虚拟对象会继续之前的运动。
在暂停状态下,用户在第一界面的调试面板中点击“运行1帧”按钮,执行一帧物理模拟,并渲染展示虚拟对象的一帧仿真画面。这将有助于用户观察虚拟对象运行1帧的运动和交互情况。
在暂停状态下,用户用户在第一界面的调试面板中点击“运行1秒”按钮,执行一秒物理模拟,并渲染展示虚拟对象在一秒内的仿真画面。这将有助于用户观察虚拟对象在1s(比如50帧=50*0.02s)中的运动和交互情况。
用户可以根据需要随时切换游戏循环的状态,如暂停、恢复、逐帧执行等。这将有助于用户更容易地识别和解决程序中的问题。
在游戏循环执行过程中,界面将实时展示游戏对象的相关信息,如位置、速度、旋转等。这有助于用户了解程序的执行状态和物体的运动情况,从而更好地识别和解决问题,提高开发效率和程序质量。
下面对本申请中的数据处理装置进行详细描述,请参阅图7,图7为本申请实施例中数据处理装置的一个实施例示意图,数据处理装置20包括:
显示模块201,用于展示可视化编程界面,该可视化编程界面包含代码块展示区域、第一控件以及第二控件,该代码块展示区域包括生成代码程序的至少一个代码块;
处理模块202,用于响应于对该第一控件的第一操作,启动该代码程序的调试程序;
该处理模块202,用于响应于对该第二控件的第二操作,运行该代码程序;
该显示模块201,用于响应于对该第二控件的第二操作,显示第一界面,该第一界面包括初始仿真画面和调试控件展示区域,该调试控件展示区域包括至少一个调试控件,该至少一个调试控件用于指示基于该代码程序渲染得到仿真画面的播放形式,该初始仿真画面是基于该代码程序在第一个时间步长内渲染得到,该调试控件展示区域是基于该调试程序渲染得到;响应于对该至少一个调试控件的第三操作,在该第一界面播放仿真画面集合,该仿真画面集合中各个仿真画面的渲染时间晚于该初始仿真画面的渲染时间。
本申请实施例中,提供了一种数据处理装置。采用上述装置,对代码程序的物理模拟增加调试程序,使得代码程序通过物理模拟渲染出来的仿真画面可以根据调试控件进行相应的调试,避免仿真画面只能一次性播放完成,从而实现对仿真画面进行针对性播放,进而快速识别代码程序中的问题。
可选地,在上述图7所对应的实施例的基础上,本申请实施例提供的数据处理装置20的另一实施例中,
该处理模块202,用于响应于对该第二控件的第二操作,禁用物理引擎自动模拟,并启用确定性物理设置;
基于该至少一个代码块转换生成该代码程序;
运行该代码程序,并按照时间步长进行物理模拟;
基于该物理模拟的结果对该代码程序中的虚拟对象进行渲染得到该初始仿真画面;
该显示模块201,用于在该第一界面展示该初始仿真画面。
本申请实施例中,提供了一种数据处理装置。采用上述装置,在代码程序进行初始化运行时,仅进行第一时间步长内的物理模拟,并渲染生成相应的初始仿真画面,这样使得该代码程序在初始化运行时处于暂停状态,从而为调试控件的运行设置初始化环境,进而实现对代码程序通过物理模拟渲染出来的仿真画面根据调试控件进行相应的调试,避免仿真画面只能一次性播放完成,从而实现对仿真画面进行针对性播放,进而快速识别代码程序中的问题。
可选地,在上述图7所对应的实施例的基础上,本申请实施例提供的数据处理装置20的另一实施例中,该第一界面还包括该虚拟对象的参数信息,该参数信息包括该虚拟对象当前的位置信息、速度信息以及旋转角度。
本申请实施例中,提供了一种数据处理装置。采用上述装置,在调试过程中,实时的展示虚拟对象的参数信息,可以方便用户更好的识别虚拟对象的当前情况与预设情况的差异,从而更快的确定代码程序的问题所在。
可选地,在上述图7所对应的实施例的基础上,本申请实施例提供的数据处理装置20的另一实施例中,
该处理模块202,用于创建用户界面画布,其中,该用户界面画布的渲染模式用于指示该调试控件展示区域显示在该第一界面;
在该用户界面画面创建该调试控件展示区域的至少一个调试控件对应的按钮对象;
基于该调试程序为该按钮对象设置点击事件得到该至少一个调试控件,该点击事件用于指示该至少一个调式控件被选中后的执行事件。
本申请实施例中,提供了一种数据处理装置。采用上述装置,将用户界面的按钮对象与该调试程序中的调试控件进行一一对应,从而实现该调试控件展示区域内各个调试控件的功能。
可选地,在上述图7所对应的实施例的基础上,本申请实施例提供的数据处理装置20的另一实施例中,
该至少一个调试控件包括第一调试控件、第二调试控件、第三调试控件和第四调试控件;
其中,该第一调试控件的执行事件为在该代码程序处于暂停运行状态时,恢复运行该代码程序;
该第二调试控件的执行事件为在该代码程序处于运行状态时,暂停运行该代码程序;
该第三调试控件的执行事件为在该代码程序处于暂停运行状态时,逐帧执行该代码程序的物理模拟;
该第四调试控件的执行事件为在该代码程序处于暂停运行状态时,逐秒执行该代码程序的物理模拟。
本申请实施例中,提供了一种数据处理装置。采用上述装置,通过设置继续运行、暂停运行、逐帧运行以及逐秒运行四种调试控件,可以采用多种调试方式实现对该代码程序进行问题识别,从而实现快速识别该代码程序的问题。
可选地,在上述图7所对应的实施例的基础上,本申请实施例提供的数据处理装置20的另一实施例中,每个定位点的轨迹数据还包括定位速度信息;
该处理模块202,用于响应于对该第一调试控件的操作,恢复运行该代码程序;
运行该代码程序,在第二个时间步长内进行物理模拟;
基于该物理模拟的结果对该代码程序中的虚拟对象进行渲染得到第一仿真画面;
该显示模块201,用于在该第一界面展示该第一仿真画面;
该处理模块202,用于运行该代码程序,在第三个时间步长内进行物理模拟;
基于该物理模拟的结果对该代码程序中的虚拟对象进行渲染得到第二仿真画面;
该显示模块201,用于在在该第一界面展示该第二仿真画面;
依此循环,直至暂停运行该代码程序,并在该第一界面展示第三仿真画面,其中,该第一仿真画面、该第二仿真画面和该第三仿真画面包含于该仿真画面集合,该第三仿真画面为该仿真画面集合中在时间顺序上的最后一个仿真画面。
本申请实施例中,提供了一种数据处理装置。采用上述装置,在响应继续运行代码程序之后,可以通过运行该代码程序的循环物理模拟过程,从而实现在第一界面中持续播放仿真画面,使得用户可以对不需要详细观测的部分进行快速播放,加快识别速度。
可选地,在上述图7所对应的实施例的基础上,本申请实施例提供的数据处理装置20的另一实施例中,该处理模块202,用于响应于对该第二调试控件的操作,暂停运行该代码程序;
该显示模块201,用于在该第一界面展示该第三仿真画面。
本申请实施例中,提供了一种数据处理装置。采用上述装置,在响应暂停运行代码程序之后,可以通过暂停运行该代码程序的循环物理模拟过程,从而实现在第一界面中可以暂停播放仿真画面,使得用户可以对需要详细观测的部分进行仔细观测,同时获取当前状态下的虚拟对象的参数信息,从而可以提高对代码程序的识别准确度。
可选地,在上述图7所对应的实施例的基础上,本申请实施例提供的数据处理装置20的另一实施例中,
该处理模块202,用于响应于对该第三调试控件的操作,恢复运行该代码程序;运行该代码程序,在第二个时间步长内进行物理模拟;基于该物理模拟的结果对该代码程序中的虚拟对象进行渲染得到第一仿真画面;
该显示模块201,用于在该第一界面展示该第一仿真画面,其中,该第一仿真画面作为该仿真画面集合。
本申请实施例中,提供了一种数据处理装置。采用上述装置,在响应逐帧运行代码程序之后,可以仅运行该代码程序的一帧物理模拟过程,从而实现在第一界面中仅播放一帧仿真画面,使得用户可以对需要详细观测的部分进行仔细观测,同时获取当前状态下的虚拟对象的参数信息,从而可以提高对代码程序的识别准确度。
可选地,在上述图7所对应的实施例的基础上,本申请实施例提供的数据处理装置20的另一实施例中,
该处理模块202,用于响应于对该第四调试控件的操作,恢复运行该代码程序;运行该代码程序,在第二个时间步长内进行物理模拟;基于该物理模拟的结果对该代码程序中的虚拟对象进行渲染得到第一仿真画面;
该显示模块201,用于在该第一界面展示该第一仿真画面;
该处理模块202,用于运行该代码程序,在第三个时间步长内进行物理模拟;基于该物理模拟的结果对该代码程序中的虚拟对象进行渲染得到第二仿真画面;
该显示模块201,用于在该第一界面展示该第二仿真画面;依此循环,直到运行时长达到一秒时暂停运行该代码程序并在该第一界面展示第四仿真画面,其中,该第一仿真画面、该第二仿真画面和该第四仿真画面包含于该仿真画面集合,该第四仿真画面为该运行时长内的最后一个仿真画面。
本申请实施例中,提供了一种数据处理装置。采用上述装置,在响应逐秒运行代码程序之后,可以仅运行该代码程序在一秒运行时长内的物理模拟过程,从而实现在第一界面中播放一秒时长内的仿真画面,使得用户可以对需要详细观测的部分进行仔细观测,同时获取当前状态下的虚拟对象的参数信息,从而可以提高对代码程序的识别准确度。
可选地,在上述图7所对应的实施例的基础上,本申请实施例提供的数据处理装置20的另一实施例中,
该第一调试控件对应的执行事件以Pause()接口进行调用;
该第二调试控件对应的执行事件以Resume()接口进行调用;
该第三调试控件对应的执行事件以StepOneFrame()接口进行调用;
该第四调试控件对应的执行事件以StepOneSecond()接口进行调用。
本申请实施例中,提供了一种数据处理装置。采用上述装置,提供一种应用场景下的调用接口,从而增加方案的可实行性。
可选地,在上述图7所对应的实施例的基础上,本申请实施例提供的数据处理装置20的另一实施例中,
该第一调试控件和该第二调试控件合并对应一个按钮对象,其对应执行事件以TogglePauseOrResume()进行调用;
该第三调试控件对应的执行事件以StepOneFrame()接口进行调用;
该第四调试控件对应的执行事件以StepOneSecond()接口进行调用。
本申请实施例中,提供了一种数据处理装置。采用上述装置,提供一种应用场景下的调用接口,从而增加方案的可实行性。同时将继续运行与暂停运行的调试控件合并至一个按钮对象上,可以减小调试控件展示区域的大小,从而提供更精简的用户界面,使得用户可以更好的观测仿真画面。
可选地,在上述图7所对应的实施例的基础上,本申请实施例提供的数据处理装置20的另一实施例中,
该代码程序运行过程中设置目标变量,该目标变量用于指示代码程序是否处理暂停状态。
本申请实施例中,提供了一种数据处理装置。采用上述装置,使用一个目标变量实现对该代码程序的暂停状态判定,从而精简调试的代码编程。
可选地,在上述图7所对应的实施例的基础上,本申请实施例提供的数据处理装置20的另一实施例中,该目标变量为布尔变量。
本申请实施例中,提供了一种数据处理装置。采用上述装置,提供一种具体的变量设置方案,从而增加方案的可实行性。
本申请提供的数据处理装置可用于服务器,请参阅图8,图8是本申请实施例提供的一种服务器结构示意图,该服务器300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)322(例如,一个或一个以上处理器)和存储器332,一个或一个以上存储应用程序342或数据344的存储介质330(例如一个或一个以上海量存储设备)。其中,存储器332和存储介质330可以是短暂存储或持久存储。存储在存储介质330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储介质330通信,在服务器300上执行存储介质330中的一系列指令操作。
服务器300还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作系统341,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由数据处理装置所执行的步骤可以基于该图8所示的服务器结构。
本申请提供的数据处理装置可用于终端设备,请参阅图9,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。在本申请实施例中,以终端设备为智能手机为例进行说明:
图9示出的是与本申请实施例提供的终端设备相关的智能手机的部分结构的框图。参考图9,智能手机包括:射频(radio frequency,RF)电路410、存储器420、输入单元430、显示单元440、传感器450、音频电路460、无线保真(wireless fidelity,WiFi)模块470、处理器480、以及电源490等部件。本领域技术人员可以理解,图9中示出的智能手机结构并不构成对智能手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图9对智能手机的各个构成部件进行具体的介绍:
RF电路410可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器480处理;另外,将设计上行的数据发送给基站。通常,RF电路410包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(low noiseamplifier,LNA)、双工器等。此外,RF电路410还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(globalsystem of mobile communication,GSM)、通用分组无线服务(general packet radioservice,GPRS)、码分多址(code division multiple access,CDMA)、宽带码分多址(wideband code division multiple access,WCDMA)、长期演进(long term evolution,LTE)、电子邮件、短消息服务(short messaging service,SMS)等。
存储器420可用于存储软件程序以及模块,处理器480通过运行存储在存储器420的软件程序以及模块,从而执行智能手机的各种功能应用以及数据处理。存储器420可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据智能手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元430可用于接收输入的数字或字符信息,以及产生与智能手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元430可包括触控面板431以及其他输入设备432。触控面板431,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板431上或在触控面板431附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板431可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器480,并能接收处理器480发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板431。除了触控面板431,输入单元430还可以包括其他输入设备432。具体地,其他输入设备432可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元440可用于显示由用户输入的信息或提供给用户的信息以及智能手机的各种菜单。显示单元440可包括显示面板441,可选的,可以采用液晶显示器(liquidcrystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)等形式来配置显示面板441。进一步的,触控面板431可覆盖显示面板441,当触控面板431检测到在其上或附近的触摸操作后,传送给处理器480以确定触摸事件的类型,随后处理器480根据触摸事件的类型在显示面板441上提供相应的视觉输出。虽然在图9中,触控面板431与显示面板441是作为两个独立的部件来实现智能手机的输入和输入功能,但是在某些实施例中,可以将触控面板431与显示面板441集成而实现智能手机的输入和输出功能。
智能手机还可包括至少一种传感器450,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板441的亮度,接近传感器可在智能手机移动到耳边时,关闭显示面板441和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别智能手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于智能手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路460、扬声器461,传声器462可提供用户与智能手机之间的音频接口。音频电路460可将接收到的音频数据转换后的电信号,传输到扬声器461,由扬声器461转换为声音信号输出;另一方面,传声器462将收集的声音信号转换为电信号,由音频电路460接收后转换为音频数据,再将音频数据输出处理器480处理后,经RF电路410以发送给比如另一智能手机,或者将音频数据输出至存储器420以便进一步处理。
WiFi属于短距离无线传输技术,智能手机通过WiFi模块470可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图9示出了WiFi模块470,但是可以理解的是,其并不属于智能手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器480是智能手机的控制中心,利用各种接口和线路连接整个智能手机的各个部分,通过运行或执行存储在存储器420内的软件程序和/或模块,以及调用存储在存储器420内的数据,执行智能手机的各种功能和处理数据,从而对智能手机进行整体监测。可选的,处理器480可包括一个或多个处理单元;可选的,处理器480可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器480中。
智能手机还包括给各个部件供电的电源490(比如电池),可选的,电源可以通过电源管理系统与处理器480逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,智能手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
上述实施例中由数据处理装置所执行的步骤可以基于该图9所示的终端设备结构。
本申请实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行如前述各个实施例描述的方法。
本申请实施例中还提供一种包括程序的计算机程序产品,当其在计算机上运行时,使得计算机执行前述各个实施例描述的方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
该作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例该方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (15)
1.一种数据处理方法,其特征在于,包括:
展示可视化编程界面,所述可视化编程界面包含代码块展示区域、第一控件以及第二控件,所述代码块展示区域包括生成代码程序的至少一个代码块;
响应于对所述第一控件的第一操作,启动所述代码程序的调试程序;
响应于对所述第二控件的第二操作,运行所述代码程序并显示第一界面,所述第一界面包括初始仿真画面和调试控件展示区域,所述调试控件展示区域包括至少一个调试控件,所述至少一个调试控件用于指示基于所述代码程序渲染得到仿真画面的播放形式,所述初始仿真画面是基于所述代码程序在第一个时间步长内渲染得到,所述调试控件展示区域是基于所述调试程序渲染得到;
响应于对所述至少一个调试控件的第三操作,在所述第一界面播放仿真画面集合,所述仿真画面集合中各个仿真画面的渲染时间晚于所述初始仿真画面的渲染时间。
2.根据权利要求1所述的方法,其特征在于,响应于对所述第二控件的第二操作,运行所述代码程序并显示第一界面包括:
响应于对所述第二控件的第二操作,禁用物理引擎自动模拟,并启用确定性物理设置;
基于所述至少一个代码块转换生成所述代码程序;
运行所述代码程序,并在第一时间步长进行物理模拟;
基于所述物理模拟的结果对所述代码程序中的虚拟对象进行渲染得到所述初始仿真画面;
在所述第一界面展示所述初始仿真画面。
3.根据权利要求2所述的方法,其特征在于,所述第一界面还包括所述虚拟对象的参数信息,所述参数信息包括所述虚拟对象当前的位置信息、速度信息以及旋转角度。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述方法还包括:
创建用户界面画布,其中,所述用户界面画布的渲染模式用于指示所述调试控件展示区域显示在所述第一界面;
在所述用户界面画面创建所述调试控件展示区域的至少一个调试控件对应的按钮对象;
基于所述调试程序为所述按钮对象设置点击事件得到所述至少一个调试控件,所述点击事件用于指示所述至少一个调式控件被选中后的执行事件。
5.根据权利要求4所述的方法,其特征在于,所述至少一个调试控件包括第一调试控件、第二调试控件、第三调试控件和第四调试控件;
其中,所述第一调试控件的执行事件为在所述代码程序处于暂停运行状态时,恢复运行所述代码程序;
所述第二调试控件的执行事件为在所述代码程序处于运行状态时,暂停运行所述代码程序;
所述第三调试控件的执行事件为在所述代码程序处于暂停运行状态时,逐帧执行所述代码程序的物理模拟;
所述第四调试控件的执行事件为在所述代码程序处于暂停运行状态时,逐秒执行所述代码程序的物理模拟。
6.根据权利要求5所述的方法,其特征在于,所述响应于对所述至少一个调试控件的第三操作,在所述第一界面播放仿真画面集合包括:
响应于对所述第一调试控件的操作,恢复运行所述代码程序;
运行所述代码程序,在第二个时间步长内进行物理模拟;
基于所述物理模拟的结果对所述代码程序中的虚拟对象进行渲染得到第一仿真画面;
在所述第一界面展示所述第一仿真画面;
运行所述代码程序,在第三个时间步长内进行物理模拟;
基于所述物理模拟的结果对所述代码程序中的虚拟对象进行渲染得到第二仿真画面;
在所述第一界面展示所述第二仿真画面;
依此循环,直至暂停运行所述代码程序,并在所述第一界面展示第三仿真画面,其中,所述第一仿真画面、所述第二仿真画面和所述第三仿真画面包含于所述仿真画面集合,所述第三仿真画面为所述仿真画面集合中在时间顺序上的最后一个仿真画面。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
响应于对所述第二调试控件的操作,暂停运行所述代码程序;
在所述第一界面展示所述第三仿真画面。
8.根据权利要求5所述的方法,其特征在于,响应于对所述至少一个调试控件的第三操作,在所述第一界面播放仿真画面集合包括:
响应于对所述第三调试控件的操作,恢复运行所述代码程序;
运行所述代码程序,在第二个时间步长内进行物理模拟;
基于所述物理模拟的结果对所述代码程序中的虚拟对象进行渲染得到第一仿真画面;
在所述第一界面展示所述第一仿真画面,其中,所述第一仿真画面作为所述仿真画面集合。
9.根据权利要求5所述的方法,其特征在于,响应于对所述至少一个调试控件的第三操作,在所述第一界面播放仿真画面集合包括:
响应于对所述第四调试控件的操作,恢复运行所述代码程序;
运行所述代码程序,在第二个时间步长内进行物理模拟;
基于所述物理模拟的结果对所述代码程序中的虚拟对象进行渲染得到第一仿真画面;
在所述第一界面展示所述第一仿真画面;
运行所述代码程序,在第三个时间步长内进行物理模拟;
基于所述物理模拟的结果对所述代码程序中的虚拟对象进行渲染得到第二仿真画面;
在所述第一界面展示所述第二仿真画面;
依此循环,直到运行时长达到一秒时暂停运行所述代码程序,并在所述第一界面展示第四仿真画面,其中,所述第一仿真画面、所述第二仿真画面和所述第四仿真画面包含于所述仿真画面集合,所述第四仿真画面为所述运行时长内的最后一个仿真画面。
10.根据权利要求5所述的方法,其特征在于,所述第一调试控件对应的执行事件以Pause()接口进行调用;
所述第二调试控件对应的执行事件以Resume()接口进行调用;
所述第三调试控件对应的执行事件以StepOneFrame()接口进行调用;
所述第四调试控件对应的执行事件以StepOneSecond()接口进行调用。
11.根据权利要求5所述的方法,其特征在于,所述第一调试控件和所述第二调试控件合并对应一个按钮对象,其对应执行事件以TogglePauseOrResume()进行调用;
所述第三调试控件对应的执行事件以StepOneFrame()接口进行调用;
所述第四调试控件对应的执行事件以StepOneSecond()接口进行调用。
12.根据权利要求1至3、5至11中任一项所述的方法,其特征在于,所述代码程序运行过程中设置目标变量,所述目标变量用于指示代码程序是否处理暂停状态。
13.一种数据处理装置,其特征在于,包括:
显示模块,用于展示可视化编程界面,所述可视化编程界面包含代码块展示区域、第一控件以及第二控件,所述代码块展示区域包括生成代码程序的至少一个代码块;
处理模块,用于响应于对所述第一控件的第一操作,启动所述代码程序的调试程序;
所述处理模块,用于响应于对所述第二控件的第二操作,运行所述代码程序;
所述显示模块,用于响应于对所述第二控件的第二操作,显示第一界面,所述第一界面包括初始仿真画面和调试控件展示区域,所述调试控件展示区域包括至少一个调试控件,所述至少一个调试控件用于指示基于所述代码程序渲染得到仿真画面的播放形式,所述初始仿真画面是基于所述代码程序在第一个时间步长内渲染得到,所述调试控件展示区域是基于所述调试程序渲染得到;响应于对所述至少一个调试控件的第三操作,在所述第一界面播放仿真画面集合,所述仿真画面集合中各个仿真画面的渲染时间晚于所述初始仿真画面的渲染时间。
14.一种计算机设备,其特征在于,包括:存储器、处理器以及总线系统;
其中,所述存储器用于存储程序;
所述处理器用于执行所述存储器中的程序,所述处理器用于根据程序代码中的指令执行权利要求1至12中任一项所述的方法;
所述总线系统用于连接所述存储器以及所述处理器,以使所述存储器以及所述处理器进行通信。
15.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1至12中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410011141.7A CN118012407B (zh) | 2024-01-03 | 2024-01-03 | 一种数据处理方法、装置、设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410011141.7A CN118012407B (zh) | 2024-01-03 | 2024-01-03 | 一种数据处理方法、装置、设备以及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN118012407A true CN118012407A (zh) | 2024-05-10 |
CN118012407B CN118012407B (zh) | 2024-09-27 |
Family
ID=90946330
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410011141.7A Active CN118012407B (zh) | 2024-01-03 | 2024-01-03 | 一种数据处理方法、装置、设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118012407B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111684414A (zh) * | 2019-04-29 | 2020-09-18 | 深圳市大疆创新科技有限公司 | 可视化编程控制装置、可编程控制的设备及其控制方法、计算机可读存储介质以及编程控制系统 |
CN112698823A (zh) * | 2020-12-31 | 2021-04-23 | 佛山冠湾智能科技有限公司 | 一种图形化的机器人编程交互系统及方法 |
CN113626308A (zh) * | 2021-07-06 | 2021-11-09 | 深圳点猫科技有限公司 | 一种代码调试方法、装置、电子设备及存储介质 |
-
2024
- 2024-01-03 CN CN202410011141.7A patent/CN118012407B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111684414A (zh) * | 2019-04-29 | 2020-09-18 | 深圳市大疆创新科技有限公司 | 可视化编程控制装置、可编程控制的设备及其控制方法、计算机可读存储介质以及编程控制系统 |
US20210208852A1 (en) * | 2019-04-29 | 2021-07-08 | SZ DJI Technology Co., Ltd. | Visual programming control apparatus, programming-controlled device and control method therefor, computer-readable storage medium, and programming control system |
CN112698823A (zh) * | 2020-12-31 | 2021-04-23 | 佛山冠湾智能科技有限公司 | 一种图形化的机器人编程交互系统及方法 |
CN113626308A (zh) * | 2021-07-06 | 2021-11-09 | 深圳点猫科技有限公司 | 一种代码调试方法、装置、电子设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
徐阳翰: "机器视觉应用系统仿真调试平台设计与实现", 《中国优秀硕士学位论文全文数据库信息科技辑》, 15 January 2020 (2020-01-15), pages 138 - 1765 * |
Also Published As
Publication number | Publication date |
---|---|
CN118012407B (zh) | 2024-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11902377B2 (en) | Methods, systems, and computer program products for implementing cross-platform mixed-reality applications with a scripting framework | |
US11369879B2 (en) | Method and system for interactive imitation learning in video games | |
CN107943683A (zh) | 一种测试脚本生成方法、装置、电子设备及存储介质 | |
US11017605B2 (en) | Method and system for addressing and segmenting portions of the real world for visual digital authoring in a mixed reality environment | |
US11887229B2 (en) | Method and system for populating a digital environment using a semantic map | |
CN112788583B (zh) | 设备寻找方法、装置、存储介质及电子设备 | |
CN112669194B (zh) | 虚拟场景中的动画处理方法、装置、设备及存储介质 | |
US20240131424A1 (en) | Method and system for incremental topological update within a data flow graph in gaming | |
Alshaal et al. | Enhancing virtual reality systems with smart wearable devices | |
CN109685884A (zh) | 一种基于虚拟现实的三维建模方法和系统 | |
CN113010825A (zh) | 一种数据处理方法和相关装置 | |
CN116610881A (zh) | 一种基于低代码软件的WebGL浏览交互方法 | |
CN112807695A (zh) | 游戏场景生成方法和装置、可读存储介质、电子设备 | |
CN118012407B (zh) | 一种数据处理方法、装置、设备以及存储介质 | |
CN113436346A (zh) | 三维空间内的测距方法、装置及存储介质 | |
US20220366810A1 (en) | Application onboarding tutorial system | |
CN107741895B (zh) | 服务器管理方法、装置及设备 | |
CN113742716B (zh) | 代码运行方法、装置、电子设备、存储介质和程序产品 | |
CN112347568A (zh) | 一种仿真测试的方法、相关装置、设备及存储介质 | |
CN113384893A (zh) | 一种数据处理方法、装置及计算机可读存储介质 | |
CN112755510A (zh) | 一种移动端云游戏控制方法、系统和计算机可读存储介质 | |
CN111265875A (zh) | 一种用于游戏角色装备展示的方法与设备 | |
CN110750193A (zh) | 一种基于人工智能的场景拓扑确定方法和装置 | |
CN118154740B (zh) | 数据处理方法和相关装置 | |
US11875088B2 (en) | Systems and methods for smart volumetric layouts |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |