|
这是一个令人激动的三维虚拟大制作,在这个实例中我们将使用3DS MAX、Photoshop、Director和Cult3D,制作一辆虚拟跑车。你可以从任何方位观察这辆汽车,甚至可以通过单击某个按钮来动态改变汽车的颜色(图1)。 ( Z$ {- \8 |7 [! ]+ H* u
/ M4 s$ b% J. |( o" H图1
! @/ C, z# ?( s# O6 C: h 在制作的过程中你将学会如何让这4个功能强大的软件默契地配合起来。本实例我们将在3DS MAX中创建汽车模型;在Cult3D制作可交互的汽车场景,最后在Director中进行媒体交互合成。在Director中不仅可以创建平面的演示文档,而且可以利用虚拟现实技术实现三维的演示空间。下面我们就开始动手吧! 具体建模的过程不是本实例的重点,大家可以参考一些网站的教学内容。如果怕麻烦的话,你也可直接下载汽车的三维模型。 由于Cult3D并不渲染阴影,因此我们在3DS MAX中设置的灯光效果将会失去作用。因为阴影的着色需要耗费大量的计算量,增加着色的时间。对于Cult3D这样的实时渲染引擎来说,增加着色时间将会产生灾难性的后果,因为漫长的等待将会使用户对你的产品失去耐心,现在我们采用一些的技巧来实现阴影效果。 / ^# G2 K8 G, T- q
" u4 o. q. q# f9 E6 c& [# D
/ u5 L2 @9 g; s4 e) Q* i @3 w; B+ S& Z1 k) \# r
# \+ l; Z5 J" }$ X
5 X2 s7 \4 |! Q& z 制作步骤索引: 一、在3DS MAX中创建汽车模型 (一)制作阴影图片 (二)赋予阴影材质 (三)给车身赋予材质 二、在Cult3D制作可交互的汽车场景 三、在Director中进行媒体交互合成 一、在3DS MAX中创建汽车模型 (一)制作阴影图片 1.启动3DS MAX5,选择“Rendering→Enviroment”选项,设置背景色为R=99 G=115 B=151。此颜色为演示屏幕的背景色。 2.在Top视图中,按F10打开着色窗口。单击着色窗口中的Files按钮,设置输出文件名为car 保存类型为tga,单击保存按钮。弹出Targa Image Control窗口,设置输出32位的带Alpha通道的tga文件。Alpha通道可以让我们很容易从背景中选择汽车的轮廓。单击Render按钮进行着色(图2)。
, c& _8 E, y0 C* [% g) V" m
6 s. F: h) t$ A0 J0 F7 F3 U; @4 O/ ~
1 h) }& {: w% Y( o- S# l0 _4 @
4 B0 I! z( N. }- w' Q! D) d! G( B/ B图2 3.启动Photoshop7.0,打开着色后生成的car.tga文件,将图层Layer 0更名为Shadow,选择“Select →Load Selection”选项,如(图3)设置好后,单击OK按钮,则汽车轮廓被选中,这就是Alpha通道的神奇所在。
+ K* U- q$ U7 U8 i; H: z0 H4 S' _+ N' ?3 p: ~; }% c
图3
9 n4 u g8 Z: h% @ 4.选择“Select → Modify →Expand”选项,将选区扩大10个像素。以黑色填充选区,按“Ctrl+D”撤销选区。 5.选择“Filter → Blur → Gaussian Blur”,调整模糊的范围,使轮廓看起来像阴影的效果,单击OK按钮。 6.新建图层Background,在图层面板中,将Background层移动到Shadow图层的下面。选择前景色为R=99 G=115 B=151,即我们在3DS MAX中设定的背景色,以该颜色填充Background图层,这样可以使背景能够和阴影很好地融合在一起。 7.调整Shadow图层的Fill为50%,这样使阴影看起来更加柔和一点。合并两个图层,将文件另存为car_shadow.psd。 , n/ E7 f5 F1 a) t8 c
@3 v0 ]* a# f. ~( U , C: s6 }0 E3 a
& v6 F; H6 Q5 W6 [) G
4 J) n2 R! e' G+ E* G/ S
* R/ g" }- F2 z8 j7 m+ s : |# A+ C0 [2 v6 r8 L
(二)赋予阴影材质 1.启动3DS MAX5,在Top视图的面板中选择创建按钮进入命令面板。单击下面的几何体按钮,并在Object Type面板中选择Plane按钮,在汽车下方创建一个Plane对象,将它调整到汽车的下方如(图4)。
* J3 }0 l7 I' Q k5 @+ a: i e! l: U, N; S- Z2 h" @, X9 x1 z
Z& C$ r+ s# k5 e4 {) h
q# t1 [# ]7 c Q- w0 o R图4 2.按M键打开材质编辑器,选中一个新的材质”shadow”,单击材质分配 按钮,将它指定给Plane对象。设置材质的Self-illumination值为100,这样能够使Plane对象和背景融合在一起。 3.展开Blinn Basic Parameters面板,在Diffuse最右边小方框上单击,打开材质浏览窗口,选择Bitmap贴图,然后按下OK按钮。在弹出的“Select Bitmap Image File”窗口中选择car_shadow.psd文件,单击打开按钮。 4.弹出“PSD Input Options”窗口,选中Collapsed选项,单击OK按钮。这样便完成了阴影的制作。其效果如(图5)所示。
- {; u! a; G6 c. K. d( l
/ W. B+ |9 U9 u# U6 j# F2 ^图5
; J6 ?% Q6 @9 _ (三)给车身赋予材质 1.首先利用Photoshop制作四幅同样大小的图片,分别以蓝色、红色、灰色、黄色填充。并分别以blue.jpg、red.jpg、gray.jpg、yellow.jpg作为文件名存盘。这四幅图片用于实现车身颜色的动态改变。 2.在3DS MAX5中,按M键打开材质编辑器。选中车身所使用的材质,展开Maps面板,选中Diffuse贴图,单击Diffuse右侧的None按钮,选择Bitmap贴图,然后按下OK按钮。在弹出的“Select Bitmap Image File”窗口中选择blue.jpg,单击打开按钮。 3.单击工具栏上的连接按钮 ,单击Plane对象,然后向上拖动鼠标,将连接线牵引至车身上时松开左键确认,车身会闪一下表示连接完成。重复上述步骤,将四个车轮和车身连接起来。这样我们在转动车身时,车轮和阴影将会跟着移动。 ; Z5 R: _9 m6 [* D' x+ I- a: s1 `
# k- e q# Z5 D3 j/ ?
' W4 d) v; a' n% m! @$ t8 }; \: @% e1 s! |4 l3 I
8 [- ]8 P9 `* S: D, V2 e
. P- [4 X4 H% q, c, D' q' n; r
4 T* P/ g! H/ a" l* r 好了,下面我们可以将汽车模型输出为C3D文件了,在Right视图中,选择“File → Export”,输入文件名为car_model,输出类型为Cult3D Designer(C3D),单击保存按钮。弹出Cult3D输出窗口(图6),展开Materials节点,设置阴影材质的材质属性为Constant,单击Apply按钮,提交修改。按Save按钮保存C3D文件。OK,保存好文件,下期我们将在Cult3D Designer和Direcotr继续完成剩下的操作。
+ R& G2 B" f6 W9 m' O5 ?! S4 h; [* u0 L
9 @/ ~/ d7 a; Q" p' B! K* G8 q+ u
- j ^. K) w4 m2 _+ ?
3 h2 h; |- q2 R0 T5 I图6 我们在3DS MAX和Photoshop中对跑车的建模已经完成了,现在我们将继续在Cult3D Designer(以下简称Cult3D)制作可交互的汽车场景,然后在Direcotr MX中完成媒体合成。 二、用Cult3D制作可交互的汽车场景 1.运行Cult3D,选择“File →Add Cult3D Designer File”,在弹出的打开文件对话框中,选择Car_model.c3d文件。 2.拖动Event Map窗口中的 World Start事件至右侧的空白区域。创建一个新的World Start_1事件。 3.选择Action窗口,展开Object Motion节点,从中拖动Arcball图标到World Start_1事件上,然后松开鼠标。这样两者之间就建立了连接关系。 4.选择Scene Graph窗口,展开RootNode节点,从中拖动“汽车” 图标至Event Map窗口中的Arcball图标上。 5.单击预览窗口的Run按钮,你就可以任意拖动汽车,从不同的方位观察汽车模型了(图7)。下面我们要来施加纹理行为,使汽车的颜色能够动态地改变。 9 z* |+ B4 }) y8 @! p: l: ?; i" u
0 {: w% S8 c: q) V; R# b/ e图76.选择Scene Graph窗口,展开Textures节点,从中找到Bule节点,Bule节点就是我们给车身赋予的纹理贴图(图8)。
( }2 b7 R/ o, J. R& y, v2 y" _, }3 D) K4 B0 z
图8 / S( S0 T1 Y- b6 |8 R; O
6 |. r8 I2 T# m . v5 G4 M( F. J+ s* h+ J0 m. X
4 S% @5 p4 c- W+ j1 ?
. m+ j: G/ M; ]6 C2 V0 s
) _2 [5 j* G+ q N 5 S1 O6 C$ s4 Z% _/ h
7.在Bule节点图标上双击,显示纹理编辑窗口。此时蓝色图片就显示在此窗口的下方(图9),拖动Quality滑块至最右边,以最好的质量来显示纹理。 ! ]: M$ I* ]2 ]
( ~) h( t" ?8 ?: L9 ?" D/ d5 a图9 8.分别选中Show Hotspots(显示热点)和Show Alter Ego(显示改变的图片)复选框,将打开Hotspots窗口和文件选择窗口。 9.单击File按钮右侧的Texture下拉按钮。从下拉按钮中选择Blue纹理,则Blue纹理就显示在文件选择窗口中(图9)。 10.单击Hotspots窗口中的Add按钮,将当前的纹理加为热点。此时在Texture窗口中就出现了一个方框,这代表热点范围。 11.分别用鼠标向右下角拖动图上的方框,使它正好和图片大小一致。 12.单击Hotspots窗口中的Acquire按钮,把Blue图片加入到Alter Ego框中。好了,第一种颜色我们已经设置好了,下面我们要把红色、灰色、黄色也加入进来。 13.单击Texture窗口中的File按钮,打开图片选择窗口,选中Red.jpg文件。 14.单击打开按钮,返回到纹理设置窗口。在File按钮下,红色的图片就显示出来了。 15.单击Hotspots窗口中的Add按钮,增加新的热点,调整热点区域大小与蓝色图片一致。单击Actuire按钮,加入红色图片。 16.重复8\"10步骤,将Gray.jpg和Yellow.jpg文件也加入进来。 现在,Scene Graph窗口中的Textures节点下的Blue纹理就有了四个新的纹理节点,分别是我们前面加入的蓝色、红色、灰色和黄色,效果如图10所示。
! ?3 p5 c+ W# Y% g
" z( a# X1 U2 m* `" I3 K图10
: @0 T/ x5 E: R# _3 R; i 17. 从Event Map窗口中,依次拖动四个Manual事件至窗口右侧的空白区域,并分别更名为Event_blue、Event_red、Event_gray和Event_yellow。我们将在Director中利用脚本触发这些事件。Cult3D的事件中,只有Manual事件可以在外部程序(如Director)中触发。 6 t: V& j* X$ [/ R" e7 w5 R+ i# n
1 {0 L% Z6 J3 ?1 W5 e
3 W! _1 U( D: _ ^- C$ H. @
' F f9 b7 Y& C
( G8 ?" }9 K1 F9 R0 q) n7 S& W [0 s8 W& o/ ~4 I$ t
) [% e+ w$ l/ z W
18.拖动Action窗口中Textures节点下的Toggle Hotspot’s Alter Ego图表分别至Event Map窗口中的Event_blue,Event_red,Event_gray和Event_yellow事件上。 19.从Scene Graph窗口中的Textures节点下分别拖动Hotspot、Hotspot_1、Hotspot_2和Hotspot_3上,建立联系,最后结果如图10所示。 下面就可以输出为.co文件了,选择“File →Save Internet file”选项,在弹出的保存文件窗口中设置文件名为CAR.co,单击保存按钮。 在弹出的保存设置窗口中,单击Geometries标签,选择Select All按钮。在Compression下拉菜单中选择压缩方式为Mesh Level 2,选中窗口下方的Use “Smart Save”选项,单击Save按钮进行保存。 三、在Direcotr中进行媒体合成 Cult3D场景制作好了后,剩下的事情交给Direcotr MX来完成。 1.启动Direcotr MX,在电影属性面板中设置电影的大小和背景 2.选择“Insert → Control → ActiveX”。 3.在控件选择对话框中,选择Cult 3D ActiveX Player控件(图11),单击OK按钮。如果找不到该控件,请正确安装Cult3D Viewer Plug-in。
; P* O3 Q/ \; q8 C% R+ i) |$ }, F: c) t: Y/ g6 o
4 V; r% ? U& [' }2 h$ [ k
% [3 z Q. p# R' k/ A% Q* i图11 4.弹出ActiveX属性对话框,这里可以定制控件的相关属性。 5.单击Custom按钮,弹出属性设置对话框(图12)。该对话框提供了两种连接到Cult3D场景的方式:嵌入方式(Embed)和链接方式。使用嵌入方式,Cult3D场景发布后将嵌入在可执行文件中,无须另外提供co文件,而使用链接方式,必须提供相应的.co文件。但是使用嵌入方式将增加可执行文件的大小,一般不提倡这么做。
+ }; W! [1 b2 ^/ _! V! s
6 p( S4 }/ d3 {6 D1 L8 ~4 `图12 , _/ O0 {5 n4 g6 s! ?5 r: G$ U; _
6.单击Filename/URL后面的浏览按钮,选择所需的场景文件,单击打开按钮。 7.选中View when Finished选项,当Cult完成着色后,将自动显示。点击 OK 回到编辑界面,Cult3D物件已经显示在角色面板里。 8.把Internal Cast 面板里Cult3D 物件的名字改为“3DCar”。 9.至此我们完成了控件属性的设置。拖动ActiveX演员至舞台上,调整好精灵的尺寸。 10.设置第10帧的帧脚本为: on exitFrame me go to the frame end , z; ^4 u+ ~) ]4 T# x. N4 R. l
9 I0 l* p5 t) h: F: ^
2 l5 z! V+ j0 N) X- h! T- t" @! e- s4 |1 D+ P& p! ^1 G) c3 Z/ _. J
- w8 z! {- A, F. T6 a4 b1 M2 M
5 W# A1 L- w6 n+ N* ?. ~# ^! w ' o# @: @' D, b2 T! u
11.分别制作红色、蓝色、灰色和黄色四种颜色的图片按钮_red、按钮_blue、按钮_gray、按钮_yellow,用于改变汽车的颜色。将这四个按钮布置到舞台上的相应位置。 12.为“按钮_red”演员添加演员脚本: on mouseUp TriggerEvent sprite“1”“event_red” end 其中sprite1为Cult3D物体所在的通道,event_red是我们在Cult3D中定义的事件。 13.重复上述步骤,为每个演员都添上相应的脚本。 单击播放按钮,就可以在Direcotr中操作了,按鼠标右键可以放大或缩小看,按鼠标左键可以旋转,左右键同时按下则可以移动汽车,感觉好像是在操纵真正的汽车(图13)一样,至此整个制作结束。 % Y+ i8 h& I% _ Z5 W- Z; k
, A# I* k% t" |8 J" W
2 x. A4 H$ D5 V" \
7 O. u: ]7 l% T* B* N1 ?% D# O图13
/ K2 ^! L0 U7 v% x! J# ]
( E) h% f" z3 ~1 J L& n( s/ D* c; s3 w1 L& a- w/ B- X
% }5 n; Y1 y* l2 ~/ `- F8 L& @ 制作步骤索引: 一、在3DS MAX中创建汽车模型 (一)制作阴影图片 (二)赋予阴影材质 (三)给车身赋予材质 二、在Cult3D制作可交互的汽车场景 三、在Director中进行媒体交互合成 一、在3DS MAX中创建汽车模型 (一)制作阴影图片 1.启动3DS MAX5,选择“Rendering→Enviroment”选项,设置背景色为R=99 G=115 B=151。此颜色为演示屏幕的背景色。 2.在Top视图中,按F10打开着色窗口。单击着色窗口中的Files按钮,设置输出文件名为car 保存类型为tga,单击保存按钮。弹出Targa Image Control窗口,设置输出32位的带Alpha通道的tga文件。Alpha通道可以让我们很容易从背景中选择汽车的轮廓。单击Render按钮进行着色(图2)。
3 C3 r5 w5 U4 l; I* c, q/ D! t3 F: ?7 [; e$ o- v$ a& Q
1 o7 [1 ~/ Z- [4 y5 C
; p# t( x* H5 ?3 @+ N, K图2 3.启动Photoshop7.0,打开着色后生成的car.tga文件,将图层Layer 0更名为Shadow,选择“Select →Load Selection”选项,如(图3)设置好后,单击OK按钮,则汽车轮廓被选中,这就是Alpha通道的神奇所在。1 ^; J+ |$ p5 X3 m
$ F7 v* V5 u- T! S. y图3
- j0 R" M$ W8 g+ d+ n0 I 4.选择“Select → Modify →Expand”选项,将选区扩大10个像素。以黑色填充选区,按“Ctrl+D”撤销选区。 5.选择“Filter → Blur → Gaussian Blur”,调整模糊的范围,使轮廓看起来像阴影的效果,单击OK按钮。 6.新建图层Background,在图层面板中,将Background层移动到Shadow图层的下面。选择前景色为R=99 G=115 B=151,即我们在3DS MAX中设定的背景色,以该颜色填充Background图层,这样可以使背景能够和阴影很好地融合在一起。 7.调整Shadow图层的Fill为50%,这样使阴影看起来更加柔和一点。合并两个图层,将文件另存为car_shadow.psd。 |
|