C++C#の相互運用(C#からネイティブDLLの呼び出しの場合)で構造体の中に構造体配列のポインタを持つ関数のマーシャリングのやり方です。ネイティブのDLL側の宣言は以下のようになっているとします。指定したところ予期しない名前がついていて関数呼び出しが失敗してしまいました。実装するC++画像処理や、ゲーム作成をしていると、結構な頻度でXとYで表される2次元のグリッドを扱う事があると思います。その時に、全グリッドを対象にした処理を書く際に以下のようなループ処理を結構な頻度で書く事になると思います。Cocos2d-xすぐ忘れるのでメモ代わりにまとています。setScale()各々を実行した時の挙動の違いは以下の通りで。100x100pxの大きさの画像を読み込む。C++CocosStudioで作成で作成したLayerの子要素を自作したLayerに乗せ換える話です。CocosStudioで「Layer」を作成し、csb形式でpublish後にCocos2d-x側から、そのレイヤーを呼び出します。すると、取得できる型がcocos2d::Node*型で取得できます。スプライトがタッチされたかどうかを判定する場合、タッチされた座標がスプライトの中か外かを判定して行います。便利なメソッドなどが存在しないため、定型的なコードを書く必要があります。以下の環境で確認しています。作ってみたゲームでメニューを出す際に、背景がぼやけて少し暗くなった後に、前面にダイアログが表示される演出があります。そのような画面をぼやかす事をブラーを言います。今回はこの「ブラー」をCocos2d-xのレイヤーに対してかけてみたいと思います。FrameworkC/C++にあるunionをC#で使用する方法は、ネットにいくつか解説しているサイトがあります。構造体がunionになったものは例があまりないため紹介したいと思います。Cocos2d-x今回は、「画面にタッチした場所の表示」と「スワイプした軌跡」にエフェクトを表示する汎用レイヤーを作成します。前回作成した「X-Y座標系と円座標系、2点間の角度を求める」の上に軌跡エフェクトのレイヤーをかぶせています。C++前回までの、X-Y座標系と円座標系の学習の一環として、サインカーブを使って雪を降らせるデモを実装してみました。Cocos2d-x前回作成した「X-Y座標系と円座標系」の確認のためにちょっとしたサンプルを作成しようと思います。X-Y座標系と円座標系をやってみました。作ってみた以下の本から、「重力加速度を使ったミニゲーム」の項目をCocos2d-xで実装してみたいと思います。作ってみた以下の本から、「重力加速度」の項目をCocos2d-xで実装してみたいと思います。C+/CLIタイトルの通りで、C++/CLIでC++の文字列とC#の文字列を相互に変換する方法です。C#普段C#を使っていて、C++を使った時に例外を使用した時に感じた違いを書いていきたいと思います。言語使用上、違う部分から行きたいと思います。(ちなみに動作をVS2017のVC++で確認してるので規格と違うことがあるかもしれません。2017年10月11日(水)にリリースされました。今までAndroid開発環境作るのが死ぬほどめんどくさかったのですが、少し改善されたらしいので導入手順をまとめてみました。Cocos2d-xRPGやノベルで表示されるテキストが1文字ずつ表示されていく、「文字送り」機能を作成したいと思います。画面の構成は、周りの枠をScale9Spriteで表示して、テキストはラベルで表示します。図にするとこんな感じです。length()メソッドで文字列長を取得しようとすると日本語の長さが取得できません。3.14.1でコインエフェクトを作成したいとおもいます。エフェクトは宝箱を開けたときや、敵を倒したときに「複数枚のコインがジャラジャラと出る」ようなエフェクトにしたいと思います。自分で描いたコインの画像を使います。C++前回記事で、戻り値の構造体にNon-Bittable型(非Blittable型)が含まれる場合例外が発生する件でchar型の固定長配列は自分でマーシャルしないと例外が出るという話の続きです。C++タイトルの通りですが、C#からC/C++のDLL関数を呼び出すとき(相互運用時)にC++側の関数の"戻り値"が構造体でかつ、非ポインタ型で、その構造体のフィールドメンバーにNon-Bittable型(非Blittable型)が含まれている場合、以下の例外が発生して処理が落ちます...相互運用時に戻り値にNon-Bittable型が含まれる場合例外が発生する件2017-08-16Cocos2d-xで画像を切り出してアニメーションする。Cocos2d-xCocos2d-xで配布されている素材のキャラクターチップを切り出して歩行アニメーションをつけようと思います。画像...Cocos2d-xで画像を切り出してアニメーションする。Cocos2d-xCocos2d-xにはライブラリ自体に標準で乱数を取得できるrandom関数があります。mt19937を自分でしなくて大丈夫です。便利に使えるようにUtility作る必要ありません。使い方は以下の通りです。Cocos2d-xCocos2d-xでノードに設定したアニメーションを停止・再開する方法です。Nodeクラスのpasue/resmeメソッドを使用します。使い方は以下の通りです。Cocos2d-xCocos2d-x(3.x系)で、FF5風のダメージ表示のエフェクトを再現してみました。制作環境は以下の通りです。3.x系でアンチエイリアスをON/OFFにする方法です。ラベルのテキストのアンチエイリアス指定方法が途中で変わっていたので、priteとLabel両方の指定方法まとめてみました。こちらは、結構昔から変わっていません。if文の括弧内の評価とbool値の関係を、C++を触るたびに検索してるので記録しておく。Cocos2d-xCocos2d-x(3.x系)で、ロマンシングサ・ガ3風のダメージ表示のエフェクトを再現してみました。制作環境は以下の通りです。Cocos2d-xすいません、当たり前の話です。以下コーディングミスで10分ほど悩んだので備忘録です。C++で乱数を取得するときにrand関数を使いますが、毎回乱数が生成されないためにsrand関数でシードを更新しましょう。次のページProfile受託ソフト会社員でWin系業務屋。趣味でCocos2d-x/C++を触っています。etc...主に受託・開発ネタ、Windowsの事、Srellaris、ゲーム制作の進捗の事を喋ります。(59)スターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。