読者です 読者をやめる 読者になる 読者になる

cocos2dx 広告(Admob)を出したり消したりする

最初は表示を行い、課金した時などに非表示になる仕組みを作る パッケージクラス名、広告Unitはテスト用なので変更してください。 Android MainActivity.java package com.test.SampleGame;import org.cocos2dx.lib.Cocos2dxActivity;import android.graphic…

cocos-2dx IGIESW found in whitelist: NO エラー

急にこのエラーが出て ビルドは通るのに、Win32ゲームが起動できなくなった IGIESW c:\samplegame\proj.win32\debug.win32\samplegame.exe found in whitelist: NOIGIWHW Game c:\samplegame\proj.win32\debug.win32\samplegame.exe found in whitelist: NO'…

cocos2d-x バイナリファイルの入出力

UserDefaultを使いデータを保存すると簡易に書き換えられてしまう。 そこで、バイナリとして保存して その後暗号化したりして保存する unsigned char *配列などのバイナリデータを書き込む際にはcocos2d::Dataを使う ファイルからDataに取り込み FileUtils* …

cocos2d-x BGM再生 効果音再生ライブラリ GameHelper2dx

cocos2d-xで音再生するのに、CRI ADX2とCricket Audioで迷ってましたが、 日本人の製作者様が作られた「GameHelper2dx」という 導入が簡単でサイズが小さいライブラリを導入してみました。 Windows環境だとプロジェクトに追加して、 改行コードをCRLFに変換…

cocos2d-x UserDefaultのファイル保存先

よく簡易設定保存で使われるUserDefaultですが、 UserDefault::getXMLFilePath() このメソッドで保存先が取得できます、 Win32だと C:\Users\ユーザ名\AppData\Local\プロジェクト名\UserDefault.xml にXML形式で保存されます 生のデータが保存されメモ帳で…

cocos2d-x ui::EditBoxを使う Extensionは非推奨 Deprecated

ネットの情報だとEditBoxを使うなら"extensions/cocos-ext.h"を使うと書いてますが、 この方法は古いみたいでui::EditBoxを使う用に修正した 新TestScene.h #include "cocos2d.h"#include "ui/CocosGUI.h" class TestScene : public cocos2d::Layer , public…

cocos2d-x 画像ボタンをMenuItemImageからui::Buttonに変更する

・ボタンを追加するごとにメソッドを増やすのが必要 ・1つしかボタンが無くてもMenuが必要 ・ボタンを放した時にしか分からない というMenuItemImageが凄く不便なのでui::Buttonに変えた 元のソース MenuItemImage* button = MenuItemImage::create("btn01.…

cocos2d-x BitmapFont をTexturePacker

Bitmap Fontの作り方は前の記事を参照 cocos2d-x Bitmap Fontを使う (Texture Atlas) - GardenFarm cocos2d-x C++ ゲーム開発 上記で出来上がった.fntとpngファイルを使いTexturePackというソフトで暗号化を行う TexturePacker - Create Sprite Sheets for y…

cocos2d-x 背景画像表示

cocos2d-xは左下がX0 Y0座標で右上に行くほど数字が増える為 背景画像表示は画像の基準位置を左下に設定することで簡単に表示できる Sprite* bgsprite = Sprite::create("background.png");bgsprite->setAnchorPoint(Vec2::ANCHOR_BOTTOM_LEFT);this->addChi…

cocos2d-x Tagが一致している物をオブジェクトを一括で削除

Tagが一致している物をオブジェクトを一括で削除する for (int i=0; i < 10; i++) { Label* label = Label::createWithBMFont("フォント名", "文字");label->setScale(10);label->setTag(1000); this->addChild(label); } 動的に沢山作成したオブジェクトを…

cocos2d-x std::stringにUTF8の文字を入れて 1文字ずつ処理

std::stringにUTF8の文字を入れて 1文字ずつ処理する WindowsとAndroid共通で動作する物 #define UTF8_CHAR_LEN( byte ) ( ( 0xE5000000 >> ( ( byte >> 3 ) & 0x1e ) ) & 3 ) + 1 int GetUnicodeLength(const char* utf8){ int ByteCount = 0; while (*utf8…

cocos2d-x 3.12 Android FullScreen bug

v3.12 Androidにて勝手にフルスクリーンがデフォルト設定になりました AndroidManifest.xmlにて @android:style/Theme.NoTitleBar.Fullscreen ↓ @android:style/Theme.Light.NoTitleBar でフルスクリーンを切ってるのに勝手になる不具合 修正方法は、 プロジ…

cocos2d-x Win32 [修正]アプリの二重起動をさせないようにする

Classes\AppDelegate.cpp glview = GLViewImpl::createの第1引数で使われているアプリ名をまず調べます。 glview = GLViewImpl::create("アプリ名"); proj.win32\main.cpp _tWinMainの最初にチェック処理を追加する クラス名がGLFWから始まり、タイトルがゲ…

cocos2d-x Win32 userSuppliedValueがnullのエラー

Visual Studio2015 cocos2d-x 3.10のWin32プロジェクトにて プロジェクトのプロパティを変更しようとすると、userSuppliedValueがNullエラーがでて、プロジェクトのプロパティが変更できない。 対処方法 proj.win32\ゲーム名.vcxproj をメモ帳などで開き <PlatformToolset Condition="'$(VisualStudioVersion)' == '12.0'">v120</PlatformToolset>

cocos2d-x sharedUserDefaultが古い形式

UserDefault::sharedUserDefault();で端末内に保存した情報を読み込もうとするとこういうワーニングが出る warning C4996: 'cocos2d::UserDefault::sharedUserDefault': が古い形式として宣言されました。note: 'cocos2d::UserDefault::sharedUserDefault' …

cocos2dx LabelBMFontが古い形式

LabelBMFontのビルドでこういうワーニングがでる warning C4996: 'cocos2d::LabelBMFont::create': が古い形式として宣言されました。 note: 'cocos2d::LabelBMFont::create' の宣言を確認してください LabelBMFontの作り方はすでに古いみたいなので修正した…

cocos2d-x Bitmap Fontを使う (Texture Atlas)

フォントから読み込むより画像のフォントを使うとメリットがあるみたいで対応した ・メモリーの消費が少ない ・フォント表示が早い http://www.angelcode.com/products/bmfont/ Bitmap Font Generatorというのを ダウンロードして、フォントを画像に変換する…

cocos2d-x カスタムフォントのサイズを少なくする

ferret-plus.com こういうページからフリーフォントをダウンロードして使う場合 とてもサイズが大きいので、英字ひらがなカタカナ記号のみにして ファイルサイズを小さくする http://opentype.jp/subsetfontmk.htm ここからサブセットフォントメーカーをダウ…

cocos2d-x Windows 初期の表示位置を左上に調整

初期の表示位置を左上に調整 タスクバーが上下左右どこにあってもかぶらないようにする 作成したプロジェクトの下記ファイルを開く 該当箇所 \cocos2d\cocos\platform\desktop\CCGLViewImpl-desktop.cpp bool GLViewImpl::initWithRectメソッドの396行目 int…

cocos2d-x 多言語対応

いぬでもわかる様のページでそのラベル表示するごとに言語ファイルから読み込む方法で公開されていたので、起動時に言語ファイルを読み込んでその後、保持して使うようにした メモリ的にどうなのか、今後の課題 \Classes\AppDelegate.cpp #include "Localize…

cocos2d-x Windowsで画面最大にして、縦横比をスマートフォンに合わせる

Windowsで画面最大にして、縦横比をスマートフォンに合わせる 下記ソースでは、画面サイズ(ワーキングエリア)を取得し、 50ピクセル分マージンをとって比率を合わせたまま最大に拡大 AppDelegate.cpp constexpr float designResolutionSize_width = 571;cons…

cocos2d-x Android Studioビルドバッチ

プロジェクトを作ったフォルダを開くさきほどの例だと C:\test 「androidstudiorun.bat」「androidstudiocompile.bat」を作成するメモ帳で中身を編集androidstudiorun.bat内は cocos run -p android --android-studio -j7 androidstudiocompile.bat内は coco…

cocos2d-x 導入

Visual Studio 2015 https://www.visualstudio.com/ja-jp/products/visual-studio-community-vs.aspx AndroidStudio & Android SDK https://developer.android.com/studio/index.html#downloads Android NDK https://developer.android.com/ndk/downloads/in…

初めに

このブログは、cocos2d-x(C++)を使い スマートフォンとWindows対応のゲームを制作していく為のブログです 自分の用のメモ変わりにもなってます。 クライアント WindowsはWin32、開発ツール Visual Studio 2015、言語 C++ スマートフォンはAndroid、開発ツー…