国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 網(wǎng)站 > 媒體動(dòng)畫 > 正文

Director基礎(chǔ)教程:Director 3D 基本的(5)

2024-09-08 19:27:12
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
director 3d 基礎(chǔ)
     七、添加貼圖( texture )

添加了材質(zhì)球之后,點(diǎn)擊字樣為 “add texture” 的文本運(yùn)行建立貼圖的行為。腳本如下:

on mouseup(me)
if voidp(sprite(1).member.shader(‘‘newtexture‘‘)) then
tsprite = sprite(1)
tmember = tsprite.member
ttexture = tmember.newtexture(‘‘newtexture‘‘, /
#fromcastmember, member(‘‘colors‘‘))

tmember.model(‘‘newsphere‘‘).shader.texture = ttexture
tmember.model(‘‘newsphere‘‘).shader.texturemode = #none
go next
end if
end

腳本流程:
1 、確定是否有貼圖加于球體上了。
2 、如果沒(méi)有,腳本使用原先已經(jīng)被創(chuàng)建的名稱叫 “colors” 的位圖演員創(chuàng)建一個(gè)新的貼圖。
3 、然后腳本應(yīng)用貼圖于材質(zhì)球中,于是就顯示在球體的表面上。
4 、材質(zhì)球的 texturemode 屬性被設(shè)為 #none ,結(jié)果是貼圖被應(yīng)用于沒(méi)有特別設(shè)定的狀態(tài)。

八、使球體運(yùn)動(dòng)起來(lái)

添加了貼圖之后,點(diǎn)擊字樣為 “set the sphere in motion” 的文本運(yùn)行旋轉(zhuǎn)程序。腳本如下:

property pactive

on beginsprite(me)
pactive = false
end beginsprite

on mouseup(me)
pactive = true
go next
end

on enterframe(me)
if pactive then
tsprite = sprite(1)
tmember = tsprite.member
tmember.model(‘‘newsphere‘‘).rotate(0,0,-5)
end if
end

腳本流程:
1 、當(dāng)用戶點(diǎn)擊文本時(shí),腳本把 pactive 的值設(shè)為 true ,就可以使球旋轉(zhuǎn)起來(lái)。
2 、然后腳本設(shè)定每次進(jìn)入當(dāng)前幀時(shí)都使球旋轉(zhuǎn) 5 個(gè)單位。

九、添加一個(gè)方體

當(dāng)球開始旋轉(zhuǎn)起來(lái)之后,點(diǎn)擊字樣為 “create box” 的文本運(yùn)行創(chuàng)建方體程序添加一個(gè)簡(jiǎn)單的方體。腳本如下:

on mouseup(me)
if voidp( sprite(1).member.model(‘‘newbox‘‘)) then
tsprite = sprite(1)
tmember = tsprite.member
ttempmodel = tmember.newmodel(‘‘newbox‘‘)
tboxresource = tmember.newmodelresource /
(‘‘newboxresource‘‘, #box)

tboxresource.width = 20
tboxresource.height = 20
tboxresource.length = 20
tboxresource.left = 1
tboxresource.right = 1
tboxresource.top = 1
tboxresource.bottom = 1
tboxresource.front = 1
tboxresource.back = 1
ttempmodel.resource = tboxresource
ttempmodel.parent = tmember.group(‘‘world‘‘)
ttempmodel.addtoworld()
tcenterpoint = point(sprite(1).width/4, sprite(1).height/3)
tpointtovector = tsprite.camera.spritespacetoworldspace /
(tcenterpoint - point(tsprite.left, tsprite.top))

tmember.model(ttempmodel.name).transform.position = /
tpointtovector
go next
end if
end

腳本流程:
1 、創(chuàng)建一個(gè)名叫 “newbox” 的模型。
2 、然后建立一個(gè)類型為 “#box” 的模型資源。由于方體是原始的基本的形狀,所以可以在空的 3d 世界憑空創(chuàng)建它。
3 、腳本然后給模型資源添加一個(gè)尺寸,以標(biāo)明方體的各個(gè)側(cè)面與邊。
4 、這個(gè)新的模型資源被應(yīng)用于 “newbox” 模型上。
5 、這個(gè)模型被添加進(jìn) 3d 世界并指定為這個(gè) 3d 世界的子對(duì)象。
6 、模型被指定在一個(gè) 3d 世界里的位置。

在這兒,缺省的材質(zhì)球被使用,沒(méi)有用上貼圖。

十、使方體運(yùn)動(dòng)起來(lái)

最后,方體被加上運(yùn)動(dòng)。點(diǎn)擊字樣為 “orbit box” 的文本運(yùn)行環(huán)繞運(yùn)行方體程序。腳本如下:

property pactive

on beginsprite(me)
pactive = false
end beginsprite

on mouseup(me)
tsprite = sprite(1)
tmember = tsprite.member
tmember.model(‘‘newbox‘‘).parent = tmember.model(‘‘newsphere‘‘)
pactive = true
go next
end

on enterframe(me)
if pactive then
tsprite = sprite(1)
tmember = tsprite.member
tmember.model(‘‘newbox‘‘).rotate(0,20, 25)
end if
end on

簡(jiǎn)介環(huán)繞運(yùn)行方體程序所做的:

1 、當(dāng)鼠標(biāo)點(diǎn)擊在字樣為 “orbit box” 的文本上時(shí),方體被指定為球體的子對(duì)象。由于球體是不停旋轉(zhuǎn)的,這就造成方體開始環(huán)繞球體,以對(duì)應(yīng)于球體不停修正的位置變化。(也是就說(shuō)方體與球體好象有無(wú)形的棒連在一起了,不但距離保持不變,而且表面相對(duì)的位置與不變,如在本例中球體對(duì)著方體的那一面永遠(yuǎn)不變。)
2 、方體自己也每次進(jìn)入當(dāng)前幀時(shí)都旋轉(zhuǎn)。

[1] [2] 下一頁(yè)  

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 拉萨市| 双牌县| 邛崃市| 福海县| 临夏市| 苗栗县| 桦南县| 裕民县| 文登市| 婺源县| 墨脱县| 东安县| 夏河县| 冷水江市| 西城区| 临夏县| 景德镇市| 桐柏县| 巴马| 临泽县| 揭阳市| 绥化市| 卢湾区| 柳江县| 嘉黎县| 华阴市| 望江县| 湄潭县| 行唐县| 临沂市| 驻马店市| 蕉岭县| 杨浦区| 商南县| 建始县| 塘沽区| 兴文县| 阜新| 平定县| 九江市| 谷城县|