Unity基本操作
主要内容:
- C#学习
- Unity项目
- 打砖块:BreakBricks
- Unity操作
Unity操作:
调试
在某函数内进行`Debug.Log(...)`可实现调试检测,例如:
```
public class Player : MonoBehaviour {
// Use this for initialization
void Start () {
Debug.Log("Hello");
}
// Update is called once per frame
void Update () {
Debug.Log(" World");
}
}
//在控制台查看调试信息
<h2 id="2">碰撞体</h2>
前提:碰撞两者都有碰撞器 Collider ,至少一物体有刚体 Rigidbody(详细前提见 [Unity-Manual-Colliders](https://docs.unity3d.com/Manual/CollidersOverview.html) )
// 碰撞触发检测
private void OnCollisionEnter(Collision collision)
{
print(collision.collider); //获取碰撞体+碰撞器类型
print(collision.collider.name); //碰撞体名称
print(collision.collider.tag); //碰撞体标签
}
// 碰撞结束检测
private void OnCollisionExit(Collision collision)
print("OnCollisionExit");
// 碰撞持续检测
private void OnCollisionStay(Collision collision)
print("OnCollisionSaty");
<h2 id="3">触发器</h2>
存在于碰撞体collider页面栏,勾选is Trigger 则表示物体为触发器(可以穿过),否则物体为碰撞体。
<h2 id="4">视角</h2>
游戏视角的移动
<h3 id="4.1">键盘视角平移</h3>
对`Main Camera`创建脚本,在`Update`内调用:`transform.Translate()`实现视角移动
<h2 id="5">光照贴图</h2>
灯光是实时计算的(默认设置:`Light|Mode|Realtime`),对不变动的灯光进行贴图可以节省资源,在`Windows|Rendering|Lighting Setting` 打开了`Lighting Setting` 页面点击 `Generate Lighting` 实现灯光贴图。
<h2 id="6">游戏对象</h2>
关于Gameobject的一些列操作
<h3 id="6.1">访问对象</h3>
在脚本内创建一个字段,例如子弹`bullet`:`public Gameobject bullet;`,在Unity页面通过将`Prefab`赋到脚本内`bullet`一栏,从而实现在脚本内通过`bullet`字段访问到`Prefab`。
<h3 id="6.2">实体化游戏对象</h3>
实例化用到了`GameObject.Instantiate(m_object, m_transform.position,m_transform.rotation)`
- GameObject.Instantiate():创建实体化函数
- m.object:所创建的预制体
- m_transform.position,m_transform.rotation:预制体位置及旋转角度,默认下为`transform.position,transrotation`说明地址为脚本所在对象的位置;也可自行修改
用法:
//创建对象 b 接收实体化的预制体 bullet
GameObject b = GameObject.Instantiate(bullet, transform.position, transform.rotation);
<h3 id="6.3">得到组件</h3>
//rgd 得到对象 b 的刚体组件
Rigidbody rgd = b.GetComponent();
<h3 id="6.4">对象的移动</h3>
<h2 id="7">交互类</h2>
<h3 id="7.1">鼠标输入</h3>
`Input.GetMouseButtonDown()`:读取鼠标按下情况,括号内容即为鼠标不同状态:
- 0:左键
- 1:右键
<h3 id="7.2">键盘输入</h3>
`Input.GetAxis("")`:返回键盘输入的浮点数值
- Horizontal:读取键盘AD左右移动的值(反映在Unity中的X方向)
- Vertical:读取键盘WS上下移动的值反映在Unity中的Y方向)
用法:`float h = Input.GetAxis("Horizontal");`
Unity基本操作的更多相关文章
- unity基本操作二
一:error1,先断网再启动点击Manual Activation点击Save License生成相应的alf文件2,联网打开https://license.unity3d.com/manual上传 ...
- Unity基本操作一
1,使对象进入摄像机镜头内align with view 2,太阳光 创建点point light,调节Intensity改变光照强度,上面的Range改变光照范围. 3,Animation选中Pla ...
- 【Unity游戏开发】SDK接入与集成——小白入门篇
一.简介 通常一款游戏开发到后期,一般都会涉及到第三方SDK的接入与集成,对于不熟悉SDK接入的同学来说,接SDK每次都是云里雾里,而熟悉SDK接入的同学又觉得不断地重复做接入SDK工作这样没有成就感 ...
- Unity游戏开发面试基础知识
面试第一次知识总结: 一.Unity基本操作 1.unity提供哪几种光源? 点光源.平行光.聚光灯.区域光. 2.物体发生碰撞的必要条件什么? 两个物体必须有碰撞体Collider组件,一个物体上必 ...
- 通过C#脚本实现旋转的立方体
一.介绍 目的:通过一个简单的例子(鼠标点击,使立方体旋转和变色)熟悉Unity中C#脚本的编写. 软件环境:Unity 2017.3.0f3 . VS2013. 二.C#脚本实现 1,启动Unity ...
- unity最基本操作
1. 2017.1.0 2017.1.1 2017.2.0 2017.3.4 5.5.3 p4 小版本号高出现bug可能性更小:一台电脑可以安装多个版本的unity,但是需要安装在不同路径:安装 ...
- 【Unity】2.0 第2章 Unity编辑器和基本操作
分类:Unity.C#.VS2015 创建日期:2016-03-26 本章要点: 1.掌握Unity 5.3.4编辑器视图和菜单项及其含义,这是入门的最基础部分,必须掌握. 2.了解最基本的操作,先学 ...
- Unity学习-软件的基本操作(二)
基本操作 1:Scene中 以小手显示,平移画布,与鼠标中键一样 2:平移 游戏对象,组件的 Position属性 也可设置 3:旋转 游戏对象,组件的 Rotation属性 也可设置 4:缩放 游戏 ...
- 关于一些初学Unity的基本操作和自己的理解
1.Scene面板操作: A.按住鼠标右键,拖动鼠标,可以旋转 B.鼠标滚轮前后滑动,前进后退 C.按下鼠标滚轮,拖动鼠标,可以拖动场景 D.在场景中选中物体,按F键或者在Hierarchy面 ...
随机推荐
- HDU - 2044 - 一只小蜜蜂...(dp)
题意: 如题 思路: 仔细观察图 1-4和3-6其实是一样的答案,那么所有的方案都可以相减,意思为全部转化为从1开始 剩下的就是观察规律,仔细观察5号,能到5号蜂房的只有3和4,3和4到5号蜂房只有一 ...
- [luogu3573 POI2014] RAJ-Rally (拓扑排序 权值线段树)
传送门 Solution 在DAG中我们可以\(O(n)\)预处理\(Ds(u)\)表示从u表示以s为起点的最长路\(Dt(u)\)表示以u为终点的最长路,那么经过\((u,v)\)的最长路即为\(D ...
- PHP上传文件到七牛(Qiniu)
上传文件到七牛最简单的方式就是使用七牛官方最新的SDK 安装PHP SDK composer require qiniu/php-sdk 上传文件到七牛 use Qiniu\Auth; use Qin ...
- 利用 Python 批量修改文件名
开发的第一步,首先得熟悉脚本中使用的模块函数,废话不多说,开干! 1 函数介绍 1.1 os 模块 (1)os.lisdir() >>> import os >>> ...
- WeChat-小程序-tabbar
WeChat-小程序-tabbar https://developers.weixin.qq.com/miniprogram/dev/framework/config.html#%E5%85%A8%E ...
- 【05】JSON笔记
[05]笔记 尽管有许多宣传关于 XML 如何拥有跨平台,跨语言的优势,然而,除非应用于 Web Services,否则,在普通的 Web 应用中,开发者经常为 XML 的解析伤透 ...
- 【MangoDB分片】配置mongodb分片群集(sharding cluster)
配置mongodb分片群集(sharding cluster) Sharding cluster介绍 这是一种可以水平扩展的模式,在数据量很大时特给力,实际大规模应用一般会采用这种架构去构建monod ...
- Win32编程API 基础篇 -- 3.消息处理 根据英文教程翻译
消息处理 例子:窗口点击 好的,现在我们已经得到一个窗口了,但我们什么也做不了除了DefWindowProc()允许窗口大小被调整,最大最小化等...这不是很激动人心啊 在接下来的一小节中我将向你展示 ...
- hihoCoder #27
A QvQ B 题目:http://hihocoder.com/problemset/problem/1470 分析:dfs序+栈+数学 可以发现,对于每组询问,树上是有很多点都只能等于0的 对于每个 ...
- Linux查看设备信息命令
系统 #查看内核/操作系统/CPU信息 uname -a #查看操作系统版本 head -n 1 /etc/issue #查看CPU信息 cat /proc/cpuinfo #查看计算机名 hostn ...