游戏开发小结——我如何在 Unity 中制作虚拟钢琴

2024-02-06 10:30

本文主要是介绍游戏开发小结——我如何在 Unity 中制作虚拟钢琴,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

游戏开发小结——我如何在 Unity 中制作虚拟钢琴

在这里插入图片描述

概述:

在本文中,我们将了解如何仅使用 UI 创建一个简单的虚拟钢琴。
设置:
1. 通过右键单击 UI>Image 创建一个图像对象并根据需要缩放它。
2. 通过右键单击 UI>Image 创建一个按钮,并将其作为第一个创建的图像对象的子对象。创建任意多个。
你的画布canvas应该如下所示。

在这里插入图片描述

3. 选择您创建的所有image/buttons并添加按钮组件button component。

在这里插入图片描述

4. 现在选择包含所有子按钮的父对象并添加音频源audio source。

在这里插入图片描述

5. 添加音频剪辑audio clip并取消选中唤醒awake时播放。

在这里插入图片描述

6. 在项目窗口中右键单击并create>AudioMixer。

在这里插入图片描述

7. 双击音频混合器audio mixer并添加一个新组。

在这里插入图片描述

8. 现在将新创建的组添加到音频源audio source。

在这里插入图片描述

9. 现在创建此脚本并将其添加到与音频源audio source相同的对象中。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class VirtualPiano : MonoBehaviour
{   private AudioSource _audioSource;void Start(){_audioSource = GetComponent<AudioSource>();}public void PlaySound(float pitchValue){_audioSource.pitch = pitchValue;_audioSource.PlayOneShot(_audioSource.clip);}
}
10. 选择所有按钮,将 Main 对象拖到 OnClick 事件中,然后选择 playSound 方法。

在这里插入图片描述

11. 现在只需将每个按钮的值设置为稍微低于彼此。我的设置是 1.2、1.1、1.0、0.9。
您现在应该拥有一个可以使用的简单键盘。
这就是本文的内容。

感谢您的关注。

这篇关于游戏开发小结——我如何在 Unity 中制作虚拟钢琴的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/684017

相关文章

C++中NULL与nullptr的区别小结

《C++中NULL与nullptr的区别小结》本文介绍了C++编程中NULL与nullptr的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编... 目录C++98空值——NULLC++11空值——nullptr区别对比示例 C++98空值——NUL

C++ Log4cpp跨平台日志库的使用小结

《C++Log4cpp跨平台日志库的使用小结》Log4cpp是c++类库,本文详细介绍了C++日志库log4cpp的使用方法,及设置日志输出格式和优先级,具有一定的参考价值,感兴趣的可以了解一下... 目录一、介绍1. log4cpp的日志方式2.设置日志输出的格式3. 设置日志的输出优先级二、Window

Python中反转字符串的常见方法小结

《Python中反转字符串的常见方法小结》在Python中,字符串对象没有内置的反转方法,然而,在实际开发中,我们经常会遇到需要反转字符串的场景,比如处理回文字符串、文本加密等,因此,掌握如何在Pyt... 目录python中反转字符串的方法技术背景实现步骤1. 使用切片2. 使用 reversed() 函

C#中Guid类使用小结

《C#中Guid类使用小结》本文主要介绍了C#中Guid类用于生成和操作128位的唯一标识符,用于数据库主键及分布式系统,支持通过NewGuid、Parse等方法生成,感兴趣的可以了解一下... 目录前言一、什么是 Guid二、生成 Guid1. 使用 Guid.NewGuid() 方法2. 从字符串创建

springboot项目打jar制作成镜像并指定配置文件位置方式

《springboot项目打jar制作成镜像并指定配置文件位置方式》:本文主要介绍springboot项目打jar制作成镜像并指定配置文件位置方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录一、上传jar到服务器二、编写dockerfile三、新建对应配置文件所存放的数据卷目录四、将配置文

C++链表的虚拟头节点实现细节及注意事项

《C++链表的虚拟头节点实现细节及注意事项》虚拟头节点是链表操作中极为实用的设计技巧,它通过在链表真实头部前添加一个特殊节点,有效简化边界条件处理,:本文主要介绍C++链表的虚拟头节点实现细节及注... 目录C++链表虚拟头节点(Dummy Head)一、虚拟头节点的本质与核心作用1. 定义2. 核心价值二

SpringBoot开发中十大常见陷阱深度解析与避坑指南

《SpringBoot开发中十大常见陷阱深度解析与避坑指南》在SpringBoot的开发过程中,即使是经验丰富的开发者也难免会遇到各种棘手的问题,本文将针对SpringBoot开发中十大常见的“坑... 目录引言一、配置总出错?是不是同时用了.properties和.yml?二、换个位置配置就失效?搞清楚加

mysql查询使用_rowid虚拟列的示例

《mysql查询使用_rowid虚拟列的示例》MySQL中,_rowid是InnoDB虚拟列,用于无主键表的行ID查询,若存在主键或唯一列,则指向其,否则使用隐藏ID(不稳定),推荐使用ROW_NUM... 目录1. 基本查询(适用于没有主键的表)2. 检查表是否支持 _rowid3. 注意事项4. 最佳实

Redis分片集群、数据读写规则问题小结

《Redis分片集群、数据读写规则问题小结》本文介绍了Redis分片集群的原理,通过数据分片和哈希槽机制解决单机内存限制与写瓶颈问题,实现分布式存储和高并发处理,但存在通信开销大、维护复杂及对事务支持... 目录一、分片集群解android决的问题二、分片集群图解 分片集群特征如何解决的上述问题?(与哨兵模

Python中对FFmpeg封装开发库FFmpy详解

《Python中对FFmpeg封装开发库FFmpy详解》:本文主要介绍Python中对FFmpeg封装开发库FFmpy,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、FFmpy简介与安装1.1 FFmpy概述1.2 安装方法二、FFmpy核心类与方法2.1 FF