注:本文为学习笔记。详情请看b站upMichael-Studio的Unity 2D入门教程:13 Enemy Enemy!
环境:unity2020.3
章节目标:在游戏中制作弹出窗口
控制板
对话框必须是面板,所以先新建一个面板
画布——右键——UI——面板
然后调整面板的属性
Position:UI一般是锁定位置对齐
, 确认后手动调整到您要放置的位置。
尺寸:我选择的是bottom-center,所以我需要调整的是宽度和高度(不同的选择可能不同
颜色:颜色和透明度可选,在Image组件的Color中,点击后的最后一行是透明度
还可以加个背景图什么的,这里就不多说了
刑罚与文本
一般对话框都有提示游戏角色,所以可以使用Panel作为父节点添加Text子节点unity 点击弹出对话框,文本的样式调整就不会重复了。
小白小时候做过一件很傻的事:把字体弄的很大,然后发现文字里什么都没有显示。事实上,您的文字太小而无法容纳,所以只需将其放大即可。
一个小技巧(与本文内容无关
按alt键以中心为对称点调整大小(我用它来调整Text的大小
弹出面板
底层逻辑:触发事件——弹出惩罚
比如角色走到某个位置,弹框自动弹出,比如走到这里
最简单的方法是在这里放一个对撞机
创建一个空的游戏对象 - 添加对撞机组件 - 将对撞机调整到合适的大小并将其放置在所需的位置并勾选 Trigger 选项 - 脚本实现触发后的反应
代码如下,挂在碰撞体放置的物体上即可
public class Dialog : MonoBehaviour
{
public GameObject GGDialog;
private void OnTriggerEnter2D(Collider2D obj)
{
if(obj.tag=="Player")// 这里注意,根据tag不同自行改动,只是这里我的物体tag叫做Player
{
GGDialog.SetActive(true);
}
}
private void OnTriggerExit2D(Collider2D obj)
{
if(obj.tag=="Player")
{
GGDialog.SetActive(false);
}
}
}
Penal 淡入淡出效果
如何在没有很多图片的情况下制作动画?Unity 提供了录制功能。开始录制后,相当于K关键帧unity 点击弹出对话框,在一个点调整一个状态,在下一个点调整到另一个状态,然后播放,做成视频
前面的步骤和给对象添加动画一样,但是点击左上角的小红点开始录制,而不是在图片中拖动
我一共录了三帧,完全没有——一点点——全屏显示
我觉得很能穿越一波统一,绝对的,它甚至会自动补间!!
就是这样,很好,对吧?