999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

利用Flash AS3.0開發(fā)三維動畫應(yīng)用探討

2011-01-12 04:01:28邢江濤
長治學(xué)院學(xué)報(bào) 2011年5期
關(guān)鍵詞:動畫定義

邢江濤

(晉城職業(yè)技術(shù)學(xué)院,山西 晉城 048026)

利用Flash AS3.0開發(fā)三維動畫應(yīng)用探討

邢江濤

(晉城職業(yè)技術(shù)學(xué)院,山西 晉城 048026)

FLASH因?yàn)槠渚邆浣换バ允噶縿赢嫷葍?yōu)點(diǎn)得到了極為廣泛的應(yīng)用。但是一般FLASH動畫卻幾乎都是二維的。文章介紹了Flash中實(shí)現(xiàn)三維的基本原理,并通過一個(gè)具體實(shí)例介紹了在Flash二維的世界里如何表現(xiàn)三維對象的方法。

Flash;ActionScript;三維動畫

1 基本原理與概念

1.1 Z軸

我們所生活的世界是一個(gè)由X、Y、Z軸(也就是長寬高)組成的三維世界。在動畫的3D空間中我們要在X、Y之外再建立另一個(gè)維度Z,即深度。FLASH本身并沒有內(nèi)置的Z維度,但是我們可以使用ActionScript來創(chuàng)建它。

1.2 模擬透視

透視就是我們怎么表示某個(gè)物體靠近我們或遠(yuǎn)離我們。例如:當(dāng)物體離我們越來越遠(yuǎn)時(shí)它們會變得越來越小,當(dāng)移動到最后離我們足夠遠(yuǎn)時(shí)會它們會聚集在一個(gè)滅點(diǎn)上。要在一個(gè)二維平面上表現(xiàn)出三維的信息,我們首先必須要去掉三個(gè)坐標(biāo)軸中的一個(gè)——z軸(表示物體深度的軸),如圖1所示。

圖1

確定z值包括三個(gè)要素:有一個(gè)距離你有一段距離的物體;一個(gè)視點(diǎn)——你的眼睛;一個(gè)圖像平面——電腦屏幕。

2 一個(gè)具體實(shí)例——旋轉(zhuǎn)的立方體

知道大致原理后,我們來看個(gè)具體的例子。

2.1 立方體建模

2.1.1 定義點(diǎn)和生成面

在三維坐標(biāo)系中的每個(gè)點(diǎn)都對應(yīng)著唯一的一組X、Y、Z坐標(biāo)量。因此,我們可以建立一個(gè)數(shù)組,命名為points,通過數(shù)組來依次存放各點(diǎn)的坐標(biāo)值。對于長方體來說(如圖2),它是由8個(gè)點(diǎn)組成的。代碼如下:

圖2

在這里的Point3D類存儲著坐標(biāo)屬性,用于傳遞X、Y、Z的位置。主要代碼為:

2.2.2 創(chuàng)建三維填充

圖3 前面

觀察傳統(tǒng)的3D模型我們會發(fā)現(xiàn),在許多3D建模和渲染程序中,所有的模型在最終渲染之前都被簡化成一系列的三角形。使用三角形在繪制復(fù)雜的形體時(shí)會比較容易。這樣我們可以建立一個(gè)函數(shù)來用三個(gè)點(diǎn)渲染一個(gè)三角形:一個(gè)循環(huán)遍歷點(diǎn)的列表,定位它們并應(yīng)用透視;另一個(gè)循環(huán)用來遍歷三角形列表并渲染每一個(gè)三角形。

在定義三角形之前,我們?nèi)院投x點(diǎn)一樣創(chuàng)建一個(gè)Triangle類來跟蹤每一個(gè)三角形的點(diǎn),并定義一個(gè)數(shù)組來存放三角形列表。

定義三角形:立方體的每一個(gè)面可以由兩個(gè)三角形構(gòu)成(如圖3、圖4),總共有12個(gè)三角形。另外,我們一定要按照順時(shí)針方向列出每個(gè)三角形的點(diǎn),這樣旋轉(zhuǎn)起來就不會出現(xiàn)意想不到的錯(cuò)誤。主要代碼如下:

圖4 后面

2.2.3 立方體旋轉(zhuǎn)

傳統(tǒng)的2D動畫中,進(jìn)行旋轉(zhuǎn)時(shí)都是圍繞Z軸進(jìn)行的,也就是說只有X和Y坐標(biāo)在發(fā)生變化。在3D動畫中,我們可以圍繞任意的一個(gè)軸進(jìn)行旋轉(zhuǎn),比如制作一個(gè)向你飛來的一個(gè)外星飛碟,那么它的旋轉(zhuǎn)軸就是Y軸,所有點(diǎn)都圍繞它旋轉(zhuǎn)并改變它們的Y和Z的位置。因此,對于3D動畫來說,當(dāng)你在一個(gè)軸上旋轉(zhuǎn)物體時(shí),它的位置將在其他兩個(gè)軸上發(fā)生改變。這樣我們可以推演出幾個(gè)結(jié)論:

以Z軸為旋轉(zhuǎn)軸

現(xiàn)在我們需要在Point3D類中加入上述坐標(biāo)移動的方法,代碼如下:

最后,我們在ActionScript腳本代碼中加入EnterFrame事件,ENTERFRAME事件屬于所有畫面和影片剪輯。將事件處理函數(shù)添加到這些對象的時(shí)間軸時(shí),會根據(jù)幀速率反復(fù)調(diào)用相關(guān)的事件處理函數(shù)。代碼如下:

3 小結(jié)

隨著新的腳本語言ActionScrip3.0和針對Flash Player9的全新的虛擬機(jī)的引入,F(xiàn)lash平臺發(fā)生了革命性的變化。文章主要通過一個(gè)三維動畫的實(shí)例闡述了FLASH ActionScrip3.0腳本語言的強(qiáng)大功能,本實(shí)例在Adobe Flash CS3 Professional環(huán)境下測試通過,但是在功能上其實(shí)是相當(dāng)簡陋的。

TP391.414

A

1673-2014(2011)05-0074-03

2011—05—13

邢江濤(1977—),男,山西陽城人,碩士,主要從事多媒體應(yīng)用研究。

(責(zé)任編輯 王建華)

猜你喜歡
動畫定義
做個(gè)動畫給你看
永遠(yuǎn)不要用“起點(diǎn)”定義自己
海峽姐妹(2020年9期)2021-01-04 01:35:44
動畫發(fā)展史
定義“風(fēng)格”
我的動畫夢
文苑(2019年22期)2019-12-07 05:28:56
動畫批評融入動畫教育的思考
新聞傳播(2018年3期)2018-05-30 07:01:39
我是動畫迷
成功的定義
山東青年(2016年1期)2016-02-28 14:25:25
修辭學(xué)的重大定義
山的定義
主站蜘蛛池模板: 91九色最新地址| 亚洲中文在线看视频一区| 亚洲乱伦视频| 亚洲美女AV免费一区| 国内精品久久久久久久久久影视| 美女视频黄又黄又免费高清| 国产成人精品2021欧美日韩| 福利姬国产精品一区在线| 狠狠综合久久久久综| 青青草国产在线视频| 成人一级免费视频| 色窝窝免费一区二区三区| 农村乱人伦一区二区| 国产精品自拍露脸视频| 91亚洲视频下载| 亚洲一区二区无码视频| 精品三级网站| 国产精鲁鲁网在线视频| 中文字幕在线一区二区在线| 欧美特黄一免在线观看| 国产成人欧美| 国产精品不卡片视频免费观看| 成人精品视频一区二区在线| 久久无码免费束人妻| 免费可以看的无遮挡av无码 | 亚洲综合色区在线播放2019| 第一区免费在线观看| 亚洲性影院| 欧美亚洲香蕉| 国产精品视频系列专区| 看国产一级毛片| 久996视频精品免费观看| 欧美在线网| 天天躁夜夜躁狠狠躁图片| 97精品国产高清久久久久蜜芽| 2021国产精品自拍| 日韩一区精品视频一区二区| 精品无码国产一区二区三区AV| 色综合五月| 呦视频在线一区二区三区| 久久精品免费国产大片| 情侣午夜国产在线一区无码| 十八禁美女裸体网站| 日本久久免费| 91在线无码精品秘九色APP| 亚洲av无码牛牛影视在线二区| 国产91高跟丝袜| 综合色婷婷| 欧洲高清无码在线| 亚洲精品成人7777在线观看| 亚洲综合第一区| 一级毛片基地| 国产97色在线| 四虎永久在线精品国产免费| 亚洲男人的天堂在线观看| 亚洲品质国产精品无码| 一区二区偷拍美女撒尿视频| 2020国产精品视频| 69视频国产| 小蝌蚪亚洲精品国产| 久久精品国产国语对白| 国产91av在线| a毛片在线| 丰满少妇αⅴ无码区| 国产成人精品一区二区秒拍1o| 色偷偷一区| 欧美亚洲欧美| 看你懂的巨臀中文字幕一区二区 | 久久天天躁狠狠躁夜夜躁| 欧美一区二区三区欧美日韩亚洲 | 国产69精品久久久久妇女| 国产成人精品一区二区三区| 精品91视频| 中文字幕乱妇无码AV在线| 亚洲视屏在线观看| 国产在线自乱拍播放| 欧美日韩另类国产| 99re在线免费视频| 成年人视频一区二区| 亚洲精品国产成人7777| 成人欧美在线观看| 日本精品αv中文字幕|