Unity3D游戏开发培训

作者:Jesai

时间:2017-01-08

修改:2017-01-09 12:36:15

1         项目的构成

图1-1

如图1-1所示,Unity3D的项目构成主要分成三部分:

Assets:资源解包,例如 3D 模型、 2D 纹理和声音的会在在此目录中的某个地方

 

Library:类库,此属性包含Unity3D 使用配合资产(tie assets)和逻辑一起在scenes的引用关系。这里还放置您设置的editor preferences、 platform settings和游戏引擎需要的许多其他设定。

 

ProjectSettings:项目配置文件,当任何asset资产导入到Unity3D 时,它经历了一种filter筛选器和setup。大多数情况下,使用 3D 模型和纹理时,他们是游戏的之前准备,必须采取的地方。Unity3D 将所有这一切会自动执行。甚至从一种 3D 内容创作工具中导入box网格需要一些加工之前,你可以放到一个Unity3D 场景。

 

Temp:临时文件夹,数据缓存,临时文件和其他操作系统维护相关的东西就扔到 Temp 目录

2         第一个Unity3D项目(盒子的上下移动)

2.1新建一个3D项目:

图1-2

 

值得一说的是,我们必须要有自己的开发者帐号,就好比苹果IOS开发者也要买一个自己的帐号,IOS上线帐号好像是200美元。

2.2开发工具,场景介绍

我们选择new,创建一个自己的项目,项目名称就叫Demo1,在Hierarchy里面添加一个Cube,然后就在Assets里面添加一个C#脚本,脚本就叫CubeMove。

图1-3

2.3代码开发

如图所示,我们第一个项目就建成了,那么接下来,我们需要移动这个物体,就是平时的游戏动作,那么我们就要通过写脚本来控制啦,重要的部分来了,上干货:

 

先设置下开发工具,Edit->preferences->External Tools->VS 2013或者VS 2015

图1-4

双击CubeMove脚本,就可以在VS 2013里面打开我们的脚本代码,要使用脚本到对象上面,我们只需要把脚本拖拽到Cube对象上面即可:

 using UnityEngine;

 using System.Collections;

 /// <summary>

 /// 作者:邓家海

 /// 用户:DengJiaHai

 /// 创建日期:2017-01-08 22:58:33

 /// 修改:

 /// 版本:V 1.0.0.0

 /// </summary>

 public class CubeMove : MonoBehaviour {

     //移动速度

     private float speed;

     // Use this for initialization

     /// <summary>

     /// 开始,开始的时候调用

     /// </summary>

     void Start () {

         //移动速度1帧

         speed = 1f;

     }

     // Update is called once per frame

     /// <summary>

     /// 一帧调用一次这个方法

     /// </summary>

     void Update () {

         //键盘按键是w的时候,开始向上移动

         if (Input.GetKey(KeyCode.W))

         {

             transform.Translate(Vector3.up * speed * Time.deltaTime);

         }

         else if (Input.GetKey(KeyCode.S))  //键盘按键是S,向下走

         {

             transform.Translate(Vector3.down * speed * Time.deltaTime);

         }

     }

 }

2.4运行结果

图 1-5

图 1-5

2.5 发布游戏

新建一个场景:

图 1-6

File->Build Settings:

图 1-7

我们可以选择IOS版本,Android版本,PC版本········,然后把场景拖到build里面去。

最后点击build,即可生成一个可以运行的文件。

到这里,入门程序就完成了!

Unity3D游戏开发培训的更多相关文章

  1. 用户输入- Unity3D游戏开发培训

    用户输入- Unity3D游戏开发培训   作者:Jesai 时间:2018-02-12 14:28:45 用户输入Input 鼠标按键: -方法:GetMouseButton(); -方法:GetM ...

  2. 投影方式- Unity3D游戏开发培训

    投影方式- Unity3D游戏开发培训   作者:Jesai 2018-02-12 20:33:13 摘  要 透视投影是3D渲染的基本概念,也是3D程序设计的基础.掌握透视投影的原理对于深入理解其他 ...

  3. 内置3D对象-Unity3D游戏开发培训

    内置3D对象-Unity3D游戏开发培训 作者:Jesai 2018-02-12 19:21:58 五大面板: -Hierachy:当前场景中的物体 图 1-1 -Project:项目中的所有资源 图 ...

  4. Unity3D游戏开发初探—2.初步了解3D模型基础

    一.什么是3D模型? 1.1 3D模型概述 简而言之,3D模型就是三维的.立体的模型,D是英文Dimensions的缩写. 3D模型也可以说是用3Ds MAX建造的立体模型,包括各种建筑.人物.植被. ...

  5. 从一点儿不会开始——Unity3D游戏开发学习(一)

    一些废话 我是一个windows phone.windows 8的忠实粉丝,也是一个开发者,开发数个windows phone应用和两个windows 8应用.对开发游戏一直抱有强烈兴趣和愿望,但奈何 ...

  6. Unity3D游戏开发之连续滚动背景

    Unity3D游戏开发之连续滚动背景 原文  http://blog.csdn.net/qinyuanpei/article/details/22983421 在诸如天天跑酷等2D游戏中,因为游戏须要 ...

  7. Unity3D游戏开发从零单排(四) - 制作一个iOS游戏

    提要 此篇是一个国外教程的翻译,尽管有点老,可是适合新手入门. 自己去写代码.debug,布置场景,能够收获到非常多.游戏邦上已经有前面两部分的译文,这里翻译的是游戏的最后一个部分. 欢迎回来 在第一 ...

  8. [Unity3D]Unity3D游戏开发之飞机大战项目解说

    大家好,我是秦元培,欢迎大家继续关注我的博客,我的博客地址是blog.csdn.net/qinyuanpei. 首先感谢大家对我博客的关注,今天我想和大家分享的是一个飞机大战的项目.这是一个比較综合的 ...

  9. [Unity3D]Unity3D游戏开发《反对》说到游戏(上)——目标跟踪

    朋友,大家好.我是秦培,欢迎关注我的博客.我的博客地址blog.csdn.net/qinyuanpei. 首先博主要自我反省,过了这么久才来更新博客,这段时间主要是在忙着写期末的作业,所以博主基本上没 ...

随机推荐

  1. element-ui—dialog使用过程中的坑

    场景一:我们将dialog写成一个可复用的公共组件用于显示不同内容(如表格操作中的修改或添加的弹窗),之后发现dialog的遮罩将弹出层(点击修改或添加后理应由一个弹窗显示出来)都盖住了,而我想要的效 ...

  2. P1016 高精度除法

    题目描述 给你两个很大的正整数A和B,你需要计算A除以B的商和余数. 输入格式 输入一行包含两个正整数A和B,以一个空格分隔(A和B的位数都不超过 \(10^5\)) 输出格式 输出一行包含两个整数, ...

  3. jquery监听输入框只能输入数字

    $('#mm').bind('input propertychange',function(){ var val= $(this).val(); if(val!=''&& isNaN( ...

  4. Linux 内核链表头数据结构

    链表头必须在使用前用 INIT_LIST_HEAD 宏来初始化. 一个"要做的事情"的链表头可能声 明并且初始化用: struct list_head todo_list; INI ...

  5. json文件生成

    // import Translate from 'translate-components' /* * 匹配所有汉字RegExp: [\u4e00-\u9fa5] [\u4E00-\u9FA5]|[ ...

  6. java_学生成绩管理系统

    //信1805-2 20183670 王云鹏 package student; import java.util.Scanner; public class ScoreManagement { sta ...

  7. poj - 3585(二次扫描与换根法)

    周末牛客挂了个更难的,这个简单一些 #include<iostream> #include<cstring> #include<cstdio> #include&l ...

  8. k8s集群———etcd-ssl自签名证书

    etcd集群master节点安装 ,自签名SSL证书 ##安装工具cfssl $ cat cfssl.sh curl -L https://pkg.cfssl.org/R1.2/cfssl_linux ...

  9. 20191031-6beta week 1/2 Scrum立会报告+燃尽图 04

    此作业要求参见https://edu.cnblogs.com/campus/nenu/2019fall/homework/9914 git地址:https://e.coding.net/Eustia/ ...

  10. 【python小随笔】celery异步任务与调用返回值

    s1.py(配置任务文件) from celery import Celery import time my_task = Celery("tasks", broker=" ...