zoukankan      html  css  js  c++  java
  • cocos2dx 菜鸟进阶篇(一) 在游戏中添加music

    本来是打算继续写《学习篇》的,可一想,都快过年了,新年新气象嘛,要不换个章篇继续high?说干就干!

    从学习篇到进阶篇,虽然还是菜鸟,但是菜鸟确实也在进步着!


    这篇就讲在游戏中添加背景音乐跟音效。其实这个在-x 的testcpp 的cocosDenshionTest 里都写的很详细。

    一:在.cpp中添加头文件

    //cpp with cocos2d-x

    #include"SimpleAudioEngine.h" 


    二:在init()里添加背景音乐

    //cpp with cocos2d-x

    CocosDenshion::SimpleAudioEngine::sharedEngine()->playBackgroundMusic(

    "background-music-aac.wav",true); 


    三:添加特效:

    //cpp with cocos2d-x

    CocosDenshion::SimpleAudioEngine::sharedEngine()->playEffect(

    "pew-pew-lei.wav"); 


    四:还有一些其他操作,包括pause,stop等:

    backGround

     // stop background music
        case 1:
            SimpleAudioEngine::sharedEngine()->stopBackgroundMusic();
            break;
        // pause background music
        case 2:
            SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();
            break;
        // resume background music
        case 3:
            SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic();
            break;
        // rewind background music
        case 4:
            SimpleAudioEngine::sharedEngine()->rewindBackgroundMusic();
            break;

    Effect
       

     // stop effect
        case 8:
            SimpleAudioEngine::sharedEngine()->stopEffect(m_nSoundId);
            break;
        // unload effect
        case 9:
            SimpleAudioEngine::sharedEngine()->unloadEffect(std::string(CCFileUtils::sharedFileUtils()->fullPathFromRelativePath(EFFECT_FILE)).c_str());
            break;
            // add bakcground music volume
        case 10:
            SimpleAudioEngine::sharedEngine()->setBackgroundMusicVolume(SimpleAudioEngine::sharedEngine()->getBackgroundMusicVolume() + 0.1f);
            break;
            // sub backgroud music volume
        case 11:
            SimpleAudioEngine::sharedEngine()->setBackgroundMusicVolume(SimpleAudioEngine::sharedEngine()->getBackgroundMusicVolume() - 0.1f);
            break;
            // add effects volume
        case 12:
            SimpleAudioEngine::sharedEngine()->setEffectsVolume(SimpleAudioEngine::sharedEngine()->getEffectsVolume() + 0.1f);
            break;
            // sub effects volume
        case 13:
            SimpleAudioEngine::sharedEngine()->setEffectsVolume(SimpleAudioEngine::sharedEngine()->getEffectsVolume() - 0.1f);
            break;
        case 14:
            SimpleAudioEngine::sharedEngine()->pauseEffect(m_nSoundId);
            break;
        case 15:
            SimpleAudioEngine::sharedEngine()->resumeEffect(m_nSoundId);
            break;
        case 16:
            SimpleAudioEngine::sharedEngine()->pauseAllEffects();
            break;
        case 17:
            SimpleAudioEngine::sharedEngine()->resumeAllEffects();
            break;
        case 18:
            SimpleAudioEngine::sharedEngine()->stopAllEffects();


    五:注意!

    1、音乐格式要注意,像在pc机上wav,mp3是可以用的,ogg那是肯定不可以的。

    2、开始播放音乐后,即使你切换场景,音乐还是在播放。所以需要在切换场景的同时把音乐关上。


  • 相关阅读:
    Android实现 再按一次退出 的三种方法 durationTime、timerTask 和Handler
    Android中使用Handler造成内存泄露的分析和解决
    Android上成功实现了蓝牙的一些Profile
    A2DP和AVRCP蓝牙音频传输协议的应用解释
    [LeetCode]Climbing Stairs
    Android该系统提供的服务--Vibrator(振子)
    阅读UML类图和时序图
    js如果你想删除您问
    【Win7】【磁盘管理】删除相似“33fbc1d57e9aaf1ea88e6f08”缓存目录
    Linux使用快捷键,who命令,rm命令,ps命令,cd,命令kill命令,find命令,grep命令,tar命令(gz、tar、bz2),用户管理,vim配置的一部分,相关命令
  • 原文地址:https://www.cnblogs.com/start530/p/3834368.html
Copyright © 2011-2022 走看看