【Unity3D实战】RPG黑暗之光Scene1:创建开始场景

原创 2016年05月30日 11:37:08

【Unity3D实战】RPG黑暗之光1:创建开始场景


1、导入资地形、地貌资源,新建场景,导入地形、地貌prefab,设置相机位置,添加全局灯光。

2、设置鼠标指针图片:
Edit-->Project Setting-->Player-->Default Cursor(设置自己的鼠标图片)

3、给场景添加水面和天空盒子skybox:
添加水面:Import Package-->Water(Basic)-->Daylight Simple Water(拖入场景中,调整transform到适合的水平面)
添加天空盒子:
Main Camera-->Clear Flags(Skybox)-->Add Component(Skybox)
Import Package-->Skyboxes-->任选一个Sunny天空拖到Component的Skybox下

4、实现镜头缓慢拉近的效果:
public float speed = 10;
private float endZ = -20;
void Update () 
{
    if (transform.position.z < endZ) //还没有达到目标位置,需要移动
{
        transform.Translate( Vector3.forward*speed*Time.deltaTime);
    }
}

5、给场景添加雾:
Edit-->Render Setting(设置Fog Density)

6、使用NGUI和白色背景给场景添加渐显效果:
导入NGUI插件资源和设计好的UI素材资源。
NGUI-->Open-->Prefab Toolbar拖到project视图旁,方便编辑。
拖一个BackGround到场景中去。
删掉原有的UI背景:把UI Root下的Control - Background删掉。
添加一个白色UI背景:RPG\GUI\Title\whitescreen。点选上UI Root,W键模式,右键Create一个Simple Texture,Aspect(Based On Width),Size(2000/Snap),修改名字为WhiteScreen。
添加Tween动画:选上WhiteScreen,右键Tween一个Alpha,参数From 1 To 0,Duration为2,Start Delay为1。

7、设计开始的界面,开始加载按钮和logo:
新建Atlas图集:NGUI-->Open-->Atlas Maker,名字为RPG Atlas。
添加Logo:UI Root右键Create一个Sprite,设置属性选择图集和Logo,Snap,调整位置。Color Tint Alpha值调为0。修改名字为Title。
添加Tween动画:选上Title,右键Tween一个Alpha,参数From 0 To 1,Duration为1,Start Delay为2(白色背景显示完之后)。
添加PressAnyKeyToStart:复制一份Title,Color Tint Alpha值还原为255。修改Sprite属性选择图片PressAny……。Aspect(Based On Width),Size(300/Snap),修改名字为PressAnyKeyToStart。Color Tint Alpha值修改为0。Tweener Play Style设置为Ping Pong
按下任意键之后,就切换到New Game或者Load Game的加载界面:
添加ButtonContainer:UI Root-->右键Create一个Invisible Widget,改名为ButtonContainer。右键Create-->Sprite-->Child,改名为ButtonNewGame。右键Attach-->Box Collider,右键Attach-->Button Script。设置Sprites的Hover为ButtonNewGame,Pressed为ButtonNewGameDown。Color全部设置为白色。同理添加LoadGameButton,不赘述。把ButtonContainer设置为默认隐藏,因为只有点击了AnyKey之后,才会显示这个界面。

8、处理任何按键按下的事件:
在PressAnyKeyToStart上添加一个脚本PressAnyKey.cs:
private bool isAnyKeyDown = false;//表示是否有任何按键按下
private GameObject buttonContainer;
void Start() {
    buttonContainer = this.transform.parent.Find("buttonContainer").gameObject;
}
void Update () {
    if (isAnyKeyDown == false) {
        if (Input.anyKey) {
            ShowButton();
        }
    }
}
void ShowButton() {
    buttonContainer.SetActive(true);//显示buttonContainer的两个button
    this.gameObject.SetActive(false);//隐藏PressAnyKeyToStart
    isAnyKeyDown = true;
}

9、处理开始游戏和加载游戏按钮的按下:
在buttonContainer上添加一个脚本ButtonContainer.cs:
//开始新游戏
public void OnNewGame() {
    PlayerPrefs.SetInt("DataFromSave", 0); //DataFromSave值为0表示数据来自新建角色
    // 加载我们的选择角色的场景 2
    Application.LoadLevel(1);
}
//加载已经保存的游戏
public void OnLoadGame() {
    PlayerPrefs.SetInt("DataFromSave", 1); //DataFromSave值为1表示数据来自保存
    //加载我们的play场景3
}
添加按钮处理:
ButtonNewGame-->On Click-->Notify(拖入buttonContainer)-->Method(ButtonContainer/OnNewGame)
ButtonLoadGame-->On Click-->Notify(拖入buttonContainer)-->Method(ButtonContainer/OnLoadGame)

10、给开始场景添加背景声音和按钮点击的声音:
导入声音资源。
背景音乐:Main Camera-->添加Audio Source-->RPG\Sounds\BGM-Ingame拖入到Audio Clip。勾选Loop循环播放,调节Volume音量
按钮点击声音:ButtonNewGame或ButtonLoadGame-->添加Play Sound-->RPG\Sounds\button拖入到Audio Clip即可。


版权声明:本文为博主原创文章,未经博主允许不得转载。

Unity3D-项目总结-RPG黑暗之光单机

开发项目:RPG黑暗之光单机 开发软件:Unity5.3+VS2015 开发时间:30天 开发过程: 1.场景搭建 2.开始界面,角色选择界面 3.角色控制(移动,视角,视野,状态机) 4.功能模块 ...
  • wsc122181582
  • wsc122181582
  • 2016年02月23日 14:56
  • 721

【Unity3D实战】RPG黑暗之光:游戏分解及各系统的实现

【Unity3D实战】RPG黑暗之光:游戏分解及各系统的实现 一、任务系统: 1、添加接任务的老爷爷: Model中选择并添加老爷爷,调整方向,并添加一个Box collider组件。 ...
  • woaini454186694
  • woaini454186694
  • 2016年06月13日 20:02
  • 2296

Unity各种小技巧函数方法—RPG黑暗之光解析

修改游戏中的默认鼠标图标: File->BuildSettings->PlayerSettings:中的Defult Cursor, 将你要使用的图标图片拖动到Defult Cursor中即可; ...
  • lishuzhai
  • lishuzhai
  • 2015年11月03日 20:35
  • 1598

【Unity3D实战】RPG黑暗之光:游戏分解及各系统的实现

【Unity3D实战】RPG黑暗之光:游戏分解及各系统的实现 一、任务系统: 1、添加接任务的老爷爷: Model中选择并添加老爷爷,调整方向,并添加一个Box collider组件。 ...
  • woaini454186694
  • woaini454186694
  • 2016年06月13日 20:02
  • 2296

泰课unity系列黑暗之光学习笔记1

黑暗之光总结 一.      游戏预览和介绍 二.      导入场景资源,搭建场景 1.    Terrain系统 三.      给场景添加光,设置鼠标指针图片 1.    光的种类 ...
  • qq_34134078
  • qq_34134078
  • 2016年10月16日 16:11
  • 742

学习泰课的Unity3D黑黯之光RPG游戏开发(二)——课时1至课时16

课时1至课时16的主要内容如下课时01_游戏预览和介绍 课时02_导入场景资源,搭建场景 课时03_给场景添加光,设置鼠标指针图片 课时04_给场景添加水面和天空盒子 课时05_实现镜头缓慢拉...
  • xiexian1204
  • xiexian1204
  • 2015年08月21日 18:02
  • 1860

Unity各种小技巧函数方法—RPG黑暗之光解析

修改游戏中的默认鼠标图标: File->BuildSettings->PlayerSettings:中的Defult Cursor, 将你要使用的图标图片拖动到Defult Cursor中即可; ...
  • lishuzhai
  • lishuzhai
  • 2015年11月03日 20:35
  • 1598

学习泰课的Unity3D黑暗之光RPG游戏开发(一)——学习目录介绍

整个学习目录如下所示 课时01_游戏预览和介绍 课时02_导入场景资源,搭建场景 课时03_给场景添加光,设置鼠标指针图片 课时04_给场景添加水面和天空盒子 课时05_实现镜头缓慢拉近的效...
  • xiexian1204
  • xiexian1204
  • 2015年08月21日 16:38
  • 1661

unity3d--人物朝向(RPG游戏黑暗之光)

控制功能一: 鼠标点击地面产生点击效果 思路:读取鼠标点击位置,如果点击位置是地面,生成点击效果。 则明显需要使用射线检测,用于检测射线与地面的碰撞信息,则脚本如下: public GameObje...
  • Acmer_Sly
  • Acmer_Sly
  • 2016年10月16日 17:38
  • 1030

unity3d黑暗游侠游戏场景基本制作

今天学习了黑暗奇侠场景得基础构建。  首先,创建一个基本的地形 (Game Object>Create Other>Terrain)在右侧属性栏中选择刷图工具输出两个封闭弧形山谷并在山谷之间挖...
  • C1805217287
  • C1805217287
  • 2014年11月16日 20:39
  • 1173
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【Unity3D实战】RPG黑暗之光Scene1:创建开始场景
举报原因:
原因补充:

(最多只允许输入30个字)