首页 > 其他分享 >2-08. 碰撞层和景观树

2-08. 碰撞层和景观树

时间:2024-03-21 19:55:25浏览次数:10  
标签:TreeGreen 08 碰撞 景观 2D 添加 Top 节点

安装美观插件

绘制地图

增加碰撞层

添加组件

然后再增加 Composite Collider 2D,在自动增加的 Rigidbody 2D 里将 Body Type 改为 Static

在 Tilemap Collider 2D 上勾选 Used By Composite

绘制碰撞

关闭图片渲染

将图中的勾选去掉,这样就只保留了碰撞的部分

调整碰撞范围

我们可以看到三角形碰撞体,它的碰撞范围不太正确

因此我们需要修改 Sprite Editor

在打开的窗口中选择 Custom Physics Shape

然后选择三角形,点击 Generate

我们可以把这两个点拉下来,这样它就形成一条直线了

其它图片也可以这样设置

设置完毕之后,地图上的碰撞体还没有更新,把碰撞体 disable 掉再 enable 回来,这样就能看到碰撞体修改生效了

绘制所有的碰撞体

像这种水边,可以做的更加平滑一点

最终效果如下图所示

绘制完毕之后,将 Tilemap Renderer 关闭,这样就不会画出红色的框框了

添加树

做一个静止的树

增加一个空节点,TreeGreen

在 TreeGreen 下面添加一个子节点 Top,Sorting Layer 改成 Instance,Soring Order 改为 1,这样可以永远挡住人物

再在 TreeGreen 下面添加一个子节点 Tree_Trunk,Sorting Layer 改成 Instance,因为树干和人物有叠层关系,所以需要将 Sprite Sort Point 改为 Pivot

现在的叠层关系还是不太正确,因此我们需要修改树干的锚点位置

给树增加动画

在 Top 节点上面添加 Animator 组件

创建 Animator Controller

然后选中 Top 节点,在 Animation 窗口中,Create Animation Clip

在 Animations 文件夹下面创建 SceneryTrees 文件夹,然后在 SceneryTrees 文件夹下面创建 tree_green 动画片段

复制粘贴出一个粉色的树,记得动画状态机里面需要把 tree_pink 设为默认

项目相关代码

代码仓库:https://gitee.com/nbda1121440/DreamOfTheKingdom.git

标签:20240321_1945

标签:TreeGreen,08,碰撞,景观,2D,添加,Top,节点
From: https://www.cnblogs.com/hellozjf/p/18088131

相关文章

  • 初探 Cocos Creator: 碰撞与物理系统
    前言不知道你刚开始玩碰撞时,会不会遇到始终无法触发碰撞事件?玩物理系统时,自由落体的刚体会穿过“地面”刚体等情况?没错我全都遇到过,那么下面我就用红蓝色方块,简单实战一下CocosCreator的碰撞与物理系统。 场景创建场景很简单,一个白色背景,两个红蓝色玩家,和一个绿色大草......
  • OJ :1089 : 阶乘的最高位
    题目描述输入一个正整数n。输出n!的最高位上的数字。输入输入一个正整数n(n不超过1000)。输出输出n!的最高位上的数字。样例输入 1000样例输出 4思路:     这个问题的难点就在于如何处理据,需要注意数据溢出,比如1000的阶乘就很大很大,就算longlongint都存......
  • ptaL2-008manachar做法
    之前考虑过如果输入样例很大怎么办,但是没有细想,今天看了看manachar,懊悔如果这个题样例增大一些变成L330分就好了hh,相比于洛谷上的模板题,这个题唯一不一样的就是有空格,所以不能再用char数组来保存,改用string来存储,C++中的getline函数前几天刚了解到正好也派上用场了constin......
  • V208实现OnlyUpdate方式的OTA
    目录与多数沁恒家的MCU一样,V208的LD文件、启动文件使用的是公共文件,故不建议直接覆盖原路径中的文件,否则会导致其他工程的编译出问题。本文以MultiCentPeri例程作为原始例程,为其添加外置BLE固定库的OTA框架。步骤一:拷贝文件。完整复制一份MultiCentPeri工程的文件夹到同一目录......
  • 前端学习-vue学习008-生命周期和模板引用
    官方教程链接ref标签(模板引用)手动操作DOM,使用模板引用,就是指向模板中一个DOM元素的ref<pref="pElementRef">hello</p>要访问该引用,我们需要声明一个同名的ref:constpElementRef=ref(null)生命周期详见前端学习-vue视频学习010-生命周期<template><!--html-......
  • Jmeter无法录制火狐浏览器打开的本机地址——http://Localhost:8080/*****
    问题描述:用管理员账号打开jmeter,新建录制模板,配置好网址和代理地址,证书也导入到火狐浏览器,浏览器也配好了代理地址。发现Jmeter可以录制别的地址,无法录制本机地址。原因分析:我们打开火狐浏览器的代理设置,可以发现它默认本机地址通过代理连接。接着我们要更改配置。在网址中......
  • 英伟达出品:全球最强大芯片Blackwell来了!采用4nm制程,2080 亿个晶体管组,支持10万亿参数
    更多精彩内容在美国加利福尼亚州圣何塞——2024年3月18日 ——NVIDIA于今日宣布推出NVIDIABlackwell平台以赋能计算新时代。该平台可使世界各地的机构都能够在万亿参数的大语言模型(LLM)上构建和运行实时生成式AI,其成本和能耗较上一代产品降低多达25倍。以......
  • 08虚拟机快照
    介绍在学习阶段我们无法避免的可能损坏Linux操作系统。如果损坏的话,重新安装一个Linux操作系统就会十分麻烦。VMware虚拟机(Workstation和Funsion)支持为虚拟机制作快照。通过快照将当前虚拟机的状态保存下来,在以后可以通过快照恢复虚拟机到保存的状态快照的作用快照可以保存......
  • 080_Matplotlib-Python的2D绘图库
    目录什么是Matplotlib为什么要学习Matplotlib实现一个简单的Matplotlib画图创建画布-》绘制图像-》显示图像Matplotlib三层结构容器层辅助显示层图像层折线图与基础绘图功能折线图的应用场景常见图形绘制常见图形种类及意义折线图-变化散点图-分布规律柱状图-统计/对比直方图-统计......
  • 【CVRP】粒子群算法求解带时间窗的多车辆多任务车辆路径规划(目标函数:最段距离)【含Matl
    ......