一種3d桌面顯示方法和系統(tǒng)的制作方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)一種3D桌面顯示方法和系統(tǒng),所述方法預(yù)先開(kāi)發(fā)3D渲染引擎與電子設(shè)備操作系統(tǒng)間的訪問(wèn)接口,并基于3D渲染引擎開(kāi)發(fā)用于作為電子設(shè)備桌面的具有景深效果、轉(zhuǎn)場(chǎng)效果和光影效果的3D場(chǎng)景圖,所述訪問(wèn)接口可支持后續(xù)用戶(hù)在3D場(chǎng)景圖上基于3D渲染引擎對(duì)電子設(shè)備的相關(guān)文件進(jìn)行訪問(wèn)。之后,將3D場(chǎng)景圖進(jìn)行顯示,此外,本發(fā)明還實(shí)時(shí)獲取天氣信息,利用3D技術(shù)得到實(shí)時(shí)天氣狀況的3D天氣特效,并將3D天氣特效顯示在3D場(chǎng)景圖上。可見(jiàn),本發(fā)明提供了一個(gè)與電子設(shè)備操作系統(tǒng)互聯(lián)的3D渲染引擎,并基于此開(kāi)發(fā)出具有完全3D效果的3D場(chǎng)景圖,同時(shí)利用3D技術(shù)產(chǎn)生天氣特效進(jìn)行顯示,實(shí)現(xiàn)了真正3D效果的桌面,提升了用戶(hù)體驗(yàn)。
【專(zhuān)利說(shuō)明】 一種3D桌面顯不方法和系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于電子設(shè)備桌面顯示【技術(shù)領(lǐng)域】,尤其涉及一種3D(3DimenSion,三維)桌面顯示方法和系統(tǒng)。
【背景技術(shù)】
[0002]傳統(tǒng)的基于Android操作系統(tǒng)的設(shè)備,例如智能手機(jī)、平板電腦等,其桌面是基于2D (2Dimension, 二維)繪制或仿真3D效果的桌面,未實(shí)現(xiàn)真正的3D效果,從而導(dǎo)致智能設(shè)備桌面的立體視覺(jué)效果較差,降低了用戶(hù)體驗(yàn)。
[0003]為提升用戶(hù)體驗(yàn),增強(qiáng)智能設(shè)備桌面的立體視覺(jué)效果,提供一種3D桌面顯示方法或系統(tǒng)成為本領(lǐng)域亟需解決的問(wèn)題。
【發(fā)明內(nèi)容】
[0004]有鑒于此,本發(fā)明的目的在于提供一種3D桌面顯示方法和系統(tǒng),以解決上述問(wèn)題,實(shí)現(xiàn)真正的3D桌面,增強(qiáng)智能設(shè)備桌面的立體視覺(jué)效果,進(jìn)而提升用戶(hù)體驗(yàn)。
[0005]為此,本發(fā)明公開(kāi)如下技術(shù)方案:
[0006]一種3D桌面顯示方法,包括:
[0007]在電子設(shè)備的顯示終端顯示預(yù)先基于3D渲染引擎開(kāi)發(fā)并存儲(chǔ)的3D場(chǎng)景圖,其中,所述3D場(chǎng)景圖具有景深效果、轉(zhuǎn)場(chǎng)效果和光影效果,所述3D渲染引擎通過(guò)預(yù)先開(kāi)發(fā)的接口模塊與所述電子設(shè)備的操作系統(tǒng)相連,以使用戶(hù)通過(guò)所述3D渲染引擎對(duì)所述電子設(shè)備的操作系統(tǒng)進(jìn)行訪問(wèn);
[0008]實(shí)時(shí)獲取天氣信息;
[0009]依據(jù)實(shí)時(shí)獲取的所述天氣信息,利用3D技術(shù)模擬實(shí)時(shí)的天氣狀況,得到相應(yīng)的3D天氣特效;
[0010]在所述3D場(chǎng)景圖上顯示所述3D天氣特效。
[0011]上述方法,優(yōu)選的,所述天氣信息包括:雨、雪、風(fēng)、霜、陰、晴、云。
[0012]上述方法,優(yōu)選的,所述依據(jù)實(shí)時(shí)獲取的所述天氣信息,利用3D技術(shù)模擬實(shí)時(shí)的天氣狀況,得到相應(yīng)的3D天氣特效,具體包括:
[0013]利用粒子系統(tǒng)模擬雨、雪、風(fēng)、陰、晴中的一種或多種天氣狀況,得到相應(yīng)的雨、雪、風(fēng)、陰、晴3D天氣特效中的一種或多種;
[0014]基于粒子系統(tǒng)并利用紋理貼圖動(dòng)態(tài)算法獲取3D霜凍效果;
[0015]利用體積云算法生成晴天、陰天以及雨天的3D云特效。
[0016]上述方法,優(yōu)選的,所述接口模塊包括文件管理插件、窗口管理插件、圖像解碼插件、特效庫(kù)以及日志插件,其中:
[0017]所述文件管理插件、窗口管理插件、圖像解碼插件、日志插件分別用于為所述3D渲染引擎訪問(wèn)所述電子設(shè)備操作系統(tǒng)中的文件管理系統(tǒng)、窗口管理系統(tǒng)、圖像解碼繪圖系統(tǒng)、日志系統(tǒng)提供接口 ;[0018]所述特效庫(kù)為基于所述電子設(shè)備操作系統(tǒng)中提供的0penGLES2.0,并利用shader技術(shù)編程所得的特效的集合,所述特效庫(kù)包括景深特效、光影特效和轉(zhuǎn)場(chǎng)特效。
[0019]上述方法,優(yōu)選的,還包括:
[0020]實(shí)時(shí)獲取日期及時(shí)間信息;
[0021]基于所述特效庫(kù),利用預(yù)設(shè)算法模擬朝霞和晚霞的3D特效,并依據(jù)獲取的時(shí)間信息在所述3D場(chǎng)景圖上對(duì)所述朝霞或晚霞的3D特效進(jìn)行相應(yīng)顯示;
[0022]利用物理定理預(yù)先計(jì)算出日月星辰的運(yùn)動(dòng)軌跡,基于所述運(yùn)動(dòng)軌跡以及實(shí)時(shí)獲取的日期及時(shí)間信息,利用天文計(jì)算公式實(shí)時(shí)計(jì)算日月星辰的相應(yīng)位置,并基于所述特效庫(kù)將日月星辰繪制、顯示在所述3D場(chǎng)景圖的所述位置處。
[0023]上述方法,優(yōu)選的,還包括:
[0024]在用戶(hù)執(zhí)行預(yù)設(shè)的第一操作時(shí),在所述3D場(chǎng)景圖上顯示預(yù)先利用所述3D渲染引擎開(kāi)發(fā)的3D窗口小部件widget ;
[0025]在用戶(hù)執(zhí)行預(yù)設(shè)的第二操作時(shí),在所述3D場(chǎng)景圖上顯示所述電子設(shè)備原有的2Dwidget,其中,所述第二操作觸發(fā)所述3D渲染引擎通過(guò)所述接口模塊調(diào)用所述電子設(shè)備操作系統(tǒng)相關(guān)文件中的目標(biāo)2D widget,并對(duì)所述2D widget進(jìn)行顯示。
[0026]上述方法,優(yōu)選的,還包括:
[0027]對(duì)桌面3D場(chǎng)景進(jìn)行管理,包括:3D場(chǎng)景管理、裁減管理,2D widget管理和渲染,動(dòng)畫(huà)處理,視角轉(zhuǎn)換特效。
[0028]一種3D桌面顯示系統(tǒng),其特征在于,包括3D場(chǎng)景圖顯示模塊、天氣信息獲取模塊、天氣特效模擬模塊以及天氣特效顯示模塊,其中:
[0029]所述3D場(chǎng)景圖顯示模塊,用于在電子設(shè)備的顯示終端顯示預(yù)先基于3D渲染引擎開(kāi)發(fā)并存儲(chǔ)的3D場(chǎng)景圖,其中,所述3D場(chǎng)景圖具有景深效果、轉(zhuǎn)場(chǎng)效果和光影效果,所述3D渲染引擎通過(guò)預(yù)先開(kāi)發(fā)的接口模塊與所述電子設(shè)備的操作系統(tǒng)相連,以使用戶(hù)通過(guò)所述3D渲染引擎對(duì)所述電子設(shè)備的操作系統(tǒng)進(jìn)行訪問(wèn);
[0030]所述天氣信息獲取模塊,用于實(shí)時(shí)獲取天氣信息;
[0031]所述天氣特效模擬模塊,用于依據(jù)實(shí)時(shí)獲取的所述天氣信息,利用3D技術(shù)模擬實(shí)時(shí)的天氣狀況,得到相應(yīng)的3D天氣特效;
[0032]所述天氣特效顯示模塊,用于在所述3D場(chǎng)景圖上顯示所述3D天氣特效。
[0033]上述系統(tǒng),優(yōu)選的,所述天氣特效模擬模塊包括:
[0034]第一模擬單元,用于利用粒子系統(tǒng)模擬雨、雪、風(fēng)、陰、晴中的一種或多種天氣狀況,得到相應(yīng)的雨、雪、風(fēng)、陰、晴3D天氣特效中的一種或多種;
[0035]第二模擬單元,用于基于粒子系統(tǒng)并利用紋理貼圖動(dòng)態(tài)算法獲取3D霜凍效果;
[0036]第三模擬單元,用于利用體積云算法生成晴天、陰天以及雨天的3D云特效。
[0037]上述系統(tǒng),優(yōu)選的,還包括:
[0038]時(shí)間信息獲取模塊,用于實(shí)時(shí)獲取日期及時(shí)間信息;
[0039]朝霞晚霞顯示模塊,用于基于所述特效庫(kù),利用預(yù)設(shè)算法模擬朝霞和晚霞的3D特效,并依據(jù)獲取的時(shí)間信息在所述3D場(chǎng)景圖上對(duì)所述朝霞或晚霞的3D特效進(jìn)行相應(yīng)顯示;
[0040]日月星辰顯示模塊,用于利用物理定理預(yù)先計(jì)算出日月星辰的運(yùn)動(dòng)軌跡,基于所述運(yùn)動(dòng)軌跡以及實(shí)時(shí)獲取的日期及時(shí)間信息,利用天文計(jì)算公式實(shí)時(shí)計(jì)算日月星辰的相應(yīng)位置,并基于所述特效庫(kù)將日月星辰繪制、顯示在所述3D場(chǎng)景圖的所述位置處。
[0041]上述系統(tǒng),優(yōu)選的,還包括:
[0042]3D部件顯示模塊,用于在用戶(hù)執(zhí)行預(yù)設(shè)的第一操作時(shí),在所述3D場(chǎng)景圖上顯示預(yù)先利用所述3D渲染引擎開(kāi)發(fā)的3D窗口小部件widget ;
[0043]2D部件顯示模塊,用于在用戶(hù)執(zhí)行第二操作時(shí),在所述3D場(chǎng)景圖上顯示所述電子設(shè)備原有的2D widget,其中,所述第二操作觸發(fā)所述3D渲染引擎通過(guò)所述接口模塊調(diào)用所述電子設(shè)備操作系統(tǒng)相關(guān)文件中的目標(biāo)2D widget,并對(duì)所述2D widget進(jìn)行顯示。
[0044]上述系統(tǒng),優(yōu)選的,還包括:
[0045]場(chǎng)景管理模塊,用于對(duì)桌面3D場(chǎng)景進(jìn)行管理,包括:3D場(chǎng)景管理、裁減管理,2Dwidget管理和渲染,動(dòng)畫(huà)處理,視角轉(zhuǎn)換特效。
[0046]本發(fā)明實(shí)施例提供的3D桌面顯示方法,預(yù)先開(kāi)發(fā)3D渲染引擎與電子設(shè)備操作系統(tǒng)間的訪問(wèn)接口,并基于3D渲染引擎開(kāi)發(fā)用于作為電子設(shè)備桌面的具有景深效果、轉(zhuǎn)場(chǎng)效果和光影效果的3D場(chǎng)景圖,所述訪問(wèn)接口可支持后續(xù)用戶(hù)在作為桌面的3D場(chǎng)景圖上基于3D渲染引擎對(duì)電子設(shè)備的相關(guān)文件進(jìn)行訪問(wèn),例如具體實(shí)施時(shí),可移植開(kāi)源引擎OGRE到Android系統(tǒng),并為OGRE提供訪問(wèn)Android相應(yīng)文件系統(tǒng)的插件。在此基礎(chǔ)上,將所述3D場(chǎng)景圖在電子設(shè)備的顯示終端上進(jìn)行顯示,除此之外,本發(fā)明還實(shí)時(shí)獲取天氣信息,并利用相應(yīng)的3D技術(shù)得到實(shí)時(shí)天氣狀況的3D天氣特效,例如利用粒子系統(tǒng)模擬并產(chǎn)生雨、雪、風(fēng)的3D天氣特效等,最后將3D天氣特效顯示在所述3D場(chǎng)景圖上,以方便用戶(hù)了解實(shí)時(shí)的天氣狀況。
[0047]可見(jiàn),本發(fā)明通過(guò)開(kāi)發(fā)3D渲染引擎與電子設(shè)備操作系統(tǒng)間的訪問(wèn)接口,提供了一個(gè)完整的、與電子設(shè)備底層操作系統(tǒng)互聯(lián)的3D渲染引擎,并在此基礎(chǔ)上開(kāi)發(fā)出具有完全3D效果的3D場(chǎng)景圖,同時(shí)利用相關(guān)3D技術(shù)產(chǎn)生天氣特效進(jìn)行顯示,實(shí)現(xiàn)了真正3D效果的桌面,提升了用戶(hù)的立體視覺(jué)體驗(yàn)。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0048]為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0049]圖1是本發(fā)明實(shí)施例一公開(kāi)的3D桌面顯示方法的一種流程圖;
[0050]圖2是本發(fā)明實(shí)施例一公開(kāi)的實(shí)施本發(fā)明方法的技術(shù)架構(gòu)示意圖;
[0051]圖3是本發(fā)明實(shí)施例二公開(kāi)的3D桌面顯示方法的另一種流程圖;
[0052]圖4是本發(fā)明實(shí)施例三公開(kāi)的3D桌面顯示方法的又一種流程圖;
[0053]圖5是本發(fā)明實(shí)施例四公開(kāi)的3D桌面顯示系統(tǒng)的一種結(jié)構(gòu)示意圖;
[0054]圖6是本發(fā)明實(shí)施例四公開(kāi)的3D桌面顯示系統(tǒng)的另一種結(jié)構(gòu)示意圖;
[0055]圖7是本發(fā)明實(shí)施例四公開(kāi)的3D桌面顯示系統(tǒng)的又一種結(jié)構(gòu)示意圖。
【具體實(shí)施方式】[0056]為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0057]實(shí)施例一
[0058]本發(fā)明實(shí)施例一公開(kāi)一種3D桌面顯示方法,請(qǐng)參見(jiàn)圖1,該方法包括如下步驟:
[0059]S1:在電子設(shè)備的顯示終端顯示預(yù)先基于3D渲染引擎開(kāi)發(fā)并存儲(chǔ)的3D場(chǎng)景圖,其中,所述3D場(chǎng)景圖具有景深效果、轉(zhuǎn)場(chǎng)效果和光影效果,所述3D渲染引擎通過(guò)預(yù)先開(kāi)發(fā)的接口模塊與所述電子設(shè)備的操作系統(tǒng)相連,以使用戶(hù)通過(guò)所述3D渲染引擎對(duì)所述電子設(shè)備的操作系統(tǒng)進(jìn)行訪問(wèn)。
[0060]其中,所述電子設(shè)備具體可以是安裝了操作系統(tǒng)的智能手機(jī)、平板電腦等智能設(shè)備,本實(shí)施例具體以具有Android系統(tǒng)的智能手機(jī)為例對(duì)本發(fā)明的方法進(jìn)行說(shuō)明。
[0061]一個(gè)具有真正3D效果的3D桌面,需要基于一個(gè)完整的3D渲染引擎,為此,本發(fā)明移植開(kāi)源引擎OGRE (Ob ject-Oriented Graphics Rendering Engine,面向?qū)ο髨D形值染引擎)到Android系統(tǒng),并預(yù)先開(kāi)發(fā)一套接口模塊提供給0GRE,以使所述OGRE能夠?qū)λ鯝ndroid的相關(guān)文件系統(tǒng)進(jìn)行訪問(wèn),在此基礎(chǔ)上,由于OGRE基于C++語(yǔ)言,本發(fā)明還開(kāi)發(fā)Android下Java層(Android基于Java)對(duì)OGRE的訪問(wèn)和控制模塊,實(shí)現(xiàn)了 OGRE和Android的互聯(lián),為真正3D桌面的實(shí)現(xiàn)提供了支持。
[0062]其中,接口模塊包括文件管理插件、窗口管理插件、圖像解碼插件、特效庫(kù)以及日志插件。文件管理插件、窗口管理插件、圖像解碼插件、日志插件分別用于為所述3D渲染引擎訪問(wèn)所述電子設(shè)備操作系統(tǒng)中的文件管理系統(tǒng)、窗口管理系統(tǒng)、圖像解碼繪圖系統(tǒng)、日志系統(tǒng)提供接口 ;特效庫(kù)為基于所述電子設(shè)備操作系統(tǒng)中提供的0penGLES2.0,并利用shader技術(shù)編程所得的特效的集合,所述特效庫(kù)包括景深特效、光影特效和轉(zhuǎn)場(chǎng)特效。
[0063]以O(shè)GRE對(duì)Android的訪問(wèn)為例,請(qǐng)參見(jiàn)圖2,圖2示出了實(shí)施本發(fā)明方法的技術(shù)架構(gòu),OGRE可通過(guò)文件管理插件訪問(wèn)Android FW (framework,框架)中的AssertManager (文件管理系統(tǒng))、通過(guò)窗口管理插件訪問(wèn)Android Fff中的AssertManager (窗口管理系統(tǒng))、通過(guò)圖像解碼插件訪問(wèn)Android Fff中的Skia(圖像解碼繪圖系統(tǒng))、通過(guò)日志插件訪問(wèn)Android Fff中的log系統(tǒng)(日志系統(tǒng))。
[0064]本發(fā)明基于Android Fff提供的0penGLES2.0,并利用shader語(yǔ)言通過(guò)GPU (Graphic Processing Unit,圖形處理器)編程實(shí)現(xiàn)各種所需的特效,例如景深特效、轉(zhuǎn)場(chǎng)特效以及各種光影特效。產(chǎn)生的各種特效存儲(chǔ)在特效庫(kù)中,可以為后續(xù)3D桌面相關(guān)元素的繪制、顯示提供支持。
[0065]在此基礎(chǔ)上,請(qǐng)參見(jiàn)圖2,本發(fā)明在與Android互聯(lián)的OGRE的支撐下,采用相應(yīng)的SDK(SoftwareDevelopmentKit,軟件開(kāi)發(fā)工具包)開(kāi)發(fā)出具有景深效果、轉(zhuǎn)場(chǎng)效果和光影效果的3D場(chǎng)景圖,模擬一個(gè)真實(shí)世界的場(chǎng)景,并將場(chǎng)景圖導(dǎo)入引擎實(shí)現(xiàn)顯示。其中,3D場(chǎng)景圖包括一些基本的3D元素,例如草坪、房子、樹(shù)、小動(dòng)物等,其中,在繪制場(chǎng)景元素時(shí),基于特效庫(kù),并大量使用shader的GPU編程對(duì)場(chǎng)景元素逐像素計(jì)算光照,以產(chǎn)生鏡面反射、漫反射、太陽(yáng)炫光等所需的各種光影特效;景深效果需要操作深度緩存以及多通道渲染技術(shù),基于特效庫(kù)利用shader語(yǔ)言進(jìn)行GPU編程實(shí)現(xiàn);為了凸顯3D轉(zhuǎn)場(chǎng)特效,本發(fā)明將Camera的視錐角度(FOV)調(diào)整為90度(現(xiàn)有技術(shù)一般為60度),從而Camera即使移動(dòng)很小的一段距離也會(huì)導(dǎo)致場(chǎng)景的3D效果非常明顯。
[0066]在表現(xiàn)3D場(chǎng)景時(shí)需要大量使用到動(dòng)畫(huà),例如小動(dòng)物的一些動(dòng)作、后續(xù)提到的3D場(chǎng)景特殊元素的一些動(dòng)畫(huà)場(chǎng)景等,本發(fā)明具體采用物理定理準(zhǔn)確的計(jì)算出這些場(chǎng)景元素的運(yùn)動(dòng)軌跡,實(shí)現(xiàn)動(dòng)畫(huà)效果。
[0067]S2:實(shí)時(shí)獲取天氣信息。
[0068]除了利用3D場(chǎng)景圖進(jìn)行基本的桌面顯示,為方便用戶(hù)了解實(shí)時(shí)的天氣信息,本發(fā)明還提供天氣信息的顯示功能,即3D場(chǎng)景圖除了包括一些房子、樹(shù)等基本元素,還包括諸如天氣信息、以及后續(xù)提到的朝霞、晚霞、日月星辰等特殊元素。
[0069]具體地,智能設(shè)備通過(guò)服務(wù)器獲取實(shí)時(shí)的天氣信息,例如雨、雪、風(fēng)、霜、陰、晴、云等天氣狀況。
[0070]S3:依據(jù)實(shí)時(shí)獲取的所述天氣信息,利用3D技術(shù)模擬實(shí)時(shí)的天氣狀況,得到相應(yīng)的3D天氣特效。
[0071]本發(fā)明具體利用粒子系統(tǒng)模擬雨、雪、風(fēng)、陰、晴的天氣狀況,得到相應(yīng)的雨、雪、風(fēng)、陰、晴3D天氣特效;基于粒子系統(tǒng)并利用紋理貼圖動(dòng)態(tài)算法實(shí)現(xiàn)3D霜凍效果;利用體積云算法生成晴天、陰天以及雨天的3D云特效。
[0072]S4:在所述3D場(chǎng)景圖上顯示所述3D天氣特效。
[0073]在利用相應(yīng)3D技術(shù)模擬產(chǎn)生實(shí)時(shí)天氣狀況的天氣特效后,本發(fā)明將天氣特效顯示在3D場(chǎng)景圖的相應(yīng)位置,豐富了 3D桌面的顯示內(nèi)容,方便了用戶(hù)對(duì)實(shí)時(shí)天氣狀況進(jìn)行了解。
[0074]綜上,本發(fā)明實(shí)施例提供的3D桌面顯示方法,預(yù)先開(kāi)發(fā)3D渲染引擎與電子設(shè)備操作系統(tǒng)間的訪問(wèn)接口,并基于3D渲染引擎開(kāi)發(fā)用于作為電子設(shè)備桌面的具有景深效果、轉(zhuǎn)場(chǎng)效果和光影效果的3D場(chǎng)景圖,所述訪問(wèn)接口可支持后續(xù)用戶(hù)在作為桌面的3D場(chǎng)景圖上基于3D渲染引擎對(duì)電子設(shè)備的相關(guān)文件進(jìn)行訪問(wèn),例如具體實(shí)施時(shí),可移植開(kāi)源引擎OGRE到Android系統(tǒng),并為OGRE提供訪問(wèn)Android相應(yīng)文件系統(tǒng)的插件。在此基礎(chǔ)上,將所述3D場(chǎng)景圖在電子設(shè)備的顯示終端上進(jìn)行顯示,除此之外,本發(fā)明還實(shí)時(shí)獲取天氣信息,并利用相應(yīng)的3D技術(shù)得到實(shí)時(shí)天氣狀況的3D天氣特效,例如利用粒子系統(tǒng)模擬并產(chǎn)生雨、雪、風(fēng)的3D天氣特效等,最后將3D天氣特效顯示在所述3D場(chǎng)景圖上,以方便用戶(hù)了解實(shí)時(shí)的天氣狀況。
[0075]可見(jiàn),本發(fā)明通過(guò)開(kāi)發(fā)3D渲染引擎與電子設(shè)備操作系統(tǒng)間的訪問(wèn)接口,提供了一個(gè)完整的、與電子設(shè)備底層操作系統(tǒng)互聯(lián)的3D渲染引擎,并在此基礎(chǔ)上開(kāi)發(fā)出具有完全3D效果的3D場(chǎng)景圖,同時(shí)利用相關(guān)3D技術(shù)產(chǎn)生天氣特效進(jìn)行顯示,實(shí)現(xiàn)了真正3D效果的桌面,提升了用戶(hù)體驗(yàn)。
[0076]實(shí)施例二
[0077]本發(fā)明實(shí)施例二繼續(xù)對(duì)實(shí)施例一的3D桌面顯示方法進(jìn)行補(bǔ)充、完善,請(qǐng)參見(jiàn)圖3,本實(shí)施例中,上述方法還包括如下步驟:
[0078]S5:實(shí)時(shí)獲取日期及時(shí)間信息。
[0079]智能設(shè)備通過(guò)服務(wù)器獲取實(shí)時(shí)的日期及時(shí)間信息。
[0080]S6:基于所述特效庫(kù),利用預(yù)設(shè)算法模擬朝霞和晚霞的3D特效,并依據(jù)獲取的時(shí)間信息在所述3D場(chǎng)景圖上對(duì)所述朝霞或晚霞的3D特效進(jìn)行相應(yīng)顯示。
[0081]S7:利用物理定理預(yù)先計(jì)算出日月星辰的運(yùn)動(dòng)軌跡,基于所述運(yùn)動(dòng)軌跡以及實(shí)時(shí)獲取的日期及時(shí)間信息,利用天文計(jì)算公式實(shí)時(shí)計(jì)算日月星辰的相應(yīng)位置,并基于所述特效庫(kù)將日月星辰繪制、顯示在所述3D場(chǎng)景圖的所述位置處。
[0082]本實(shí)施例擴(kuò)充了 3D場(chǎng)景的元素,豐富了 3D桌面的顯示內(nèi)容,同時(shí)為用戶(hù)了解更全面的環(huán)境信息(日月星辰等)提供了便利。
[0083]實(shí)施例三
[0084]本實(shí)施例三在以上兩個(gè)實(shí)施例的基礎(chǔ)上,繼續(xù)對(duì)本發(fā)明方法進(jìn)行完善,請(qǐng)參見(jiàn)圖4,該方法還包括如下步驟:
[0085]S8:在用戶(hù)執(zhí)行預(yù)設(shè)的第一操作時(shí),在所述3D場(chǎng)景圖上顯示預(yù)先利用所述3D渲染引擎開(kāi)發(fā)的3D窗口小部件widget。
[0086]S9:在用戶(hù)執(zhí)行預(yù)設(shè)的第二操作時(shí),在所述3D場(chǎng)景圖上顯示所述電子設(shè)備原有的2D widget,其中,所述第二操作觸發(fā)所述3D渲染引擎通過(guò)所述接口模塊調(diào)用所述電子設(shè)備的操作系統(tǒng)相關(guān)文件中的目標(biāo)2D widget,并對(duì)所述2D widget進(jìn)行顯示。
[0087]具體地,本發(fā)明還基于3D渲染引擎開(kāi)發(fā)了一些具有完全3D效果的3D widget (窗口小部件),例如具有動(dòng)畫(huà)以及遠(yuǎn)視(拉遠(yuǎn))、近視等效果的音樂(lè)播放器、鬧鐘等,同時(shí),本發(fā)明還兼容智能設(shè)備原有的2D widget,本發(fā)明所提供的3D widget以及原有的2D widget,可由用戶(hù)依據(jù)實(shí)際需求通過(guò)自行設(shè)定進(jìn)行使用。在用戶(hù)執(zhí)行相應(yīng)操作需要在桌面顯示2Dwidget時(shí),OGRE具體通過(guò)圖像解碼插件訪問(wèn)Skia,利用skia將相應(yīng)二維圖像的文件存儲(chǔ)格式解碼為二維紋理切圖,以實(shí)現(xiàn)二維顯示。
[0088]本實(shí)施例通過(guò)提供3D widget進(jìn)一步豐富了 3D桌面的內(nèi)容,提升了用戶(hù)的立體效果體驗(yàn),同時(shí),對(duì)原有2D widget的兼容,為用戶(hù)提供了更多選擇。
[0089]接下來(lái),本實(shí)施例繼續(xù)對(duì)3D桌面顯示方法進(jìn)行擴(kuò)充,該方法還包括:
[0090]對(duì)桌面3D場(chǎng)景進(jìn)行管理,包括:3D場(chǎng)景管理、裁減管理,2D widget管理和渲染,動(dòng)畫(huà)處理,視角轉(zhuǎn)換特效。
[0091]本發(fā)明基于OGRE開(kāi)發(fā)了一套適合桌面特性的場(chǎng)景管理器,用于對(duì)桌面3D場(chǎng)景進(jìn)行管理。3D桌面的特性是場(chǎng)景比較簡(jiǎn)單,場(chǎng)景元素比較少,因此本發(fā)明場(chǎng)景管理器基于二叉空間分割樹(shù)(BSP)實(shí)現(xiàn)場(chǎng)景管理,即具體將3D桌面的場(chǎng)景元素以及2D Widget和表示天氣的粒子系統(tǒng)添加到場(chǎng)景管理器中,在渲染時(shí)通過(guò)BSP算法對(duì)場(chǎng)景元素進(jìn)行裁剪。
[0092]實(shí)施例四
[0093]本發(fā)明實(shí)施例四公開(kāi)一種3D桌面顯示系統(tǒng),該系統(tǒng)與以上實(shí)施例公開(kāi)的3D桌面顯示方法相對(duì)應(yīng)。
[0094]首先,相應(yīng)于實(shí)施例一中3D桌面顯示方法的流程,本實(shí)施例公開(kāi)3D桌面顯示系統(tǒng)的一種結(jié)構(gòu),如圖5所示,該系統(tǒng)包括3D場(chǎng)景圖顯示模塊100、天氣信息獲取模塊200、天氣特效模擬模塊300以及天氣特效顯示模塊400。
[0095]3D場(chǎng)景圖顯示模塊100,用于在電子設(shè)備的顯示終端顯示預(yù)先基于3D渲染引擎開(kāi)發(fā)并存儲(chǔ)的3D場(chǎng)景圖,其中,所述3D場(chǎng)景圖具有景深效果、轉(zhuǎn)場(chǎng)效果和光影效果,所述3D渲染引擎通過(guò)預(yù)先開(kāi)發(fā)的接口模塊與所述電子設(shè)備的操作系統(tǒng)相連,以使用戶(hù)通過(guò)所述3D渲染引擎對(duì)所述電子設(shè)備的操作系統(tǒng)進(jìn)行訪問(wèn)。[0096]天氣信息獲取模塊200,用于實(shí)時(shí)獲取天氣信息。
[0097]天氣特效模擬模塊300,用于依據(jù)實(shí)時(shí)獲取的所述天氣信息,利用3D技術(shù)模擬實(shí)時(shí)的天氣狀況,得到相應(yīng)的3D天氣特效。
[0098]其中,天氣特效模擬模塊300具體包括第一模擬單元、第二模擬單元和第三模擬單元。第一模擬單元,用于利用粒子系統(tǒng)模擬雨、雪、風(fēng)、陰、晴中的一種或多種天氣狀況,得到相應(yīng)的雨、雪、風(fēng)、陰、晴3D天氣特效中的一種或多種;第二模擬單元,用于基于粒子系統(tǒng)并利用紋理貼圖動(dòng)態(tài)算法獲取3D霜凍效果;第三模擬單元,用于利用體積云算法生成晴天、陰天以及雨天的3D云特效。
[0099]天氣特效顯示模塊400,用于在所述3D場(chǎng)景圖上顯示所述3D天氣特效。
[0100]相應(yīng)于實(shí)施例二中3D桌面顯示方法的流程,本實(shí)施例四繼續(xù)公開(kāi)3D桌面顯示系統(tǒng)的另一種結(jié)構(gòu),如圖6所示,該系統(tǒng)還包括時(shí)間信息獲取模塊500、朝霞晚霞顯示模塊600和日月星辰顯示模塊700。
[0101]時(shí)間信息獲取模塊500,用于實(shí)時(shí)獲取日期及時(shí)間信息;
[0102]朝霞晚霞顯示模塊600,用于基于所述特效庫(kù),利用預(yù)設(shè)算法模擬朝霞和晚霞的3D特效,并依據(jù)獲取的時(shí)間信息在所述3D場(chǎng)景圖上對(duì)所述朝霞或晚霞的3D特效進(jìn)行相應(yīng)顯示;
[0103]日月星辰顯示模塊700,用于利用物理定理預(yù)先計(jì)算出日月星辰的運(yùn)動(dòng)軌跡,基于所述運(yùn)動(dòng)軌跡以及實(shí)時(shí)獲取的日期及時(shí)間信息,利用天文計(jì)算公式實(shí)時(shí)計(jì)算日月星辰的相應(yīng)位置,并基于所述特效庫(kù)將日月星辰繪制、顯示在所述3D場(chǎng)景圖的所述位置處。
[0104]接下來(lái),相應(yīng)與實(shí)施例三中3D桌面顯示方法的流程,3D桌面顯示系統(tǒng)還包括3D部件顯示模塊800、2D部件顯示模塊900以及場(chǎng)景管理模塊1000。
[0105]3D部件顯示模塊800,用于在用戶(hù)執(zhí)行預(yù)設(shè)的第一操作時(shí),在所述3D場(chǎng)景圖上顯示預(yù)先利用所述3D渲染引擎開(kāi)發(fā)的3D窗口小部件widget ;
[0106]2D部件顯示模塊900,用于在用戶(hù)執(zhí)行第二操作時(shí),在所述3D場(chǎng)景圖上顯示所述電子設(shè)備原有的2D widget,其中,所述第二操作觸發(fā)所述3D渲染引擎通過(guò)所述接口模塊調(diào)用所述電子設(shè)備操作系統(tǒng)相關(guān)文件中的目標(biāo)2D widget,并對(duì)所述2D widget進(jìn)行顯示。
[0107]場(chǎng)景管理模塊1000,用于對(duì)桌面3D場(chǎng)景進(jìn)行管理,包括:3D場(chǎng)景管理、裁減管理,2D widget管理和渲染,動(dòng)畫(huà)處理,視角轉(zhuǎn)換特效。
[0108]對(duì)于本發(fā)明實(shí)施例四公開(kāi)的3D桌面顯示系統(tǒng)而言,由于其與以上各實(shí)施例公開(kāi)的3D桌面顯示方法相對(duì)應(yīng),所以描述的比較簡(jiǎn)單,相關(guān)相似之處請(qǐng)參見(jiàn)以上各實(shí)施例中3D桌面顯示方法部分的說(shuō)明即可,此處不再詳述。
[0109]綜上所述,本發(fā)明通過(guò)開(kāi)發(fā)3D渲染引擎與電子設(shè)備操作系統(tǒng)間的訪問(wèn)接口,提供了一個(gè)完整的、與電子設(shè)備底層操作系統(tǒng)互聯(lián)的3D渲染引擎,并基于3D渲染引擎開(kāi)發(fā)出具有景深效果、光影效果以及轉(zhuǎn)場(chǎng)效果等完全3D效果的場(chǎng)景圖,同時(shí)實(shí)現(xiàn)了 3D真實(shí)場(chǎng)景中的3D天氣特效、朝霞晚霞特效以及日月星辰位置的實(shí)時(shí)計(jì)算、特效顯示等,實(shí)現(xiàn)了真正3D效果的桌面,提升了用戶(hù)的立體視覺(jué)體驗(yàn)。
[0110]需要說(shuō)明的是,本說(shuō)明書(shū)中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似的部分互相參見(jiàn)即可。
[0111]為了描述的方便,描述以上裝置時(shí)以功能分為各種模塊或單元分別描述。當(dāng)然,在實(shí)施本申請(qǐng)時(shí)可以把各模塊、單元的功能在同一個(gè)或多個(gè)軟件和/或硬件中實(shí)現(xiàn)。
[0112]通過(guò)以上的實(shí)施方式的描述可知,本領(lǐng)域的技術(shù)人員可以清楚地了解到本申請(qǐng)可借助軟件加必需的通用硬件平臺(tái)的方式來(lái)實(shí)現(xiàn)?;谶@樣的理解,本申請(qǐng)的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在存儲(chǔ)介質(zhì)中,如R0M/RAM、磁碟、光盤(pán)等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本申請(qǐng)各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。
[0113]以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本【技術(shù)領(lǐng)域】的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
【權(quán)利要求】
1.一種3D桌面顯示方法,其特征在于,包括: 在電子設(shè)備的顯示終端顯示預(yù)先基于3D渲染引擎開(kāi)發(fā)并存儲(chǔ)的3D場(chǎng)景圖,其中,所述3D場(chǎng)景圖具有景深效果、轉(zhuǎn)場(chǎng)效果和光影效果,所述3D渲染引擎通過(guò)預(yù)先開(kāi)發(fā)的接口模塊與所述電子設(shè)備的操作系統(tǒng)相連,以使用戶(hù)通過(guò)所述3D渲染引擎對(duì)所述電子設(shè)備的操作系統(tǒng)進(jìn)行訪問(wèn); 實(shí)時(shí)獲取天氣信息; 依據(jù)實(shí)時(shí)獲取的所述天氣信息,利用3D技術(shù)模擬實(shí)時(shí)的天氣狀況,得到相應(yīng)的3D天氣特效; 在所述3D場(chǎng)景圖上顯示所述3D天氣特效。
2.根據(jù)權(quán)利要求1所述的3D桌面顯示方法,其特征在于,所述天氣信息包括:雨、雪、風(fēng)、霜、陰、晴、云。
3.根據(jù)權(quán)利要求2所述的3D桌面顯示方法,其特征在于,所述依據(jù)實(shí)時(shí)獲取的所述天氣信息,利用3D技術(shù)模擬實(shí)時(shí)的天氣狀況,得到相應(yīng)的3D天氣特效,具體包括: 利用粒子系統(tǒng)模擬雨、雪、風(fēng)、陰、晴中的一種或多種天氣狀況,得到相應(yīng)的雨、雪、風(fēng)、陰、晴3D天氣特效中的一種或多種; 基于粒子系統(tǒng)并利用紋理貼圖動(dòng)態(tài)算法獲取3D霜凍效果; 利用體積云算法生成晴天、陰天以及雨天的3D云特效。
4.根據(jù)權(quán)利要求1所述的3D桌面顯示方法,其特征在于,所述接口模塊包括文件管理插件、窗口管理插件、圖像解碼插件、特效庫(kù)以及日志插件,其中: 所述文件管理插件、窗口管理插件、圖像解碼插件、日志插件分別用于為所述3D渲染引擎訪問(wèn)所述電子設(shè)備操作系統(tǒng)中的文件管理系統(tǒng)、窗口管理系統(tǒng)、圖像解碼繪圖系統(tǒng)、日志系統(tǒng)提供接口; 所述特效庫(kù)為基于所述 電子設(shè)備操作系統(tǒng)中提供的OpenGLES2.0,并利用shader技術(shù)編程所得的特效的集合,所述特效庫(kù)包括景深特效、光影特效和轉(zhuǎn)場(chǎng)特效。
5.根據(jù)權(quán)利要求4所述的3D桌面顯示方法,其特征在于,還包括: 實(shí)時(shí)獲取日期及時(shí)間信息; 基于所述特效庫(kù),利用預(yù)設(shè)算法模擬朝霞和晚霞的3D特效,并依據(jù)獲取的時(shí)間信息在所述3D場(chǎng)景圖上對(duì)所述朝霞或晚霞的3D特效進(jìn)行相應(yīng)顯示; 利用物理定理預(yù)先計(jì)算出日月星辰的運(yùn)動(dòng)軌跡,基于所述運(yùn)動(dòng)軌跡以及實(shí)時(shí)獲取的日期及時(shí)間信息,利用天文計(jì)算公式實(shí)時(shí)計(jì)算日月星辰的相應(yīng)位置,并基于所述特效庫(kù)將日月星辰繪制、顯示在所述3D場(chǎng)景圖的所述位置處。
6.根據(jù)權(quán)利要求1所述的3D桌面顯示方法,其特征在于,還包括: 在用戶(hù)執(zhí)行預(yù)設(shè)的第一操作時(shí),在所述3D場(chǎng)景圖上顯示預(yù)先利用所述3D渲染引擎開(kāi)發(fā)的3D窗口小部件widget ; 在用戶(hù)執(zhí)行預(yù)設(shè)的第二操作時(shí),在所述3D場(chǎng)景圖上顯示所述電子設(shè)備原有的2Dwidget,其中,所述第二操作觸發(fā)所述3D渲染引擎通過(guò)所述接口模塊調(diào)用所述電子設(shè)備操作系統(tǒng)相關(guān)文件中的目標(biāo)2D widget,并對(duì)所述2D widget進(jìn)行顯示。
7.根據(jù)權(quán)利要求1-6任意一項(xiàng)所述的3D桌面顯示方法,其特征在于,還包括: 對(duì)桌面3D場(chǎng)景進(jìn)行管理,包括:3D場(chǎng)景管理、裁減管理,2D widget管理和渲染,動(dòng)畫(huà)處理,視角轉(zhuǎn)換特效。
8.—種3D桌面顯示系統(tǒng),其特征在于,包括3D場(chǎng)景圖顯示模塊、天氣信息獲取模塊、天氣特效模擬模塊以及天氣特效顯示模塊,其中: 所述3D場(chǎng)景圖顯示模塊,用于在電子設(shè)備的顯示終端顯示預(yù)先基于3D渲染引擎開(kāi)發(fā)并存儲(chǔ)的3D場(chǎng)景圖,其中,所述3D場(chǎng)景圖具有景深效果、轉(zhuǎn)場(chǎng)效果和光影效果,所述3D渲染引擎通過(guò)預(yù)先開(kāi)發(fā)的接口模塊與所述電子設(shè)備的操作系統(tǒng)相連,以使用戶(hù)通過(guò)所述3D渲染引擎對(duì)所述電子設(shè)備的操作系統(tǒng)進(jìn)行訪問(wèn); 所述天氣信息獲取模塊,用于實(shí)時(shí)獲取天氣信息; 所述天氣特效模擬模塊,用于依據(jù)實(shí)時(shí)獲取的所述天氣信息,利用3D技術(shù)模擬實(shí)時(shí)的天氣狀況,得到相應(yīng)的3D天氣特效; 所述天氣特效顯示模塊,用于在所述3D場(chǎng)景圖上顯示所述3D天氣特效。
9.根據(jù)權(quán)利要求8所述的3D桌面顯示系統(tǒng),其特征在于,所述天氣特效模擬模塊包括: 第一模擬單元,用于利用粒子系統(tǒng)模擬雨、雪、風(fēng)、陰、晴中的一種或多種天氣狀況,得到相應(yīng)的雨、雪、風(fēng)、陰、晴3D天氣特效中的一種或多種; 第二模擬單元,用于基于粒子系統(tǒng)并利用紋理貼圖動(dòng)態(tài)算法獲取3D霜凍效果; 第三模擬單元,用于利用體積云算法生成晴天、陰天以及雨天的3D云特效。
10.根據(jù)權(quán)利要求8所述的3D桌面顯示系統(tǒng),其特征在于,還包括: 時(shí)間信息獲取模塊,用于實(shí)時(shí)獲取日期及時(shí)間信息; 朝霞晚霞顯示模塊,用于基于所述特效庫(kù),利用預(yù)設(shè)算法模擬朝霞和晚霞的3D特效,并依據(jù)獲取的時(shí)間信息在所述3D場(chǎng)景圖上對(duì)所述朝霞或晚霞的3D特效進(jìn)行相應(yīng)顯示; 日月星辰顯示模塊,用于利用物理定理預(yù)先計(jì)算出日月星辰的運(yùn)動(dòng)軌跡,基于所述運(yùn)動(dòng)軌跡以及實(shí)時(shí)獲取的日期及時(shí)間信息,利用天文計(jì)算公式實(shí)時(shí)計(jì)算日月星辰的相應(yīng)位置,并基于所述特效庫(kù)將日月星辰繪制、顯示在所述3D場(chǎng)景圖的所述位置處。
11.根據(jù)權(quán)利要求8所述的3D桌面顯示系統(tǒng),其特征在于,還包括: 3D部件顯示模塊,用于在用戶(hù)執(zhí)行預(yù)設(shè)的第一操作時(shí),在所述3D場(chǎng)景圖上顯示預(yù)先利用所述3D渲染引擎開(kāi)發(fā)的3D窗口小部件widget ; 2D部件顯示模塊,用于在用戶(hù)執(zhí)行第二操作時(shí),在所述3D場(chǎng)景圖上顯示所述電子設(shè)備原有的2D widget,其中,所述第二操作觸發(fā)所述3D渲染引擎通過(guò)所述接口模塊調(diào)用所述電子設(shè)備操作系統(tǒng)相關(guān)文件中的目標(biāo)2D widget,并對(duì)所述2D widget進(jìn)行顯示。
12.根據(jù)權(quán)利要求8-11任意一項(xiàng)所述的3D桌面顯示系統(tǒng),其特征在于,還包括: 場(chǎng)景管理模塊,用于對(duì)桌面3D場(chǎng)景進(jìn)行管理,包括:3D場(chǎng)景管理、裁減管理,2D widget管理和渲染,動(dòng)畫(huà)處理,視角轉(zhuǎn)換特效。
【文檔編號(hào)】G06F9/44GK103984553SQ201410225017
【公開(kāi)日】2014年8月13日 申請(qǐng)日期:2014年5月26日 優(yōu)先權(quán)日:2014年5月26日
【發(fā)明者】崔傳凱, 鄒鵬程, 耿增強(qiáng) 申請(qǐng)人:中科創(chuàng)達(dá)軟件股份有限公司