Director 3D 基本的(5)

来源:互联网
更新时间:2016/12/13 6:57:17
责任编辑:王亮
字体:

Director 3D 基础

     七、添加贴图( texture )

添加了材质球之后,点击字样为 “Add Texture” 的文本运行建立贴图的行为。脚本如下:

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 、如果没有,脚本使用原先已经被创建的名称叫 “Colors” 的位图演员创建一个新的贴图。

3 、然后脚本应用贴图于材质球中,于是就显示在球体的表面上。

4 、材质球的 textureMode 属性被设为 #none ,结果是贴图被应用于没有特别设定的状态。

八、使球体运动起来

添加了贴图之后,点击字样为 “Set the Sphere in Motion” 的文本运行旋转程序。脚本如下:

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 、当用户点击文本时,脚本把 pActive 的值设为 TRUE ,就可以使球旋转起来。

2 、然后脚本设定每次进入当前帧时都使球旋转 5 个单位。

九、添加一个方体

当球开始旋转起来之后,点击字样为 “Create Box” 的文本运行创建方体程序添加一个简单的方体。脚本如下:

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 、创建一个名叫 “newBox” 的模型。

2 、然后建立一个类型为 “#box” 的模型资源。由于方体是原始的基本的形状,所以可以在空的 3D 世界凭空创建它。

3 、脚本然后给模型资源添加一个尺寸,以标明方体的各个侧面与边。

4 、这个新的模型资源被应用于 “newBox” 模型上。

5 、这个模型被添加进 3D 世界并指定为这个 3D 世界的子对象。

6 、模型被指定在一个 3D 世界里的位置。

在这儿,缺省的材质球被使用,没有用上贴图。

十、使方体运动起来

最后,方体被加上运动。点击字样为 “Orbit Box” 的文本运行环绕运行方体程序。脚本如下:

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

简介环绕运行方体程序所做的:

1 、当鼠标点击在字样为 “Orbit Box” 的文本上时,方体被指定为球体的子对象。由于球体是不停旋转的,这就造成方体开始环绕球体,以对应于球体不停修正的位置变化。(也是就说方体与球体好象有无形的棒连在一起了,不但距离保持不变,而且表面相对的位置与不变,如在本例中球体对着方体的那一面永远不变。)

2 、方体自己也每次进入当前帧时都旋转。 [1] [2]    $网神分页符$   [1] [2] 

www.xue163.com true /2/22264.html report 4255 Director3D基本的(5),Director3D基础七、添加贴图(texture)添加了材质球之后,点击字样为“AddTexture”的文本运行建立贴图的行为。脚本如下:onmouseUp(me)ifvoidP(sprite(1).member.shader(‘‘newText...
最近关注
首页推荐
热门图片
相关文章:
最新添加资讯
24小时热门资讯
精彩资讯
精彩推荐
热点推荐
真视界
精彩图片
社区精粹
关于本站 | 广告服务 | 手机版 | 商务合作 | 免责申明 | 招聘信息 | 联系我们
Copyright © 2004-2016 Xue163.com All Rights Reserved. 中国学网 版权所有
京ICP备10044368号-1 京公网安备11010802011102号
荐闻 | 学网头条知识问答 | 装修 | 作业 | 荐闻 | 学网头条精彩微信 | 新闻中心 | 软件教室 | 设计大全 | 网络相关 | 英语学习 | 开发编程 | 考试中心 | 参考范文 | 管理文库 | 营销中心 | 站长之家 | IT信息中心 | 商学院 | 数码大全 | 硬件DIY | 企业服务 | 网吧在线 | 问吧 | 百科 | 硬件知识 | 本网视点 | 文库 | 手机 | 平板 | 汽车 | 游戏 | 家电 | 精彩摄影 | 时尚科技 | 现代家居 | IT女人 | 经验 | 每日新闻 | 健康养生 | 图书馆 | 猎奇 | 精彩看点 | 图库 | 新闻中心 | 软件教室 | 设计大全 | 网络相关 | 英语学习 | 开发编程 | 考试中心 | 参考范文 | 管理文库 | 营销中心 | 站长之家 | IT信息中心 | 商学院 | 数码大全 | 硬件DIY | 企业服务 | 网吧在线 | 问吧 | 百科 | 硬件知识 | 本网视点 | 文库 | 手机 | 平板 | 汽车 | 游戏 | 家电 | 精彩摄影 | 时尚科技 | 现代家居 | IT女人 | 经验 | 每日新闻 | 健康养生 | 图书馆 | 精彩微信 | 猎奇 | 精彩看点 | 图库编程 方案 信息windows方案windows answer文档机构教育文档问答中心IT编程数码信息解决方案信息中心IT科技