zoukankan      html  css  js  c++  java
  • 初识Unity3D开发3D游戏

    开发环境Unity3D 4.0

    网上有低版本的破解版,根据需要下载,安装,本人使用4.0试用版.破解版貌似网上有看到一个,需要积分,就没下载.

     

    实例应用使用Unity3D制作一个空间立方体,可以用鼠标进行控制浏览各个面

    启动Unity3D,场景中默认存在一个Main Camera,所以只需要在场景中添加一个物体,实例为立方体,

     

    几何体添加方法:

    1.U3D启动后,在场景视图左边标签栏中点击Create - Cube,还可以选择其它几何体

    2.选择工具栏中的GameObject - Create Other - Cube,同样可以选择其它几何体

     

    将几何体移动到Camera可视范围内,可以通过游戏视图查看效果

    相关的快捷键:鼠标滚轮,可以放大或缩小场景,按住鼠标右键然后配合A|S|W|D,进行视野移动

     

    场景中的物体比较黑暗,可以通过Create - Directional light 添加光源,进行场景中的物体,光源,相机移动,搭配到满足自己需要效果即可

     

    为模型添加事件脚本

    在对应的Project标签组上单机Create - C# Script ,然后编辑C#脚本,游戏脚本Unity支持C#Javascript,国内用C#占多数.这里我们使用C#脚本

    using UnityEngine;
    using System.Collections;
    
    public class NewBehaviourScript : MonoBehaviour {
    
        // Use this for initialization
        void Start () {
        
        }
        
        // update方法  程序每一帧都会调用该方法,1秒默认30帧 
        void Update () {
    
            //实现的效果,按键盘上的上下左右键可以翻看模型的各个面[模型旋转]
    
            if(Input.GetKey(KeyCode.UpArrow)){
                transform.Rotate(Vector3.right*Time.deltaTime*10);
            }
    
            if(Input.GetKey(KeyCode.DownArrow)){
                transform.Rotate(Vector3.left*Time.deltaTime*10);
            }
            
            if(Input.GetKey(KeyCode.LeftArrow)){
                transform.Rotate(Vector3.up*Time.deltaTime*10);
            }
            
            if(Input.GetKey(KeyCode.RightArrow)){
                transform.Rotate(Vector3.down*Time.deltaTime*10);
            }
        }
    
    }

    关于默认的一些方法

    StartUpdate是系统预设的一些方法,当相应事件发生时系统就会调用脚本的相应方法,后续还有OnMouseDownOnGUI,

     

    将脚本拖到对应的模型上,即为该模型绑定了脚本

    脚本是依附于游戏对象的,事件和操作的对象也是当前脚本所在的游戏对象,脚本只能依附于游戏对象或者由其他脚本调用才会运行,一个脚本可以放大多个游戏对象,是多个实例,一个脚本的多个实例和其它脚本之间互不干扰.

     

    模型的锯齿产生于抗锯齿设置

    3D游戏的3D模型对象是由三角形拼出来的,所以会产生锯齿,Unity3D中创建的模型默认的是存在锯齿的,设置反锯齿:

    Edit - Project Settings - Quality 组件 在Rendering标签下面中Anti Aliasing(反锯齿)选择列表,默认值为disabled,表示默认禁用反锯齿,这样游戏效果比较高,不会太卡,可以根据需要选择反锯齿样式2x Multi Sampling 4x Multi Sampling8x Multi Sampling,值越大越平滑但是越占用资源.

     

     

    这样我们的第一个实例就制作完成.

    可以通过键盘上的上下左右键控制模型在空间进行翻转

     

    关于Unity3D的跨平台,

    File - Build Settings,构建为exeflash、如果有AndroidIos等开发环境还可以构建为移动终端软件.

    这里可以将我们制作的游戏导出到不同平台上的应用格式.

     

    导入3D模型,直接将模型文件拖入到工程,模型路径不能存在中文.

    导入FBX模型

    可以自己绘制游戏地图创建人物活动场景

    Terrain - Create Terrain ,然后根据自己喜好,创建游戏地图,添加贴图.

    如下是我做的一个仙剑游戏场景,游戏人物韩菱纱 云天河

    场景中可以有多个Camera,为人物模型添加Camera.这样我们可以在不同Camera中进行多角度观察

    因业务需要,所以开始接触Unity3D,在此感谢杨中科老师.

    在线交谈

  • 相关阅读:
    仿pinterest实现瀑布流布局效果
    .NET执行cmd时,如何调试命令的执行效果
    在Sharepoint 2007 整合Discuz Nt论坛
    如何使用EWS获取邮件及其附件
    启明星win7桌面天气预报软件下载与使用方法(带时间)
    【helpdesk】启明星helpdesk7.0版本里,实现邮件提交功能介绍和原理
    微软.NET设计上的一个错误(从.NET1.14.0),不知道以后.NET会不会修复这个错误
    什么是Traceback Ping
    用ASP生成RSS以及讀取RSS
    [轉]訂單編號方式探討
  • 原文地址:https://www.cnblogs.com/dennisit/p/3098227.html
Copyright © 2011-2022 走看看