CN102981809B - 一种多线程环境下基于消息的无同步3d渲染方法 - Google Patents

一种多线程环境下基于消息的无同步3d渲染方法 Download PDF

Info

Publication number
CN102981809B
CN102981809B CN201210587740.0A CN201210587740A CN102981809B CN 102981809 B CN102981809 B CN 102981809B CN 201210587740 A CN201210587740 A CN 201210587740A CN 102981809 B CN102981809 B CN 102981809B
Authority
CN
China
Prior art keywords
message
cpu
thread
scene
environment
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.)
Active
Application number
CN201210587740.0A
Other languages
English (en)
Other versions
CN102981809A (zh
Inventor
林秀全
郑婉清
高小玲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Creatoo Network Technology Co ltd
Original Assignee
Shanghai Chuangtu Network Science & Technology Development Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Chuangtu Network Science & Technology Development Co Ltd filed Critical Shanghai Chuangtu Network Science & Technology Development Co Ltd
Priority to CN201210587740.0A priority Critical patent/CN102981809B/zh
Publication of CN102981809A publication Critical patent/CN102981809A/zh
Application granted granted Critical
Publication of CN102981809B publication Critical patent/CN102981809B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

本发明涉及一种多线程环境下基于消息的无同步3D渲染方法,该方法采用操作***的消息机制作为通信手段,通过监测当前3D场景的使用情况,动态分配CPU时间进行逻辑事务处理、资源访问和3D渲染操作,进行多线程同步控制。与现有技术相比,本发明可在不使用线程同步手段的情况下实现逻辑处理和3D渲染并行计算,具有并行处理高效等优点。

Description

一种多线程环境下基于消息的无同步3D渲染方法
技术领域
本发明涉及一种动画数据处理方法,尤其是涉及一种多线程环境下基于消息的无同步3D渲染方法。
背景技术
典型的3D应用,如3D游戏等,需要把3D渲染和逻辑事件的处理分开,以提高***逻辑处理能力和3D渲染效果。为此,3D开发中往往使用多线程来处理,以提升并行处理能力。但是,多线程的加入也为软件开发复杂度带来更高的要求,更重要的是对资源的管理要求更为严格,特别是资源的访问不能冲突。
已有解决方案是,对多线程访问的资源进行同步,如加线程锁进行控制。这种方法能有效地解决资源访问冲突造成的***崩溃等问题,但对软件开发人员的要求会很高,对多线程控制能力要求很强,只要出现任何一个纰漏都可能让整个***出错。同时,频繁的多线程同步反而会降低***的性能。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种可实现逻辑处理和3D渲染并行计算,且并行处理高效的多线程环境下基于消息的无同步3D渲染方法。
本发明的目的可以通过以下技术方案来实现:
一种多线程环境下基于消息的无同步3D渲染方法,该方法采用操作***的消息机制作为通信手段,通过监测当前3D场景的使用情况,动态分配CPU时间进行逻辑事务处理、资源访问和3D渲染操作,进行多线程同步控制,具体包括以下步骤:
a)初始化3D环境,根据硬件显卡及所使用的图形API初始化3D环境;
b)CPU分配线程模块监测并统计当前3D场景的使用情况,计算并动态分配CPU时间片;
c)CPU分配线程模块把分配的CPU时间片通过消息方式通知主线程模块;
d)主线程模块处理接收到消息,并判断是否需要退出***,若是,则退出,若否,则执行步骤e);
e)主线程模块根据接收到的消息,以消息响应方式进行逻辑事务处理、资源访问和3D渲染。
所述的动态分配CPU时间片具体为:
1)统计当前3D场景所渲染的对象数量,包括实体对象和纹理数据;
2)记录前一帧逻辑事务处理所花费的时间;
3)预测下一帧的逻辑事务处理时间及3D渲染对象数量;
4)根据下一帧预测值和前一帧统计值获得CPU时间片分配值。
与现有技术相比,本发明具有以下优点:
1、保持传统的多线程功能,以实现逻辑处理和3D渲染的并行计算;
2、取消多线程同步机制,通过机制保障资源的无冲突访问,带来高效并行的处理。
附图说明
图1为本发明的结构示意图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
实施例
一种多线程环境下基于消息的无同步3D渲染方法,该方法采用操作***的消息机制作为通信手段,通过监测当前3D场景的使用情况,动态分配CPU时间进行逻辑事务处理、资源访问和3D渲染操作,进行多线程同步控制。
如图1所示,上述渲染方法具体包括以下步骤:
a)初始化3D环境,根据硬件显卡及所使用的图形API初始化3D环境;
b)CPU分配线程模块监测并统计当前3D场景的使用情况,计算并动态分配CPU时间片;
c)CPU分配线程模块把分配的CPU时间片通过消息方式通知主线程模块;
d)主线程模块判断是否收到消息,若否,则返回步骤c),若是,则处理接收到消息,并判断是否需要退出***,若是,则退出,若否,则执行步骤e);
e)主线程模块根据接收到的消息,以消息响应方式进行逻辑事务处理、资源访问和3D渲染,处理完毕后,接收下一条消息。
所述的动态分配CPU时间片具体为:
1)统计当前3D场景所渲染的对象数量,包括实体对象和纹理数据;
2)记录前一帧逻辑事务处理所花费的时间;
3)预测下一帧的逻辑事务处理时间及3D渲染对象数量;
4)根据下一帧预测值和前一帧统计值获得CPU时间片分配值。
上述多线程环境下基于消息的无同步3D渲染方法保持传统的多线程功能,以实现逻辑处理和3D渲染的并行计算,同时取消多线程同步机制,通过机制保障资源的无冲突访问,带来高效并行的处理。

Claims (1)

1.一种多线程环境下基于消息的无同步3D渲染方法,其特征在于,该方法采用操作***的消息机制作为通信手段,通过监测当前3D场景的使用情况,动态分配CPU时间进行逻辑事务处理、资源访问和3D渲染操作,进行多线程同步控制,具体包括以下步骤:
a)初始化3D环境,根据硬件显卡及所使用的图形API初始化3D环境;
b)CPU分配线程模块监测并统计当前3D场景的使用情况,计算并动态分配CPU时间片;
c)CPU分配线程模块把分配的CPU时间片通过消息方式通知主线程模块;
d)主线程模块处理接收到消息,并判断是否需要退出***,若是,则退出,若否,则执行步骤e);
e)主线程模块根据接收到的消息,以消息响应方式进行逻辑事务处理、资源访问和3D渲染,处理完毕后,接收下一条消息;
所述的动态分配CPU时间片具体为:
1)统计当前3D场景所渲染的对象数量,包括实体对象和纹理数据;
2)记录前一帧逻辑事务处理所花费的时间;
3)预测下一帧的逻辑事务处理时间及3D渲染对象数量;
4)根据下一帧预测值和前一帧统计值获得CPU时间片分配值。
CN201210587740.0A 2012-12-28 2012-12-28 一种多线程环境下基于消息的无同步3d渲染方法 Active CN102981809B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210587740.0A CN102981809B (zh) 2012-12-28 2012-12-28 一种多线程环境下基于消息的无同步3d渲染方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210587740.0A CN102981809B (zh) 2012-12-28 2012-12-28 一种多线程环境下基于消息的无同步3d渲染方法

Publications (2)

Publication Number Publication Date
CN102981809A CN102981809A (zh) 2013-03-20
CN102981809B true CN102981809B (zh) 2016-05-11

Family

ID=47855879

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210587740.0A Active CN102981809B (zh) 2012-12-28 2012-12-28 一种多线程环境下基于消息的无同步3d渲染方法

Country Status (1)

Country Link
CN (1) CN102981809B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105979243A (zh) * 2015-12-01 2016-09-28 乐视致新电子科技(天津)有限公司 一种显示立体图像的处理方法和装置
CN105741227A (zh) * 2016-01-26 2016-07-06 网易(杭州)网络有限公司 渲染方法和装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102004891A (zh) * 2009-09-03 2011-04-06 上海宝信软件股份有限公司 Rfid中间件进程间数据通讯的方法及装置
CN102169598A (zh) * 2010-02-26 2011-08-31 新奥特(北京)视频技术有限公司 一种应用多线程创建三维云图的方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110065067A (ko) * 2009-12-09 2011-06-15 삼성전자주식회사 멀티 쓰레드 테스팅시 발생되는 에러 정보에 대한 비주얼 인터페이스를 제공하는 장치 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102004891A (zh) * 2009-09-03 2011-04-06 上海宝信软件股份有限公司 Rfid中间件进程间数据通讯的方法及装置
CN102169598A (zh) * 2010-02-26 2011-08-31 新奥特(北京)视频技术有限公司 一种应用多线程创建三维云图的方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
多线程实时三维渲染引擎文件***的设计与实现;蒋理等;《计算机应用与软件》;20100630;第27卷(第6期);第244页左栏第2段-第245页右栏第2段 *

Also Published As

Publication number Publication date
CN102981809A (zh) 2013-03-20

Similar Documents

Publication Publication Date Title
US10510317B2 (en) Controlling display performance with target presentation times
CN109582425B (zh) 一种基于云端与终端gpu融合的gpu服务重定向***及方法
CN103095389B (zh) 分布式稳健时钟同步
CA2678240C (en) Pipelined image processing engine
US11568588B2 (en) Controlling display performance using display statistics and feedback
CN109819048B (zh) 数据同步方法、装置、终端及存储介质
CN104284098B (zh) 视频数据的处理方法及***
CN102855133B (zh) 一种计算机处理单元交互式***
CN103631634A (zh) 实现图形处理器虚拟化的方法与装置
CN101587431A (zh) 一种可以跨屏实现多屏播放视频的方法
CN102857533B (zh) 一种基于云计算的远程交互式***
CN102981809B (zh) 一种多线程环境下基于消息的无同步3d渲染方法
CN104702534B (zh) 一种实现多进程共享端口的数据处理的方法及装置
Yadav et al. Adaptive GPU resource scheduling on virtualized servers in cloud gaming
CN102857531A (zh) 一种基于云计算的远程交互式***
US11735142B2 (en) Synchronization techniques in split rendering
CN102857534B (zh) 一种基于云计算的远程交互方法
CN102857535B (zh) 一种计算机处理单元、计算机网关、交互式***
WO2023121902A1 (en) Scheduling techniques in split rendering
CN103064647A (zh) 一种计算机快速显示移动设备屏幕的方法和装置
CN103955422A (zh) 一种虚拟化环境中共存应用i/o性能干扰的分析方法及其***
Chan et al. A Hybrid-Streaming Method for Cloud Gaming: To Improve the Graphics Quality delivered on Highly Accessible Game Contents.
CN112788420A (zh) 多屏同步播放***
CN104980768A (zh) 一种基于Tilera众核处理器的视频处理方法
CN102857532B (zh) 一种基于云计算节点的远程交互方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: Zhabei District 200072 Shanghai 777 Canton Road No. 12 lane two building A-27 room

Patentee after: SHANGHAI CREATOO NETWORK TECHNOLOGY CO.,LTD.

Address before: Zhabei District 200072 Shanghai 777 Canton Road No. 12 lane two building A-27 room

Patentee before: Shanghai Chuangtu Network Technology Development Co.,Ltd.

PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A Message Based Unsynchronized 3D Rendering Method in Multithreaded Environment

Effective date of registration: 20230321

Granted publication date: 20160511

Pledgee: Agricultural Bank of China Limited Shanghai Huangpu Sub branch

Pledgor: SHANGHAI CREATOO NETWORK TECHNOLOGY CO.,LTD.

Registration number: Y2023310000076

PC01 Cancellation of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Granted publication date: 20160511

Pledgee: Agricultural Bank of China Limited Shanghai Huangpu Sub branch

Pledgor: SHANGHAI CREATOO NETWORK TECHNOLOGY CO.,LTD.

Registration number: Y2023310000076