欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

go語言圖形開發(fā)pdf go語言圖片

go語言應(yīng)用場景_MEL語言在Maya場景設(shè)計中的應(yīng)用

[摘 要]本文針對具體的場景設(shè)計,引入MEL語言,詳細(xì)闡述了Maya的二次開發(fā)的流程,通過比較進(jìn)而說明基于三維設(shè)計軟件平臺的二次開發(fā)在三維設(shè)計建模中的可用性。 [關(guān)鍵詞]MayaMEL語言場景設(shè)碧棗計

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都做網(wǎng)站、網(wǎng)站建設(shè)、外貿(mào)營銷網(wǎng)站建設(shè)、托克托網(wǎng)絡(luò)推廣、微信平臺小程序開發(fā)、托克托網(wǎng)絡(luò)營銷、托克托企業(yè)策劃、托克托品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供托克托建站搭建服務(wù),24小時服務(wù)熱線:028-86922220,官方網(wǎng)址:chinadenli.net

[中圖分類號]TP[文獻(xiàn)標(biāo)識碼]A[文章編號]1007-9416(2010)03-0065-03

1 引言

Maya 作為Alias―Wavefront 的旗艦產(chǎn)品,現(xiàn)已成為國際3D 設(shè)計制作界的主流軟件。它適用于專業(yè)角色動畫、電影特技、影視廣告等。并以其靈活、開放、高速和高效而備受推崇。

MEL 是Maya Embedded Language (Maya嵌入式語言)的縮寫,是一種強(qiáng)大的命令和腳本語言,讓你直接控制Maya 的特征、進(jìn)程和工作流程。Maya界面的幾乎每一個要點(diǎn)都是在MEL指令和腳本程序上建立的。由于Maya給出了對于MEL自身的完全的訪問,你可以擴(kuò)展和定制Maya。通過MEL,你可以進(jìn)一步開發(fā)Maya使它成為你和你的項目的獨(dú)特而創(chuàng)新的環(huán)境[1]。

2 MEL語言對Maya的進(jìn)一步開發(fā)

目前的主流動畫設(shè)計軟件都或多或少的給用戶提供了一個編程接口以進(jìn)行開發(fā)。Maya則使用MEL語言對其進(jìn)行開發(fā)。MEL作為一種腳本語言,受腳本解釋器(Command Engine)和Maya內(nèi)置命令的影響,還是有很多局限的。MEL不能使用ActiveX插件,還只能根據(jù)Maya中已有的命令(dll或mll中注冊過的命令)進(jìn)行擴(kuò)展,無法直接調(diào)用dll模塊中的函數(shù)。我們平常使用的dll或exe程序文件是經(jīng)過編譯器優(yōu)化的二進(jìn)制文件,命令的執(zhí)行速度非常快,而MEL腳本語言是文本,有一個腳本解釋器分析的過程,命令的執(zhí)行速度較慢,大約要慢20倍。MEL不支持指針,不能對內(nèi)存進(jìn)行直接操作。這就導(dǎo)致了很多方面的效率超級低下,對內(nèi)存的間接操作可能會使運(yùn)行速度降低100倍甚至1000倍以上。不過這樣也有一個不容爭辯的好處,就是不會產(chǎn)生內(nèi)存泄漏,保障了Maya的穩(wěn)定性。盡管如此,考慮到MEL在場景設(shè)計中的許多優(yōu)勢,如快速搭建重復(fù)的場景,MEL仍不失為一個公認(rèn)的選祥慧洞擇。

2.1 流程簡化

Maya中的所有的按鈕命令都是通過MEL來調(diào)用的,你可以記錄并把其中一些命令組合起來,通過一鍵或按鈕來自動執(zhí)行這一組命令,就像PhotoShop里的Actions一樣。在場景設(shè)計中,有些環(huán)節(jié)步驟非常繁瑣,通過MEL命令將這些步驟整的命令整合在一起,大大簡化了操作的流程。

2.2 功能擴(kuò)展

對謹(jǐn)枯于一個項目來說,必然有各種特定的需求,這些是Maya庫中的基本工具所不能滿足的,但是MEL可以按用戶需求編輯設(shè)計各種細(xì)微的場景并封裝成塊調(diào)用,這大大擴(kuò)充了Maya的功能,使Maya運(yùn)用起來更友好,更順手。

2.3 界面友好

MEL有一個很重要的功能是編寫界面,Maya的整個界面是用MEL編寫的,Maya中的所有界面元素都可以編寫到你自己的MEL程序界面中,你可以用MEL跟據(jù)自己的習(xí)慣定制自己的操作界面。

實際的應(yīng)用使我們感到:MEL是Maya使用最方便和控制最靈活的編程接口。Maya中的每一步操作都是在執(zhí)行MEL,因此Maya的任何一個功能,能做的任何一項操作,都可以加到你自己的MEL程序中。正如Maya的圖形用戶界面(GUI)也是由MEL來控制的。既然在Maya的每個角落都有MEL的存在,那么,對MEL了解得越是深入,Maya就會運(yùn)用的越好,在場景設(shè)計中也會更加得心應(yīng)手。

3 MEL在場景設(shè)計中的應(yīng)用

3.1 草地建模

場景設(shè)計中經(jīng)常需要在戶外鋪設(shè)草地。草地的制作可以通過對單根小草建模,然后批量復(fù)制,在對其細(xì)節(jié)進(jìn)行修改,但即便如此,同樣是草地,由于區(qū)域不同,某個場景下完成的草地效果未必能適合其他場景的需要,所以必須重新建模。這種建模修改的工作非常繁瑣,而且耗時。

3.1.1 通過MEL對草地建模提速

草地的特征是草的高度參差不齊,草的方向也會隨生長長短倒向不同的方向,通過MEL對這些細(xì)節(jié)進(jìn)行編寫,可以制作各種樣式的草地,由于草地的特征數(shù)據(jù)是可以手動修改的,這給與設(shè)計極大的靈活度,所以創(chuàng)建成后只需修改這些參數(shù)就能迅速生成場景設(shè)計中需要的樣式。結(jié)果如圖1所示。

3.1.2 基于MEL的草地建模流程

●制作一根草,加變形器

string $grassName[]=`polyCone -r $radius -h $height-sx3-sy 10-sz 0 -ax 0 1 0 -tx 1 -ch 1`;

setAttr ($grassName[0]+".translateY") ($height/2);

setAttr($grassName[0]+".scaleX") 0.25;

string $bendName[]=`nonLinear -type bend-lowBound 0 -highBound $height -curvature $curvature`;

setAttr($bendName[1]+".translateY")0;

草的模型是三棱錐,用polyCone建立單根草的模型,賦予其高度h,底面邊數(shù)sx,棱劃分?jǐn)?shù)sz,再用縮放scaleX對其進(jìn)行變形,令底面沿x軸方向由頂點(diǎn)向底邊靠近,以體現(xiàn)草扁的特質(zhì),然后設(shè)置彎曲軌跡曲線curvature[2],顯出草的彎折。效果如圖2所示。

●隨機(jī)放置每根草

global proc genGrass(float $minX,float $maxX,float $minZ,float $maxZ, int $num,string $style)

{

int $i;

for($i=0;$i 本文為全文原貌 未安裝PDF瀏覽器用戶請先下載安裝 原版全文 ●帶入具體場景需求的參數(shù),生成草地。

generateGrass(x方向最小值,x方向最大值,z方向最小值,z方向最大值,草的個數(shù),“草的長短”)

genGrass(-10,10,-10,10,20,"long")

效果如圖3所示。

經(jīng)過以上流程,一塊草地的設(shè)計就初步完成了。實際設(shè)計中還要對草地進(jìn)行渲染,加上光線,這里重點(diǎn)在于介紹草地模型的建立,故不贅述。

可以看出,我們只要修改genGrass()中的參數(shù)即可生成各種樣式的草地,但是這樣在工作中,如果每次設(shè)計草地場景都要復(fù)制整段的MEL,再修改參數(shù)也是不人性化的。因為復(fù)制中如果漏了一個符號很可能導(dǎo)致整段MEL語言就無法運(yùn)行,所以這里就要再次利用MEL對以上的模塊進(jìn)行封裝。

3.1.3 基于MEL的草地建模腳本的封裝

事實上,我們在使用Maya時,在菜單中創(chuàng)建某個物體,選擇某個工具,對某項操作進(jìn)行參數(shù)設(shè)置,在屬性編輯器中對物體的屬性進(jìn)行調(diào)節(jié),等等操作都是在Maya提供的用戶圖形界面上進(jìn)行的。這些用戶圖形界面的使用方法已經(jīng)以MEL命令的方式公開給了用戶,使我們可以通過這些命令,創(chuàng)建自己的界面,在界面上輸入或選擇相關(guān)參數(shù),調(diào)用編寫好的腳本,起到封裝的效果。

●定義圖形界面框體

window -title "makeGrass" -w 400 -h 300 grassWin;

通過window命令建立了窗體的寬w,高h(yuǎn),以及formLayout的標(biāo)題title。

●劃分框體份數(shù)

string $form=`formLayout-numberOfDivisions 3`;

通過numberOfDivisions,將formLayout劃分為3份,這在后面的用attachPosition定位時會起到作用。

●定義各參數(shù)按鈕

floatSliderGrp -label "mindirectx" -field true -min -100 -max 0 minX;

floatSliderGrp -label "maxdirectx" -field true -min 0 -max 100 maxX;

floatSliderGrp -label "mindirecty" -field true -min -100 -max 0 minY;

floatSliderGrp -label "maxdirecty" -field true -min 0 -max 100 maxY;

floatSliderGrp -label "number" -field true -min 1 -max 1000 num;

radioButton -label "long" long;

radioButton -label "normal" normal;

radioButton -label "short" short;

string $but =`button -label "make grass" -command genGrass`;

根據(jù)設(shè)計需要,通過floatSliderGrp.生成拖動條,可以定義場景范圍,快捷的選擇場景需要的數(shù)據(jù),通過radioButton生成單選按鈕,選擇草地的類型。最后設(shè)置功能按鈕,用-command命令將生成草地genGrass模塊與button按鈕聯(lián)系起來。

●顯示封裝模塊操作窗口

showWindow makegrass;該命令將之前設(shè)置的按鈕屬性以圖形界面顯示出來,效果如圖4所示。

通過以上闡述,繁瑣重復(fù)的草地場景設(shè)計就可以通過幾個拖動條,幾個單選框方便的完成。

3.2 MEL運(yùn)用的在場景設(shè)計中的收益

MEL的運(yùn)用在設(shè)計過程中無疑大大節(jié)省了時間,降低了工作人員的工作強(qiáng)度,效率也得到極大的提高,制作人員可以將更多地精力投放到其他諸如場景燈光,道具設(shè)計等更重要的工作中去。與之前的重復(fù)建模,細(xì)節(jié)修改相比,運(yùn)用MEL后一個同樣規(guī)模的場景設(shè)計從之前的1個/2小時縮減到1個/10分鐘,并且完成每個場景所需時間隨著工作時間增長,前者所需時間會進(jìn)一步增加,而后者則保持不變,可見MEL帶來的不僅僅是單個任務(wù)的效率提高,對項目整體也是進(jìn)一步的優(yōu)化和提高。

3.3 MEL在場景設(shè)計中的應(yīng)用擴(kuò)展

MEL功能強(qiáng)大,上述草地場景只是其運(yùn)用的很小一部分,但通過該設(shè)計,可以使我們了解到Maya出色的個性化控制, 其極大的靈活性和良好的開放性可見一斑。運(yùn)用想象力, 改變上面的程序,還可以變化出更多更出色的效果[3]。MEL不僅在靜態(tài)場景中表現(xiàn)出眾,在設(shè)計動態(tài)場景如小溪緩緩流下高山,原子彈模擬爆炸,遨游太空行走一樣表現(xiàn)不俗,Maya 為實現(xiàn)上述種種效果提供了一個豐富的工具庫,而MEL使得動畫師可以簡便地設(shè)置模型或粒子關(guān)系,來精確地模擬真實世界中存在的一些作用力(如摩擦、重力和風(fēng)),而這在過去用二維Flash 軟件要花上幾個小時的時間用關(guān)鍵幀方法才能實現(xiàn)。

4 結(jié)語

有效地使用MEL可以加深對Maya理解 。通過在Maya 的工作流程中使用MEL 語言進(jìn)行開發(fā)工作,可以給你提供最大程度的流程簡化,從而節(jié)省時間,降低強(qiáng)度,提高效率。同時,人機(jī)界面的改進(jìn)也是亟待解決的問題,現(xiàn)有的工具在實現(xiàn)功能的前提下界面還不夠友好,有的工具需要使用者進(jìn)行簡單的學(xué)習(xí)才能使用。創(chuàng)建簡單易學(xué),功能強(qiáng)大,適合設(shè)計師自身的界面也是工作的重要部分。MEL不是運(yùn)用Maya必須精通的,但掌握MEL將會讓Maya更好的為我們服務(wù)。

[參考文獻(xiàn)]

[1] 陳綠春. Maya8.5從新手到高手[M].北京:清華大學(xué)出版社,2007.

[2] CompleteMayaProgrammingAnExtensiveGuide[M].北京:電子工業(yè)出版社.

[3] 陳汗青,呂杰鋒.數(shù)碼設(shè)計藝術(shù)[M].上海:人民美術(shù)出版社,2004.

本文為全文原貌 未安裝PDF瀏覽器用戶請先下載安裝 原版全文

介紹一個 golang 圖像驗證碼,簡單易用,高安全性的“行為式驗證碼”Go庫

go-captcha, 一個簡潔易用、交互友好、高安全性的點(diǎn)選行為驗證碼 Go 庫 ,采用 “驗證碼展示-采集用戶行為-驗證行為數(shù)據(jù)” 為流程,用戶無需鍵盤手動輸入,極大優(yōu)化傳統(tǒng)驗證碼用戶體驗不佳的問題,支持PC端及移動端。

v1.2.3版本后大圖默認(rèn)尺寸為:300×240px,小圖默認(rèn)尺寸為:150×40px。

默認(rèn)情況下內(nèi)置了定制的字體。如果設(shè)置了其他中文的文字,則可能需要設(shè)置字體文件。

你可以拷貝實例中 "__example/resources" 的圖片資源和字體文件到你的項目中使用。

信息技術(shù)編程軟件?

1.MicrosoftVisualC++

這是由全球三大信息公司之一的微軟公司推出的一款免費(fèi)C++開發(fā)工具,并且集成了便利的除錯工具,和微軟Windows視窗操作系統(tǒng)應(yīng)用程序接口、三維動畫DirectXAPI、Microsift.NET框架,因軟件的自動完成功能和語法高亮的功能而著稱。

2.MicrosoftVisualStudio

這也是被世界500強(qiáng)公司之一的微軟公司推出的最流行的Windows平臺應(yīng)用森灶程序的集成開發(fā)環(huán)境之一,是一個基本完整的開發(fā)工具集,內(nèi)部集成了UML工具、代碼管控工具、集成開發(fā)運(yùn)春畝環(huán)境等軟件生命周期所需要的大部分工具。

3.Eclipse

這是一個基于Java的可擴(kuò)展開發(fā)平臺開放源代碼的編程軟件,很多用戶喜歡將Eclipse當(dāng)作Java集成開發(fā)環(huán)境(IDE)來使用,而這款軟件還包括針對希望擴(kuò)展Eclipse的軟件開發(fā)人員的插件開發(fā)環(huán)境。

十大編程軟件排行榜(編程軟件有哪些推薦)

4.Dev-C++

這款軟件是擁有功能簡介、技巧提示和支持多語言等眾多優(yōu)點(diǎn),是在Windows環(huán)境下適合初學(xué)者使用的一款輕量級C、C++集成開發(fā)環(huán)境,是一款遵守GPL許可協(xié)議分發(fā)源代碼,集合眾多自由軟件的編程軟件。

5.Notepad++

這款軟件是被譽(yù)為程序員必備的應(yīng)用Notepad++是Windows操作系統(tǒng)下的一款免費(fèi)文本編輯器,支持多國語言編寫功能,于Notepad相比這款功能更加強(qiáng)大,且支持?jǐn)?shù)十種計算機(jī)程序語言。

6.MyEclipse

這款軟件是以Eclipse為基礎(chǔ)加入發(fā)出的一款企業(yè)級集成開發(fā)環(huán)境,是主要用于Java、JavaEE以及移動應(yīng)用的開發(fā)的十大編程工具之一,而其配合著CodeMix的使用支持也十分廣泛。

7.JDK

JDK是由SunMicrosystems開發(fā)的一款java編程軟件,分為多個版本,可應(yīng)用于移動和嵌入式設(shè)備,自JAVA語言推出以來,JDK就成為使用最廣泛的編程軟件,而被很多認(rèn)可就代表著學(xué)號JDK是學(xué)好Java的第一步。

8.Code::Blocks

這款軟件是集開放源碼、免費(fèi)和全功能于一體的跨平臺C、C++集成開發(fā)環(huán)境于一體,使用了著名的圖旁森形界面庫wxWidgets(3.x)版,是熱門C語言編程軟件,支持工程管理、項目構(gòu)建、代碼完成等各種功能。

9.Gcc

這款軟件是由GNU開發(fā)的包含了C、C++、Objective-C、Fortran、Java、Ada和Go語言前端的編程語言翻譯器,現(xiàn)在已經(jīng)成為大多數(shù)類Unix操作系統(tǒng)采納為標(biāo)準(zhǔn)的編譯器,支持多種計算機(jī)體系結(jié)構(gòu)芯片。

10.SublimeText

這款軟件是收費(fèi)制的現(xiàn)金代碼編輯器軟件,是一款擁有漂亮用戶界面和強(qiáng)大功能的跨平臺文本編輯器,支持多種編程語言并擁有優(yōu)秀代碼自動完成功能并支持VIM模式的編程軟件,軟件還具有良好的擴(kuò)展能力和完全開放的用戶自定義設(shè)置。

文章標(biāo)題:go語言圖形開發(fā)pdf go語言圖片
文章起源:http://chinadenli.net/article32/dsppssc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化ChatGPT標(biāo)簽優(yōu)化營銷型網(wǎng)站建設(shè)網(wǎng)站維護(hù)云服務(wù)器

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)