来点不一样的!unity3d用声音控制物体跳跃

来点不一样的!unity3d用声音控制物体跳跃

首页休闲益智弹跳音乐3D更新时间:2024-04-30

闲话不扯,先上视频!

喜欢CG技术的小伙伴可以关注我的公众号!

上过程!

第一新建unity3d场景。

第二创建一个Cub,scale的y轴搞成0.1,x、z轴搞成10,,100也没问题!右边找AddComponent给一个碰撞。

第三创建一个sphere。右边找AddComponent给一个刚体(不是2d的)。

第四新建一个文件夹“script”

第五新建一个C#脚本,右键,create找C#。

命名为“SC”

第六选中SC,右边找

这是会打开window的编程工具VisualStudio 2017。

上代码,今天不解释了,感兴趣的小伙伴自己先玩玩,因为我也还没有完全搞懂unity的api

using System.Collections; using System.Collections.Generic; using UnityEngine; public class SC : MonoBehaviour { public float sensitivity = 100; public float loudness = 0; AudioSource _audio; // Use this for initialization void Start () { _Audio = GetComponent<AudioSource>(); _audio.clip = Microphone.Start(null, true, 10, 44100); _audio.loop = true; _audio.mute = true; while (!(Microphone.GetPosition(null) > 0)){ } _audio.Play(); } // Update is called once per frame void Update () { loudness = GetAveragedVolume() * sensitivity; if (loudness > 8) this.GetComponent<Rigidbody>().velocity = new Vector3(this.GetComponent<Rigidbody>().velocity.x, 4); } // float GetAveragedVolume() { float[] data = new float[256]; float a = 0; _audio.GetOutputData(data, 0); foreach(float s in data) { a = Mathf.Abs(s); } return a / 256; } }

Ctrl C Ctrl V然后保存!

第七点选小球

第八在右边的点最下面的AddComponent。

找script

找SC

第九,同样的方法找到AddComponent找Audio找AudioSource。

最后运行测试!

测试开启后记得去右边吧mute(静音)后面的对勾去掉!

然后发出声音吧!

前提是你的麦克风正常工作!

有问题请留言,喜欢的请关注,想了解更多的请关注我微信公众号!

查看全文
大家还看了
也许喜欢
更多游戏

Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved