当前位置: 首页 > news >正文

通过PS和Unity制作2D动画之一:创建形象

1、通过路径画出轮廓

使用路径的过程中,需要注意:

1)如果使用形状工具作图,比如使用椭圆工具画正圆形,需要设置其属性为“路径”。

2)使用路径选择工具,再按住Alt键点击某个路径,可以复制出该路径

3)使用自由变换路径,可以调整路径的形状

4)每一个部位都需要是封闭的路径,这样后期填充颜色才不会出错

2、描边和填充颜色

在此过程中需要注意:

1)每一个部位都单独一个图层,这样每个部位可以单独运动。

可以看到有多个图层,但是只有一个路径。

2)填充子路径:

选中路径后右击鼠标可填充子路径。

3)描边子路径

3、PS文件存储

ps制作完成之后,为了后续给Unity使用,需要保存为大型文档格式 PSB格式

另存时一定要勾选“ICC配置文件”

在Unity中打开PSB文件,效果如下:

4、导入2D Animation工具集

工具1:2D Animation

工具2:2D PSD Importer

默认情况下这两个工具都已经安装好了。

5、蒙皮的调整

点击“Open Sprite Editor”进入图片编辑功能

点击“Skinning Editor”

-->

1)点击Auto Geometry:自动生成几何形状

Generate For All Visible:自动生成网格和权重

其他功能说明:

Edit Geometry:编辑集合形状,比如移动顶点Vertex等

Create Vertex:在几何形状中新增顶点

Create Edge:新增边,更多的边会让UV图切分得更细,这样做动作也便更顺滑

Split Edge:在两个边上新增一个Vertex

上图中的三角形就是UV图层。

双击图层,就可以进入编辑模式。

构建如下图所示:

通过增加edge,可以发现更改部分的UV变得更密集了。

6、骨骼的绘制

点击【Create Bone】,新增红色的骨骼,后续所有骨骼都以此为主心骨。

新增其他骨骼时,点击红色骨骼的黑点后在其他地方进行创建。

我们看到其他骨骼与主心骨都建立了依赖关系。

点击【Auto Weights】,然后由下角勾选“Associate Bones”,意思是建立权重时需要参考关联的骨骼关系。

点击【Preview Pose】,就可以预览动作了。此时移动骨骼就可以做出各种动作,虽然还不够完美。

如果已经手工指定了部件对应的关联骨骼,则Auto Weights ->  Generate All的时候不要勾选"Associate Bones"。

另外,如果发现重新Generate All无效,则删除部位Bone Influence已有的bones信息,重新进行添加。

7、权重的调整

骨骼影响的是点,所以需要调整各个点对应相关骨骼的权重。

Weight Brush:点击骨骼,通过刷相关的点增加这个骨骼对相关点的权重影响

Weight Slider:单个点调整各个骨骼的影响权重

通过Weight Slider调整权重

移动右边的手臂时我们发现脑袋部分也跟着一起动了,我们看到右手臂骨骼是绿色的,在权重分布图中也看到了脑袋边缘有绿色。所以绿色骨骼可以影响脑袋。

身体边缘不需要变动的点,在Weight Slider中将影响点全部去掉,这意味着任何骨骼都不会影响这些点,这些点是固定不动的。

此时再移动手臂的骨骼,我们发现只有手臂在动,身体不会发生变动了。

通过Weight Brush调整

先双击相应的骨骼,然后刷相关的位置,保证那些需要的点能够刷到,因为权重只会对Vertex生效。被刷到的点在刷的时候会显示为黄色顶点。

增加Vertex

在移动手臂的过程中,我们发现有些生硬,如下图所示:

这个就是因为这个位置缺少vertex导致的,所以需要增加vertex的数量。

增加vertex之后,我们发现手臂弯曲的效果有很大的提升。

权重最后的结果为:

8、模型载入到Hierarchy

从Assets将模型拖入到Hierarchy中,可以看到:

我们看到模型最终展示到Scene或Game中并无完整。

这个是因为在PS中另存为时操作有问题:

另存时一定要勾选“ICC配置文件”。

此时此刻,只能在新模型上调整蒙皮、骨骼、权重了。

本文参考:

使用Photoshop快速绘制2D游戏素材_哔哩哔哩_bilibili

相关文章:

通过PS和Unity制作2D动画之一:创建形象

1、通过路径画出轮廓 使用路径的过程中,需要注意: 1)如果使用形状工具作图,比如使用椭圆工具画正圆形,需要设置其属性为“路径”。 2)使用路径选择工具,再按住Alt键点击某个路径,可…...

Notable是一款优秀开源免费的Markdown编辑器

一、Notable简介 ‌ Notable‌是一款开源的跨平台Markdown编辑器,支持Linux、MacOS、Windows以及国产操作系统等多种主流操作系统。它以其高颜值和强大的功能,成为了许多用户的首选工具。 主要特性 实时预览‌: Notable提供了实时预览功能&…...

基于MFC绘制门电路

MFC绘制门电路 1. 设计内容、方法与难点 本课题设计的内容包括了基本门电路中与门和非门的绘制、选中以及它们之间的连接。具体采用的方法是在OnDraw函数里面进行绘制,并设计元器件基类,派生出与门和非门,并组合了一个引脚类,在…...

C—指针初阶(2)

如果看完阁下满意的话,能否一键三连呢,我的动力就是大家的支持与肯定,冲! 二级指针 我们先看概念以及作用:用来存放一级指针的地址的指针 先看例子,我们逐一分析 我们先分析上面那个“1” 标注那里&#x…...

Linux 基础环境的开发工具以及使用(下)

1. make / Makefile 自动化构建的工具 1)引入 在我们进行一些大型的工程的时候,代码量是极其大,当我们代码在进行一系列的编译的时候,难免会出现一些错误,当我们对错误进行一系列的更改之后,难道我们需要…...

constexpr、const和 #define 的比较

constexpr、const 和 #define 的比较 一、定义常量 constexpr 定义:constexpr用于定义在编译期可求值的常量表达式。示例:constexpr int x 5;这里,x的值在编译期就确定为5。 const 定义:const表示变量在运行期间不能被修改&…...

期末复习-Hadoop综合复习

说明 以下内容仅供参考,提到不代表考到,请结合实际情况自己复习 目录 说明 一、题型及分值 二、综合案例题-部署Hadoop集群 或 部署Hadoop HA集群 案例 1:Hadoop 基础集群部署 案例 2:Hadoop HA 集群部署 案例 3&#xff…...

禁用SAP Hana错误密码锁定用户功能

背景 公司项目适配多种数据库其中包含SAP Hana,由于有同事的数据库连接工具保存了某个在用的数据库的旧密码,导致时不时会被锁用户。通过查询官方文档已解决,这里统一记录一下。 禁用密码锁定方法 以下按系统管理员和普通用户的解法分别列…...

Ubuntu 22.04加Windows AD域

说明:   Ubuntu 22.04系统通过realmd,sssd加入到 Active Directory 域,并为域用户配置sudo权限。同时为方便用户使用为Ubuntu系统安装wps与sogou中文输入法。 1. Ubuntu 22.04加入Windows AD域 1.1 首先配置网络,Ubuntu系统能…...

qt实现窗口的动态切换

先说一下整体思路。页面布局两个widget然后再将定时器和按钮关联起来。 定时器发出信号的时候,随着信号,不断地重新设置widget的宽度,实现窗口的动态切换。 具体操作如下: class QtWidgetsApplication4 : public QMainWindow {…...

第十七届山东省职业院校技能大赛 中职组“网络安全”赛项资源任务书样题②

第十七届山东省职业院校技能大赛 中职组“网络安全”赛项资源任务书样题② 模块A 基础设施设置与安全加固(200分)A-1 登录安全加固(Windows, Linux)A-2 Nginx安全策略(Linux)A-3日志监控(Windows)A-4中间件…...

【Vulkan入门】09-CreateFrameBuffer

目录 先叨叨git信息关键代码VulkanEnv::FindHostVisitbaleMemoryTypeIndex()TestPipeLine::CreateFramebuffers() 与网上大多数文章不同,其他文章基本上都使用窗口框架(X11、GLFW、WSL等)提供的surface来显示Vulkan渲染出的图像。我认为那样会…...

FPGA设计-Vivado的Off-Chip Termination设置问题

目录 简介: 设置规则: output strength(输出驱动器的电流驱动能力) slew rate(输出电压压摆率) Pull type(上下拉类型) On-chip termination(输入端/输出端的内置片上端接电阻) 输出端接电阻配置 简介: 经常遇到在FPGA设计时,很多人很迷惑这些关于硬件的终…...

GC常见垃圾回收算法,JVM分代模型

如何判断是垃圾?引用计数器和Root可达性算法 如何进行清除?标记清除、复制、标记整理 堆分代模型?Eden,Surevivor,Tenuring 一个对象从创建到消亡的过程? 对象什么时候进入老年代? 一、GC&a…...

面试题整理(三)

芯冰乐知识星球入口:...

可视化建模以及UML期末复习----做题篇

一、单项选择题。(20小题,每小题2分,共40分) 1、UML图不包括( ) A、用例图 B、状态机图 C、流程图 D、类图 E、通信图 答案:C、流程图 UML中不包括传统意义上的流程图,流程图通常是指B…...

PostGIS分区表学习相关

在Postgresql中对空间数据进行表分区的实践_postgresql空间数据-CSDN博客文章浏览阅读1.4k次,点赞26次,收藏21次。Postgresql的分区功能允许将一个大表按照特定的规则拆分成多个小的分区表。这样做的好处在于,在查询数据时,可以只…...

JavaEE 【知识改变命运】03 多线程(3)

文章目录 多线程带来的风险-线程安全线程不安全的举例分析产出线程安全的原因:1.线程是抢占式的2. 多线程修改同一个变量(程序的要求)3. 原子性4. 内存可见性5. 指令重排序 总结线程安全问题产生的原因解决线程安全问题1. synchronized关键字…...

Flash操作 原子写 非原子写

原子和非原子操作 读、修改、写操作 对一个变量 A 1或上0x01,C语言写法: A 1| 0x01; 通过编译转成汇编后: LOAD R1,[#A 1] ; Read a value from A 1 into R1 MOVE R2,#0x01 ; Move the absolute constant 1 into R2 OR R1,R2 ; Bitwise O…...

厦门凯酷全科技有限公司怎么样?

随着短视频和直播带货的兴起,抖音电商平台迅速崛起,成为众多品牌和商家争夺的新战场。在这个竞争激烈的市场中,如何抓住机遇、实现销售增长,成为了每个企业面临的挑战。厦门凯酷全科技有限公司(以下简称“凯酷全”&…...

ubuntu 18.04设置命令行历史记录并同时显示执行命令的时间

以下相关详细信息请参考ubuntu官网。 在Ubuntu 18.04中,查看特定用户(例如用户broko)的命令行历史记录,并同时显示执行命令的时间,可以通过修改用户的shell配置文件来实现: • 设置HISTTIMEFORMAT环境变量…...

推荐系统里面的多任务学习概述

1. 概述 多任务学习(multi-task learning),本质上是希望使用一个模型完成多个任务的建模,在推荐系统中,多任务学习一般即指多目标学习(multi-label learning),不同目标输入相同的fe…...

解决uview ui赋值后表单无法通过验证

微信小程序中 主要还是文档有这样一段话://如果需要兼容微信小程序,并且校验规则中含有方法等,只能通过setRules方法设置规则。 添加即可通过 onReady() {//如果需要兼容微信小程序,并且校验规则中含有方法等,只能通过…...

【GL010】C/C++总结(二)

C部分 1. C中类成员的访问权限 无论成员被声明为 public、protected 还是 private,都是可以互相访问的,没有访问权限的限制。在类的外部 (定义类的代码之外),只能通过对象访问成员,并且通过对象只能访问 p…...

【合作原创】使用Termux搭建可以使用的生产力环境(五)

前言 在上一篇【合作原创】使用Termux搭建可以使用的生产力环境(四)-CSDN博客我们讲到了如何让proot-distro中的Debian声音驱动正常,将我们的系统备份后,通过VNC客户端连接到VNC服务器,这一篇我们来讲一下xfce桌面的美…...

初始数据结构

程序数据结构算法 数据结构研究计算机数据(元素)间关系 包括数据的逻辑结构和存储结构及其(数据间)操作 一、基本概念 1.1数据 数据即信息的载体,能被输入到计算机中并且能被它识别、存储和处理的符号总称 1.2数据…...

给我的小程序加了个丝滑的搜索功能,踩坑表情包长度问题

前言 最近在用自己的卡盒小程序的时候,发现卡片越来越多,有时候要找到某一张来看看笔记要找半天,于是自己做了一个搜索功能,先看效果: 怎么样,是不是还挺不错的,那么这篇文章就讲讲这样一个搜索…...

MATLAB中的合并分类数组

目录 创建分类数组 串联分类数组 创建具有不同类别的分类数组 串联具有不同类别的数组 分类数组的并集 此示例演示了如何合并两个分类数组。 创建分类数组 创建分类数组 A,其中包含教室 A 中的 25 个学生的首选午餐饮料。 rng(default) A randi(3,[25,1]); …...

ShardingSphere-JDBC

1. 什么是分库分表? 分库分表是一种数据库扩展技术,通过将数据拆分到多个数据库(分库)或多个表(分表)中来解决单一数据库或表带来的性能瓶颈。分库分表可以有效提升系统的可扩展性、性能和高并发处理能力&…...

企业如何选择远程控制软件来远程IT运维?

在当今企业的日常运作中,IT运维无疑是核心环节之一,它对于保持企业信息系统的稳定运行和数据安全至关重要。随着科技的快速进步,远程控制软件在IT运维中的应用变得越来越重要。今天,我们就来探讨一下远程控制软件如何助力企业IT运…...

石家庄市官方网站/广告投放网站平台

首页 > 新闻中心发布时间:2020-11-13 21:29:55 导读:山东领旗环保科技为您提供嘉祥叠螺式污泥脱水机的相关知识与详情:山东领旗环保科技有限公司lq92xl主要生产:叠螺机,叠螺式污泥脱水机,车载式污泥脱水机等多款产品&#xff0…...

网站建设wang1314/长沙竞价优化

*Java程序的运行包括两个非常重要的阶段 -编译阶段 -运行阶段 *编译阶段 -编译阶段主要的任务是检查Java源程序是否符合Java语法,符合Java语法则能够生成正常的字节码文件(xxx.class),不符合规则则无法生成字节码文件。 -字节码文…...

百度推广做的网站可以用吗/外媒头条最新消息

权限1.Linux权限的概念2.Linux权限管理1. 文件访问者的分类2.文件的类型和访问的权限:设置权限3.文件的默认权限默认权限的计算chownchgrp4.Linux 授予普通用户root权限方法5.粘滞位完!1.Linux权限的概念 超级用户:可以再linux系统下做任何事…...

app定制哪里找/优化网站

上一篇从整个工程上简单分析了glog,请看C的开源跨平台日志库glog学习研究(一),这一篇对glog的实现代码入手,比如在其源码中以宏的使用最为广泛,接下来就先对各种宏的使用做一简单分析。 1. 日志输出宏 这里我们以一条最简单的日至…...

企业网站建设费怎么账务处理/百度推广后台

一、概述 Java是天生就支持并发的语言,支持并发意味着多线程,线程的频繁创建在高并发及大数据量是非常消耗资源的,因为java提供了线程池。在jdk1.5以前的版本中,线程池的使用是及其简陋的,但是在JDK1.5后,有…...

北斗导航2022最新版手机版/seo推广小分享

http://blog.csdn.net/u012926924/article/details/50606195 最简android之wifi调试 做android开发的时候,经常遇到的一个问题就是真机调试次数多了,会导致usb口,损坏,而且长期给手机充电也会损坏手机,所以我想了想是…...