CN108553899A - 一种即点即玩游戏的开发装置及其方法 - Google Patents
一种即点即玩游戏的开发装置及其方法 Download PDFInfo
- Publication number
- CN108553899A CN108553899A CN201810252977.0A CN201810252977A CN108553899A CN 108553899 A CN108553899 A CN 108553899A CN 201810252977 A CN201810252977 A CN 201810252977A CN 108553899 A CN108553899 A CN 108553899A
- Authority
- CN
- China
- Prior art keywords
- module
- rendering
- game
- data
- event
- 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
Links
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating 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
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/53—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
- A63F2300/538—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for performing operations on behalf of the game client, e.g. rendering
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/6009—Methods for processing data by generating or executing the game program for importing or creating game content, e.g. authoring tools during game development, adapting content to different platforms, use of a scripting language to create content
Abstract
本发明公开了一种即点即玩游戏的开发装置及其方法,所述开发装置包括游戏引擎模块,还包括装置基类模块、初始化模块和程序模块组件;所述程序模块组件包括渲染对象模块、数据对象模块和逻辑对象模块;在所述即点即玩游戏开始运行前,所述开发装置将所述渲染对象模块、数据对象模块、逻辑对象模块的代码首先进行整合编译运行操作。应用本发明的开发装置及开发方法,能够降低开发者无谓的精力消耗,并提高开发者的产出代码质量。
Description
技术领域
本发明涉及计算机应用软件开发技术,尤其涉及一种即点即玩游戏的开发装置及其方法。
背景技术
现有的游戏引擎多采用命令式编程语言开发,如JavaScript、C#等进行表现层的开发。但这类命令式编程语言并不适合用来搭建表现层,与HTML/XML这类适合搭建表现层的标记语言相比,后者产出的代码更易于人类阅读和维护,而且代码量更小。
相较于标记式语言,为了实现同样的表现,采用命令式编程语言需要耗费大量的精力去用来:思考变量名、如何存储、何时创建何时释放、如何缓存能满足需求同时提高性能、如何避免泄露、如何抽象局部渲染函数等。这些工作在开发者实现每个程序功能、每个组件是都要重复的思考,基于需求和开发者自身的状态变化,产出的代码就有很大的概率出现问题,且这些问题往往很隐蔽,测试很难覆盖到。而产生的问题会随着游戏发布后被放大,降低玩家体验。
现存的游戏引擎里,有的只是提供了渲染接口,有的是提供组件级别的组织方案,但并还没有提供一个良好的、用于组织程序组件内部代码的解决方案。把如何组织功能/组件内部的代码交给开发者,就会放大命令式编程语言开发表现层的问题,导致产出的代码有可能混乱不堪,一段代码可能同时涉及到了对表现、数据、逻辑的操作,需要开发者花费较大的精力去理解每一行代码分别处理的事情,甚至经常出现无法维护只能重写的境地。目前市面上大部分的游戏上线后,会进行快速迭代,满足玩家的需求。这种难于维护的代码无法满足市场需求。
尽管HTML/XML这种标记式语言适合编写表现层,但利用它们实现游戏渲染,还有需要有一套解决方案和程序模块来支持,使得它们可以运行在游戏引擎中。但目前还没有相关的实现技术。
发明内容
有鉴于此,本发明的主要目的在于提供一种即点即玩游戏的开发装置及其方法,以降低开发者无谓的精力消耗,并提高开发者的产出代码质量。
为达到上述目的,本发明的技术方案是这样实现的:
一种即点即玩游戏的开发装置,包括游戏引擎模块,还包括装置基类模块、初始化模块和程序模块组件;所述程序模块组件包括渲染对象模块、数据对象模块和逻辑对象模块;在所述即点即玩游戏开始运行前,所述开发装置将所述渲染对象模块、数据对象模块、逻辑对象模块的代码首先进行整合编译运行操作;
所述渲染对象模块,包括渲染解析模块、事件处理模块和渲染更新模块;其中,渲染解析模块,用于将XML标签解析为BAMBOO实例,生成求值函数,并注册对应的事件;事件处理模块,用于接收游戏运行设备给出的事件,找到渲染解析模块中已注册该事件的回调函数,依次执行这些回调函数;渲染更新模块,用于将最新的数据,更新到BAMBOO实例上,从而使游戏画面更新到最新的状态;
所述的数据对象模块,用于定义一个数据对象给渲染对象模块使用;
所述逻辑对象模块,用于将数据对象模块和渲染对象模块联系起来,通过调用两个模块,来实现最终的游戏效果。
其中,所述游戏引擎模块为BAMBOO核心模块。
一种即点即玩游戏的开发方法,该方法包括如下步骤:
A、利用游戏引擎模块创建一个从装置基类模块继承的实例,并通过初始化模块执行初始化方法;
B、对渲染对象模块的XML语法代码进行编译,编译结束后生成多个渲染对象、一个渲染框架、若干个求值函数、若干个事件绑定函数;
C、进行首次渲染对象模块和数据对象模块的绑定,将数据对象模块的数据传入上一步生成的渲染框架,通过渲染框架依次执行所有的渲染实例上的所有求值函数,计算出每个渲染实例最新的渲染属性,然后利用游戏引擎的渲染接口,只设置有变化的渲染属性;
D、执行所有事件绑定函数;如果渲染对象模块代码描述了需要监听点击事件,那么在该开发装置注册一个游戏引擎的点击事件,当点击发生时,执行渲染对象模块代码中绑定的逻辑对象模块的函数;
E、当某个事件发生时,所述事件包括点击、绑定的逻辑对象模块的函数即开始执行、对数据进行更改;数据在改变后,通知渲染对象模块执行生成的渲染框架,根据最新的数据,更新渲染对象模块。
其中,所述步骤B中,所述渲染对象在游戏引擎模块对应渲染接口创建的实例基础上进行扩展,使得每个渲染对象拥有多个求值函数;所述求值函数是从XML标签的属性得来,用来将原始数据转换为渲染数据,提供给游戏引擎模块中的渲染接口;生成的渲染框架内部使用的是依据表现层代码推导出来的、对应的游戏引擎模块中的渲染接口;事件绑定函数则是用来监听游戏引擎模块中对应的事件,当对应事件触发时,执行对应的回调函数。
所述游戏引擎模块,为BAMBOO核心模块。
本发明的即点即玩游戏的开发装置及其方法,具有如下有益效果:
1)将该即点即玩游戏的开发装置内置应用于BAMBOO游戏引擎中,作为其核心特性之一存在,既能够实现表现、数据、逻辑通过装置进行区分解耦功能,又能够做到实现表现层不用命令式编程语言的效果,相较于使用命令式编程语言开发游戏的速度慢、维护难的缺陷,本发明的开发装置的优势显著。
2)现有使用命令式编程语法开发的游戏,具有代码体积大的不足;而目前流行的即点即玩类游戏,却要求加载体积越小越好,因此采用本发明的开发装置及其方法,生成的游戏代码体积小,因而更适合用于开发即点即玩类游戏。
3)本发明采用HTML/XML这类标记语言进行开发,相对于命令式编程语言如C#等的入门门槛低很多,对于企业而言人才更容易招聘,因此能够明显降低游戏开发成本。
附图说明
图1为本发明实施例即点即玩游戏的开发装置架构及其开发过程示意图。
具体实施方式
下面结合附图及本发明的实施例对本发明即点即玩游戏的开发装置及其方法作进一步详细的说明。
图1为本发明实施例即点即玩游戏的开发装置架构及其开发过程示意图。
如图1所示,该即点即玩游戏的开发装置,要求程序以程序模块组件的模式进行开发,每个程序组件由渲染对象模块、数据对象模块、逻辑对象模块三部分组成。其中:
所述渲染对象模块,按照所述开发装置的要求,使用XML的语法进行编写。渲染对象模块,进一步包括渲染解析模块、事件处理模块和渲染更新模块。其中:
渲染解析模块,用于将XML标签解析为BAMBOO实例,生成求值函数,并注册对应的事件。
例如:有如下XML:<sprite x="0"y="{{1+1}}"ontap="alert('clicked')">;
通过该渲染解析模块,会将上述XML解析为一个BAMBOO的Sprite实例,该实例的x坐标为0,y坐标为2。其中XML中y的值是{{1+1}},该模块会把该值生成为一个求值函数function(){return 1+1},在渲染之前,渲染更新模块会执行该求值函数,得到2并赋值给Sprite实例的y属性。与此同时,该模块还会把ontap的值解析为一个匿名函数function(){alert('clicked')},并将该函数作为回调函数,注册到tap点击事件。
事件处理模块,用于接收游戏运行设备给出的事件,如点击、触摸等;同时找到渲染解析模块中已注册该事件的回调函数,依次执行这些回调函数。
例如:有如下XML:<sprite x="0"y="5"ontap="alert('clicked')">;
经过所述渲染解析模块进行解析后,当游戏运行设备发生点击行为时,事件处理模块会通过特定的API监听到,然后事件处理模块会判断点击坐标是否命中该Sprite实例,如果命中就会执行alert('clicked')这段代码,否则忽略这个点击行为。
渲染更新模块,用于将最新的数据,更新到BAMBOO实例上,从而使游戏画面更新到最新的状态。
例如:有如下XML:<sprite x="{{1+1}}">;
已经{{1+1}}会被生成一个求值函数。通过所述渲染更新模块则会在以下情况下调用该函数,进行渲染更新:
1)XML第一次被解析为BAMBOO实例时;
2)任何代码需要更新游戏画面的时候,都可以调用updateView这个方法,渲染更新模块会立刻进行求值函数运算。
在实际游戏里,一个标签有多个属性,也因此可能会有多个求值函数。渲染更新模块会执行全部的求值函数。
所述的数据对象模块,用于定义一个数据对象给渲染对象模块使用。
例如:有如下数据:var data={msg:"你好"};
有如下XML:<text text="{{$.msg}}"></text>;
在通过渲染对象模块解析XML时,会把text的$.msg生成为求值函数:function($){return$.msg}。数据对象data会在求值函数被执行的时候,作为参数传入求值函数辅助求值。
所述逻辑对象模块,用于将数据对象模块和渲染对象模块联系起来,通过调用两个模块,来实现最终的游戏效果。
例如:有如下数据:var data={msg:"等待点击"};
有如下XML:<text text="{{$.msg}}"ontap="$root.onclick()"></text>;
这里,需要用到逻辑对象模块,所述逻辑对象模块的工作过程举例如下:
先引入进两个模块:
import tpl from"package.tpl"
import data from"package.data"
创建一个逻辑对象模块:
var comp=new Comp({
data:data,
tpl:tpl,
onclick:function(){
data.msg="已点击";
this.updateView();}
});
其中,Comp是该开发装置的装置基类模块,在它被创建的过程中,渲染对象模块和数据对象模块开始各自的工作。
逻辑对象模块的主要任务就是负责书写游戏的逻辑,上述代码实现了一个简单的逻辑,点击改变文本内容。当没有发生点击操作时,游戏画面显示的文本为等待点击;当点击发生后,onclick方法对数据对象模块的msg属性进行了修改,同时调用渲染对象模块的updateView方法进行渲染更新,此时便会执行所有的求值函数,得到最新的msg是“已点击”,并更新给text属性,最终游戏画面上的文本更改为“已点击”。利用逻辑对象模块可以基于此机制实现更多更复杂的游戏逻辑。
在所述即点即玩游戏开始运行前,该开发装置将所述渲染对象模块、数据对象模块、逻辑对象模块的代码首先进行整合编译运行操作,具体过程为:
步骤11:利用游戏引擎模块创建一个从装置基类模块继承的实例,并通过初始化模块执行初始化方法。
这里,所述游戏引擎模块,可以是BAMBOO核心模块。
具体为:执行该初始化方法时,首先检测上述渲染对象模块、数据对象模块、逻辑对象模块这三部分的代码是否完整,若不完整,则中断上述过程并抛出错误;若完整,则执行步骤12。
步骤12:执行初始化操作。首先对渲染对象模块(位于表现层)的XML语法代码进行编译,编译结束后生成多个渲染对象、一个渲染方法/渲染框架、若干个求值函数、若干个事件绑定函数。
在本发明实施例中,所述渲染对象在BAMBOO核心模块对应渲染接口创建的实例基础上进行了扩展,使得每个渲染对象拥有多个求值函数。这些函数是从XML标签的属性得来,用来将原始数据转换为渲染数据,提供给BAMBOO游戏引擎中的渲染接口。生成的渲染框架内部使用的是依据表现层代码推导出来的、对应的BAMBOO游戏引擎中的渲染接口。事件绑定函数则是用来监听BAMBOO引擎中对应的事件,当对应事件触发时,执行对应的回调函数。
步骤13:继续执行初始化方法,尝试进行首次渲染对象模块(位于表现层)和数据对象模块(数据层)的绑定,将数据对象模块的数据传入上一步生成的渲染框架,通过渲染框架依次执行所有的渲染实例上的所有求值函数,计算出每个渲染实例最新的渲染属性,然后利用BAMBOO游戏引擎的渲染接口,只设置有变化的渲染属性。
步骤14:初始化方法执行所有事件绑定函数。如果渲染对象模块(表现层)代码描述了需要监听点击事件,那么在这一步,开发装置就会注册一个BAMBOO游戏引擎的点击事件,当点击发生时,就会执行渲染对象模块代码中绑定的逻辑对象模块(逻辑层)的函数。
至此,初始化函数执行完毕,进入等待事件过程。
步骤15:当某个事件发生时,如点击,绑定的逻辑对象模块(逻辑层)的函数即开始执行,对数据进行更改。数据在改变后,通知渲染对象模块(表现层)执行生成的渲染框架,根据最新的数据,更新渲染对象模块(表现层)。
这里,所述开发装置无需开发者关心如何给一个渲染对象模块(表现层)声明变量、何时创建、如何脏渲染等。
这些现有的模块组件内常见的问题,利用本发明的开发装置通过上述架构均可实现规避。
下面我们以一个游戏背包功能的实现,作为本发明的开发装置的一个使用实施例对其应用过程进行进一步说明。
所述背包功能有分类页签,一个列表。
步骤21:通常我们会先根据需求,设计好渲染对象模块(表现部分)需要的数据结构。
由于需要依赖该开发装置,故需引入集成了该开发装置的游戏引擎,如BAMBOO.js引擎。
说明:引入部分(略)。以下仅为数据部分:
步骤22:定义表现代码(其中<!---->中的部分为注释,注释语法和HTML一致)。示例代码中用到的标签简介如下:
<node>:一个空节点,通常用来容纳其他的节点,方便统一进行空间转换;
<sprite>:用来展示图片,通过src属性指定使用的图片的标识,引擎加载原图并将纹理设置给它;
<sprite9>:用来展示9宫格类的图片,可以使用一张较小的图片进行放大缩小;
<tiling>:平铺图;
<scrollview>:滚动列表;
<itemicon>:展示游戏内物品的图标。
标签上可以定义一些通用属性,包括:
x,y:设置节点的坐标;
width,height:定义节点的宽高;
ax,ay:设置节点的锚点位置;
sx,sy:设置节点的缩放;
visible:控制显示隐藏;
repeat:需要指定一个数组数据,该装置会动态的,根据数组的数据数量进行节点的创建,如果将来数据减少,该装置会动态的销毁多余的节点。可以使用$key,$item获取到当前节点使用的数据的下标和数据自身。
标签上还可以绑定一些事件,包括:
ontap,点击该节点时执行。
以下是渲染对象模块(表现层)部分的代码:
本发明实施例通过以上代码实现了如下功能:
a.能够列表展示对应物品;
b.能够点击页签切换不同分类;
c.若当前分类为空,则展示提示文字。
步骤13:最后定义逻辑对象模块(逻辑层部分),所述逻辑对象模块主要用于链接上述两部分。
//引入表现和数据部分的代码
import tpl from"package.tpl"
import data from"package.data"。
创建一个Window组件,该组件继承自该开发装置提供的装置基类模块,在接受到tpl和data后,按前文描述进行解析和绑定等初始化操作。
至此,上述游戏中的背包功能部分开发完毕。可以看到,在本发明实施例中视图、数据、逻辑被强制分为了三部分。编写视图时无需在数据和逻辑层上浪费过多精力,其他部分的编写同理。为了让表现、数据、逻辑三者能有效的结合,该开发装置提供了足够的语法特性,便于互相访问。将来维护时,倘若只需要改动某个位置,就不需要在代码里各种查找,某个元素在哪些地方被改动过位置,依次进行修改。而上述依赖该开发装置产生的代码,只需要直接切到定义表现层的文件,找到对应标签,修改位置即可。
上面的代码总计不到200行。而在之前未使用该开发装置开发同样功能的代码,用了大约600行代码,下面是其中一部分代码:
从上述代码片段可以看出,其中使用了大量的临时变量,4个标签使用了40行代码。若是某个标签需要跨函数访问,则还需考虑如何存储,何时初始化,何时释放的问题,则代码量更为庞大。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (5)
1.一种即点即玩游戏的开发装置,包括游戏引擎模块,其特征在于,还包括装置基类模块、初始化模块和程序模块组件;所述程序模块组件包括渲染对象模块、数据对象模块和逻辑对象模块;在所述即点即玩游戏开始运行前,所述开发装置将所述渲染对象模块、数据对象模块、逻辑对象模块的代码首先进行整合编译运行操作;
所述渲染对象模块,包括渲染解析模块、事件处理模块和渲染更新模块;其中,渲染解析模块,用于将XML标签解析为BAMBOO实例,生成求值函数,并注册对应的事件;事件处理模块,用于接收游戏运行设备给出的事件,找到渲染解析模块中已注册该事件的回调函数,依次执行这些回调函数;渲染更新模块,用于将最新的数据,更新到BAMBOO实例上,从而使游戏画面更新到最新的状态;
所述的数据对象模块,用于定义一个数据对象给渲染对象模块使用;
所述逻辑对象模块,用于将数据对象模块和渲染对象模块联系起来,通过调用两个模块,来实现最终的游戏效果。
2.根据权利要求1所述即点即玩游戏的开发装置,其特征在于,所述游戏引擎模块为BAMBOO核心模块。
3.一种即点即玩游戏的开发方法,其特征在于,该方法包括如下步骤:
A、利用游戏引擎模块创建一个从装置基类模块继承的实例,并通过初始化模块执行初始化方法;
B、对渲染对象模块的XML语法代码进行编译,编译结束后生成多个渲染对象、一个渲染框架、若干个求值函数、若干个事件绑定函数;
C、进行首次渲染对象模块和数据对象模块的绑定,将数据对象模块的数据传入上一步生成的渲染框架,通过渲染框架依次执行所有的渲染实例上的所有求值函数,计算出每个渲染实例最新的渲染属性,然后利用游戏引擎的渲染接口,只设置有变化的渲染属性;
D、执行所有事件绑定函数;如果渲染对象模块代码描述了需要监听点击事件,那么在该开发装置注册一个游戏引擎的点击事件,当点击发生时,执行渲染对象模块代码中绑定的逻辑对象模块的函数;
E、当某个事件发生时,所述事件包括点击、绑定的逻辑对象模块的函数即开始执行、对数据进行更改;数据在改变后,通知渲染对象模块执行生成的渲染框架,根据最新的数据,更新渲染对象模块。
4.根据权利要求3所述即点即玩游戏的开发方法,其特征在于,所述步骤B中,所述渲染对象在游戏引擎模块对应渲染接口创建的实例基础上进行扩展,使得每个渲染对象拥有多个求值函数;所述求值函数是从XML标签的属性得来,用来将原始数据转换为渲染数据,提供给游戏引擎模块中的渲染接口;生成的渲染框架内部使用的是依据表现层代码推导出来的、对应的游戏引擎模块中的渲染接口;事件绑定函数则是用来监听游戏引擎模块中对应的事件,当对应事件触发时,执行对应的回调函数。
5.根据权利要求3或4所述即点即玩游戏的开发方法,其特征在于,所述游戏引擎模块,为BAMBOO核心模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810252977.0A CN108553899A (zh) | 2018-03-26 | 2018-03-26 | 一种即点即玩游戏的开发装置及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810252977.0A CN108553899A (zh) | 2018-03-26 | 2018-03-26 | 一种即点即玩游戏的开发装置及其方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108553899A true CN108553899A (zh) | 2018-09-21 |
Family
ID=63533220
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810252977.0A Pending CN108553899A (zh) | 2018-03-26 | 2018-03-26 | 一种即点即玩游戏的开发装置及其方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108553899A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112965716A (zh) * | 2021-02-01 | 2021-06-15 | 北京三快在线科技有限公司 | 页面处理方法、装置、电子设备及可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004036504A1 (en) * | 2002-10-15 | 2004-04-29 | Nokia Corporation | Three dimensional image processing |
CN105511962A (zh) * | 2015-11-27 | 2016-04-20 | 华为技术有限公司 | 渲染方法和装置 |
CN106345118A (zh) * | 2016-08-24 | 2017-01-25 | 网易(杭州)网络有限公司 | 一种渲染方法及装置 |
-
2018
- 2018-03-26 CN CN201810252977.0A patent/CN108553899A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004036504A1 (en) * | 2002-10-15 | 2004-04-29 | Nokia Corporation | Three dimensional image processing |
CN105511962A (zh) * | 2015-11-27 | 2016-04-20 | 华为技术有限公司 | 渲染方法和装置 |
CN106345118A (zh) * | 2016-08-24 | 2017-01-25 | 网易(杭州)网络有限公司 | 一种渲染方法及装置 |
Non-Patent Citations (1)
Title |
---|
SHERRY暴走小油菜: "3D小游戏开发经验总结:建模、逻辑实现、渲染与玩家控制", 《HTTP://BLOG.SINA.CN/DPOOL/BLOG/S/BLOG_77877F220102X8B9.HTML》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112965716A (zh) * | 2021-02-01 | 2021-06-15 | 北京三快在线科技有限公司 | 页面处理方法、装置、电子设备及可读存储介质 |
CN112965716B (zh) * | 2021-02-01 | 2022-05-03 | 海南两心科技有限公司 | 页面处理方法、装置、电子设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3304286B1 (en) | Data binding dependency analysis | |
US7610545B2 (en) | Annotations for tracking provenance | |
US9268539B2 (en) | User interface component | |
JP4812337B2 (ja) | フォームタイプを使用してフォームを生成する方法および装置 | |
US20070083548A1 (en) | Evaluation and display of temporal descriptions | |
US9524279B2 (en) | Help document animated visualization | |
CN110020307A (zh) | 一种客户端视图的绘制方法和装置 | |
JP2007519104A (ja) | 抽象テストケース表現からの自動テストスクリプトのルールベース生成のための方法及びシステム | |
US9471286B2 (en) | System and method for providing code completion features for code modules | |
CN108920496B (zh) | 一种渲染方法及装置 | |
US20160124645A1 (en) | Visualizations of memory layouts in software programs | |
US11397608B2 (en) | Multi-dimensional spreadsheet system enabling stack based programming using a virtual machine | |
CN102693238B (zh) | Widget应用方法、系统及多媒体终端 | |
CN116974620A (zh) | 应用程序的生成方法、运行方法以及相应的装置 | |
US8935657B2 (en) | Model-to-model transformation by kind | |
Topley | JavaFX Developer's Guide | |
US20140215433A1 (en) | Class oriented file format for modeling and persisting bpmn scripting code | |
US8321845B2 (en) | Extensible markup language (XML) path (XPATH) debugging framework | |
CN108553899A (zh) | 一种即点即玩游戏的开发装置及其方法 | |
CN103678687A (zh) | 基于配置系统的项目创建方法及装置 | |
US9552192B2 (en) | Context-based generation of memory layouts in software programs | |
CN104267954A (zh) | 一种用户界面中所包含的部件的生成方法和装置 | |
Stephens | Start Here! Fundamentals of Microsoft. NET Programming | |
Dantas et al. | Towards aspect-oriented programming for context-aware systems: A comparative study | |
US10353793B2 (en) | Identifying improvements to memory usage of software programs |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180921 |
|
RJ01 | Rejection of invention patent application after publication |