CN115640044A - 基于Unity的三维软件开发方法、装置、设备及介质 - Google Patents
基于Unity的三维软件开发方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN115640044A CN115640044A CN202211670476.7A CN202211670476A CN115640044A CN 115640044 A CN115640044 A CN 115640044A CN 202211670476 A CN202211670476 A CN 202211670476A CN 115640044 A CN115640044 A CN 115640044A
- Authority
- CN
- China
- Prior art keywords
- configuration
- items
- information
- item
- function
- 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
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明实施例提供了一种基于Unity的三维软件开发方法、装置、设备及介质,涉及软件开发技术领域,其中,该方法包括:读取并运行脚本,创建菜单可视化窗口,所述菜单可视化窗口中显示有开发三维软件所需的各个功能项;接收对各个所述功能项的配置指令,响应于所述指令显示各个所述功能项对应的配置文件,接收针对所述配置文件中各个所述信息项输入的配置信息,其中,所述配置文件包括实现功能项所需的信息项;基于接收的各个所述功能项对应的配置文件中各个所述信息项的配置信息,生成三维软件。该方案可以提升Unity开发软件的效率。
Description
技术领域
本发明涉及软件开发技术领域,特别涉及一种基于Unity的三维软件开发方法、装置、设备及介质。
背景技术
流程编辑器和蓝图编辑器式的开发方式,较多的在虚幻引擎中应用,在UE引擎中,开发者可以以很少的代码量快速开发一款Demo或者三维商业软件。
目前,在国内的三维软件开发公司,使用Unity(优美缔,是一种3D软件开发平台)开发软件的企业数量非常大,通过Unity代码编辑式的开发三维软件的方式仍然是主流的,各个企业会针对自己的业务去设计和实现与软件需求对应的程序框架,用来为企业生产定制化软件、软件产品等。
但是针对官方出的Unity编辑器,由于需要开发者手动创建程序结构、代码,而且需要一定的编程思维能力和业务逻辑向程序框架转化的能力,开发门槛高,而现在AR(Augmented Reality,增强现实)、VR(Virtual Reality,虚拟现实)、元宇宙的开发需求越来越大,因此,采用Unity编辑器目前的开发方式进行开发的效率愈显满足不了开发需求。
发明内容
有鉴于此,本发明实施例提供了一种基于Unity的三维软件开发方法,以解决现有技术中基于Unity开发三维软件存在的开发效率低的技术问题。该方法包括:
读取并运行脚本,创建菜单可视化窗口,其中,所述菜单可视化窗口中显示有开发三维软件所需的各个功能项;
接收对各个所述功能项的配置指令,响应于所述指令显示各个所述功能项对应的配置文件,并接收针对所述配置文件中各个信息项输入的配置信息,其中,所述配置文件包括实现功能项所需的信息项;
基于接收的各个所述功能项对应的配置文件中各个所述信息项的配置信息,生成三维软件。
本发明实施例还提供了一种基于Unity的三维软件开发装置,以解决现有技术中基于Unity开发三维软件存在的开发效率低的技术问题。该装置包括:
可视化窗口创建模块,用于读取并运行脚本,创建菜单可视化窗口,其中,所述菜单可视化窗口中显示有开发三维软件所需的各个功能项;
信息接收模块,用于接收对各个所述功能项的配置指令,相应于所述指令显示各个所述功能项对应的配置文件,并接收针对所述配置文件中各个信息项输入的配置信息,其中,所述配置文件包括实现功能项所需的信息项;
开发模块,用于基于接收的各个所述功能项对应的配置文件中各个所述信息项的配置信息,生成三维软件。
本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意的基于Unity的三维软件开发方法,以解决现有技术中基于Unity开发三维软件存在的开发效率低的技术问题。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述任意的基于Unity的三维软件开发方法的计算机程序,以解决现有技术中基于Unity开发三维软件存在的开发效率低的技术问题。
与现有技术相比,本说明书实施例采用的上述至少一个技术方案能够达到的有益效果至少包括:提出了读取并运行脚本,来创建菜单可视化窗口,创建的菜单可视化窗口中显示有开发三维软件所需的各个功能项,进而接收对各个功能项的配置指令,响应于指令显示各个功能项对应的配置文件,接收针对所述配置文件中各个所述信息项输入的配置信息,最后,基于接收的各个所述功能项对应的配置文件中各个所述信息项的配置信息,生成三维软件。提供了一种基于配置文件接收配置信息,并根据接收的配置信息自动生成三维软件的方法,即实现了为三维软件的开发提供了自动开发三维软件的方法,在开发过程中,直接基于各个功能项对应的配置文件接收配置信息后,即可根据配置信息自动、快速的开发软件,实现了编辑式的三维软件开发,使得无需手动创建程序结构、代码,也不需要开发者具备编程思维能力和业务逻辑向程序框架转化的能力,进而降低了开发门槛、也有利于提升Unity开发软件的效率;同时,整个开发过程均是基于可视化窗口进行的,实现了开发框架、开发流程的可视化,增强了开发过程的可视化,有利于进一步提高开发效率,同时方便开发的后期维护。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本发明实施例提供的一种基于Unity的三维软件开发方法的流程图;
图2是本发明实施例提供的一种可视化窗口界面的示意图;
图3是本发明实施例提供的一种登录界面配置项及其配置文件的示意图;
图4是本发明实施例提供的一种交互操作项及其配置文件的示意图;
图5是本发明实施例提供的一种配置场景项及其配置文件的示意图;
图6是本发明实施例提供的一种对象配置项及其配置文件的示意图;
图7是本发明实施例提供的一种节点配置项及其配置文件的示意图;
图8是本发明实施例提供的一种考核课件项及其配置文件的示意图;
图9是本发明实施例提供的一种数据存储方式的示意图;
图10是本发明实施例提供的一种每一步流程的开发展示的示意图;
图11是本发明实施例提供的一种计算机设备的结构框图;
图12是本发明实施例提供的一种基于Unity的三维软件开发装置的结构框图。
具体实施方式
下面结合附图对本申请实施例进行详细描述。
以下通过特定的具体实例说明本申请的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本申请的其他优点与功效。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。本申请还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本申请的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本发明实施例中,提供了一种基于Unity的三维软件开发方法,如图1所示,该方法包括:
步骤S101:读取并运行脚本,创建菜单可视化窗口,其中,所述菜单可视化窗口中显示有开发三维软件所需的各个功能项;
步骤S102:接收对各个所述功能项的配置指令,响应于所述指令显示各个所述功能项对应的配置文件,并接收针对所述配置文件中各个信息项输入的配置信息,其中,所述配置文件包括实现功能项所需的信息项;
步骤S103:基于接收的各个所述功能项对应的配置文件中各个所述信息项的配置信息,生成三维软件。
由图1所示的流程可知,在本发明实施例中,提出了读取并运行脚本,来创建菜单可视化窗口,创建的菜单可视化窗口中显示有开发三维软件所需的各个功能项,进而接收对各个功能项的配置指令,响应于指令显示各个功能项对应的配置文件,接收针对所述配置文件中各个所述信息项输入的配置信息,最后,基于接收的各个所述功能项对应的配置文件中各个所述信息项的配置信息,生成三维软件。提供了一种基于配置文件接收配置信息,并根据接收的配置信息自动生成三维软件的方法,即实现了为三维软件的开发提供了自动开发三维软件的方法,在开发过程中,直接基于各个功能项对应的配置文件接收配置信息后,即可自动、可快速开发软件,实现了编辑式的三维软件开发,使得无需手动创建程序结构、代码,也不需要开发者具备编程思维能力和业务逻辑向程序框架转化的能力,进而降低了开发门槛、也有利于提升Unity开发软件的效率,有利于推动VR、AR、元宇宙等开发场景的产品开发、迭代、更新;同时,整个开发过程均是基于可视化窗口进行的,实现了开发框架、开发流程的可视化,增强了开发过程的可视化,有利于进一步提高开发效率,同时方便开发的后期维护。
具体实施时,为了实现三维软件的开发过程、开发框架等开发流程相关内容的可视化,在本实施例中,提出了基于(调用)Unity中的OdinInspector(奥丁编辑器扩展)编辑器插件,读取并运行脚本,构建脚本功能的菜单可视化窗口,进而基于菜单可视化窗口进行可视化的三维可交互软件的开发。
具体的,构建菜单可视化窗口的脚本可以预先编写并保存,进而在开发三维软件时直接读取并运行脚本,来创建单可视化窗口。
具体实施时,为了进一步提高开发过程的可视化,在本实施例中,提出了在创建菜单可视化窗口的过程中,实现功能项和配置文件的可视化,例如,在所述菜单可视化窗口中创建功能窗口,所述功能窗口中以树状功能列表的形式显示有开发三维软件所需的各个所述功能项;在所述菜单可视化窗口中创建配置窗口,所述配置窗口用于显示各个所述功能项对应的配置文件。
具体的,如图2所示,图2示出了菜单可视化窗口形式的开发主界面,在菜单可视化窗口的左侧为功能窗口,该功能窗口主要用于展示开发三维软件所需的各个功能项,供开发软件使用,在图2的功能窗口中可清晰的看到开发所需的各个功能项以树状功能列表的形式显示,在开发过程中,运行上述基于Unity的三维软件开发方法的设备,针对每个功能项,可以接收点击、信息指令等不同形式的配置指令。该功能窗口可以是树状结构分级窗口。
具体的,如图2所示,在菜单可视化窗口的右侧为配置窗口,该配置窗口用于显示当前配置的功能项对应的配置文件,以接收针对配置文件中各个信息项输入的相关配置信息。该配置窗口可以是子功能窗口。
具体实施时,上述接收的针对配置文件中各个信息项输入的相关配置信息可以是文字、字符、图片、视频等多种形式的信息。
具体实施时,为了满足不同的开发需求,上述功能项可以是开发三维软件的任意功能所需的功能项,例如,如图2所示,功能项可以是设备设定项、画质设定项、登录界面配置项、交互操作项(或称为操作手柄定义)、配置场景项(或称为配置课件场景)、对象配置项(或称为操作对象配置)、节点配置项(或称为培训课件)以及考核课件项等等。具体应用时,可根据具体开发需求添加不同的功能项。还可以将多个相关的功能项设置在一个可展开的大的功能项中,例如,如图2所示,将登录界面配置项、交互操作项(或称为操作手柄定义)、配置场景项(或称为配置课件场景)、对象配置项(或称为操作对象配置)等功能项设置在试验制作项中,通过点击试验制作项来展开显示登录界面配置项、交互操作项(或称为操作手柄定义)、配置场景项(或称为配置课件场景)、对象配置项(或称为操作对象配置)等具体的功能项。还例如,将节点配置项(或称为培训课件)以及考核课件项设置在试验课件添加项中。
具体实施时,各个功能项对应的配置文件可以包括实现功能项的对应功能所需的信息项,各个信息项支持通过输入或选择备选信息等方式输入配置信息。
具体实施时,为了实现可视化、快速的完成三维交互软件的开发,在本实施例中,提供了显示各个功能项的配置文件的方法,例如,
所述功能项包括设备设定项,接收对所述设备设定项的配置指令,显示所述设备设定项对应的配置文件,所述设备设定项对应的配置文件包括开发环境的信息项;基于接收的设备设定项对应的配置文件中各个信息项的不同的配置信息,可以生成适用不同设备开发三维软件所需要的开发环境;例如,如图2所示,在开发过程中,接收点击、信息指令等形式的请求配置设备设定项的指令,响应于该指令,在配置窗口中显示设备设定项对应的配置文件,以接收针对配置文件中的信息项输入的相关配置信息,信息项可以包括发布平台类型等开发环境信息,以便可以针对SDK和设备等不同的开发设备接收针对配置文件的信息项输入的配置信息,以实现根据接收的配置信息生成当前开发环境,还可以通过配置文件的不同的配置信息生成不同开发设备所需要的开发环境,以实现可以灵活切换不同开发设备所需要的开发环境。
所述功能项包括画质设定项,接收对所述画质设定项的配置指令,显示所述画质设定项对应的配置文件,所述画质设定项对应的配置文件包括生成三维软件的画质所需的信息项;例如,在开发过程中,接收点击、信息指令等形式的请求配置画质设定项的指令,响应于该指令,在配置窗口中显示画质设定项对应的配置文件,以接收针对配置文件中的信息项输入的相关配置信息,信息项可以包括分辨率、色谱值等生成画质的相关信息,以便根据接收的不同的配置信息生成动画画面的不同的画质,以实现动画画面的画质调整。
所述功能项包括登录界面配置项,接收对所述登录界面配置项的配置指令,显示所述登录界面配置项对应的配置文件,所述登录界面配置项对应的配置文件包括生成三维软件的登录界面所需的信息项;例如,如图3所示,在开发过程中,接收点击、信息指令等形式的请求配置登录界面配置项的指令,响应于该指令,在配置窗口中显示登录界面配置项对应的配置文件,以接收针对配置文件中的信息项输入的相关配置信息,信息项可以包括创建登录场景、预制体路径、接口等登录相关信息,以便根据接收的对配置文件的信息项输入的不同的配置信息,生成不同的登录界面,例如,可以根据接收的配置文件的配置信息读取预制的登录界面或者生成自定义的UI界面,来满足不同的登录需求。
所述功能项包括交互操作项,接收对所述交互操作项的配置指令,显示所述交互操作项对应的配置文件,所述交互操作项对应的配置文件包括生成当前开发环境下的交互操作所需的信息项;例如,如图4所示,在开发过程中,接收点击、信息指令等形式的请求配置交互操作项的指令,响应于该指令,在配置窗口中显示交互操作项对应的配置文件,以接收针对配置文件中的信息项输入的相关配置信息,信息项可以包括交互对象的定义、操作功能、交互类型等交互相关信息,以便可以根据接收的针对配置文件的信息项输入的不同的配置信息,以基于配置文件的不同的配置信息生成、实现不同类型的交互功能,满足生成不同交互操作的需求。例如,交互对象以VR的手柄为例,通过配置文件的相关配置信息可以实现在当前开发环境下,生成、实现VR的手柄的案件定义和操作的功能。
所述功能项包括配置场景项,接收对所述配置场景项的配置指令,显示所述配置场景项对应的配置文件,所述配置场景项对应的配置文件包括生成三维软件的制作场景所需的信息项;例如,如图5所示,在开发过程中,接收点击、信息指令等形式的请求对配置场景项进行配置的指令,响应于该指令,在配置窗口中显示配置场景项对应的配置文件,以接收针对配置文件中的信息项输入的相关配置信息,信息项可以包括创建场景、创建物体等场景所需的相关信息,以便可以根据接收的针对配置文件的信息项输入的不同的配置信息,生成不同的场景,并对场景进行管理,生成配置化的界面,以满足不同场景的构建需求。
所述功能项包括对象配置项,接收对所述对象配置项的配置指令,显示所述对象配置项对应的配置文件,所述对象配置项对应的配置文件包括生成三维软件的所有操作对象所需的信息项;例如,如图6所示,在开发过程中,接收点击、信息指令等形式的请求配置对象配置项的指令,响应于该指令,在配置窗口中显示对象配置项对应的配置文件,以接收针对配置文件中的信息项输入的相关配置信息,信息项可以包括创建对象、创建工具预制体、资源管理等创建对象的相关信息,以便可以根据接收的针对配置文件的信息项输入的不同的配置信息,生成不同的对象并管理对象,包括模型、音频、文字、视频等资源的管理,以满足不同对象的构建需求。
所述功能项包括节点配置项,接收对所述节点配置项的配置指令,显示所述节点配置项对应的配置文件,所述节点配置项对应的配置文件包括生成三维软件的业务流程节点所需的信息项,以创建业务流程节点,每个业务流程节点包括操作对象完成交互操作的动态过程,生成业务流程节点的链式流程图。例如,如图7所示,在开发过程中,接收点击、信息指令等形式的请求配置节点配置项的指令,响应于该指令,在配置窗口中显示节点配置项对应的配置文件,以接收针对节点配置项的配置文件中的信息项输入的相关配置信息,信息项可以包括指定操作对象、指定交互功能或者操作类型等流程节点的相关信息,使得节点配置项的配置文件的各个信息项定义在某个业务流程节点中一个或多个操作对象完成某个交互操作的动态过程,例如,用螺丝刀旋转螺丝钉的动态过程,以便可以根据接收的针对配置文件的信息项输入的不同的配置信息,构建不同的业务流程节点,基于配置文件的配置信息可以实现一键创建业务流程节点,进而生成业务流程节点的链式流程图。
具体的,针对链式流程图中的每个业务流程节点,点击任意一个业务流程节点,可以获取并显示该节点下的所联系到的操作配置、使用的资源对象、触发交互的方式、公开的节点内部、各个事件接口等相关信息。
具体实施时,上述功能项还可以包括考核课件项,如图8所示,在开发过程中,接收点击、信息指令等形式的请求配置考核课件项的指令,响应于该指令,在配置窗口中显示考核课件项对应的配置文件,以接收针对配置文件中的信息项输入的相关配置信息,信息项可以包括创建考核节点、步骤、考核内容等考核的相关信息,以便根据接收的针对配置文件的信息项输入的配置信息,生成开发考核的可视化界面。
具体实施时,为了实现可以在各个业务流程节点上灵活地添加数据上报的接口功能,在本实施例中,提出了通过以下方式添加数据上报的接口功能:所述功能项还包括埋点设定项,接收对所述埋点设定项的配置指令,显示所述埋点设定项对应的配置文件,所述埋点设定项对应的配置文件包括控制业务流程节点上报数据所需的信息项;根据接收的所述埋点设定项对应的配置文件中对指定的业务流程节点的配置信息,基于事件回调函数将指定的业务流程节点的数据上报。
具体的,在开发过程中,接收点击、信息指令等形式的请求配置埋点设定项的指令,响应于该指令,在配置窗口中显示埋点设定项对应的配置文件,以便接收对配置文件中的信息项输入的相关配置信息,信息项可以包括业务流程节点标识、上报数据项等数据上报的相关信息,以便通过接收的配置文件的配置信息控制不同的业务流程节点上报数据,实现在不同业务流程节点上灵活地添加数据上报的接口功能。
具体实施时,接收各个功能项的配置文件的配置信息后,可以基于配置信息生成三维软件,例如,可以调用Unity中的SDK软件包,根据接收的所述画质设定项对应的配置文件中各个信息项的配置信息,生成三维软件的动画画质;可以调用脚本程序,根据接收的所述交互操作项对应的配置文件中各个信息项的配置信息,生成当前开发环境下的交互操作(具体的,可以预先编写并保存脚本程序,以便直接调用该脚本程序根据交互操作项对应的配置文件中各个信息项的配置信息,生成交互操作);可以调用Unity中的模型解析组件,调用Unity中的文件解析组件,解析所述节点配置项对应的配置文件,获取接收的所述节点配置项对应的配置文件中各个信息项的配置信息,调用Unity中的Dotween(缓动动画)插件,根据获取的配置信息生成每个业务流程节点的操作对象完成交互操作的动画效果;调用Unity中的SDK(软件开发工具包)软件包,根据所述动画效果渲染生成每个业务流程节点的动画画面;
调用Unity中的GameFramework(用于生成游戏框架的插件)插件,根据各个业务流程节点的创建顺序,控制各个业务流程节点之间的流程顺序,以控制业务流程节点的流程步骤,以生成三维软件的业务流程的程序框架。
具体实施时,可以使用(调用)Unity中的Scriptableobject作为流程内容数据存储,如图9所示,文件内容显示了可视化编辑下的数据存储方式,每一步流程节点的配置化开发展示如图10所示,增强了软件的业务流程的开发过程可视化。
具体实施时,通过接收配置信息得到配置后的配置文件之后,可以使用Unity底层的解析API去读取和执行配置文件,上述基于Unity的三维软件开发方法以插件的形式运行在Unity上,可以提供一套可视化的配置方式,通过插件接收自定义的配置化信息;在软件运行期间,通过该插件内部的代码执行配置信息,以达到开发、运行软件功能的目的。
其中,Unity的Odin Inspector插件提供了可视化的GUI层的代码API,上述基于Unity的三维软件开发方法可以调用Odin Inspector插件,使用其中的一部分API完成菜单可视化窗口的编辑功能;Unity的Dotween插件提供了软件中所需的各种元素,包括图片、文字、物体等资源的移动、旋转、大小变化等效果;各种文字资源、视频资源、音频资源、模型资源,则上述基于Unity的三维软件开发方法可以调用Unity的文字解析API、视频解析API组件、音频解析API组件等组件来解析节点配置项对应的配置文件,获得配置信息,进而调用Unity中的Dotween插件,根据获取的配置信息生成每个业务流程节点的操作对象完成交互操作的动画效果;再调用Unity中的SDK软件包,根据所述动画效果渲染生成每个业务流程节点的动画画面,以实现业务流程节点的构建;Unity的GameFramework插件提供了流程管控的基本功能,上述基于Unity的三维软件开发方法可以调用GameFramework插件,根据各个业务流程节点的创建顺序,控制各个业务流程节点之间的流程顺序,实现软件开发流程控制的需求。
具体实施时,上述基于Unity的三维软件开发方法可以通过编辑器插件的形式应用在Unity中,具体的,通过计算机、服务器等设备运行Unity时运行上述基于Unity的三维软件开发方法,以实现自动、可视化、快速的开发三维软件。
具体实施时,在Unity中运行上述基于Unity的三维软件开发方法的过程包括以下步骤:
步骤一:将上述基于Unity的三维软件开发方法的插件导入unity开发编辑器中,等待导入完毕;
步骤二:响应于对上方菜单栏“格如林”按钮-Login按钮的点击,接收授权的账号,以实现登录,进而进入基于上述基于Unity的三维软件开发方法的插件开发软件的过程;
步骤三:响应于对“设备设定项”的点击,接收“设备设定项”的配置文件的配置信息,进而根据接收的配置信息针对开发设备生成开发环境,基于接收的不同的配置信息可以实现切换不同的开发环境;
步骤四:响应于对点击“画质设定项”的点击,接收“画质设定项”的配置文件的配置信息,进而根据接收的配置信息生成、调整软件的画质;
步骤五:响应于对点击“实验制作”的点击,展开显示“登录界面配置项”、“交互操作项”、“配置场景项”、“对象配置项”、“节点配置项”等五大功能体系的功能项,根据接收的“登录界面配置项”的配置文件的配置信息,可以读取预制的登录或者生成自定义的UI界面,包括功能和接口也会在预制体界面中展现出来,供开发使用;根据接收的“交互操作项”的配置文件的配置信息,可以生成交互对象和交互操作功能,例如,生成VR的手柄的案件定义和操作的功能;根据接收的“配置场景项”的配置文件的配置信息,生成三维软件的场景,并对场景管理,生成配置化的界面;根据接收的“对象配置项”的配置文件的配置信息,生成三维软件的所有对象并管理,包括模型、音频、文字、视频等资源的管理;根据接收的“节点配置项”的配置文件的配置信息,创建业务流程节点,基于接收的配置文件的配置信息,可以一键创建业务流程节点,生成业务流程节点的链式流程图,实现自动、快速的软件开发,通过点击任意一个业务流程节点,可以获取并显示该节点下的所联系到的操作配置、使用的资源对象、触发交互的方式、公开的节点内部各个事件接口等信息;
步骤六:响应于对“埋点设定项”的点击,基于接收的配置文件的配置信息,控制某个业务流程节点上报数据。
在本实施例中,提供了一种计算机设备,如图11所示,包括存储器1101、处理器1102及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意的基于Unity的三维软件开发方法。
具体的,该计算机设备可以是计算机终端、服务器或者类似的运算装置。
在本实施例中,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述任意的基于Unity的三维软件开发方法的计算机程序。
具体的,计算机可读存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机可读存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读存储介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
基于同一发明构思,本发明实施例中还提供了一种基于Unity的三维软件开发装置,如下面的实施例所述。由于基于Unity的三维软件开发装置解决问题的原理与基于Unity的三维软件开发方法相似,因此基于Unity的三维软件开发装置的实施可以参见基于Unity的三维软件开发方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图12是本发明实施例的基于Unity的三维软件开发装置的一种结构框图,如图12所示,该装置包括:
可视化窗口创建模块1201,用于读取并运行脚本,创建菜单可视化窗口,其中,所述菜单可视化窗口中显示有开发三维软件所需的各个功能项;
信息接收模块1202,用于接收对各个所述功能项的配置指令,响应于所述指令显示各个所述功能项对应的配置文件,并接收针对所述配置文件中各个所述信息项输入的配置信息,其中,所述配置文件包括实现功能项所需的信息项;
开发模块1203,用于基于接收的各个所述功能项对应的配置文件中各个所述信息项的配置信息,生成三维软件。
在一个实施例中,可视化窗口创建模块,用于调用Unity中的OdinInspector编辑器插件,读取并运行脚本,构建所述菜单可视化窗口。
在一个实施例中,可视化窗口创建模块,用于在所述菜单可视化窗口中构建功能窗口,在所述功能窗口中以树状功能列表的形式显示有开发三维软件所需的各个所述功能项;在所述菜单可视化窗口中构建配置窗口,所述配置窗口用于显示各个所述功能项对应的配置文件。
在一个实施例中,信息接收模块,用于所述功能项包括设备设定项,接收对所述设备设定项的配置指令,显示所述设备设定项对应的配置文件,所述设备设定项对应的配置文件包括生成开发环境所需的信息项;所述功能项包括画质设定项,接收对所述画质设定项的配置指令,显示所述画质设定项对应的配置文件,所述画质设定项对应的配置文件包括生成三维软件的画质所需的信息项;所述功能项包括登录界面配置项,接收对所述登录界面配置项的配置指令,显示所述登录界面配置项对应的配置文件,所述登录界面配置项对应的配置文件包括生成三维软件的登录界面所需的信息项;所述功能项包括交互操作项,接收对所述交互操作项的配置指令,显示所述交互操作项对应的配置文件,所述交互操作项对应的配置文件包括生成当前开发环境下的交互操作所需的信息项;所述功能项包括配置场景项,接收对所述配置场景项的配置指令,显示所述配置场景项对应的配置文件,所述配置场景项对应的配置文件包括生成三维软件的制作场景所需的信息项;所述功能项包括对象配置项,接收对所述对象配置项的配置指令,显示所述对象配置项对应的配置文件,所述对象配置项对应的配置文件包括生成三维软件的所有操作对象所需的信息项;所述功能项包括节点配置项,接收对所述节点配置项的配置指令,显示所节点配置项对应的配置文件,所述节点配置项对应的配置文件包括构建三维软件的业务流程节点所需的信息项,每个业务流程节点包括操作对象完成交互操作的动态过程。
在一个实施例中,上述装置还包括:
数据上报模块,用于所述功能项还包括埋点设定项,接收对所述埋点设定项的配置指令,显示所述埋点设定项对应的配置文件,所述埋点设定项对应的配置文件包括控制业务流程节点上报数据所需的信息项;根据接收的所述埋点设定项对应的配置文件中对指定的业务流程节点的配置信息,基于事件回调函数将指定的业务流程节点的数据上报。
在一个实施例中,开发模块,用于调用Unity中的SDK软件包,根据接收的所述画质设定项对应的配置文件中的配置信息,生成三维软件的动画画质。
在一个实施例中,开发模块,用于调用脚本程序,根据接收的所述交互操作项对应的配置文件中的配置信息,生成当前开发环境下的交互操作;调用Unity中的模型解析组件,根据接收的所述对象配置项对应的配置文件中的配置信息,生成所述三维软件的所有操作对象,并对所有操作对象的相关资源进行管理;调用Unity中的文件解析组件,解析所述节点配置项对应的配置文件,获取接收的所述节点配置项对应的配置文件中的配置信息,调用Unity中的Dotween插件,根据获取的配置信息生成每个业务流程节点的操作对象完成交互操作的动画效果;调用Unity中的SDK软件包,根据所述动画效果渲染生成每个业务流程节点的动画画面;调用Unity中的GameFramework插件,根据各个业务流程节点的创建顺序,控制各个业务流程节点之间的流程顺序。
本发明实施例实现了如下技术效果:提出了读取并运行脚本,来创建菜单可视化窗口,创建的菜单可视化窗口中显示有开发三维软件所需的各个功能项,进而接收对各个功能项的配置指令,响应于指令显示各个功能项对应的配置文件,接收针对所述配置文件中各个所述信息项输入的配置信息,最后,基于接收的各个所述功能项对应的配置文件中各个所述信息项的配置信息,生成三维软件。提供了一种基于配置文件接收配置信息,并根据接收的配置信息自动生成三维软件的方法,即实现了为三维软件的开发提供了自动开发三维软件的方法,在开发过程中,直接基于各个功能项对应的配置文件接收配置信息后,即可根据配置信息自动、快速的开发软件,实现了编辑式的三维软件开发,使得无需手动创建程序结构、代码,也不需要开发者具备编程思维能力和业务逻辑向程序框架转化的能力,进而降低了开发门槛、也有利于提升Unity开发软件的效率;同时,整个开发过程均是基于可视化窗口进行的,实现了开发框架、开发流程的可视化,增强了开发过程的可视化,有利于进一步提高开发效率,同时方便开发的后期维护。
显然,本领域的技术人员应该明白,上述的本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明实施例不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于Unity的三维软件开发方法,其特征在于,包括:
读取并运行脚本,创建菜单可视化窗口,其中,所述菜单可视化窗口中显示有开发三维软件所需的各个功能项;
接收对各个所述功能项的配置指令,响应于所述指令显示各个所述功能项对应的配置文件,并接收针对所述配置文件中各个信息项输入的配置信息,其中,所述配置文件包括实现功能项所需的信息项;
基于接收的各个所述功能项对应的配置文件中各个所述信息项的配置信息,生成三维软件。
2.如权利要求1所述的基于Unity的三维软件开发方法,其特征在于,读取并运行脚本,创建菜单可视化窗口,包括:
调用Unity中的OdinInspector编辑器插件,读取并运行脚本,构建所述菜单可视化窗口。
3.如权利要求1所述的基于Unity的三维软件开发方法,其特征在于,创建所述菜单可视化窗口,包括:
在所述菜单可视化窗口中构建功能窗口,所述功能窗口中以树状功能列表的形式显示有开发三维软件所需的各个所述功能项;
在所述菜单可视化窗口中构建配置窗口,所述配置窗口用于显示各个所述功能项对应的配置文件。
4.如权利要求1至3中任一项所述的基于Unity的三维软件开发方法,其特征在于,接收对各个所述功能项的配置指令,响应于所述指令显示各个所述功能项对应的配置文件,包括:
所述功能项包括设备设定项,接收对所述设备设定项的配置指令,显示所述设备设定项对应的配置文件,所述设备设定项对应的配置文件包括生成开发环境所需的信息项;
所述功能项包括画质设定项,接收对所述画质设定项的配置指令,显示所述画质设定项对应的配置文件,所述画质设定项对应的配置文件包括生成所述三维软件的画质所需的信息项;
所述功能项包括登录界面配置项,接收对所述登录界面配置项的配置指令,显示所述登录界面配置项对应的配置文件,所述登录界面配置项对应的配置文件包括生成所述三维软件的登录界面所需的信息项;
所述功能项包括交互操作项,接收对所述交互操作项的配置指令,显示所述交互操作项对应的配置文件,所述交互操作项对应的配置文件包括生成当前开发环境下的交互操作所需的信息项;
所述功能项包括配置场景项,接收对所述配置场景项的配置指令,显示所述配置场景项对应的配置文件,所述配置场景项对应的配置文件包括生成所述三维软件的制作场景所需的信息项;
所述功能项包括对象配置项,接收对所述对象配置项的配置指令,显示所述对象配置项对应的配置文件,所述对象配置项的配置文件包括生成所述三维软件的所有操作对象所需的信息项;
所述功能项包括节点配置项,接收对所述节点配置项的配置指令,显示所述节点配置项对应的配置文件,所述节点配置项对应的配置文件包括创建所述三维软件的业务流程节点所需的信息项,每个业务流程节点包括操作对象完成交互操作的动态过程。
5.如权利要求4所述的基于Unity的三维软件开发方法,其特征在于,还包括:
所述功能项还包括埋点设定项,接收对所述埋点设定项的配置指令,显示所述埋点设定项对应的配置文件,所述埋点设定项对应的配置文件包括控制业务流程节点上报数据所需的信息项;
根据接收的所述埋点设定项对应的配置文件中对指定的业务流程节点的配置信息,基于事件回调函数将所述指定的业务流程节点的数据上报。
6.如权利要求4所述的基于Unity的三维软件开发方法,其特征在于,基于接收的各个所述功能项对应的配置文件中各个所述信息项的配置信息,生成三维软件,包括:
调用Unity中的SDK软件包,根据接收的所述画质设定项对应的配置文件中各个信息项的配置信息,生成所述三维软件的动画画质。
7.如权利要求4所述的基于Unity的三维软件开发方法,其特征在于,基于接收的各个所述功能项对应的配置文件中各个所述信息项的配置信息,生成三维软件,包括:
调用脚本程序,根据接收的所述交互操作项对应的配置文件中各个信息项的配置信息,生成当前开发环境下的交互操作;
调用Unity中的模型解析组件,根据接收的所述对象配置项对应的配置文件中各个信息项的配置信息,生成所述三维软件的所有操作对象,并对所有操作对象的相关资源进行管理;
调用Unity中的文件解析组件,解析所述节点配置项对应的配置文件,获取接收的所述节点配置项对应的配置文件中各个信息项的配置信息,调用Unity中的Dotween插件,根据获取的配置信息生成每个业务流程节点的操作对象完成交互操作的动画效果;调用Unity中的SDK软件包,根据所述动画效果渲染生成每个业务流程节点的动画画面;
调用Unity中的GameFramework插件,根据各个业务流程节点的创建顺序,控制各个业务流程节点之间的流程顺序。
8.一种基于Unity的三维软件开发装置,其特征在于,包括:
可视化窗口创建模块,用于读取并运行脚本,创建菜单可视化窗口,其中,所述菜单可视化窗口中显示有开发三维软件所需的各个功能项;
信息接收模块,用于接收对各个所述功能项的配置指令,响应于所述指令显示各个所述功能项对应的配置文件,并接收针对所述配置文件中各个信息项输入的配置信息,其中,所述配置文件包括实现功能项所需的信息项;
开发模块,用于基于接收的各个所述功能项对应的配置文件中各个所述信息项的配置信息,生成三维软件。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的基于Unity的三维软件开发方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1至7中任一项所述的基于Unity的三维软件开发方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211670476.7A CN115640044B (zh) | 2022-12-26 | 2022-12-26 | 基于Unity的三维软件开发方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211670476.7A CN115640044B (zh) | 2022-12-26 | 2022-12-26 | 基于Unity的三维软件开发方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115640044A true CN115640044A (zh) | 2023-01-24 |
CN115640044B CN115640044B (zh) | 2023-03-21 |
Family
ID=84949783
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211670476.7A Active CN115640044B (zh) | 2022-12-26 | 2022-12-26 | 基于Unity的三维软件开发方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115640044B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107833277A (zh) * | 2017-10-16 | 2018-03-23 | 华南理工大学 | 一种基于unity3D的全景漫游场景编辑方法 |
CN110286900A (zh) * | 2019-06-28 | 2019-09-27 | 北京金山安全软件有限公司 | 基于Unity的配置方法、装置及设备 |
CN110503581A (zh) * | 2019-07-15 | 2019-11-26 | 浙江兴土桥梁临时钢结构工程有限公司 | 基于Unity3D的可视化培训系统 |
CN111524221A (zh) * | 2020-03-24 | 2020-08-11 | 常州工学院 | 基于Unity平台的虚拟仿真实验制作系统 |
CN111553967A (zh) * | 2020-04-26 | 2020-08-18 | 苏州沁游网络科技有限公司 | 一种基于Unity的动画资源文件制作方法、模块及存储介质 |
CN111563942A (zh) * | 2019-01-25 | 2020-08-21 | 上海原品网络科技有限公司 | 一种基于Unity3D游戏开发方法 |
US20210019944A1 (en) * | 2019-07-16 | 2021-01-21 | Robert E. McKeever | Systems and methods for universal augmented reality architecture and development |
-
2022
- 2022-12-26 CN CN202211670476.7A patent/CN115640044B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107833277A (zh) * | 2017-10-16 | 2018-03-23 | 华南理工大学 | 一种基于unity3D的全景漫游场景编辑方法 |
CN111563942A (zh) * | 2019-01-25 | 2020-08-21 | 上海原品网络科技有限公司 | 一种基于Unity3D游戏开发方法 |
CN110286900A (zh) * | 2019-06-28 | 2019-09-27 | 北京金山安全软件有限公司 | 基于Unity的配置方法、装置及设备 |
CN110503581A (zh) * | 2019-07-15 | 2019-11-26 | 浙江兴土桥梁临时钢结构工程有限公司 | 基于Unity3D的可视化培训系统 |
US20210019944A1 (en) * | 2019-07-16 | 2021-01-21 | Robert E. McKeever | Systems and methods for universal augmented reality architecture and development |
CN111524221A (zh) * | 2020-03-24 | 2020-08-11 | 常州工学院 | 基于Unity平台的虚拟仿真实验制作系统 |
CN111553967A (zh) * | 2020-04-26 | 2020-08-18 | 苏州沁游网络科技有限公司 | 一种基于Unity的动画资源文件制作方法、模块及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115640044B (zh) | 2023-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10691303B2 (en) | Immersive virtual environment (IVE) tools and architecture | |
US11481948B2 (en) | Method, device and storage medium for generating animation group by synthesizing animation layers based on tree structure relation between behavior information and sub-behavior information | |
CN107393013B (zh) | 虚拟漫游文件生成、显示方法、装置、介质、设备和系统 | |
CN107506517B (zh) | 建筑模型显示、数据处理方法、装置、介质、设备和系统 | |
US20190065028A1 (en) | Agent-based platform for the development of multi-user virtual reality environments | |
CN109242934B (zh) | 一种动画代码的生成方法及设备 | |
WO2015000054A1 (en) | System and method for streamlining user interface development | |
CN110633436B (zh) | 可视化、自定义全景编辑方法、系统、存储介质及设备 | |
GB2536351A (en) | Creating sustainable innovation platforms based on service first and service now approach | |
US11645803B2 (en) | Animation effect reproduction | |
CN116452786B (zh) | 虚拟现实内容的生成方法、系统、计算机设备及存储介质 | |
CN115640044B (zh) | 基于Unity的三维软件开发方法、装置、设备及介质 | |
CN115311399A (zh) | 图像渲染方法、装置、电子设备以及存储介质 | |
Hirayama et al. | Web-based interactive 3D educational material development framework and its authoring functionalities | |
US11797719B2 (en) | Dynamic preview generation in a product lifecycle management environment | |
CN114241094A (zh) | 动画绘制方法、装置、存储介质及电子设备 | |
Okada | Web version of IntelligentBox (WebIB) for development of web 3D educational contents | |
Dörner et al. | Building 3D applications with 3D components and 3D frameworks | |
CN116661767B (zh) | 文件生成方法、装置、设备以及存储介质 | |
CN116360778B (zh) | 一种基于图像化编程平台的ai仿真教学方法及系统 | |
US11989509B2 (en) | Generative adversarial network implemented digital script modification | |
CN113438541B (zh) | 一种视点动画生成方法、装置、设备和存储介质 | |
Khundam et al. | Storytelling platform for virtual museum development: Lifecycle management of an exhibition | |
CN117348856A (zh) | 特效素材包生成方法、装置、设备及计算机介质 | |
Gribova et al. | Control of Virtual Scenes |
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 |