Unity2D游戏开发-Pak木鱼

news2024/9/24 21:25:07

在接下来文章里我会以Unity为主一起制作游戏

在unity 里如何制作一个简单的敲木鱼游戏?

创建一个2D场景(本人使用Unity2023)

(每个一段时间要申请一个个人许可证)

点击下方蓝色按钮创建

将以下素材拖动到Assets文件夹中

这张图随意命名我先叫他背景

 单机左键,将该图的纹理改为Sprite(2D和UI)

 在同层级中右键创建 C#脚本

右键重命名将名字改为 fishicommand 

单击场景中的Main Camera (就是摄像机)将创建好的C#脚本添加(拖动到添加组件)

 (注意:请检查你的摄像机又没有Audio Listener组件)

如果没有,点击添加组件并搜索Audio Listener添加

这样就行

双击在 Assets文件夹中 的C#脚本复制下面的代码并ctrl+S 保存

(别问我为啥不写协程)

using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using UnityEngine;
using UnityEngine.UI;

public class fishicommand : MonoBehaviour
{
    public GameObject e2;
    public RectTransform uiElement;
    public RectTransform uiElement1;
    public Text text_;
    public GameObject GameObject1;
    public GameObject GameObject2;
    public Vector3 vector3xyz = new Vector3(0, 0, 0);
    public int fishgongde = 1;
    public int biaoji = 1;
    public bool textshangshen = false;
    public float xyz_y = 750;

    // Start is called before the first frame update
    void Start()
    {

    }

    // Update is called once per frame
    void Update()
    {
        if (e2 != null)

        {
            e2.transform.position = new Vector3(0, uiElement1.localPosition.y / 650, 0);
        }
        text_.text = fishgongde.ToString("000");
        uiElement1.localPosition = new Vector3(255, xyz_y, 0);
        if (Input.GetMouseButtonDown(0))
        {
            GameObject e1 = Instantiate(GameObject2.gameObject, vector3xyz, this.transform.rotation);
            Destroy(e1, 1.25f);
            if (!textshangshen) xyz_y = -1000;
            fishgongde++; textshangshen = true;
            uiElement.localPosition = new Vector3(0,-350, 0);
        }
        if (uiElement.localPosition.y < 0)
        {
            uiElement.localPosition = new Vector3(0, uiElement.localPosition.y + 400 * Time.deltaTime);
        }
        if (fishgongde % 15 == 0 && biaoji != fishgongde)
        {
            e2 = Instantiate(GameObject1.gameObject, vector3xyz, this.transform.rotation);
            Destroy(e2, 5f);
            biaoji = fishgongde;
        }
        if (textshangshen)
        {
            xyz_y += 1500 * Time.deltaTime;
            if (xyz_y >= 300) textshangshen = false;
        }
        if (!textshangshen) xyz_y = 300;
    }
}

接下来设置UI

创建一个UI图片随便命名这里命名为 Image 1

点击Canvas像我这样:设制 

把屏幕缩放比例改成9:16(没有的画要自己添加)

改背景颜色(推荐改成黑色)

 调整木鱼图标将缩放改为stretch 并选择保持长宽比并将数值清零 

创建3个旧版text并这样设置(文本按名字设置并放在合适位置)

 

创建两个空对象将他们放入脚本

 导入一个敲木鱼的声音并放咋空对项1中(要添加音频组件)

 再制作一个特效为第二个添加(添加为子文件)随便做

制作成预制体塞进去(ps:塞反了改一下)

 完工

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

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

相关文章

Swift concurrency 4 — Task和.task的理解与使用

Task Swift中的Task是一种异步操作&#xff0c;它提供了一种替代DispatchQueue.main.async{}等传统方法的方法。通过使用Task&#xff0c;我们可以简化代码并更好地控制异步操作。此外&#xff0c;Task还提供了其他选项&#xff0c;可以进一步增强任务执行。 先看一个Task的基…

net core中byte数组如何高效转换为16进制字符串

在 .NET Core 中&#xff0c;如何把 byte[] 转换为 16 进制字符串&#xff1f;你能想到哪些方法&#xff1f;什么方式性能最好&#xff1f;今天和大家分享几种转换方式。 往往在处理字符串性能问题时&#xff0c;首先应该想到的是怎么想办法减少内存分配&#xff0c;怎么优化字…

22.优化器

优化器 当使用损失函数时&#xff0c;可以调用损失函数的 backward&#xff0c;得到反向传播&#xff0c;反向传播可以求出每个需要调节的参数对应的梯度&#xff0c;有了梯度就可以利用优化器&#xff0c;优化器根据梯度对参数进行调整&#xff0c;以达到整体误差降低的目的。…

Cryptomator:开源云存储加密

采用最新技术标准&#xff0c;提供最佳保护 如果有人查看您云中的文件夹&#xff0c;他们无法对您的数据得出任何结论。 Cryptomator 提供开源的客户端云文件加密。 它适用于 Windows、Linux、macOS 和 iOS。 Cryptomator 可与 Dropbox、Google Drive、OneDrive、MEGA、pClo…

【QT | 开发环境搭建】Linux系统(Ubuntu 18.04) 安装 QT 5.12.12 开发环境

&#x1f601;博客主页&#x1f601;&#xff1a;&#x1f680;https://blog.csdn.net/wkd_007&#x1f680; &#x1f911;博客内容&#x1f911;&#xff1a;&#x1f36d;嵌入式开发、Linux、C语言、C、数据结构、音视频&#x1f36d; ⏰发布时间⏰&#xff1a; 2024-08-29 …

C# 委托详解(Delegate)

引言 在 C# 编程当中&#xff0c;委托&#xff08;Delegate&#xff09;是一种特殊的类型&#xff0c;它允许将方法作为参数传递给其他方法&#xff0c;或者将方法作为返回值返回&#xff0c;这种特性使得委托成为实现回调函数、事件处理等&#xff0c;所有的委托都派生自Syst…

【STM32开发笔记】使用RT-Thread的SDIO驱动和FATFS实现SD卡文件读写

【STM32开发笔记】使用RT-Thread的SDIO驱动和FATFS实现SD卡文件读写 一、准备工作1.1 准备好开发板和SD卡1.2 创建RT-Thread项目 二、配置RT-Thread2.1 打开文件系统相关配置2.2 打开SD卡相关配置2.3 打开RTC配置2.4 重新生成Keil项目文件 三、编译、烧录、运行3.1 编译项目3.2…

网站建设完成后, 营销型网站如何做seo

营销型网站的SEO优化旨在提高网站在搜索引擎中的排名&#xff0c;从而吸引更多潜在客户并促进销售。以下是营销型网站SEO的详细解析&#xff1a; 关键词研究与优化 目标受众分析&#xff1a;了解目标受众的搜索习惯和需求&#xff0c;确定适合的关键词。使用工具来发现相关关键…

RV1126的GPIO计算和使用

1、获取GPIO芯片对应的序号值 先读取下/sys/kernel/debug/gpio的值&#xff0c;得到每个GPIO芯片的序号范围&#xff0c;如GPIO芯片0就为0~31。 2、根据GPIO硬件编号计算出系统内使用的GPIO序号 根据GPIO的编号&#xff0c;比如说GPIO3_B0&#xff0c;前面GPIO3代表看GPIO3的信…

傻瓜操作:GraphRAG、Ollama 本地部署及踩坑记录

目录 一、GraphRAG 介绍1.引言2.创新点3. 算法4. 数据和实验结果5.不足和展望 二、本地部署1.为什么要本地部署2.环境准备3. GraphRAG 安装3.1 下载 GraphGAG3.2 安装依赖包3.3 创建数据目录3.4 项目初始化3.5 修改配置文件 3.6 修改.env文件3.7 修改源码 4. Indexing5. query5…

Linux关于压缩之后文件更大的解释

记录于24年八月29 使用vim命令创建了lianxi1和lianxi2并在里面填写了一些内容&#xff0c;发现使用gzip和zip压缩后文件反而更大 事后问了一下ai回答了我的疑惑 压缩算法开销&#xff1a;如前所述&#xff0c;压缩文件需要存储额外的元数据和文件结构信息。这种开销在处理非常…

C++ TinyWebServer项目总结(13. 多进程编程)

本章讨论Linux多进程编程的以下内容&#xff1a; 复制进程映像的fork系统调用和替换进程映像的exec系列系统调用。僵尸进程以及如何避免僵尸进程。进程间通信&#xff08;Inter Process Communication&#xff0c;IPC&#xff09;最简单的方式&#xff1a;管道。三种System V进…

浏览器插件利器--allWebPluginV2.0.0.18-alpha版发布

allWebPlugin简介 allWebPlugin中间件是一款为用户提供安全、可靠、便捷的浏览器插件服务的中间件产品&#xff0c;致力于将浏览器插件重新应用到所有浏览器。它将现有ActiveX控件直接嵌入浏览器&#xff0c;实现插件加载、界面显示、接口调用、事件回调等。支持Chrome、Firefo…

[MRCTF2020]Unravel!!

使用zsteg查看图片有隐藏文件&#xff0c;没有头绪&#xff0c;先放弃 使用zsteg和010editor查看都发现一个png图片 把JM.png拷贝到kali&#xff0c;使用binwalk分离&#xff0c;得到一个aes.png 使用010editor查看wav&#xff0c;发现尾部有可疑的字符串&#xff0c;拷贝出来备…

记一次应急响应之网站暗链排查

目录 前言 1. 从暗链而起的开端 1.1 暗链的介绍 1.2 暗链的分类 2. 在没有日志的情况下如何分析入侵 2.1 寻找指纹 2.2 搜索引擎搜索fofa资产搜索 2.2.1 fofa资产搜索 2.2.2 bing搜索引擎搜索 3.通过搭建系统并进行漏洞复现 4. 应急响应报告编写 前言 免责声明 博文…

二叉树(binary tree)遍历详解

一、简介 二叉树常见的遍历方式包括前序遍历、中序遍历、后序遍历和层序遍历等。我将以下述二叉树来讲解这几种遍历算法。 1、创建二叉树代码实现 class TreeNode:def __init__(self,data):self.datadataself.leftNoneself.rightNonedef createTree():treeRootTreeNode(F)N…

大模型提示词工程技术3-提示词输入与输出的优化的技巧详细介绍

大模型提示词工程技术3-提示词输入与输出的优化的技巧详细介绍。《大模型提示词工程技术》的作者&#xff1a;微学AI&#xff0c;这是一本专注于提升人工智能大模型性能的著作&#xff0c;它深入浅出地讲解了如何通过优化输入提示词来引导大模型生成高质量、准确的输出。书中不…

腾讯地图三维模型加载GLTF,播放模型动画

腾讯地图三维模型加载&#xff0c;播放模型动画 关键代码 const clock new THREE.Clock();console.log(gltf)// 确保gltf对象包含scene和animations属性if (gltf && gltf.scene && gltf.animations) {// 创建AnimationMixer实例&#xff0c;传入模型的scenec…

【51单片机】2-3-1 【I/O口】【电动车防盗报警项目】震动传感器实验1—震动点灯

1.硬件 51单片机最小系统LED灯模块震动传感器模块 2.软件 main.c程序 #include "reg52.h"sbit led1 P3^7;//根据原理图&#xff08;电路图&#xff09;&#xff0c;设备变量led1指向P3组IO口的第7口 sbit vibrate P3^3;//Do接到了P3.3口void Delay2000ms() //…

力扣刷题--2185. 统计包含给定前缀的字符串【简单】

题目描述 给你一个字符串数组 words 和一个字符串 pref 。 返回 words 中以 pref 作为 前缀 的字符串的数目。 字符串 s 的 前缀 就是 s 的任一前导连续字符串。 示例 1&#xff1a; 输入&#xff1a;words [“pay”,“attention”,“practice”,“attend”], pref “at…