U3D 一些基础注意事项
上up下down左left右right
移动(需要建立全局变量 最好使用 public float speed=1 使用public可以在u3d页面手动调节 speed的值,调控位置的时候要使用transform)
transform.Translate(Vector3.right*speed*Time.deltaTime);
要调试UI内添加的控件时要引用
using UnityEngine.UI;
通过游戏物体的名称进行获取(GameObject 大写为获取游戏对象 小写为当前游戏对象)
var r = GameObject.Find("renwu");
获取通过UI添加的物体时 (也可以用来获取组件)
var text = GameObject.Find("text").GetComponent<Text>();
刚体和游戏物体碰撞 碰撞器属性不是 is tigger 才能发生碰撞
void OnCollisionEnter2D(Collision2D coll)
{
print("撞了");
}
刚体和游戏物体碰撞 碰撞器属性必须是 is tigger 才能发生碰撞(c是被碰撞的对象)
void OntriggerEnter2D(Collider2D c)
{
print("撞了");
//销毁被碰撞的对象
Destroy(c.gameobject);
//销毁碰撞的对象
Destroy(this.gameobject);
}
动画制作
在image上添加组件 Animator
然后创建文件夹Aciton 创建一个控制器 Animator Controller
拖动控制器 到Animator组件的 Controller里面
选中要制作动画的image 点击菜单栏window Animation 右边点击create
拖动资源库里面的几张图片进去 然后更改变换速度 保存即可
动画切换
点击image的控制器
点击上方的Parameters 点击加号创建一个bool的变量
然后在主动画上右键 Make Transition链接到副动画上
点击链接线写上条件 true或false的时候转换动画
点击链接线会发现有个Has Exit Time选项 默认勾选为有动画过度(建议取消勾选)
副动画同上
按键控制
当按下A键的时候
if (Input.GetKey(KeyCode.A))
{
transform.Translate(Vector3.left * speed * Time.deltaTime);
}
当按下J键的时候把XXX的XX变量设置为false (要先去获取XXX组件,赋值之后才能直接使用XXX)
if (Input.GetKey(KeyCode.J))
{
XXX.SetBool("XX", false);
}
动画播放完毕检测(XXX动画名称,判断XXX动画播放次数如果大于1就咋咋咋咋咋)
AnimatorStateInfo info = anima.GetCurrentAnimatorStateInfo(0);
if (info.normalizedTime > 1 && info.IsName("XXX"))
{
XXXXXXXXXXXXXXXXXX
}
原文地址:https://www.cnblogs.com/baimangguo/p/11013261.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- java中BigDecimal使用和注意事项
- redis实战第十一篇 redis cluster添加密码
- Linux下docker制作springboot应用镜像
- 行为型设计模式:备忘录模式
- 行为型设计模式:访问者模式
- redis实战第十篇 集群收缩
- redis实战第九篇 集群扩容自动迁移槽(redis-cli)
- 自动化运维| Ansible playbook的逻辑控制语句
- Windows通用应用平台UWP持久化
- redis实战第八篇 集群扩容 手动迁移槽
- Xinetd服务的安装与配置详解
- redis实战第七篇 使用redis工具(redis-cli)搭建redis cluster
- 使用ROS2机器人操作系统进行多机器人编程技术实践(Multi-Robot Programming Via ROS2 )
- 自动化运维实践 | Ansible playbook重用
- 手把手教你打造高效的 Kubernetes 命令行终端