cocos2d-x-3.0betaメモ
自メモ)
cocos2d-x v3.0-beta _android_log_print 使用部分の修正入ったので pluginをpublish.sh時のApplication.mkの下記修正不要に APP_CFLAGS += -Wno-error=format-security
cocos2d-x v3.0-beta Readme の誤記が・・。create-projects.py => create-project.py あと project-creator.py ってないよ?(create-project.py )
cocos2d-x v3.0-beta 新しい project-creator/create_project.py で作るとCOCOS2DX_ROOT の相対のprojectsフォルダには作られない。Classes と相対位置に cocos2dのソース自体もコピーされる挙動に
cocos2d-x v3.0-beta 従来通りの位置に作成は cd cocos2d-x ./tools/project-creator/create_project.py -n irof -k com.hoge.driven -l cpp -p projects
とした場合
cd cocos2d-x
./tools/project-creator/create_project.py -n irof -k com.hoge.driven -l cpp -p projects
- projects/irof 以下の構成
irof
├── Classes
├── cocos2d
├── proj.android
├── proj.ios_mac
├── proj.linux
├── proj.win32
└── Resources
cocos2d-x v3.0-beta create_project.py で絶対パス指定できると書いてるけど .projectの linkedResources/Classes の記述が COCOS2DX/projects になってるから従来の位置のほうがやはり良
cocos2d-x v3.0-beta 作られる新規プロジェクトから .cproject のファイルが消されてるみたい。でもこれだとプロジェクト開いた初期状態で build_native.py と連携してしてないはずだが大丈夫?
cocos2d-x v3.0-beta 正確には $(call import-add-path,../../cocos2d/cocos) $(call import-add-path,../../cocos2d/external) か。。
LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := cocos2dcpp_shared LOCAL_MODULE_FILENAME := libcocos2dcpp LOCAL_SRC_FILES := hellocpp/main.cpp \ ../../Classes/AppDelegate.cpp \ ../../Classes/HelloWorldScene.cpp LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static LOCAL_WHOLE_STATIC_LIBRARIES += cocosdenshion_static LOCAL_WHOLE_STATIC_LIBRARIES += box2d_static include $(BUILD_SHARED_LIBRARY) # add seatch patch $(call import-add-path,$(LOCAL_PATH)/../../cocos2d/cocos) $(call import-add-path,$(LOCAL_PATH)/../../cocos2d/external) $(call import-module,2d) $(call import-module,audio/android) $(call import-module,Box2D)
cocos2d-x v3.0-beta Classesの位置に同梱されてる cocos2dのフォルダ見たら pluginフォルダも同梱されてるみたいだけど publushフォルダはコピーされてない。プロジェクト作成後にpublish.shやること前提なのか、手動コピー前提?

TLメモ)
cocos2d-x 3.0.0.beta、create_project.pyで作成される場所が相対になってる
CCLayerColorについてcocos2d-x 3.0.0の対応表が無い...
cocos2d-x 3.0.0のAPI、綺麗になってるけど苦労したのかなあ...
あれ、よく見たら cocos2dx 3.0 beta が来ているじゃないか。さっそく試してみるか。
試しに.\create_project.py -n test -k com.example -l javascript -p E:\projects\とすると、E:\projects\test\proj.android という具合にプロジェクトが作成される。
p オプションで別の場所に配置したプロジェクトは、/path/{projectName}/cocos2d ディレクトリに cocos2dx のビルドに必要そうなファイルがコピーされている。これを差し替えるだけで別のバージョンの cocos2dx でビルドできるという事だろうか。
ひとまずちまちまとワークスペースにCOCOS2DX/2d とかをちまちま追加して、インクルードパスに ndk の奴も追加することでビルドは出来なくてもコーディングは出来るようにした。
あ、COCOS2DX/2d じゃなくて COCOS2DX/cocos/2d でした。そうじゃないと COCOS2DX/external/spidermonkey/include/android とかが追加できない。
@mezumona proj.android/jni/Android.mk に$(call import-add-path,../../cocos2d/cocos) $(call import-add-path,../../cocos2d/external) 追加ではなく?
2014-01-09 15:35:43 via YoruFukurou to @mezumona
@kimukou2628 Eclipse で補完を効かせる話です。
2014-01-09 15:36:34 via TweetDeck to @kimukou2628
@mezumona eclipseで補完させるには .projectに variableList で COCOS2DX追加すればいけますよ。詳細は URLな感じ(実際はpythonスクリプトでちゃんと生成してほしい
2014-01-09 15:41:21 via YoruFukurou to @mezumona
@kimukou2628 実は自分もそう思って追加したのですが、肝心のリンクディレクトリのパスが COCOS2D/cocos2d とか古い構造がベースになっているっぽいのです。
2014-01-09 15:44:53 via TweetDeck to @kimukou2628
- proj.android/.project
<?xml version="1.0" encoding="UTF-8"?> <projectDescription> <name>irof</name> <comment></comment> <projects> </projects> <buildSpec> <buildCommand> <name>com.android.ide.eclipse.adt.ResourceManagerBuilder</name> <arguments> </arguments> </buildCommand> <buildCommand> <name>com.android.ide.eclipse.adt.PreCompilerBuilder</name> <arguments> </arguments> </buildCommand> <buildCommand> <name>org.eclipse.jdt.core.javabuilder</name> <arguments> </arguments> </buildCommand> <buildCommand> <name>com.android.ide.eclipse.adt.ApkBuilder</name> <arguments> </arguments> </buildCommand> <buildCommand> <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name> <triggers>full,incremental,</triggers> <arguments> </arguments> </buildCommand> </buildSpec> <natures> <nature>com.android.ide.eclipse.adt.AndroidNature</nature> <nature>org.eclipse.jdt.core.javanature</nature> <nature>org.eclipse.cdt.core.cnature</nature> <nature>org.eclipse.cdt.core.ccnature</nature> <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature> <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature> </natures> <linkedResources> <link> <name>Classes</name> <type>2</type> <locationURI>PARENT-1-PROJECT_LOC/Classes</locationURI> </link> <link> <name>cocos2dx</name> <type>2</type> <locationURI>PARENT-1-PROJECT_LOC/cocos2dx/cocos/2d</locationURI> </link> <link> <name>extensions</name> <type>2</type> <locationURI>PARENT-1-PROJECT_LOC/cocos2dx/extensions</locationURI> </link> <link> <name>scripting</name> <type>2</type> <locationURI>PARENT-1-PROJECT_LOC/cocos2dx/cocos/scripting</locationURI> </link> <!-- 追加 start--> <link> <name>Resources</name> <type>2</type> <locationURI>PARENT-1-PROJECT_LOC/Resources</locationURI> </link> <link> <name>include</name> <type>2</type> <locationURI>PARENT-1-PROJECT_LOC/cocos2dx/plugin/protocols/include</locationURI> </link> <!-- 追加 end--> </linkedResources> </projectDescription>
cocos2d-x-3.0betaでSpriteBuilder使えないの確認しました〜
cocos2d-xのCCDictionaryがでぷりけーてっどになったので前に書いたコードが使えなくてどうしようかーって考えてる URL
cocos2d::Valueがcocos2d::Object継承してないのが全て悪い。
あとcocos2d::Mapとcocos2d::Vectorも
cocos2d-x 3.0 beta になってから Json_getItemAt() 消されてる
cocos2dxの3.xでVector, Mapを自作してるのはなんか理由があるのかな。
2014-01-12 23:53:14 via web
cocos2dxの独自メモリ管理がこんがらがるなぁ。URL
2014-01-13 00:08:00 via web
cocos2d-xでユーザーデータを保存するのにCCUserDefaultを使うとして、保存したデータを改ざんされないようにするために、みんなどうしているのだろう?暗号化してガードするしか無いとは思うのだけど。
ブログ更新しました / cocos2d-xでユーザーデータを暗号化して保存したい URL
createのタイミングじゃなく、後から指定すればできるとは知らなかった / (Cocos2d-x)CCLabelTTFを文字の長さに合わせて自動改行させる URL @wordpressdotcomさんから
先ほどのCCLabelTTFの自動改行の件、勘違いした。createのタイミングでdimensionsを指定しても高さの自動調節はできた。ただ、たぶん改行を含む複数行のテキストで、最後の1行が切れて表示されないバグ?があって。それが回避できるのかと思ったけど、同じだった。
参考リンクメモ系)
- Cocos2d-x3.0betaのcreate_project.pyで作ったProjectをdiffる - きょこみのーと
- ゲーム開発フレームワーク「Cocos2d-x」とMVC|1 pixel|サイバーエージェント公式クリエイターズブログ
- Objective-CでiOSとAndroid向けの2Dゲームが作れる『SpriteBuilder』 | IDEA*IDEA
- cocoabu.com
サイトの記事を追加しました。「cocos2d-x 3.0(beta)を使ってみる(導入編)」URLcocos2d-x ver3.0betaの導入に関する記事ですです。今回は導入編です。
2014-01-25 16:00:44 via web
cocos2d-x 2.2.2→3.0beta への移植がとりあえず完了。やったのはCCArray→Vectorへ。schedule→実行メソッドに「(float dt)」追加。getChildren、addObject→同じくVectorに。後タッチイベントとか。
2014-01-15 18:52:27 via web
めも2。CCLayer継承クラスの「Layer#ccTouchBegan override me」エラーは「virtual bool onTouchBegan(Touch *touch, Event *unused_event);」をオーバーライドしてそっちを使えばおk。
2014-01-15 19:38:48 via web
ver3.0beta移植中メモ3(訂正)。 CCCallFunc ↓ cocos2d::CallFunc へ。std::function<>対応。結果従来の書き方は非推奨へ。CCCallBlockの意思を受け継ぎラムダ式が可能に。 CCcallFuncND:「さびしい」
2014-01-16 02:39:50 via web
cocos2d-x ver3.0移植個人メモ4。ver3.0からはC+11準拠のため、NULL→nullptr
cocos2d-x ver3.0 個人メモ5。ver 2.2.2 CCTextureCache::sharedTextureCache()↓ver3.0 beta Director::getInstance()->getTextureCache()文字数制限・・・;
2014-01-16 22:21:56 via web