Unity核心

回顾

Unity核心学习的主要内容

项目展示

基础知识

认识模型制作流程

2D相关

图片导入设置相关

图片导入概述

参数设置——纹理类型

参数设置——纹理形状

参数设置——高级设置

参数设置——平铺拉伸

参数设置——平台设置(非常重要)

Sprite

Sprite Editor —— Single图片编辑

Sprite Editor —— Multiple图集元素分割

Sprite Editor —— 多边形编辑

用的较少,了解即可

Sprite Renderer

练习:

Sprite Creator

练习:

SpriteMask

练习:

Sorting Group

图集制作

练习

2D物理系统

刚体

碰撞器

练习:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class PlayerObject : MonoBehaviour
{public float moveSpeed = 5;private float h;private SpriteRenderer sr;private Rigidbody2D rigidbody2D;// Start is called before the first frame updatevoid Start(){sr = this.GetComponent<SpriteRenderer>();rigidbody2D = this.GetComponent<Rigidbody2D>();}// Update is called once per framevoid Update(){h = Input.GetAxis("Horizontal");//this.transform.Translate(Vector2.right * moveSpeed * Time.deltaTime * h);//由于 重力 会给予对象 y方向的值 所以我们左右移动 应该只是改变左右速度 y的速度应该保留原有的值//rigidbody2D.velocity = Vector2.right * h * moveSpeed;rigidbody2D.velocity = new Vector2(h * moveSpeed, rigidbody2D.velocity.y);if (h < 0)sr.flipX = true;else if (h > 0)sr.flipX = false;if (Input.GetKeyDown(KeyCode.Space)){//创建子弹预设体GameObject obj = Instantiate(Resources.Load<GameObject>("BulletObj"), this.transform.position + new Vector3(sr.flipX ? -0.3f : 0.3f, 0.5f, 0), Quaternion.identity);//告诉子弹朝哪个方向动obj.GetComponent<BulletMove>().ChangeMoveDir(sr.flipX ? Vector3.left : Vector3.right);}if (Input.GetKeyDown(KeyCode.J)){//给它一个向上的瞬时力rigidbody2D.AddForce(Vector2.up * 300);}}
}

物理材质

恒定力

效应器

练习

SpriteShape

Sprite Shape Profile 精灵形状概述文件

Sprite ShapeRenderer 和 Sprite Shape Controller

精灵形状渲染器和控制器

练习:

TileMap——瓦片地图

瓦片资源

瓦片调色器窗口使用

(本节知识点较多,复习时可以配合视频进行)

重点

1.需要修改工程的自定义轴排序 以Y轴决定渲染顺序

x = 0 ; y = 1; z = -0.26;

2.如果地图存在前后关系需要修改TileRenderer的渲染模式

瓦片地图关键脚本和碰撞器

练习:

运用了平台效应器

官方拓展包导入

下载地址:
 https://github.com/Unity-Technologies/2d-extras

官方拓展包——新增瓦片类型

官方拓展包——新增笔刷类型

代码控制相关

动画基础

Animation动画窗口

认识Animation动画窗口

创建编辑动画

代码控制动画(老动画系统)

练习:

Animator动画状态机

有限状态机概念

Animator Controller —— 动画控制器(状态机)

代码控制动画状态机切换

练习:

2D动画

序列帧动画

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class Lesson35 : MonoBehaviour
{public Sprite[] sprs;private SpriteRenderer spriteR;private float time = 0;private int nowIndex = 0;public Animator animator;// Start is called before the first frame updatevoid Start(){#region 知识点一 什么是序列帧动画//我们最常见的序列帧动画就是我们看的 日本动画片//以固定时间间隔 按序列切换图片 就是 序列帧动画的本质//当固定时间间隔足够短时 我们肉眼就会认为图片是连续动态的 进而形成动画(会动的画面)//它的本质和游戏的帧率概念有点类似//原理就是在一个循环中按一定时间间隔不停的切换显示的图片#endregion#region 知识点二 代码制作序列帧动画//我们先尝试用原理 通过代码来实现序列帧动画spriteR = this.GetComponent<SpriteRenderer>();spriteR.sprite = sprs[nowIndex];#endregion#region 知识点三 Animation窗口制作序列帧动画//方法一://1.创建一个空物体//2.创建一个动画//3.直接将某一个动作的序列帧拖入窗口中//方法二://直接将图片拖入Hierarchy 层级窗口中//注意:需要修改动画帧率 来控制动画的播放速度#endregion#region 知识点四 利用Animator 进行动画控制#endregion}// Update is called once per framevoid Update(){//每一次增加帧间隔时间time += Time.deltaTime;//当帧间隔时间达到某一个条件时 就切换图片if (time >= 0.03){//索引增加 切换图片++nowIndex;//判断是否 重头显示if (nowIndex >= sprs.Length)nowIndex = 0;spriteR.sprite = sprs[nowIndex];time = 0;}//知识点四if (Input.GetKeyDown(KeyCode.Space)){animator.SetBool("IsDown", true);}else if(Input.GetKeyUp(KeyCode.Space)){animator.SetBool("IsDown", false);}}
}

练习

2D骨骼动画

2D Animation

2D Animation_骨骼动画制作基础——单张图片编辑

练习

2D Animation_骨骼动画制作基础——图集编辑

练习

2D Animation_骨骼动画制作基础——PSB图集编辑

2D Animation_反向动力学IK

练习

2D Animation_换装_换装资源在同一个文件中

2D Animation_换装——换装资源在不同文件中

Spine

Spine_Spine运行库导入

官方地址:http://http:zh.esotericsoftware.com/

Spine_Spine骨骼动画使用

Spine_Spine骨骼动画参数相关

Spine_Spinr骨骼动画代码控制_Spine骨骼动画代码控制相关

模型导入相关设置

模型导入概述

Model页签

Rig操纵(骨骼)页签)

Animation——动画页签

动画页签概述

基础信息设置

动画剪辑属性基本设置

动画剪辑属性其它设置

预览窗口

Materials——材质纹理页签

3D动画相关

3D动画的使用

练习

后退直接有的是向前走的动画,只要倒着播放就可以

​​​​

添加事件

动画分层和遮罩

练习

动画1D混合

练习:

动画2D混合

练习

动画子状态机

练习:

动画IK控制

练习

先加一个头部的位置获取点

主要知识点是——四元数相关的

通过头部位置点计算出一个获取位置的虚拟点,通过它来控制转向

动作目标匹配

StateMachineBehaviour——状态机行为脚本

状态机复用

角色控制器

导航寻路系统

导航寻路系统概述

导航网格生成

导航网格寻路组件

导航网格外连接组件

导航网格动态障碍组件

通过鼠标右键点击让障碍物失活

总结

做实践项目之前需要先把:UGUI和数据持久化Json学习完。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/32105.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Apache Doris】周FAQ集锦:第 7 期

【Apache Doris】周FAQ集锦&#xff1a;第 7 期 SQL问题数据操作问题运维常见问题其它问题关于社区 欢迎查阅本周的 Apache Doris 社区 FAQ 栏目&#xff01; 在这个栏目中&#xff0c;每周将筛选社区反馈的热门问题和话题&#xff0c;重点回答并进行深入探讨。旨在为广大用户和…

uvalde-bash提权

**后续需要虚拟机的私信我&#xff0c;我会打包进行文章发布链接&#xff0c;请持续关注&#xff01;&#xff01;&#xff01;** VM网络不通也没法改密码进去&#xff0c;只能下个VirtualBox和VMware互通了 vmware与virtualbox虚拟机互通_vmware和virtualbox互联-CSDN博客 但…

动态规划03(二维01背包,一维01背包,leetcode416)

参考资料&#xff1a; https://programmercarl.com/%E8%83%8C%E5%8C%85%E7%90%86%E8%AE%BA%E5%9F%BA%E7%A1%8001%E8%83%8C%E5%8C%85-1.html 46. 携带研究材料&#xff08;第六期模拟笔试&#xff09; 题目描述&#xff1a; 输入示例 6 1 2 2 3 1 5 2 2 3 1 5 4 3 输出示例 …

软件测试质量度量之 “三级指标体系”

管理学大师彼得 - 德鲁克曾说过&#xff1a;无数据不管理。 数字是人们快速认知事物的一种有效方式。无论在生活还是工作&#xff0c;对事还是对人都息息相关。碰上难以的用数字描述事物或现象肯定是没有找对适用的指标和度量方式。尤其对于质量工程方面的工作&#xff0c;定量…

喂饭教程:AI生成100套Word题库阿里云百炼实训营

郭震原创&#xff0c;手撸码字187022张图 你好&#xff0c;我是郭震 1 实际需求 前段时间&#xff0c;有个关注我的粉丝联系我&#xff0c;是一位大学计算机女老师。 她想做一个二级考试题库&#xff0c;选择题实操题&#xff0c;最好100套以上&#xff0c;拿来给学生练手。 问…

解两道四年级奥数题(等差数列)玩玩

1、1&#xff5e;200这200个连续自然数的全部数字之和是________。 2、2&#xff0c;4&#xff0c;6&#xff0c;……&#xff0c;2008这些偶数的所有各位数字之和是________。 这两道题算易错吧&#xff0c;这里求数字之和&#xff0c;比如124这个数的全部数字之和是1247。 …

【ClickHouse】副本、分片集群 (六)

副本 副本的目的主要是保障数据的高可用性&#xff0c;即使一台ClickHouse节点宕机&#xff0c;那么也可以从其他服务器获得相同的数据。 https://clickhouse.tech/docs/en/engines/table-engines/mergetree-family/replication/ 副本写入流程 写入流程如图-18所示: 图-18 写…

CATIA_DELMIA_V5R2019安装包下载及安装教程破解

以下为V5-6R2019安装说明 1.将两卷安装文件解压到同一目录内&#xff0c;互相覆盖即可 &#xff08;按用户需要下载 CATIA 或者DELMIA&#xff09; 以上为 CATIA 的安装包 以上为 DELMIA 的安装包 两者合并到一起&#xff0c;同一目录 2.解压后运行setup.exe 如遇到报错&…

数据集标注研究

主要研究数据集标注存储文件的数据存储格式 目录 0.简介1.coco128-seg数据格式1.1 分割标注格式2.YOLO格式2.1 YOLO目标识别标签2.2 yolov5-seg分割标签2.TT100K数据集标注2.1 TT100K数据集标注文件解析0.简介 1.coco128-seg数据格式 1.1 分割标注格式 如coco128-seg数据集 …

【一步一步了解Java系列】:认识异常类

看到这句话的时候证明&#xff1a;此刻你我都在努力 加油陌生人 个人主页&#xff1a;Gu Gu Study专栏&#xff1a;一步一步了解Java 喜欢的一句话&#xff1a; 常常会回顾努力的自己&#xff0c;所以要为自己的努力留下足迹 喜欢的话可以点个赞谢谢了。 作者&#xff1a;小闭…

论文阅读03(基于人类偏好微调语言模型)

1.主题 基于人类偏好微调语言模型&#xff08;Fine-Tuning Language Models from Human Preferences&#xff09; 出处&#xff1a; Fine-Tuning Language Models from Human Preferences、 2.摘要 奖励学习使得强化学习&#xff08;RL&#xff09;可以应用于那些通过人类判断…

Pydantic 全面指南:从入门到高级应用

Pydantic 简介 1.1 Pydantic 是什么&#xff1f; Pydantic 是一个用于数据验证和设置管理的 Python 库。它通过 Python 类型注解来定义数据模型&#xff0c;并提供了强大的数据验证功能。Pydantic 的主要目标是确保数据在输入和输出时的一致性和有效性。它广泛应用于各种 Pyt…

clean code-代码整洁之道 阅读笔记(第十二章)

第十二章 系统 12.1 通过选进设计达到整洁目的 Kent Beck关于简单设计的四条规则&#xff0c;对于创建具有良好设计的软件有着莫大的帮助。 据Kent所述&#xff0c;只要遵循以下规则&#xff0c;设计就能变得"简单"&#xff1a;运行所有测试&#xff1b;不可重复&…

大疆无人机航点飞行KMZ文件提取航点坐标

一、需要插件 <!-- 解析KMZ航线--><dependency><groupId>jaxen</groupId><artifactId>jaxen</artifactId><version>1.1.4</version></dependency><dependency><groupId>dom4j</groupId><a…

学习java第一百零七天

解释JDBC抽象和DAO模块 使用JDBC抽象和DAO模块&#xff0c;我们可以确保保持数据库代码的整洁和简单&#xff0c;并避免数据库资源关闭而导致的问题。它在多个数据库服务器给出的异常之上提供了一层统一的异常。它还利用Spring的AOP模块为Spring应用程序中的对象提供事务管理服…

计算机网络(概述)

该笔记为湖科大计算机网络相关笔记、教材参考计算机网络第六版 湖科大计算机网络 计算机网络概述 因特网概述 Internet和internet的区别 internet&#xff1a;只要是计算机与计算机连接&#xff0c;形成了网络&#xff0c;就可以叫internet Internet&#xff1a;泛指全世界的…

Excel 导入实例

在上一节的基础上&#xff0c;本文演示下如何导入excel数据。 Excel导入操作指导 继承ocean-easyexcel SDK&#xff0c;上一节打包生成 <dependency><groupId>com.angel.ocean</groupId><artifactId>ocean-easyexcel</artifactId><version…

晶谷电子器件烧结封装介质材料 绝缘用晶谷低温封接环保玻璃粉 耐压高

电子器件烧结封装介质材料是用于保护和封装电子器件的关键材料。 常见的电子器件烧结封装介质材料包括以下几种&#xff1a; 1. 陶瓷材料&#xff1a;具有良好的绝缘性能、耐高温性能和机械强度。 2. 高分子材料&#xff1a;如环氧树脂等&#xff0c;具有良好的柔韧性和耐湿…

k8s离线部署nginx

1. 拉取nginx离线包到本地 sudo docker save nginx:latest -o nginx.tar 2. 导入nginx image到k8s命名空间中 sudo ctr -n k8s.io images import nginx.tar 3. 编辑nginx.yaml apiVersion: apps/v1 kind: Deployment metadata:name: nginx-deployment spec:selector:match…

GitHub的基本使用方法

GitHub是一个面向开源及私有软件项目的托管平台&#xff0c;提供了版本控制功能、代码托管服务、协作功能等。以下是GitHub的基本使用方法&#xff1a; 注册并登录&#xff1a;首先&#xff0c;访问GitHub官网&#xff08;https://github.com/&#xff09;并点击右上角的"…