萝卜刀真的太危险了,于是我用Cocos做了一个

news2025/1/17 8:59:27

点击上方亿元程序员+关注和星标

电子萝卜刀

引言

大家好,我是亿元程序员,一位有着8年游戏行业经验的主程。

昨天,我女儿和我说想买一把萝卜刀,众所周知,萝卜刀在潜意识当中是存在一定的危险的,所以我果断拒绝了,但是我还是想体验一下,怎么办?于是我就用Cocos做了一个

1.准备素材

1.首先我们从网络上找到一张关于萝卜刀的图片。

图片来源于网络,仅供学习和交流,侵删

2.导入PS,把我们需要的其中一把裁剪出来。

一个萝卜刀

3.然后我们通过精湛的PS技术(不是),把萝卜刀拆解。

演示用,虽然有点丑

4.把资源放进去Cocos。

把资源放进去Cocos

下面我们一起让萝卜刀动起来

2.做动画

要想萝卜刀尽可能和实物一样,我们得做动画,我们利用Cocos的动画编辑器简单做一下。

1.首先我们先创建个Knife节点,把3部分的图片放进去并且按照结构拼接好。

结构

2.调整我们的转动轴位置,即锚点。

锚点

3.编辑动画。

白色部分我们添加一个旋转动画,添加一个angle属性,在0.1秒的地方加一个关键帧,并把它调整至打开状态。

然后给刀尖部分添加一个position属性,在0.15秒处将添加一个关键帧,并把它调整成展开状态。

刀尖展开后,我们需要把白色部分复原,在0.25秒处添加一个关键帧,并且把它复原

到这里,萝卜刀的简单动画已经编辑完成,我们把动画调整回最初状态,然后保存。

下面我们来编写控制萝卜刀运动的代码

3.写代码

为了让萝卜刀有实物一样的甩刀效果,我们利用一下重力感应控制

完整源码

关键Api是cc.SystemEvent.EventType.DEVICEMOTION事件,我们监听一下。

cc.SystemEvent.EventType.DEVICEMOTION

还需要是否启用加速度计事件把打开。

cc.systemEvent.setAccelerometerEnabled(true)

动画的播放比较简单。每次播放之前把方向改变一下,实现打开和关闭效果。

this.animation.play

4.效果演示

构建小游戏。

构建小游戏

效果演示。

还可以

结语

本文仅供娱乐参考学习,萝卜刀有风险,大家谨慎对待。

在哪里可以看到如此清晰的思路,快跟上我的节奏!关注我,和我一起了解游戏行业最新动态,学习游戏开发技巧。

我是"亿元程序员",一位有着8年游戏行业经验的主程。在游戏开发中,希望能给到您帮助, 也希望通过您能帮助到大家。

AD:笔者线上的小游戏《贪吃蛇掌机经典》《填色之旅》《重力迷宫球》大家可以自行点击搜索体验。

实不相瞒,想要个在看!请把该文章分享给你觉得有需要的其他小伙伴。谢谢!

推荐专栏:

和8年游戏主程一起学习设计模式

8年主程手把手打造Cocos独立游戏开发框架

从零开始开发贪吃蛇小游戏到上线系列

游戏开发的技巧、心得、资讯

点击下方绿色按钮+关注

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

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

相关文章

Elasticsearch介绍及插件head和kibana下载

目录标题 一、Elasticsearch介绍二、Elasticsearch下载三、Elasticsearch-head四、Elasticsearch-kibana 一、Elasticsearch介绍 Elasticsearch是什么? Elasticsearch 是一个基于Lucene的分布式搜索和分析引擎,ES是elaticsearch简写,Elasticsearch是一…

Lite-UNet: 轻量且高效的细胞定位模型,轻量化的U-Net

论文:Lite-UNet: A Lightweight and Efficent Network for Cell Localization Paper Link:Lite-UNet: A Lightweight and Efficent Network for Cell Localization Code: https://github.com/Boli-trainee/Lite-UNet 核心思想:魔…

OpenHarmony 应用全局的 UI 状态存储:AppStorage

AppStorage 是应用全局的 UI 状态存储,是和应用的进程绑定的,由 UI 框架在应用程序启动时创建,为应用程序 UI 状态属性提供中央存储。 和 AppStorage 不同的是,LocalStorage 是页面级的,通常应用于页面内的数据共享。而…

cs231n

计算机视觉概述 a study of visual data visual data has exploded to a ridiculous degree 手机上两三个摄像头,more camera than people,视觉传感器,摄像头终端,产生很多视觉数据 visual data构成互联网上传输的的大部分数据 8…

【Linux-常用命令-基础命令-删除文件夹以及内容-rm--r-命令-笔记】

【Linux-常用命令-基础命令-删除文件夹以及内容-rm--r-命令-笔记】 1、前言2、操作3、自己的操作 1、前言 最近,在使用Linux的时,使用相关基础命令是,总是容易忘记,上网一搜,大部分都写的比较繁琐,关于删除…

Compose竖向列表LazyColumn

基础列表一 LazyColumn组件中用items加载数据,rememberLazyListState()结合rememberCoroutineScope()实现返回顶部。 /*** 基础列表一*/ Composable fun Items() {Box(modifier Modifier.fillMaxSize()) {val context LocalContext.currentval dataList arrayLi…

锐化多个视频的同时轻松快速批量添加上背景图片的教程

在日常生活中,我们可能经常需要给一些视频添加背景图。但是,这并不是一项简单的任务,需要花费大量的时间和精力。那么,有没有一种简单的方法可以批量添加背景图到视频呢?答案是肯定的。下面,我们就来介绍一…

【word技巧】word页眉,如何禁止他人修改?

我们设置了页眉内容之后,不想其他人修改自己的页眉内容,我们可以设置加密的,设置方法如下: 先将页眉设置好,退出页眉设置之后,我们选择布局功能,点击分隔符 – 连续 设置完之后页面分为上下两节…

css 好看的边框

1、把图片作为边框 border:10px solid transparent;border-image:url(./assets/images/login_bg.png) 30 round;2、斜线边框 斜线边框可以给页面元素增加一份生动感。可以使用linear-gradient()函数来设置。 .box{position:relative;border-top:4px solid #667db6;border-bot…

计算机基础知识34

进程锁 # 锁在IT界很重要,不但在Python中出现,尤其是数据库中得锁更多,比如:表锁、行锁、 悲观锁、乐观锁、进程锁、互斥锁、递归锁、可重入锁、死锁等 # 保证安全 import time # 导入time,执行顺序乱了 from…

docker 部署mysql

Centos7为例 NAME"CentOS Linux" VERSION"7 (Core)" ID"centos" ID_LIKE"rhel fedora" VERSION_ID"7" PRETTY_NAME"CentOS Linux 7 (Core)" ANSI_COLOR"0;31" CPE_NAME"cpe:/o:centos:centos:7&qu…

【ubuntu】常用软件安装

【ubuntu】常用软件安装 前言安装搜狗输入法安装flameshot截图软件总结 前言 Ubuntu 是一个基于 Linux 内核的开源操作系统,它提供了简单易用的界面和丰富的功能,广受开发者和普通用户的喜爱。博主时常也需要经常切换Ubuntu系统进行开发和学习&#xff…

联邦学习综述四

A Survey on Security and Privacy of Federated Learning 选自:Future Generation Computer Systems,2020 本文介绍了联邦学习安全以及隐私方面面临的挑战,提出了一些现有的解决方案。 引言 联邦学习(FL)提供了一种通过将数据从中心服务…

在外包干了4年,我跑路了...

前言 先说一下自己的情况,本人普通本科毕业,19年的时候入的这行,在外包干了4年多功能测试,今年感觉自己不能够在这样下去了(虽然目前行业不太好),长时间呆在外包会让一个人慢慢废掉&#xff01…

IDEA如何拉取gitee项目?

1.登录gitee 说明:打开idea,在设置上面搜索框输入gitee,然后登录gitee注册的账号。 2. 创建gitee仓库 说明:创建idea中的gitee仓库。 3.寻找项目文件 说明:为需要添加gitee仓库的项目进行添加。 4.项目右键 说明&a…

一文带你GO语言入门

什么是go语言? Go语言(又称Golang)是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。Go语言的主要特点包括:- 简洁和简单 - 语法简单明快,易于学习和使用 特点 高效 编译速度快,执行效率高 并发支持 原生支持并发,利用goroutine实现高效的并发…

Java OpenJDK 8u392 Windows x64

文章目录 (一)Azul(二)Adopt(三)IBM(四)Oracle (一)Azul WEB Page:🔗Download Azul Zulu Builds of OpenJDK Windows archive&#xf…

绝对详细的MyBatis代码生成器讲解

0.简介 在springboot工程中如果使用mybatis作为持久层框架,那必须知道如何自动生成 java 实体类、dao 层接口(mapper 接口)及mapper.xml文件,这样可以减少不必要的开发。 生成代码的方式有很多种,比如说利用idea的插…

rust学习—— 控制流if 表达式

控制流 根据条件是否为真来决定是否执行某些代码,或根据条件是否为真来重复运行一段代码,是大部分编程语言的基本组成部分。Rust 代码中最常见的用来控制执行流的结构是 if 表达式和循环。 if 表达式 if 表达式允许根据条件执行不同的代码分支。你提供…

C++学习:数据的存储、作用域、链接

一、数据的存储方式 C中使用3种不同的方案来存储数据,不同方案的区别在于数据在内存中保留的时间。 1、自动存储 在函数定义中声明的变量,以及函数的参数,是自动存储的。在程序执行对应函数的时候创建这些变量,对应的函数执行完…