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. ...
随机推荐
- ThinkPHP 统计数据(数字字段)更新 setInc 与 setDec 方法
ThinkPHP 统计数据更新 ThinkPHP 内置了对统计数据(数字字段)的更新方法: setInc():将数字字段值增加 setDec():将数字字段值减少 setInc() ThinkPHP ...
- SWIG 和 Python——c/c++与脚本交互
C 和 C++ 被公认为(理当如此)创建高性能代码的首选平台.对开发人员的一个常见要求是向脚本语言接口公开 C/C++ 代码,这正是 Simplified Wrapper and Interface ...
- 【input】——数据传入后台
1.复选框 checkbox <label class="checkbox"> <input type="checkbox" name=&qu ...
- 将webservice嵌套到以完成的web项目中
一.先把webservice服务端写入项目(基于spring) 1.在pom.xml中引入WebService相关的jar依赖 <!--webservice开始 --> <!--ht ...
- hdu 3530 区间和在一定范围内最长区间
http://acm.hust.edu.cn/vjudge/problem/11253 这题要找到区间和在[m,k]范围内的最长区间 用两个单调序列保存区间最大值和最小值.当最大值-最小值>k时 ...
- JS判断web网站访问端是PC电脑还是手机
通过JS语句判断WEB网站的访问端是电脑还是手机,以显示不同的页面! <script type="text/javascript"> <!-- //平台.设备和操 ...
- jquery的on()方法总结
摘自菜鸟教程 废话不说 直接上demo 实例: 向<p>元素添加click事件处理程序: <html> <head> <script src="ht ...
- CSS3制作3D旋转视频展示区
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Android基础Activity篇——销毁活动
销毁活动只需要添加 finish(); 这个方法即可.相当于back键.
- Android - 通过真实案例学习解内存泄漏问题,最终发现Android原生Bug
作为一个Android新手小白,刚到新公司,最近的工作就是在学习解各类Bug.转型之初,面临各种新知识,会有压力,但是学习的过程是快乐的. 上周刚遇上一类bug,就是应用的内存泄漏问题.最终通过前辈的 ...