Unity3D 遊戲引擎之詳解遊戲開發音訊的播放(十五)
找一個音樂檔案,我這裡使用了一個.mp3音樂檔案,我命名為0.mp3 如下圖所示將它拖動到右側Audio Clip處。
我們發現 Audio Source 有很多設定的屬性,那麼MOMO將一些比較重要的屬性諾列出來。
AudioClip :聲音片段,還可以在程式碼中去動態的擷取音樂檔案。
Mute : 是否靜音
Bypass Effects: 是否開啟音訊特效
Play On Awake: 開機自動播放
Loop:迴圈播放
Volume: 聲音大小,取值範圍0.0 到 1.0
Pitch:播放速度,取值範圍在 -3 到 3 之間 設定1 為正常播放,小於1 為減慢播放 大於1為加速播放。
建立一個指令碼我命名為audio.cs 用來音樂的播放。本章將實現3個按鈕 點選實現 播放音樂、 停止音樂、 暫停音樂 ,與一個橫向拖動條通過手指的拖動實現動態修改音樂聲音。
audio.cs
using UnityEngine; using System.Collections; public class audio : MonoBehaviour { //音樂檔案 public AudioSource music; //音量 public float musicVolume; void Start() { //設定預設音量 musicVolume = 0.5F; } void OnGUI() { //播放音樂按鈕 if (GUI.Button(new Rect(10, 10, 100, 50), "Play music")) { //沒有播放中 if (!music.isPlaying){ //播放音樂 music.Play(); } } //關閉音樂按鈕 if (GUI.Button(new Rect(10, 60, 100, 50), "Stop music")) { if (music.isPlaying){ //關閉音樂 music.Stop(); } } //暫停音樂 if (GUI.Button(new Rect(10, 110, 100, 50), "Pause music")) { if (music.isPlaying){ //暫停音樂 //這裡說一下音樂暫停以後 //點選播放音樂為繼續播放 //而停止以後在點選播放音樂 //則為從新播放 //這就是暫停與停止的區別 music.Pause(); } } //建立一個橫向滑動條用於動態修改音樂音量 //第一個引數 滑動條範圍 //第二個引數 初始滑塊位置 //第三個引數 起點 //第四個引數 終點 musicVolume = GUI.HorizontalSlider (new Rect(160, 10, 100, 50), musicVolume, 0.0F, 1.0F); //將音量的百分比打印出來 GUI.Label(new Rect(160, 50, 300, 20), "Music Volueme is " + (int)(musicVolume * 100) + "%"); if (music.isPlaying){ //音樂播放中設定音樂音量 取值範圍 0.0F到 1.0 music.volume = musicVolume; } } }
將audio.cs 繫結在攝像頭上,將audio遊戲物件拖動賦值給Music 這個AudioSource這個物件。這裡強調一下AudioListenr ,它音訊監聽器,用來監聽音樂檔案的播放。這是一個重要的屬性,一定要勾選,只有勾選後才可以進行音樂的播放。
build and run 執行我們這個遊戲Demo,一切功能完美實現,哇咔咔~
最後歡迎各位盆友可以和MOMO一起討論Unity3D遊戲開發,大家一起學習一起進步,哇咔咔~~~ 附上Unity3D工程的下載地址,Xcode專案我就不上傳了,須要的自己匯出。今天心裡有點不高興! 5555555555。就這樣晚安~
相關推薦
Unity3D 遊戲引擎之詳解遊戲開發音訊的播放(十五)
找一個音樂檔案,我這裡使用了一個.mp3音樂檔案,我命名為0.mp3 如下圖所示將它拖動到右側Audio Clip處。我們發現 Audio Source 有很多設定的屬性,那麼MOMO將一些比較重要的屬性諾列出來。AudioClip :聲音片段,還可以在程式碼中去動態的擷取音樂檔案。Mute : 是否靜音By
Android開發學習筆記(十五)基礎UI控制元件之ListView
一、ListView常用XML屬性: android:choiceMode="" 設定ListView的選擇行為 android:divider="" 設定List列表項的分隔條(即可用顏
InheritableThreadLocal類原理簡介使用 父子線程傳遞數據詳解 多線程中篇(十八)
pri span 理解 wid spl child -s 應該 bsp 上一篇文章中對ThreadLocal進行了詳盡的介紹,另外還有一個類: InheritableThreadLocal 他是ThreadLocal的子類,那麽這個類又有什麽作用呢?
rocketmq之原始碼分析broker入口BrokerController解析(十五)
broker的入口管理服務類BrokerController,在該類中定義並初始化了整個broker需要的核心操作。broker在
Android 遊戲開發之主角的移動與地圖的平滑滾動(十五)
程式碼的實現方式 還是以人物向右移動為例,我們須要三個座標 一個是m_HeroPos 來儲存人物在地圖中的X座標 一個是 mScreenPos 來儲存人物在螢幕中的顯示座標 mMapPos 來儲存地圖在手機螢幕中的顯示座標,按鍵盤右鍵後人物在地圖中的座標加上8畫素(表示行走的步長),當人物的座標
Java程式設計師從笨鳥到菜鳥之(六十四)細談Hibernate(十五)HQL與QBC查詢方式詳解
歡迎關注微信賬號:java那些事:csh624366188.每天一篇java相關的文章 java交流工作群1: 77800592(已滿) java交流學生群2:234897635(已滿) java交流工作群3:94507287 java交流工作群4: 272265434 我的郵箱:
LVS 負載均衡群集詳解、地址轉換模式(LVS-NAT)案例詳解
8.4 功能 block x86_64 ati local linu 它的 har 前言 · Linux Virtual Server (LVS)是針對 Linux 內核開發的一個負載均衡項目,是由我國章文嵩博士在 98 年 5月創建。· LVS 實際上相當於基於 IP
詳解設計模式 - 工廠模式(3種)
這篇文章作為個人學習備忘筆記,通過生活中的牛奶工廠例項,比對3種工廠模式的不同。 工廠模式一句話總結: 只對生產結果負責,不要三無產品。 生活中的工廠例子 小作坊:五花八門什麼都能生產,但生產質量和產品種類不一定滿足消費者的需求。 專業工廠:遵循一定標準,
【linux】Valgrind工具集詳解(十五):Callgrind(效能分析圖)
一、概述 1、Callgrind Callgrind用於記錄程式中函式之間的呼叫歷史資訊,對程式效能分析。預設情況下,收集的資料包括執行的指令數,它們與原始碼行的關係,函式之間的呼叫者、被呼叫者關係以及此類呼叫的數量。可選項是,對快取記憶體模擬和分支預測(類似於Cachegrin
詳解css外邊距摺疊(margin collapsing)
外邊距摺疊指的是毗鄰的兩個或多個外邊距 (margin) 會合併成一個外邊距,本文詳細的介紹了一下css外邊距摺疊的實現,分為3種情況,非常具有實用價值,需要的朋友可以參考下 前文 這是的一個經典的老問題,因為之前剛好有讀者朋友問到,順便整理一下。 從一個簡單例子說起 先看一個簡單示例: `<
Android開發學習筆記(十二)基礎UI控制元件之ImageView、CheckBox、RadioButton
一、ImageView:直接繼承自View,它的作用是在介面上顯示Drawable物件。 ImageView在佈局檔案(如main_activity.xml)中常用的屬性 有 scaleType ,s
Android開發學習筆記(十四)基礎UI控制元件之Spinner
Spinner:彈出一個列表選擇框,供使用者選擇。繼承自ViewGroup,因為可以容納很多列表項,因此它也是一個容器控制元件。 給Spinner指定資料來源的2種方法: 一、通過指定xml檔案來指
Android開發學習筆記(十六)基礎UI控制元件之ListView-SimpleAdapter
一、ListView控制元件: <ListView android:id="@+id/list_view_demo" android:layout_width="match_pa
【Java入門提高篇】Day34 Java容器類詳解(十五)WeakHashMap詳解
public class WeakHashMapTest { public static void main(String[] args){ testWeakHashMap(); } private static void testWeakHashMap
【轉】htop使用詳解--史上最強(沒有之一)
在管理程序時通常要藉助一些工具,比較常用的就是ps和top了;不過CentOS還為我們提供了一個更加強大的工具htop,下面就來了解一下此工具的使用方法。一、安裝htop htop工具在epel源中提供,請自行配置epel源,也可以直接下載htop的原始碼包進行安裝。 二、htop的介面操作 htop跟
flowplayer網頁視訊播放器事例詳解--包含各種引數說明(自譯) flowplayer網頁視訊播放器事例詳解--包含各種引數說明(自譯)
flowplayer網頁視訊播放器事例詳解--包含各種引數說明(自譯) <html xmlns= "http://www.w3.org/1999/xhtm
詳解char型別的範圍(-128~127)
類似問題:一個n位有符號整型數值,其範圍為-2^(n-1) ~2^(n-1) -1。 此類問題的根結在於: “人們解決問題時,習慣以人的思維思考問題,但是,計算機本身卻是以機器的思維進行處理的”。 在這裡,就表現為:計算機對資料的處理其實是以“補碼”的形式,而非日常生活中人
例項詳解不同VLAN間通訊(轉發過程)
資料包從電腦發出的時候,本身是沒有VLAN TAG的,當資料包進入交換機的ACCESS口後,交換機會打上 VLAN TAG(交換機內部),然後從ACCESS口發出就剝離掉VLAN TAG了,然後傳送到目的電腦上面。下面這個圖就是很好的解釋,如果你在方案一中間的線路上面去捕捉資料包,捕捉到的資料包是沒有802
Pygame詳解(十五):pygame 模組
pygame Pygame 最頂層的包。 函式 & 屬性 pygame.init() — 初始化所有匯入的 pygame 模組 pygame.quit() — 解除安裝所有匯入
SpringMVC接受JSON引數詳解及常見錯誤總結(@RequestBody轉載)
最近一段時間不想使用Session了,想感受一下Token這樣比較安全,穩健的方式,順便寫一個統一的介面給瀏覽器還有APP。所以把一個練手專案的前臺全部改成Ajax了,跳轉再使用SpringMVC控制轉發。對於傳輸JSON資料這邊有了更深的一些理解,分享出來,請