Unity3D网络游戏实战(阅读笔记)

2019-11-01  本文已影响0人  忻恆

1.继承MonoBehavior的类,类名必须和文件名相同;

2.组件被创建的时候执行Start();

3.游戏过程中的每一帧执行一次Update();

4.只有继承MonoBehaviour类的脚本才能被附加到游戏物体上,成为组件;

5.transform.translate(x, y, z)可以让物体朝着一个方向移动。

.unitypackage 格式文件是unity的资源压缩包文件,相当于把素材都压缩到一起了,同时还包含了素材之间的依赖关系,比如模型使用的材质和贴图信息。

Unity3D内置了一套山地系统,GameObject->3D Object->Terrain , 可以编辑高度,编辑特定高度,设置平滑,纹理贴图,树模型草模型。

Directional Light 平行光;Point Light 点光源

Spot Light 聚光灯;Area Light 区域光

模型的好坏取决于形状,材质,贴图。一个模型可以包含多个材质,材质相当于贴图的表现效果,可以将材质文件拖曳到物体上直接设置材质。

Mesh Renderer 网格渲染器,从Mesh Filter 网格过滤器中获得几何形状,并且根据Transform的位置进行渲染。其中属性Cast Shadows表示模型是否有阴影,Receive Shadows 表示是否接受别的模型的阴影。

每一种材质都对应一个shader,standard shader主要是针对硬质表面设计的,如石头,陶瓷等。

Albedo 物体表面基本颜色,前面的圆圆选择贴图,后面方框选择颜色。

Metallic 物体表面反射光线的能量,金属物体超过50%,高达90%。

smoothness 光滑值,越大越光滑 >0<。

normal map 法线贴图

Emission 自发光

当需要重复使用物体的时候,就会使用prefab作为实例创建。创建预设只需要将物体从层次面板拖曳到项目面板中,反过来就可以实例化一个预设。

Instantiate(prefab,pos,Quaternion.identity)

Quaternion.identity 指的是各个轴向的旋转角度都是0。

Unity支持mp3,wav,ogg等音频格式,需要有声源和接收器两个组件才能让游戏声音生效。AudioSource是声源组件,audioclip 要播放的声音片段 BypassEffect 是否打开音频特效 Pitch 播放速度。

OnGUI(){}里面通过GetComponent获取音源组件AudioSource,用GUI.Button可以在屏幕绘制按钮,用play和stop控制声音的播放。

Unity自带的绘制UI的方法为GUI绘图,只要在组件的OnGUI方法中调用绘图方法,便可以绘制贴图,文字,按钮,滚动条等。常用的有:

GUI.Button : 常与 if 使用,两个参数,一个是按钮位置和大小,第二个是按钮文本。

GUI.Label : 绘制文本

GUI.DrawTexture : 绘制贴图

Box:图形框 Window:窗口 TextField:输入框 PasswordField:密码输入框,di HorizontalScrollbar:水平滚动条

需要转换场景的话,必须把场景添加到Build Setting中,生成游戏时,只有添加的场景会被编入游戏中。

调用Application.LoadLevel 便可以切换场景。Unity3D支持的发布平台包括:Web Player Unity网页播放器,需要安装unity插件才能用;PC,Mac,在Windows下导出exe文件,Mac下导出app;Android;IOS;WindowsPhone8;Xbox。

5.3之前的版本附带了平台模块,接近2GB,现在需要自行下载各个平台的模块,更加灵活。

如果要导出安卓版本,首先需要安装java-JDK和Android-SDK这两个工具,JDK是Java的库和虚拟机包,SDk是开发Android应用的系统包,Edit>>preference>>External Tools,(在外网Unity下载安装),导出apk前需要设置导出版本等信息,在Edit>>project setting>>player中设置,点击build就可以创建app文件了。

导出IOS版本时,需要一台MAC系统的电脑,注册开发者帐号,然后安装Xcode,完成后会生成一个Xcode文件,在Mac中用Xcode打开Unity到处的文件,然后配置信息,最后就可以用Xcode打包生成ipa文件了。

上一篇下一篇

猜你喜欢

热点阅读