Unity基础
unity
unity 3大场景
Asset Scene Component
Asset :资源导入导出
右击资源,选择导出Unity包
导入可以直接将只有复制到Asset文件夹
创建场景
File->New Scene
第一个启动的场景:
File->Build Setting 里面第一个
游戏都是由多个场景构成
GameObject
Create Empty创建一个GameObject
写有些就是要完成的就是编写Component
右键->Create->C# Script就可以创建脚本了
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class NewBehaviourScript : MonoBehaviour {
public int a = 2;
public int[] intArry;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
Debug.Log("Hello Unity");
}
}
Prefab
Select Prefab
将Hierarchy中的文件拖动到Asset里面,就可以生成一个预制,然后拖动到Scene里就可以使用了,预制可以多次使用,一次修改可以影响多个相同的预制对象,使用Apply确认应用到同一预制对象
预制? 预制保存用Apply
取消预制:GameObject->Break Prefab Instance
Tag和Static
Tag:可以用于标记标签
Static:
Nothing:没有任何属性;
Everyting:所有的都是静态的,Unity可以优化;
LightMap Static:光照阴影是固定不变的;
Occluder Static: 遮挡静态
Batching Static:
Navigation Static:
Occludee Static:
Off Mesh Link Generation:
Reflection Probe Static:
c#编码中出现的变量可以直接在Unity里面进行调节
private,protected是不暴露的
private int p; // private,protected是不暴露的
想要私有变量被访问到写法
// 想要私有变量被访问到写法
[SerializeField]
private string player;
不想将这个字段暴露,使用这个[HideInInspector]
[HideInInspector]
public string name; //不想将这个字段暴露,使用这个[HideInInspector]
定义结构体添加[System.Serializable]标签后也能够访问到
// 定义结构体添加[System.Serializable]标签后也能够访问到
[System.Serializable]
public class customStruct
{
public int a = 2;
public int[] intArry;
public List<string> kk;
}
public class NewBehaviourScript : MonoBehaviour {
public customStruct cus; // 结构体
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
// 定义结构体添加[System.Serializable]标签后也能够访问到
[System.Serializable]
public class customStruct
{
public int a = 2;
public int[] intArry;
public List<string> kk;
}
public class NewBehaviourScript : MonoBehaviour {
public customStruct cus; // 结构体
public int a = 2;
public int[] intArry;
public List<string> kk;
public Color c; //颜色
public AnimationCurve curve; //曲线
public Gradient g; // 渐变
// private,protected是不暴露的
private int p;
// 想要私有变量被访问到写法
[SerializeField]
private string player;
[HideInInspector]
public string name; //不想将这个字段暴露,使用这个[HideInInspector]
// Use this for initialization
void Start () {
if (intArry != null)
{
Debug.Log(intArry.Length);
}
Debug.Log(kk.Count);
}
// Update is called once per frame
void Update () {
}
}
效果如下:

Scene与Game窗口使用
Scene
旋转 位移 缩放
Shift+F 快速定位
Shift+Ctrl+f 当前视角与主相机视图对齐
点击三个方向的坐标轴切换视角
Persp 透视视角
Iso正交视图2d投影
以不同的方法渲染:
Shaded
Wireframe
Shadow Cascades
Render Paths
Alpha Channel 透明度
Overdraw
Mipmaps
Gizmos:游戏中的提示信息
Game
分辨率调整
Maximize On Play 运行时最大化
Mute audio 静音
State 信息,性能统计
编辑器内搜索
资源搜索
直接搜索
按类型搜索
按Tag搜索
场景搜索
直接搜索名字
场景内搜索中包含的材料,比如搜索那些组件包含了粒子系统,mesh,
一些重要的设置
Edit->Project Settings 对于文件夹里的Project Setting文件夹的设置文件
QualitySettings:勾选变成绿色的小勾后即显示设置成功
Fast和Simple比较常用与手机游戏
Good以上为PC
Editor Settigns:
Version Control: Hidden Meta Files;Asset Server(Unity自己的版本控制);Visible Meta Files(svn可以使用,meta文件保存有关参数设置,合作时需要共享,单机个人开发可以不需要);
(开发需要上传的文件:Library不需要上传,ProjectSettings需要上传,Asset需要上传,Temp不需要上传)
Asset Serialization:
Mode :Mixed;Force Binary(推荐,如果选择Asset文件打开由2进制);Force Text(多人合作选择Text,由yaml语言书写,更加清晰明白);设置不会影响后面的发布,发布都是使用Binary发布的
Unity基础的更多相关文章
- unity 基础之InputManager
unity 基础之InputManager 说一下unity中的InputManager,先截个图 其中Axes指的是有几个轴向!Size指的是有几个轴,改变Size可以添加或者减少轴! Name指 ...
- unity 基础学习 transform
unity 基础学习 transform 1.unity采用的是右手坐标系,X轴右手为+,Y轴向上为+,Z轴朝里为+; 但是我们从3D MAX中导入模型之后,发现轴向并没有遵从这个原理, 其实是 ...
- Unity基础6 Shadow Map 阴影实现
这篇实现来的有点墨迹,前前后后折腾零碎的时间折腾了半个月才才实现一个基本的shadow map流程,只能说是对原理理解更深刻一些,但离实际应用估计还需要做很多优化.这篇文章大致分析下shadow ma ...
- Unity 基础
Unity 基础是unity入门的关键.他将讲解Unity的界面, 菜单项,使用资源,创设场景,并发布版本. 当你读完这段,你将理解unity是怎么工作的,如何有效地使用它,并且完成一个基本的游戏. ...
- NET笔记——IOC详解和Unity基础使用介绍
说起IOC,可能很多初学者不知道是用来做什么的,今天正好有点时间,就来扫扫盲,顺便巩固下自己. IOC全称是Inversion Of Control,意为控制反转(这些自然百度也有),可什么是控制反转 ...
- IOC详解和Unity基础使用介绍
说起IOC,可能很多初学者不知道是用来做什么的,今天正好有点时间,就来扫扫盲,顺便巩固下自己. IOC全称是Inversion Of Control,意为控制反转(这些自然百度也有),可什么是控制反转 ...
- unity基础命令
获取所挂脚本元素的组件: rd = GetComponent<Rigidbody>(); 获取其他元素的组件: rd = GameObject.Find("Player" ...
- 【Unity Shader学习笔记】Unity基础纹理-法线贴图
1 高度纹理 使用一张纹理改变物体表面法线,为模型提供更多细节. 有两种主要方法: 1.高度映射:使用一张高度纹理(height map)来模拟表面位移(displacement).得到一个修改后的法 ...
- Unity基础知识学习笔记二
1,object Instantiate(object original,Vector3 position,Quaternion rotation) 克隆原始物体,并返回克隆物体. ...
- Unity基础知识学习笔记一
1,Unity 4.5.4这个版本,在打包ios应用程序的时候.会生成一个xcode工程,但是这个工程无法在xcode6上变异,无法生成ios8上发布.所以unity在ios8发布3天内就发了4. ...
随机推荐
- GitKraken使用教程-基础部分(5)
7. 提交代码 1) 查看文件改动 修改了某个文件后,在程序右侧会出现已修改文件的列表(如图 1‑1),这里以Test.git 为例,修改了19264.h 的文件编码,将其改为utf8.Unstage ...
- Jersey框架简介
一 Jersey简介 开发RESTful WebService意味着支持在多种媒体类型以及抽象底层的客户端-服务器通信细节,如果没有一个好的工具包可用,这将是一个困难的任务 为了简化使用JAVA开发R ...
- 使用Zxing生成一维码和二维码
首先引用zxing.dll 到项目中引用 using System; using System.Collections.Generic; using System.Drawing; using Sys ...
- 对DOM操作的一些总结
一.DOM节点 分为三大类: 1.元素节点 :<html>.<body>.<p>等标签 2.文本节点 :标签内的文本.例如<p>这就是文本节点</ ...
- JAVA的图片文字识别技术
从2013年的记录看,JAVA中图片文字识别技术大部分采用ORC的tesseract的软件功能,后来渐渐开放了java-api调用接口. 图片文字识别技术,还是采用训练的方法.并未从根本上解决图片与文 ...
- 【转】run方法与start方法的区别
在java线程中 start与run的不同start与run方法的主要区别在于当程序调用start方法一个新线程将会被创建,并且在run方法中的代码将会在新线程上运行,然而在你直接调用run方法的时候 ...
- PHP : 封装Mysqli的连接、关闭和增改查(面向过程)
废话不多说,直接上图和案例:(看行数进行拼接) 注意:连接数据库中,因为用了$CONNECT全局变量,所以我们的连接数据库封装方法必须要执行了才能获取到此全局变量的值 所引入的数据库文件(databa ...
- 前端必须要掌握的几个CSS3的属性
随着Css3和html5的风靡,越来越多的前端人员开始学习Css3,今天的文章就是来说说前端应该掌握10个Css3属性. 1. Border-radius Border-radius是一大堆CSS3属 ...
- MySQL入门很简单: 7 触发器
触发器是由事件来触发某个操作,这些事件包括INSERT语句,UPDATE语句和DELETE语句 1.创建触发器 1)创建只有一个执行语句的触发器 例子:再向department表中执行INSERT操作 ...
- java调用dll库
1.dll叫动态链接库,作用是用某种语言封装好某些函数生成可供不同语言调用的.dll文件,通常是用C++编写生成,因为C++可以对很多硬件操作方便而其他高级语言不行 2.dll生成参考:http:// ...