WO2019006937A1 - 一种虚拟礼物展示方法、装置、服务器及存储介质 - Google Patents
一种虚拟礼物展示方法、装置、服务器及存储介质 Download PDFInfo
- Publication number
- WO2019006937A1 WO2019006937A1 PCT/CN2017/108966 CN2017108966W WO2019006937A1 WO 2019006937 A1 WO2019006937 A1 WO 2019006937A1 CN 2017108966 W CN2017108966 W CN 2017108966W WO 2019006937 A1 WO2019006937 A1 WO 2019006937A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- task
- animation
- asynchronous
- gift
- link
- 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.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4312—Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/488—Data services, e.g. news ticker
- H04N21/4882—Data services, e.g. news ticker for displaying messages, e.g. warnings, reminders
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2213/00—Indexing scheme for animation
- G06T2213/08—Animation software package
Definitions
- the present invention relates to the field of Internet broadcast video live broadcast technology, and in particular to a virtual gift display method, device, server and storage medium.
- Live sites sell a variety of virtual goods (often referred to as gifts) that present their animations and interactions when they are presented to the anchor.
- a live room offers several gifts that correspond to different prices.
- a live broadcast room when a user presents a gift, all users who watch the live room will see the special effects of the gift on the page. Display effects are performed in a series of asynchronous animation sequences, and there may be interactions between different animations. For example, a high-priced gift can end an animation of a low-priced gift early.
- an object of the present invention is to provide a virtual gift display method, apparatus, server and storage medium to improve the above problems.
- a preferred embodiment of the present invention provides a virtual gift display method.
- the method includes: generating a task link for a target gift display, the task link including at least one asynchronous corresponding to a display effect of the target gift An animation task; each of the at least one asynchronous animation task is executed in a predefined task execution order; when each of the asynchronous animation tasks is executed, an animation resource is obtained from a resource pool associated with the asynchronous animation task, and according to an advance
- the set execution logic operates the animation resource.
- each asynchronous animation task corresponds to a unique identification string that identifies the asynchronous animation task.
- the step of generating a task link for the target gift presentation may include generating the task link for the target gift presentation in a declarative syntax by a unique identification string corresponding to each asynchronous animation task .
- the generating the task for displaying a target gift in a declarative syntax may include generating the task link for the target gift presentation in a combination of uniquely identifying the string.
- the same asynchronous animation task can be multiplexed by task links for different gift presentations; in two or more task links for different gift presentations, the same Asynchronous animation tasks can share the same resource pool.
- the method further includes: if any asynchronous animation task in another task link is detected to be executed when performing any asynchronous animation task in the task link, stopping the current execution The event waits until the execution of the same asynchronous animation task in the other task link ends before the execution of the event.
- the method further includes: when detecting that the same asynchronous animation task in the other task link is being executed, scheduling the asynchronous animation task by using the scheduling queue.
- a DOM node that sets an animation resource required for an arbitrary target asynchronous animation task can be multiplexed, the method further comprising: passing the DOM node when the target asynchronous animation task needs to be repeatedly executed one after another
- the multiplexing function multiplexes the animation resources acquired from the resource pool when the target asynchronous animation task is executed for the first time, and is used in the subsequent process of repeatedly performing the target asynchronous animation task.
- a virtual gift display device comprising: a task link generation module configured to generate a task link for a target gift presentation, the task link including the target At least one asynchronous animation task of the presenting effect of the gift; the animation task execution module configured to execute each of the at least one asynchronous animation task in a predefined task execution order; the animation resource operation module configured to execute each of the asynchronous When the task is animated, the animation resource is obtained from the resource pool associated with the asynchronous animation task, and the animation resource is operated according to preset execution logic.
- each asynchronous animation task corresponds to a unique identification string that identifies the same; the task link generation module generates a task link for the target gift display, including: A unique identification string corresponding to the asynchronous animation task that generates the task link for the target gift presentation in a declarative syntax.
- the same asynchronous animation task can be multiplexed by task links for different gift presentations; in two or more task links for different gift presentations, the same Asynchronous animation tasks can share the same resource pool.
- the virtual gift display device further includes: an animation task scheduling module configured to detect that if the same asynchronous animation task in another task link is being executed when any asynchronous animation task in the task link is to be executed, The currently executing event is stopped and waits until the execution of the same asynchronous animation task in the other task link ends before the execution of the event.
- an animation task scheduling module configured to detect that if the same asynchronous animation task in another task link is being executed when any asynchronous animation task in the task link is to be executed, The currently executing event is stopped and waits until the execution of the same asynchronous animation task in the other task link ends before the execution of the event.
- a DOM node that sets an animation resource required for an arbitrary target asynchronous animation task can be multiplexed
- the virtual gift display apparatus further includes: an animation resource multiplexing module configured to: when the target asynchronous animation task needs to be repeatedly executed one after another, when the target asynchronous animation task is first executed by multiplexing function of the DOM node The animation resource acquired by the resource pool, and used in the process of subsequently repeating the target asynchronous animation task in succession.
- Another preferred embodiment of the present invention provides a server, including:
- a memory configured to store programs
- a processor configured to, by invoking a program stored in the memory, perform a method comprising: generating a task link for a target gift presentation, the task link including at least a display effect corresponding to the target gift An asynchronous animation task; each of the at least one asynchronous animation task is executed in a predefined task execution order; when each of the asynchronous animation tasks is executed, an animation resource is obtained from a resource pool associated with the asynchronous animation task, and The animation resource is operated according to a preset execution logic.
- Yet another preferred embodiment of the present invention provides a computer readable medium having processor-executable non-volatile program code, the program code causing the processor to perform the virtual gift presentation method described above.
- the virtual gift display method, device, server and storage medium provided by the embodiments of the present invention can be applied to a virtual gift display process in an Internet live broadcast website, which uses a chain of responsibility model to construct a virtual gift display framework, and through resource pool calling and queue scheduling. Achieve efficient and orderly display of gifts on live web sites. Specifically, when the user terminal triggers a gift giving event (the user selects the target gift to be presented to the anchor of the currently viewed live room), a task link for the target gift presentation is generated, and then the task chain is executed in a predefined task execution order.
- Each asynchronous animation task in the road and when executing each asynchronous animation task, acquires an animation resource from a resource pool associated with the asynchronous animation task, and operates the animation resource according to a preset execution logic.
- This virtual gift display method uses the responsibility chain design pattern to build the implementation framework of the gift display process, and generates a task link for the gift display with a declarative grammar, so that the flow of the previous hodge in the code logic is explicitly expressed. Better maintenance and scalability can effectively support the development of the business and enhance the user experience.
- the gift presentation process in the virtual gift presentation method has better applicability, and can perform the next animation task according to a pre-defined order relationship after the execution of the previous animation task is completed, and With better adjustability, when it is necessary to adjust the execution order between different animation tasks in an embodiment, it is only necessary to change the code at the execution order, without having to exchange the entire one as in the existing method.
- the code execution block corresponding to the animation task.
- this virtual gift presentation method can share the same resource pool by implementing the same asynchronous animation task and the same asynchronous animation task can be reused in the task link for different gift presentations, so that the code can be fully reused. It can effectively reduce the range of side effects and reduce the workload of developers during code maintenance.
- the virtual gift presentation method also implements an animation task scheduling, so that two task links having an interaction relationship (such as multiplexing the same asynchronous animation task) can ensure full and effective display of both of them when executed. And can still be based on this To achieve the reuse of animation resources, it is not necessary to repeatedly create and destroy DOM nodes of animation resources, thereby improving the performance of the live broadcast system.
- FIG. 1 is a schematic diagram of a server performing communication interaction with one or more user terminals through a network according to an embodiment of the present invention
- FIG. 2 is a schematic block diagram of a server for executing a virtual gift display method according to an embodiment of the present invention
- FIG. 3 is a flowchart of a virtual gift display method according to an embodiment of the present invention.
- FIG. 4 is a schematic diagram of implementing scheduling of asynchronous animation tasks by using a scheduling queue according to an embodiment of the present invention
- FIG. 5 is a schematic diagram of functional modules of a virtual gift display device according to an embodiment of the present invention.
- Icons 100-server; 200-user terminal; 110-virtual gift display device; 120-memory; 130-processor; 1102-task link generation module; 1104-animation task execution module; 1106-animation resource operation module; - Animated task scheduling module; 1110 - Animation resource multiplexing module.
- FIG. 1 is a schematic diagram of a server 100 performing communication interaction with one or more user terminals 200 through a network according to an embodiment of the present invention.
- the server 100 may be a background server of an Internet live broadcast website (for example, betta), but is not limited thereto.
- the user can watch the webcast provided by the server 100 through the communication interaction between the user terminal 200 and the server 100, and selectively perform user operations (for example, using the virtual gift provided by the live website to reward the anchor).
- the server 100 can be a database server, a web server, or the like.
- the user terminal 200 may be a personal computer, a tablet, a smartphone, or the like.
- FIG. 2 is a block diagram of a server 100 for executing a virtual gift display method according to an embodiment of the present invention.
- the server 100 includes a virtual gift display device 110, a memory 120, and a processor 130. Among them, save The storage device 120 and the processor 130 are electrically connected directly or indirectly to implement data transmission or interaction.
- the virtual gift display device 110 includes at least one software function module that can be stored in the memory 120 or in the operating system of the server 100 in the form of software or firmware.
- the processor 130 is configured to execute executable modules stored in the memory 120, such as software function modules, computer programs, and the like included in the virtual gift display device 110. The processor 130 can execute the computer program upon receiving an execution instruction.
- FIG. 3 is a flowchart of a virtual gift display method according to an embodiment of the present invention. It should be noted that the method provided in this embodiment is not limited to the specific order described in FIG. 3 and the following. The steps shown in Fig. 3 will be explained in detail below.
- Step S101 generating a task link for the target gift display, the task link including at least one asynchronous animation task corresponding to the display effect of the target gift.
- the framework of the gift display implementation process is constructed by using Chain of Responsibility in the design mode. That is, all asynchronous animation tasks of the target gift are assembled into a single "task link", and each asynchronous animation task in the link can be considered a "step.”
- the execution flow of the gift is generated by using a declarative syntax, so that the flow of the pre-mixed code in the code logic can be explicitly expressed, so that the system has better maintainability and expandability.
- the gifts “rocket” and “aircraft” are examples, where the gift “rocket” display process includes four asynchronous animation tasks: take-off - show banner - fall into the treasure chest - display treasure chest and countdown, gift "airplane” display process includes Three asynchronous animation tasks: show banner - fall into the treasure chest - display treasure chest and countdown.
- the program module for implementing the gift "rocket" display process in the prior art is to sequentially list hundreds or even more codes corresponding to the above four asynchronous animation tasks; similarly, the present invention implements the gift "airplane” display process.
- the code module is to list the hundreds of lines or even more codes corresponding to the above three asynchronous animation tasks. It can be seen that this program implementation method is simple and rude, and the maintainability and scalability are poor. For example, when it is necessary to modify the block of the asynchronous animation task "present banner”, it is necessary to modify all the codes of the gift display process including the asynchronous animation task "present banner" one by one, and the side effect range is large, and the operation is easy to be wrong. The rate is high.
- each asynchronous animation task is associated with a unique identification string identifying the same, and then based on this, a unique identification string corresponding to each asynchronous animation task is declared.
- the grammar generates a task link for the target gift presentation. For example, assume that the four asynchronous animation tasks—takeoff, show banner, fall into the chest, and display the treasure chest and the countdown, respectively, correspond to the unique identification strings Animation-fly, Animation-banner, Animation-fall, and Animation-show.
- the declarative grammar is used to generate the task link of the gift "rocket" and "airplane" display process, the execution flow of the gift can be directly displayed in a combination of unique strings.
- the range of side effects is significantly reduced when the system is maintained or expanded. For example, when you need to modify a "show banner" block, you basically only need to modify one place, instead of modifying the gift execution flow that contains this animation task as in the prior art.
- the same asynchronous animation task can be multiplexed by task links for different gift presentations.
- the last three asynchronous animation tasks of the "Rocket” can be directly multiplexed to display banners - falling into the treasure chest - display treasure chests and countdowns, which are generated into a new gift "airplane" execution flow. This can fully multiplex the program, and can significantly reduce the scope of side effects when modifying the program.
- Step S103 executing each asynchronous animation task in the task link according to a predefined task execution order.
- a task execution sequence is pre-set for the generated task link.
- the asynchronous animation tasks in the task link are executed in the preset execution order.
- an animation resource When performing an arbitrary asynchronous animation task, an animation resource may be obtained from a resource pool associated with the asynchronous animation task, and the animation resource is operated according to a preset execution logic. For example, when an asynchronous animation task "takeoff" of a gift "rocket” needs to be performed, an animation resource (eg, a rocket image) can be obtained from a resource pool associated with the asynchronous animation task "take off", and then according to a preset Perform logical operations on the animation resource (for example, moving the rocket image from the bottom of the screen to the top of the screen).
- an animation resource eg, a rocket image
- the same asynchronous animation task can share the same resource pool in two or more task links for different gift presentations.
- the asynchronous animation task "presentation banner” is included in the task links of the gifts "rocket” and "airplane", and the asynchronous animation task "presentation banner” in the two task links can be executed when Reuse the same resource pool. In this way, the system's memory consumption can be reduced and system performance can be improved.
- Step S105 if any asynchronous animation task in another task link is detected to be executed when performing any asynchronous animation task in the task link, stopping the currently executed event and waiting until the same in the other task link The execution of the asynchronous animation task is completed after the end of the execution.
- the scheduling queue can be used to implement scheduling of asynchronous animation tasks.
- the horizontal axis represents the time axis
- the asynchronous animation task 11 (takeoff) of the gift "rocket” is completed at time t1
- the asynchronous animation task 12 presentation banner
- the execution flow of the currently executed "rocket” can be stopped, and wait until the execution of the asynchronous animation task 21 of the "aircraft" is completed. That is, after time t2, the "rocket" asynchronous animation task 12 (presentation banner) is resumed.
- the scheduling methods of the subsequent two asynchronous animation tasks 13 and 14 can be similarly pushed.
- DOM nodes that can set animation resources required for any target asynchronous animation task can be multiplexed.
- an animation resource can be set - the DOM node of the rocket image can be reused. Then when there is a need for succession
- the animation task "takes off” is repeated nine times in succession. This way, you don't have to create and destroy animation resources repeatedly, which can improve system performance.
- the base class contains the apply method, which passes the information needed to perform the current asynchronous animation task to the resource pool;
- the apply method can pass the animation resources required for the asynchronous animation task "take off” to the resource pool to obtain animation resources such as rocket images.
- the base class contains the setNextManager method, which sets the passed manager to nextManager;
- the setNextManager method can be used to define subsequent handlers, that is, to define subsequent asynchronous execution tasks to implement the definition of the execution order of each asynchronous animation task in the task link.
- the base class contains the goNext method, which calls the apply method of the nextManager in C.
- the goNext method can be applied so that each asynchronous animation task can be executed in order when the task link is executed.
- each subclass inherits each method in the base class to implement task link generation, resource invocation, and sequential execution.
- the task link generation module 1102 is configured to generate a task link for a target gift presentation, the task link including at least one asynchronous animation task corresponding to a display effect of the target gift.
- the task link generation module 1102 can be configured to perform step S101 shown in FIG. 3 above.
- the specific operation method can refer to the detailed description about step S101.
- the animation task execution module 1104 is configured to execute each of the at least one asynchronous animation task in a predefined task execution order.
- the animation task execution module 1104 can be used to perform step S103 shown in FIG. 3 above.
- the specific operation method can refer to the detailed explanation about step S103.
- the animation resource operation module 1106 is configured to: when each of the asynchronous animation tasks is executed, acquire an animation resource from a resource pool associated with the asynchronous animation task, and operate the animation resource according to a preset execution logic.
- the animation resource operation module 1106 can be used to perform step S103 shown in FIG. 3 above.
- the specific operation method can refer to the detailed explanation about step S103.
- the animation task scheduling module 1108 is configured to stop the currently executed event and wait until the same if it is detected that any asynchronous animation task in another task link is being executed when performing any asynchronous animation task in the task link The execution of the same asynchronous animation task in the other task link is completed after the execution ends.
- the animation task scheduling module 1108 can be used to perform step S105 shown in FIG. 3 above.
- the specific operation method can refer to the detailed explanation about step S105.
- the animation resource multiplexing module 1110 is configured to: when the target asynchronous animation task needs to be repeatedly executed in succession, use the multiplexing function of the DOM node to obtain the resource asynchronously obtained when the target asynchronous animation task is executed for the first time.
- the animation resource is used in the process of subsequently repeating the target asynchronous animation task in succession.
- each block of the flowchart or block diagram can represent a module, a program segment, or a portion of code that includes one or more of the Executable instructions. It should also be noted that, in some alternative implementations, the functions noted in the blocks may also occur in a different order than those illustrated in the drawings.
- each block of the block diagrams and/or flowcharts, and combinations of blocks in the block diagrams and/or flowcharts can be implemented in a dedicated hardware-based system that performs the specified function or action. Or it can be implemented by a combination of dedicated hardware and computer instructions.
- each functional module in each embodiment of the present invention may be integrated to form a separate part, or each module may exist separately, or two or more modules may be integrated to form a separate part.
- the functions, if implemented in the form of software functional modules and sold or used as separate products, may be stored in a computer readable storage medium.
- the technical solution of the present invention which is essential or contributes to the prior art, or a part of the technical solution, may be embodied in the form of a software product, which is stored in a storage medium, including
- the instructions are used to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention.
- the foregoing storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read only memory, a random access memory, a magnetic disk, or an optical disk.
- This virtual gift display method uses the responsibility chain design pattern to build the implementation framework of the gift display process, and generates a task link for the gift display with a declarative grammar, so that the flow of the previous hodge in the code logic is explicitly expressed. Better maintenance and scalability can effectively support the development of the business and enhance the user experience.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明实施例提供一种虚拟礼物展示方法及装置,属于互联网视频直播技术领域。该虚拟礼物展示方法包括:生成用于目标礼物展示的任务链路,然后按照预先定义的任务执行顺序执行任务链路中的每一个异步动画任务,并且在执行各异步动画任务时,从与该异步动画任务关联的资源池中获取动画资源,以根据预先设定的执行逻辑操作该动画资源。这种虚拟礼物展示方法采用责任链设计模式搭建礼物展示流程的实现框架,以声明式的语法生成用于礼物展示的任务链路,使得以前杂糅在代码逻辑中的流程显式的表达出来,具备更好的维护性和扩展性,并且通过资源池共享以及调度队列实现虚拟礼物的高效及有序展示,能够有效支撑业务的开展,提升用户的体验。
Description
相关申请的交叉引用
本申请要求于2017年07月04日提交中国专利局的优先权号为2017105373191、名称为“一种虚拟礼物展示方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本发明涉及互联网弹幕式视频直播技术领域,具体而言,涉及一种虚拟礼物展示方法、装置、服务器及存储介质。
直播网站会出售各种形式的虚拟商品(通常被称之为礼物),这些礼物在用户赠送给主播时会展现其相应的动画和交互效果。一个直播间会提供数种礼物,这些礼物对应着不同的价格。在一个正常播放的直播间中,当有用户赠送礼物时,所有收看该直播间的用户都会在页面上观看到礼物的展示特效。展示特效由一系列的异步动画顺序执行完成,不同的动画之间可能还会存在着交互关系,例如,价格高的礼物能够将价格低的礼物的动画提前结束。
随着业务的演变,这些礼物自身的展示过程以及同其他礼物的交互关系变得越来越复杂。从软件开发人员的角度来看,代码中会充斥着大量的逻辑判断,不同类型礼物的执行步骤被杂糅在一起。当业务发展到一定阶段,这样的解决方案将无法支撑直播业务的开展,进而影响用户观看网站直播的体验。
发明内容
有鉴于此,本发明的目的在于提供一种虚拟礼物展示方法、装置、服务器及存储介质,以改善上述问题。
本发明较佳实施例提供一种虚拟礼物展示方法,具体地,该方法包括:生成用于目标礼物展示的任务链路,所述任务链路包括对应所述目标礼物的展示特效的至少一个异步动画任务;按照预先定义的任务执行顺序执行所述至少一个异步动画任务中的每一个;执行各所述异步动画任务时,从与该异步动画任务关联的资源池中获取动画资源,并且根据预先设定的执行逻辑操作所述动画资源。
可选地,本发明实施例中,每一个异步动画任务对应有标识其的唯一标识字符串。据此,所述生成用于目标礼物展示的任务链路的步骤可以包括:通过每个异步动画任务对应的唯一标识字符串,以声明式的语法生成所述用于目标礼物展示的任务链路。
可选地,本发明实施例中,所述以声明式的语法生成所述用于目标礼物展示的任务
链路的步骤,可以包括以唯一标识字符串的组合生成所述用于目标礼物展示的任务链路。
可选地,本发明实施例中,同一所述异步动画任务能够被用于不同礼物展示的任务链路所复用;在两个或更多个用于不同礼物展示的任务链路中,相同的异步动画任务能够共享相同的资源池。
可选地,本发明实施例中,所述方法还包括:如果要执行任务链路中的任意异步动画任务时检测到有其他任务链路中的同一异步动画任务正在执行,则停止当前执行的事件并等待直至所述其他任务链路中的同一异步动画任务执行结束后再继续该执行的事件。
可选地,本发明实施例中,所述方法还包括:当检测到有其他任务链路中的同一异步动画任务正在执行时,采用调度队列实现对异步动画任务的调度。
可选地,设定任意目标异步动画任务所需的动画资源的DOM节点能够被复用,所述方法还包括:当所述目标异步动画任务需要被相继地重复执行时,通过所述DOM节点的复用功能复用首次执行该目标异步动画任务时从资源池获取的动画资源,并且用于后续相继地重复执行该目标异步动画任务的过程中。
本发明另一较佳实施例提供一种虚拟礼物展示装置,所述装置包括:任务链路生成模块,配置成生成用于目标礼物展示的任务链路,所述任务链路包括对应所述目标礼物的展示特效的至少一个异步动画任务;动画任务执行模块,配置成按照预先定义的任务执行顺序执行所述至少一个异步动画任务中的每一个;动画资源操作模块,配置成执行各所述异步动画任务时,从与该异步动画任务关联的资源池中获取动画资源,并且根据预先设定的执行逻辑操作所述动画资源。
可选地,本发明实施例中,每一个异步动画任务对应有标识其的唯一标识字符串;所述任务链路生成模块生成用于目标礼物展示的任务链路的方式,包括:通过每个异步动画任务对应的唯一标识字符串,以声明式的语法生成所述用于目标礼物展示的任务链路。
可选地,本发明实施例中,同一所述异步动画任务能够被用于不同礼物展示的任务链路所复用;在两个或更多个用于不同礼物展示的任务链路中,相同的异步动画任务能够共享相同的资源池。
可选地,所述虚拟礼物展示装置还包括:动画任务调度模块,配置成如果要执行任务链路中的任意异步动画任务时检测到有其他任务链路中的同一异步动画任务正在执行,则停止当前执行的事件并等待直至所述其他任务链路中的同一异步动画任务执行结束后再继续该执行的事件。
可选地,设定任意目标异步动画任务所需的动画资源的DOM节点能够被复用,所述
虚拟礼物展示装置还包括:动画资源复用模块,配置成当所述目标异步动画任务需要被相继地重复执行时,通过所述DOM节点的复用功能复用首次执行该目标异步动画任务时从资源池获取的动画资源,并且用于后续相继地重复执行该目标异步动画任务的过程中。
本发明又一较佳实施例提供一种服务器,包括:
存储器,被配置成存储程序,
处理器,被配置成通过调用所述存储器中存储的程序,执行包括以下步骤的方法:生成用于目标礼物展示的任务链路,所述任务链路包括对应所述目标礼物的展示特效的至少一个异步动画任务;按照预先定义的任务执行顺序执行所述至少一个异步动画任务中的每一个;执行各所述异步动画任务时,从与该异步动画任务关联的资源池中获取动画资源,并且根据预先设定的执行逻辑操作所述动画资源。
本发明再一较佳实施例提供一种具有处理器可执行的非易失的程序代码的计算机可读介质,所述程序代码使所述处理器执行上述的虚拟礼物展示方法。
本发明实施例提供的虚拟礼物展示方法、装置、服务器及存储介质,可以应用于互联网直播网站中的虚拟礼物展示过程,其采用责任链模式构建虚拟礼物展示框架,并通过资源池调用以及队列调度实现直播网站中礼物的高效及有序展示。具体地,当用户终端触发礼物赠送事件(用户选择目标礼物赠送给当前所观看的直播间的主播)时,生成用于目标礼物展示的任务链路,然后按照预先定义的任务执行顺序执行任务链路中的每一个异步动画任务,并且在执行各异步动画任务时,从与该异步动画任务关联的资源池中获取动画资源,并且根据预先设定的执行逻辑操作该动画资源。这种虚拟礼物展示方法采用责任链设计模式搭建礼物展示流程的实现框架,以声明式的语法生成用于礼物展示的任务链路,使得以前杂糅在代码逻辑中的流程显式的表达出来,具备更好的维护性和扩展性,能够有效支撑业务的开展,提升用户的体验。
进一步地,这种虚拟礼物展示方法中的礼物展示流程(异步动画任务执行顺序)具备更好适用性,能够在前一个动画任务执行完成后自行按照事先定义的顺序关系执行下一个动画任务,并且具有更好的可调整性,当在某实施方式中需要调整不同动画任务之间的执行顺序时,仅需要改变定义执行顺序处的代码即可,而无需像现有的方法一样必须整体调换每个动画任务对应的代码执行块。
更进一步地,这种虚拟礼物展示方法通过实现相同的异步动画任务可以共享同一资源池以及相同的异步动画任务可以复用在用于不同礼物展示的任务链路中,使得代码能够充分被复用,更能在代码维护时有效减小副作用范围,减少开发人员的工作量。此外,这种虚拟礼物展示方法中还实现了动画任务调度,使得存在交互关系(如复用有同一异步动画任务)的两个任务链路在执行时,能够保障两者全部充分且有效的展示,并且还能在此基
础上实现动画资源的复用,不必反复的创建和销毁动画资源的DOM节点,从而提升直播系统性能。
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提供的服务器通过网络与一个或多个用户终端进行通信交互的示意图;
图2为本发明实施例提供的一种执行虚拟礼物展示方法的服务器的方框示意图;
图3为本发明实施例提供的一种虚拟礼物展示方法的流程图;
图4为本发明实施例提供的一种采用调度队列实现对异步动画任务调度的示意图;
图5为本发明实施例提供的一种虚拟礼物展示装置的功能模块示意图。
图标:100-服务器;200-用户终端;110-虚拟礼物展示装置;120-存储器;130-处理器;1102-任务链路生成模块;1104-动画任务执行模块;1106-动画资源操作模块;1108-动画任务调度模块;1110-动画资源复用模块。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,是本发明实施例提供的服务器100通过网络与一个或多个用户终端200进行通信交互的示意图。该服务器100可以是互联网直播网站(例如,斗鱼)的后台服务器,但不限制于此。用户可以通过用户终端200与服务器100之间的通信交互观看服务器100提供的网络直播,并选择性进行用户操作(例如,用直播网站提供的虚拟礼物打赏主播)。服务器100可以是数据库服务器、web服务器等。用户终端200可以是个人电脑、平板电脑、智能手机等。
请参阅图2,是本发明实施例提供的一种执行虚拟礼物展示方法的服务器100的方框示意图。该服务器100包括虚拟礼物展示装置110、存储器120以及处理器130。其中,存
储器120与处理器130之间直接或间接地电性连接,以实现数据的传输或交互。虚拟礼物展示装置110包括至少一个可以软件或固件的形式存储于存储器120中或固化在服务器100的操作系统中的软件功能模块。处理器130用于执行存储器120中存储的可执行模块,例如虚拟礼物展示装置110所包括的软件功能模块及计算机程序等。处理器130可以在接收到执行指令后,执行所述计算机程序。
请参阅图3,是本发明实施例提供的一种虚拟礼物展示方法的流程图。所应说明的是,本实施例提供的方法不以图3及以下所述的具体顺序为限制。下面将对图3中所示的各步骤进行详细的阐述。
步骤S101,生成用于目标礼物展示的任务链路,所述任务链路包括对应所述目标礼物的展示特效的至少一个异步动画任务。
本实施例中,采用设计模式中的责任链模式(Chain of Responsibility)构建礼物展示实现过程的框架。即,将目标礼物的所有异步动画任务组装成一条“任务链路”,链路中的每个异步动画任务可以视作一个“步骤”。
本实施例中,采用声明式的语法生成礼物的执行流程,使得前杂糅在代码逻辑中的流程能够显式的表达出来,令系统具备更好的维护性和扩展性。
例如,以礼物“火箭”和“飞机”为示例,其中,礼物“火箭”展示流程包括四个异步动画任务:起飞-展现横幅-落入宝箱-显示宝箱及倒计时,礼物“飞机”展示流程包括三个异步动画任务:展现横幅-落入宝箱-显示宝箱及倒计时。
现有技术中实现礼物“火箭”展示流程的程序模块是将上述四个异步动画任务分别对应的数百行甚至更多的代码依次罗列;同样地,现有技术中实现礼物“飞机”展示流程的代码模块是将上述三个异步动画任务分别对应的数百行甚至更多的代码再依次罗列一遍。可以看出,这种程序实现方法简单粗暴,可维护性和可扩展性差。例如,当需要修改异步动画任务“展现横幅”的程序块时,则需要将所有包括该异步动画任务“展现横幅”的礼物展示过程的代码全部一一修改一遍,其副作用范围大,操作易错率高。
本实施例中采用的技术是,作为一种实施方式,令每一个异步动画任务对应有标识其的唯一标识字符串,然后基于此,通过每个异步动画任务对应的唯一标识字符串,以声明式的语法生成用于目标礼物展示的任务链路。例如,假设四个异步动画任务—起飞、展现横幅、落入宝箱以及显示宝箱及倒计时分别对应的唯一标识字符串为Animation-fly、Animation-banner、Animation-fall和Animation-show。则采用声明式的语法生成礼物“火箭”、“飞机”展示流程的任务链路时,可以是直接以唯一字符串的组合来显示地声明礼物的执行流程。例如:“火箭”={Animation-fly、Animation-banner、Animation-fall、Animation-show},
“飞机”={Animation-banner、Animation-fall、Animation-show}。可以理解,上述的示例仅是为了便于技术理解而给出的简化示例,并不表示实际程序操作时的代码体现为上述形式。
采用本实施例提供的方法,在维护或扩展系统时,副作用范围明显缩小。例如,当需要修改“展示横幅”的程序块时,基本上仅需要修改一处,而无需像现有技术一样,凡是包含这一动画任务的礼物执行流程都要修改一遍。
另外,可以从上述示例看出,本实施例提供的方法中,同一异步动画任务可以被用于不同礼物展示的任务链路所复用。例如,上述示例中,可以直接复用“火箭”的后三个异步动画任务展现横幅-落入宝箱-显示宝箱及倒计时,由它们生成成一个新的礼物“飞机”的执行流程。这样可以充分复用程序,更能在修改程序时明显地缩小副作用范围。
步骤S103,按照预先定义的任务执行顺序执行任务链路中的每一个异步动画任务。
本实施例中,针对生成的任务链路预设有任务执行顺序。在执行礼物的展示流程时,任务链路中的异步动画任务将按照预设的执行顺序执行。
在执行任意的异步动画任务时,可以从与该异步动画任务关联的资源池中获取动画资源,并且根据预先设定的执行逻辑操作所述动画资源。例如,当需要执行礼物“火箭”的异步动画任务“起飞”时,可以从与该异步动画任务“起飞”相关联的资源池中获取动画资源(例如,火箭图片),然后根据预先设定的执行逻辑操作该动画资源(例如,将火箭图片由屏幕底端快速移动至屏幕顶端)。
另外,本实施例中,在两个或更多个用于不同礼物展示的任务链路中,相同的异步动画任务能够共享相同的资源池。例如,上述示例中,礼物“火箭”和“飞机”的任务链路中均包括异步动画任务“展现横幅”,则这两个任务链路中的异步动画任务“展现横幅”在执行时,可以复用同一个资源池。这样,可以降低系统的内存消耗,提升系统性能。
步骤S105,如果要执行任务链路中的任意异步动画任务时检测到有其他任务链路中的同一异步动画任务正在执行,则停止当前执行的事件并等待直至所述其他任务链路中的同一异步动画任务执行结束后再继续该执行的事件。
本实施例中,可以采用调度队列实现对异步动画任务的调度。例如,如图4所示,作为一种示例,横轴表示时间轴,当在t1时刻礼物“火箭”的异步动画任务11(起飞)执行完成后,要继续执行异步动画任务12(展现横幅)时,发现另一个礼物“飞机”的异步动画任务21(展现横幅)正在执行中,则可以停止当前执行的“火箭”的执行流程,并等待直至“飞机”的异步动画任务21执行完成后,即在时刻t2后,再继续执行“火箭”的异步动画任务12(展现横幅)。后续两个异步动画任务13和14的调度方式同理可推。
另外,本实施例中,可以设定任意目标异步动画任务所需的动画资源的DOM节点可以被复用。例如,可以设定动画资源—火箭图片的DOM节点可以被复用。则当需要相继
执行十次礼物“火箭”的展示流程时,仅需要从资源池调用一次火箭图片,然后通过DOM节点的复用功能复用首次执行该异步动画任务时从资源池获取的火箭图片,并且用于后续相继地九次重复执行该动画任务“起飞”的过程中。这样,就不必反复的创建和销毁动画资源,从而能够提升系统性能。
下面给出一简要阐述了本实施例提供的方法基于程序实现的可操作实例。可以理解,该示例并不意在限制本公开的范围。
1)将所有步骤抽象为基类ChainManager,其中:
1.1)基类包含apply方法,该方法将执行当前异步动画任务所需的信息传给资源池;
例如,执行礼物“火箭”的异步动画任务“起飞”时,该apply方法可以将异步动画任务“起飞”所需的动画资源传递至资源池,以获取动画资源诸如火箭图片。
1.2)基类包含setNextManager方法,该方法将传入的manager设置为nextManager;
该setNextManager方法可以用于定义后继处理者,即,定义后续的异步执行任务,以实现对任务链路中各个异步动画任务执行顺序的定义。
1.3)基类包含goNext方法,该方法调用C中nextManager的apply方法。
基于上述setNextManager方法定义的任务执行顺序,可以应用goNext方法使得执行任务链路时,各个异步动画任务可以按照顺序执行。
2)根据基类及具体业务场景实现代表各个具体异步动画任务的子类,具体地,各个子类继承基类中的各个方法以实现任务链路生成、资源调用以及顺序执行。
3)定义一系列Pool类(资源池),其与2)中的子类相关联。相同的子类可以共享同一个Pool实例。
4)定义一系列Queue类(调度队列),其与3)中的Pool类关联,每个Pool实例需要预存Queue实例的引用。在Queue类中,定义异步动画任务的执行逻辑以及调度方法。
5)定义一个GiftCenter类,在该类中生成所有礼物的任务链路。
请参阅图5,是本发明实施例提供的一种虚拟礼物展示装置110的功能模块示意图。虚拟礼物展示装置110包括任务链路生成模块1102、动画任务执行模块1104、动画资源操作模块1106、动画任务调度模块1108、动画资源复用模块1110。
所述任务链路生成模块1102,用于生成用于目标礼物展示的任务链路,所述任务链路包括对应所述目标礼物的展示特效的至少一个异步动画任务。该任务链路生成模块1102可以用于执行上述图3中所示的步骤S101,具体操作方法可参照关于步骤S101的详细阐述。
所述动画任务执行模块1104,用于按照预先定义的任务执行顺序执行所述至少一个异步动画任务中的每一个。该动画任务执行模块1104可以用于执行上述图3中所示的步骤S103,具体操作方法可参照关于步骤S103的详细阐述。
所述动画资源操作模块1106,用于执行各所述异步动画任务时,从与该异步动画任务关联的资源池中获取动画资源,并且根据预先设定的执行逻辑操作所述动画资源。该动画资源操作模块1106可以用于执行上述图3中所示的步骤S103,具体操作方法可参照关于步骤S103的详细阐述。
所述动画任务调度模块1108,用于如果要执行任务链路中的任意异步动画任务时检测到有其他任务链路中的同一异步动画任务正在执行,则停止当前执行的事件并等待直至所述其他任务链路中的同一异步动画任务执行结束后再继续该执行的事件。该动画任务调度模块1108可以用于执行上述图3中所示的步骤S105,具体操作方法可参照关于步骤S105的详细阐述。
所述动画资源复用模块1110,用于当所述目标异步动画任务需要被相继地重复执行时,通过所述DOM节点的复用功能复用首次执行该目标异步动画任务时从资源池获取的动画资源,并且用于后续相继地重复执行该目标异步动画任务的过程中。
本发明实施例所提供的虚拟礼物展示装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而
前述的存储介质包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
本发明实施例提供的虚拟礼物展示方法、装置、服务器及存储介质,可以应用于互联网直播网站中的虚拟礼物展示过程,其采用责任链模式构建虚拟礼物展示框架,并通过资源池调用以及队列调度实现直播网站中礼物的高效及有序展示。具体地,当用户终端触发礼物赠送事件时,生成用于目标礼物展示的任务链路,然后按照预先定义的任务执行顺序执行任务链路中的每一个异步动画任务,并且在执行各异步动画任务时,从与该异步动画任务关联的资源池中获取动画资源,并且根据预先设定的执行逻辑操作该动画资源。这种虚拟礼物展示方法采用责任链设计模式搭建礼物展示流程的实现框架,以声明式的语法生成用于礼物展示的任务链路,使得以前杂糅在代码逻辑中的流程显式的表达出来,具备更好的维护性和扩展性,能够有效支撑业务的开展,提升用户的体验。
Claims (16)
- 一种虚拟礼物展示方法,其特征在于,所述方法包括:生成用于目标礼物展示的任务链路,所述任务链路包括对应所述目标礼物的展示特效的至少一个异步动画任务;按照预先定义的任务执行顺序执行所述至少一个异步动画任务中的每一个;执行各所述异步动画任务时,从与该异步动画任务关联的资源池中获取动画资源,并且根据预先设定的执行逻辑操作所述动画资源。
- 根据权利要求1所述的虚拟礼物展示方法,其特征在于,每一个异步动画任务对应有标识其的唯一标识字符串;所述生成用于目标礼物展示的任务链路的步骤,包括:通过每个异步动画任务对应的唯一标识字符串,以声明式的语法生成所述用于目标礼物展示的任务链路。
- 根据权利要求2所述的虚拟礼物展示方法,其特征在于,所述以声明式的语法生成所述用于目标礼物展示的任务链路的步骤,包括:以唯一标识字符串的组合生成所述用于目标礼物展示的任务链路。
- 根据权利要求1或2所述的虚拟礼物展示方法,其特征在于,同一所述异步动画任务能够被用于不同礼物展示的任务链路所复用;在两个或更多个用于不同礼物展示的任务链路中,相同的异步动画任务能够共享相同的资源池。
- 根据权利要求1~4中任一项所述的虚拟礼物展示方法,其特征在于,所述方法还包括:如果要执行任务链路中的任意异步动画任务时检测到有其他任务链路中的同一异步动画任务正在执行,则停止当前执行的事件并等待直至所述其他任务链路中的同一异步动画任务执行结束后再继续该执行的事件。
- 根据权利要求5所述的虚拟礼物展示方法,其特征在于,所述方法还包括:当检测到有其他任务链路中的同一异步动画任务正在执行时,采用调度队列实现对异步动画任务的调度。
- 根据权利要求1~6中任一项所述的虚拟礼物展示方法,其特征在于,设定任意目标异步动画任务所需的动画资源的DOM节点能够被复用,所述方法还包括:当所述目标异步动画任务需要被相继地重复执行时,通过所述DOM节点的复用功能复用首次执行该目标异步动画任务时从资源池获取的动画资源,并且用于后续相继地重复执行该目标异步动画任务的过程中。
- 一种虚拟礼物展示装置,其特征在于,所述装置包括:任务链路生成模块,配置成生成用于目标礼物展示的任务链路,所述任务链路包括对应所述目标礼物的展示特效的至少一个异步动画任务;动画任务执行模块,配置成按照预先定义的任务执行顺序执行所述至少一个异步动画任务中的每一个;动画资源操作模块,配置成执行各所述异步动画任务时,从与该异步动画任务关联的资源池中获取动画资源,并且根据预先设定的执行逻辑操作所述动画资源。
- 根据权利要求8所述的虚拟礼物展示装置,其特征在于,每一个异步动画任务对应有标识其的唯一标识字符串;所述任务链路生成模块生成用于目标礼物展示的任务链路的方式,包括:通过每个异步动画任务对应的唯一标识字符串,以声明式的语法生成所述用于目标礼物展示的任务链路。
- 根据权利要求9所述的虚拟礼物展示装置,其特征在于,所述任务链路生成模块,配置成以唯一标识字符串的组合生成所述用于目标礼物展示的任务链路。
- 根据权利要求8或9所述的虚拟礼物展示装置,其特征在于,同一所述异步动画任务能够被用于不同礼物展示的任务链路所复用;在两个或更多个用于不同礼物展示的任务链路中,相同的异步动画任务能够共享相同的资源池。
- 根据权利要求8~11中任一项所述的虚拟礼物展示装置,其特征在于,所述装置还包括:动画任务调度模块,配置成如果要执行任务链路中的任意异步动画任务时检测到有其他任务链路中的同一异步动画任务正在执行,则停止当前执行的事件并等待直至所述其他任务链路中的同一异步动画任务执行结束后再继续该执行的事件。
- 根据权利要求12所述的虚拟礼物展示装置,其特征在于,所述动画任务调度模块,还配置成当检测到有其他任务链路中的同一异步动画任务正在执行时,采用调度队列实现对异步动画任务的调度。
- 根据权利要求8~13中任一项所述的虚拟礼物展示装置,其特征在于,设定任意目标异步动画任务所需的动画资源的DOM节点能够被复用,所述装置还包括:动画资源复用模块,配置成当所述目标异步动画任务需要被相继地重复执行时,通过所述DOM节点的复用功能复用首次执行该目标异步动画任务时从资源池获取的动画资源,并且用于后续相继地重复执行该目标异步动画任务的过程中。
- 一种服务器,其特征在于,包括:存储器,被配置成存储程序,处理器,被配置成通过调用所述存储器中存储的程序,执行包括以下步骤的方法:生成用于目标礼物展示的任务链路,所述任务链路包括对应所述目标礼物的展示特效的至少一个异步动画任务;按照预先定义的任务执行顺序执行所述至少一个异步动画任务中的每一个;执行各所述异步动画任务时,从与该异步动画任务关联的资源池中获取动画资源,并且根据预先设定的执行逻辑操作所述动画资源。
- 一种具有处理器可执行的非易失的程序代码的计算机可读介质,其特征在于,所述程序代码使所述处理器执行所述权利要求1~7任一项所述方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201710537319.1 | 2017-07-04 | ||
| CN201710537319.1A CN107333145B (zh) | 2017-07-04 | 2017-07-04 | 一种虚拟礼物展示方法及装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2019006937A1 true WO2019006937A1 (zh) | 2019-01-10 |
Family
ID=60197881
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2017/108966 Ceased WO2019006937A1 (zh) | 2017-07-04 | 2017-11-01 | 一种虚拟礼物展示方法、装置、服务器及存储介质 |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN107333145B (zh) |
| WO (1) | WO2019006937A1 (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110730374A (zh) * | 2019-10-10 | 2020-01-24 | 北京字节跳动网络技术有限公司 | 一种动画对象的展示方法、装置、电子设备及存储介质 |
| CN111757131A (zh) * | 2020-04-03 | 2020-10-09 | 北京达佳互联信息技术有限公司 | 一种应用于直播的任务目标设置方法、装置、系统及电子设备 |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109032471B (zh) * | 2018-07-24 | 2021-11-05 | 深圳微盐传媒科技有限公司 | 信息展示方法和相关装置 |
| CN109731337B (zh) * | 2018-12-28 | 2023-02-21 | 超级魔方(北京)科技有限公司 | Unity中粒子特效创建方法、装置、电子设备及存储介质 |
| CN111008061A (zh) * | 2019-12-20 | 2020-04-14 | 腾讯科技(深圳)有限公司 | 一种动画展示方法及相关设备 |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7609271B2 (en) * | 2006-06-30 | 2009-10-27 | Microsoft Corporation | Producing animated scenes from still images |
| CN103530898A (zh) * | 2013-01-06 | 2014-01-22 | Tcl集团股份有限公司 | 一种基于3d实时渲染的动画处理方法和系统 |
| WO2016073253A1 (en) * | 2014-11-06 | 2016-05-12 | Interdigital Technology Corporation | Method and system for event pattern guided mobile content services |
| CN105745645A (zh) * | 2013-11-01 | 2016-07-06 | 柯宝科技公司 | 确定网页处理状态 |
| CN106447755A (zh) * | 2016-09-27 | 2017-02-22 | 上海斐讯数据通信技术有限公司 | 一种动画渲染系统 |
| CN106791936A (zh) * | 2016-11-28 | 2017-05-31 | 广州华多网络科技有限公司 | 一种虚拟礼物的展示方法及装置 |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20140164159A1 (en) * | 2012-12-11 | 2014-06-12 | Christine Lovelace | Customizable virtual gift wrapping & presentation |
| CN104835187B (zh) * | 2015-05-19 | 2020-04-03 | 北京三六三教育科技股份有限公司 | 一种动画编辑器及其编辑方法 |
| CN104992461B (zh) * | 2015-06-29 | 2018-05-04 | 北京奇虎科技有限公司 | 一种快速动画场景构建方法和装置 |
| CN105897770B (zh) * | 2016-06-20 | 2018-11-27 | 武汉斗鱼网络科技有限公司 | 一种基于直播的虚拟礼物展示方法和装置 |
| CN105959127A (zh) * | 2016-06-28 | 2016-09-21 | 武汉斗鱼网络科技有限公司 | 一种移动端虚拟礼物效果展示方法及装置 |
-
2017
- 2017-07-04 CN CN201710537319.1A patent/CN107333145B/zh not_active Expired - Fee Related
- 2017-11-01 WO PCT/CN2017/108966 patent/WO2019006937A1/zh not_active Ceased
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7609271B2 (en) * | 2006-06-30 | 2009-10-27 | Microsoft Corporation | Producing animated scenes from still images |
| CN103530898A (zh) * | 2013-01-06 | 2014-01-22 | Tcl集团股份有限公司 | 一种基于3d实时渲染的动画处理方法和系统 |
| CN105745645A (zh) * | 2013-11-01 | 2016-07-06 | 柯宝科技公司 | 确定网页处理状态 |
| WO2016073253A1 (en) * | 2014-11-06 | 2016-05-12 | Interdigital Technology Corporation | Method and system for event pattern guided mobile content services |
| CN106447755A (zh) * | 2016-09-27 | 2017-02-22 | 上海斐讯数据通信技术有限公司 | 一种动画渲染系统 |
| CN106791936A (zh) * | 2016-11-28 | 2017-05-31 | 广州华多网络科技有限公司 | 一种虚拟礼物的展示方法及装置 |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110730374A (zh) * | 2019-10-10 | 2020-01-24 | 北京字节跳动网络技术有限公司 | 一种动画对象的展示方法、装置、电子设备及存储介质 |
| CN110730374B (zh) * | 2019-10-10 | 2022-06-17 | 北京字节跳动网络技术有限公司 | 一种动画对象的展示方法、装置、电子设备及存储介质 |
| CN111757131A (zh) * | 2020-04-03 | 2020-10-09 | 北京达佳互联信息技术有限公司 | 一种应用于直播的任务目标设置方法、装置、系统及电子设备 |
| CN111757131B (zh) * | 2020-04-03 | 2021-06-11 | 北京达佳互联信息技术有限公司 | 一种应用于直播的任务目标设置方法、装置、系统及电子设备 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN107333145B (zh) | 2018-08-10 |
| CN107333145A (zh) | 2017-11-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN107333145B (zh) | 一种虚拟礼物展示方法及装置 | |
| CA2783390A1 (en) | Systems, methods, and media for providing virtual badges | |
| US10009213B2 (en) | System and method for isolation of multi-tenant platform customization using child processes | |
| CN108108986B (zh) | 一种客户关系管理系统的设计方法、装置及电子设备 | |
| US10572229B2 (en) | Systems, method, and non-transitory computer-readable storage media for displaying software components | |
| CN106815880B (zh) | 动画复用方法和系统 | |
| CN113453073B (zh) | 一种图像渲染方法、装置、电子设备及存储介质 | |
| CN104090753A (zh) | 一种移动终端的视频渲染系统 | |
| US11522747B1 (en) | Cloud service outage reporting | |
| CN110297980A (zh) | 素材的展示方法、装置、服务器 | |
| CN110377429A (zh) | 一种实时任务计算的控制方法、装置、服务器及存储介质 | |
| US20240104808A1 (en) | Method and system for creating stickers from user-generated content | |
| US9141522B1 (en) | Virtual cluster immune system for dynamic testing | |
| US20200065077A1 (en) | Identifying software and hardware bottlenecks | |
| CN115640044B (zh) | 基于Unity的三维软件开发方法、装置、设备及介质 | |
| CN112799797B (zh) | 一种任务管理的方法和装置 | |
| CN105577828B (zh) | 一种远程重定向方法和装置 | |
| CN112328225A (zh) | 一种页面运行方法及其运行系统 | |
| CN114298309B (zh) | 物联网系统及其执行规则的方法、相关设备 | |
| CN115658248A (zh) | 任务调度方法方法、装置、电子设备及存储介质 | |
| CN115617420A (zh) | 应用程序的生成方法、装置、设备以及存储介质 | |
| US20220107787A1 (en) | Block template creation | |
| CN113852840A (zh) | 视频渲染方法、装置、电子设备以及存储介质 | |
| CN118170284A (zh) | 窗口渲染方法、装置、设备以及介质 | |
| CN112817573A (zh) | 用于构建流式计算应用的方法、装置、计算机系统和介质 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17916919 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 17916919 Country of ref document: EP Kind code of ref document: A1 |