본문 바로가기
프로그래밍/cocos2d-x

cocos2d-x 심플오디오엔진(SimpleAudioEngine)

by -현's- 2013. 5. 31.
반응형


●심플오디오엔진을 사용하려면 프로젝트 종속성 설정에서 libCocosDeshion을 선택해준다.









●효과음 내기

- SimpleAudioEngine::sharedEngine()->playEffect("effect.wav");




●효과음 미리 로딩 - 용량이 큰 파일을 재생하는데 시간이 걸리기 때문에 미리 메모리에 준비시킨다.

- SimpleAudioEngine::sharedEngine()->preloadEffect("effect.wav");




●효과음 메모리 해제

- SimpleAudioEngine::sharedEngine()->unloadeffect(EFFECT_FILE);




●배경음 내기

- SimpleAudioEngine::sharedEngine()->playBackgroundMusic("background.mp3",true);




●배경음 일시 정지

- SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();




●배경음 다시 시작

- SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic();




●배경음 정지

- SimpleAudioEngine::sharedEngine()->stopBackgroundMusic();




●배경음 재시작

- SimpleAudioEngine::sharedEngine()->playBackgroundMusic("background.mp3", true);




●배경음 미리 로딩

- SimpleAudioEngine::sharedEngine()->preloadBackgroundMusic("background.mp3");




●배경음 메모리 해제

- SimpleAudioEngine::sharedEngine()->stopBackgroundMusic(true);





●예제

- HelloWorldScene.h


#ifndef __HELLOWORLD_SCENE_H__

#define __HELLOWORLD_SCENE_H__


#include "cocos2d.h"


class HelloWorld : public cocos2d::CCLayerColor

{

public:

    virtual bool init();


    static cocos2d::CCScene* scene();

    

    CREATE_FUNC(HelloWorld);


void doSound(CCObject* pSender);


};


#endif // __HELLOWORLD_SCENE_H__






- HelloWorldScene.cpp


#include "HelloWorldScene.h"

#include "SimpleAudioEngine.h"


using namespace cocos2d;

using namespace CocosDenshion;


CCScene* HelloWorld::scene()

{

    CCScene *scene = CCScene::create();

    

    HelloWorld *layer = HelloWorld::create();


    scene->addChild(layer);


    return scene;

}


bool HelloWorld::init()

{

    if ( !CCLayerColor::initWithColor(ccc4(255, 255, 255, 255)) )

    {

        return false;

    }


    /////////////////////////////


CCMenuItemFont* Item=CCMenuItemFont::create("effect", this, menu_selector(HelloWorld::doSound));

Item->setColor(ccc3(0,0,0));

CCMenu* pMenu=CCMenu::create(Item, NULL);

pMenu->setPosition(ccp(250,50));

this->addChild(pMenu);


    return true;

}



void HelloWorld::doSound(CCObject* pSender)

{

SimpleAudioEngine::sharedEngine()->playBackgroundMusic("Sound/background.mp3",true);

}











반응형

'프로그래밍 > cocos2d-x' 카테고리의 다른 글

cocos2d-x 스케줄  (0) 2013.06.01
cocos2d-x 터치(Touch)  (0) 2013.06.01
cocos2d-x 애니메이션  (0) 2013.05.31
cocos2d-x 트랜지션(Transition) 추가,삭제,교체  (0) 2013.05.30
cocos2d-x 액션3  (0) 2013.05.29

댓글