#include "AppDelegate.h" #include #include #include "HelloWorldScene.h" #include "AppMacros.h" //Uncomment the following line to use localize manager //#include "editor-support/cocostudio/LocalizationManager.h" USING_NS_CC; using namespace std; AppDelegate::AppDelegate() { } AppDelegate::~AppDelegate() { } void AppDelegate::initGLContextAttrs() { GLContextAttrs glContextAttrs = {8, 8, 8, 8, 24, 8}; GLView::setGLContextAttrs(glContextAttrs); } bool AppDelegate::applicationDidFinishLaunching() { // Initialize director auto director = Director::getInstance(); auto glview = director->getOpenGLView(); if(!glview) { glview = GLViewImpl::create("Cpp Empty Test"); director->setOpenGLView(glview); } director->setOpenGLView(glview); // Set the design resolution glview->setDesignResolutionSize(designResolutionSize.width, designResolutionSize.height, ResolutionPolicy::NO_BORDER); Size frameSize = glview->getFrameSize(); vector searchPath; // In this demo, we select resource according to the frame's height. // If the resource size is different from design resolution size, you need to set contentScaleFactor. // We use the ratio of resource's height to the height of design resolution, // This can make sure that the resource's height could fit for the height of design resolution. // If the frame's height is larger than the height of medium resource size, select large resource. if (frameSize.height > mediumResource.size.height) { searchPath.push_back(largeResource.directory); director->setContentScaleFactor(MIN(largeResource.size.height/designResolutionSize.height, largeResource.size.width/designResolutionSize.width)); } // If the frame's height is larger than the height of small resource size, select medium resource. else if (frameSize.height > smallResource.size.height) { searchPath.push_back(mediumResource.directory); director->setContentScaleFactor(MIN(mediumResource.size.height/designResolutionSize.height, mediumResource.size.width/designResolutionSize.width)); } // If the frame's height is smaller than the height of medium resource size, select small resource. else { searchPath.push_back(smallResource.directory); director->setContentScaleFactor(MIN(smallResource.size.height/designResolutionSize.height, smallResource.size.width/designResolutionSize.width)); } // Set searching path FileUtils::getInstance()->setSearchPaths(searchPath); // Uncomment follow block to use localize manager to set localize strings // If you want to load json localize data, use follow block /* cocostudio::ILocalizationManager * lm = cocostudio::JsonLocalizationManager::getInstance(); lm->initLanguageData("your localize file name.lang.json"); cocostudio::LocalizationHelper::setCurrentManager(lm, false); */ // If you want to load binary localize data, use follow block /* cocostudio::ILocalizationManager * lm = cocostudio::BinLocalizationManager::getInstance(); lm->initLanguageData("your localize file name.lang.csb"); cocostudio::LocalizationHelper::setCurrentManager(lm, true); */ // to enable VR, uncomment the following lines // auto vrImpl = new VRGenericRenderer; // glview->setVR(vrImpl); // Turn on display FPS director->setDisplayStats(true); // Set FPS. the default value is 1.0/60 if you don't call this director->setAnimationInterval(1.0f / 60); // Create a scene. it's an autorelease object auto scene = HelloWorld::scene(); // Run director->runWithScene(scene); return true; } // This function will be called when the app is inactive. Note, when receiving a phone call it is invoked. void AppDelegate::applicationDidEnterBackground() { Director::getInstance()->stopAnimation(); // If you use SimpleAudioEngine, it must be paused // SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic(); } // This function will be called when the app is active again void AppDelegate::applicationWillEnterForeground() { Director::getInstance()->startAnimation(); // If you use SimpleAudioEngine, it must resume here // SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic(); }