原始标题:
加入渐变效果
现在这个360度图片查看器的功能都全了,但这个应用还没有完成。下一步,我们将学习创建一个渐变对象,用以显示从启动画面到主场景的过渡渐变效果,以及切换图片时的效果。
在本期教程中,你将学到:
·使用ScreenFader Object实现渐黑过渡效果
·创建一个预制件
·在GearVR 上创建并运行完成后的app
1)使用替代场景
建议用前几期教程中制作的启动场景和主场景作为本期教程的起点。但如果你想用一个“干净”的文件来开始本期教程,也可以使用Unity自带的替代场景。
A.R返回Unity,关闭Build Settings窗口。
B.在Project 窗口,找到/Assets/Workshop/Scenes/CatchUpScenes 文件夹,打开 4_Main.unity 文件。
C.在菜单中,选择File > Save Scene as…。在Save Scene 对话框,将文件名设为Main.unity并保存到/Assets/Workshop/Scenes 文件夹。选择覆盖现有的Main.unity文件。
D.在Project 窗口,找到/Assets/Workshop/Scenes/CatchUpScenes 文件夹,打开4_Splash.unity。
E.在菜单中,选择File > Save Scene as…。在Save Scene 对话框,将文件名设为Splash.unity并保存到/Assets/Workshop/Scenes 文件夹。选择覆盖现有的Splash.unity文件。
2)创建ScreenFader
A.返回Splash.unity文件。
B.在Hierarchy窗口,选择Create > Create Empty。
C.在Inspector窗口,将空对象的名字改为ScreenFader,并回车以确认更改。
D.在Transform部分,点击齿轮图标,选择Reset以确保对象的位置定于(0,0,0)。
E.在Project窗口,打开/Assets/Workshop/Meshes文件夹,将Sphere_Inv拖到Hierarchy窗口的ScreenFader上。
ScreenFader将被用来使启动画面渐变到黑色以过渡到主场景,也被用来实现图片查看器中不同图片间的过渡效果。
F.保持ScreenFader>Sphere_Inv的选中状态,进入Inspector窗口,把Scale的X,Y,和Z的数值都改为0.01。这一步会减小球体的大小,使它刚好包住镜头。
G.在Game窗口查看场景。由于球体是不透明的,现在你只能看到灰色。
H.在Project窗口,打开/Assets/Workshop/Materials文件夹,将ScreenFader的材质拖到Inspector窗口里的Mesh Renderer > Materials > Element 0。
I.在Game窗口预览一下。这次你能够看到原来的场景了。ScreenFader材质只包含了一种颜色(黑色),alpha value设为0。
J.在Inspector窗口,点击Add Component按钮,选择Scripts > Screen Fader Sphere。
这个脚本控制渐变效果的时长。缺省值为0.3秒。
K.点击Add Component按钮,选择Scripts >AnimShader Alpha。
这个脚本用来控制Screen Fader Sphere 开始改变alpha value 的时间。在这个例子里,屏幕将在切换到主场景前1秒钟开始渐变到黑色。
说明:ScreenFader Sphere 脚本中的Fadeto Black 时长应不超过AnimShaderAlpha脚本中的时长,否则在屏幕变黑前就会切换场景。
L.查看事件的时间轴。
在0秒处,启动画面开始。StartApp将启动画面的持续时间设为5秒。在4秒时,AnimShader Alpha 和Screen Fader Black 脚本触发,屏幕开始渐变为黑色。在4.3秒, Screen Fader Sphere完成。在5秒处,主场景开始显示。
M.运行场景。
可以看到启动画面渐变为黑色,并过渡到主场景。注意:主场景不会有透明到黑色的渐变效果。如果要实现这个效果,需要在主场景中也加入ScreenFader。
N.保存场景。
3)创建预制件
A.在Project窗口,打开/Assets/Workshop/Prefabs文件夹。
B.在Hierarchy窗口,将ScreenFader拖到Prefabs文件夹。
由于这个文件夹中已经有一个名为ScreenFader的预制件了,Unity 会自动把你的预制件改名为ScreenFader 1。创建这个预制件是为了能在主场景中重用ScreenFader。
C.保存Splash.unity文件,返回Main.unity文件。
D.在Project窗口,打开/Assets/Workshop/Prefabs文件夹,将ScreenFader 1文件拖到Hierarchy窗口。
4)创建并运行这个应用
A.在菜单中,选择File > Build Settings…。
B.在Build Settings窗口,确认Scenes In Build中依次排列着以下两个文件:
·Workshop/Scenes/Splash.unity (0)
·Workshop/Scenes/Main.unity (1)
C.确认Platform设为Android,Texture Compression设为ETC2 (GLES 3.0)。
D.将手机用USB连接到电脑,并点击Build & Run按钮。
E.在Build Android 对话框,给APK文件取名并点击Save。
F.Unity创建好app后,你会在手机上看到Insert device 对话框。这时可以断开与电脑的连接,将手机插入Gear VR运行你的场景。