iPhoneアプリ開発
アプリ内課金の機能の一つにリストアというのがあります。 iPhoneを買い替えた時など、リストアを行うと、アプリ内課金で購入済みのプロダクトをそのiPhoneでも購入済みの状態にするという機能です。 で、いろいろあり、あるページにリストアボタンを追加し…
例えば、放物線運動を物理方式どおり作ったとして、どうしてもぽわーんとした動きに感じられるケースがあったとします。 重力加速度などを弄っても、上手くいかないと。 そういう時、運動の時間軸の方を伸縮させて、解決する方法があります。 紹介している方…
作っているゲームの画面キャプチャをアプリ内でする必要があり、いろいろ調べて実装してテストしたのですが、なかなか上手くいかず困っていましたが、なんとか行きました、という内容です。 @interface EAGLView : UIView { @private EAGLContext *context; …
先程、ようやくアプリ内課金を実装したアプリをリリースしました。 「安寧の巫女」〔無料) https://itunes.apple.com/jp/app/an-ningno-wu-nu/id804127600?l=ja&ls=1&mt=8 占いミニゲームとその占いのベースとなる世界観の物語も収録しています。 無料で遊…
Xcodeを5にアプデしたら、ワーニングやらいろいろトラブル噴出。 って程ではありませんが、なんとか解決しました。 ワーニング1 Implicit conversion from enumeration type 'enum CGImageAlphaInfo' to different enumeration type 'CGBitmapInfo' (aka 'e…
3本目のアプリ、Astro Shiftがリリースされました。 3マッチのゲームアプリです。 DLして遊んでみてください。無料です。 今回、Game CenterとTwitterの投稿に対応しました。 OpneGLの自作UIばかりでしたから、viewとかviewControllerとか、実はあまり深く…
4Sに乗り換えて、まだ実機転送していなかったんですが、今朝やってみたら、Xcodeが下のエラーを出して、出来ません。 Xcode cannot run using the selected device iTunesでは認識してるし、なんで?と。 4S再起動してもダメ。 ググったりしたんですが、似た…
Xcode4.2 iOS5で新規にプロジェクトを作って、以前から使っていたライブラリを入れたら、 ARC forbids explicit message send of 'release' というエラーが爆出! ググってみたりして、調べた所、どうやらiOS5の新機能がONになっていて、それが原因みたい。 …
どうやら、i0S5になって、MSArrayのcontainsObjectメソッドの扱いが少し変わったようです。 containsObjectは、NSArrayの中にcontainsObject:objectのobjectで指定したオブジェクトが含まれているかどうかをBOOL型で返すメソッドです。 iOS4.3までは、object…
昨年リリースしたAstro Zill、なかなかretina対応できなくていたんですが、ようやく対応してリリースしました。 今月いっぱいまで、半額の85円セール中です。 http://itunes.apple.com/jp/app/astro-zill/id384356532?mt=8 とかいう宣伝はここまでで、ちょっ…
どっぷりハマってしまったバグについての忘備録です。 起こった箇所:画像ファイルを読み込んで、テクスチャを作るメソッドの終わりの [uiImage release]; 起こった症状:有る程度の分量を読み込むと、下のようなエラーで止まる。止まる画像データは同じ。 A…
glCopyTexImage2D を使うと、フレームバッファやフレームバッファオブジェクトからその内容をコピーできます。 コピーした内容を新しいテクスチャとして使うという事ができて便利です。 フレームバッファオブジェクトを毎フレームコピーする場合には問題なか…
前回のブログで、パーティクル同じ尾の長さにする方法というのを簡単にお話しました。 今回、もう少し詳しくお話してみようと思います。 尾に見えるのは、本体に近いと大きく、遠いと小さくなっている多数のパーティクルです。 これらのパーティクルが本体の…
ちょこちょこ修正を加えていたMaxwell Geteをサブミットしました。 大きな変更点は、下の通り。 iPod でBGMを鳴らしながらプレイできます。 対応したと思っていたら、やってませんでした。orz backgroundに対応しました。ゲームの途中で、ホームボタンを押す…
あけましておめでとうございます。 今年もよろしくお願いします。 さて、お題のお話です。 このお話は、おそらく上級者の方は「まったく」問題の無い出来事だと思うのですが、app storeにバイナリを提出した後、 "Waiting For Review"にならず"Invalid Binar…
glFramebufferTexture2DOESを使って、3Gでテクスチャを生成したのですが、上手く行かない事がありました。 一つのテクスチャをフレームバッファと結びつけて、毎フレーム生成する場合は上手く行きます。 ですが、どうもそれ以外では上手く行かない事が起こる…
文字列を処理していると、あ〜、この処理は実行時に行うんじゃなくて、前に行った結果をデータ化したい! とか思う事がありませんか? いわゆるプリプロセスです。 でも、専用のツールを作ったりするのは少々面倒だったり。 同じアプリ内で、ファイル出力で…
NSStringの文字列結合、Visual Basicみたいに&とかC++みたいに+とか(だっけうろ覚え)で結合出来きません。 調べてみたら、NSMutableString使って、くっつける方法がありました。 NSMutableString* testString = [NSMutableString string]; //空の文字変数…
久しぶりのブログの更新です。(汗) さて、Coco2Dを使っていた時ですが、表示するスプライトのサイズが縦か横両方、 あるいはどちらかが奇数の時、表示される画像がちょっとおかしくなる事がありました。 アンチエイリアスをかけない時が顕著です。 市松模…
複数行のテキスト表示を行う実験をしました。 そこで分かった事などを書いてみます。 NSString* text = @"test\r\n文字表示\r\n改行です\r\n"; UIFont * font; font = [UIFont fontWithName:name size:size]; CGSize textSize = [text sizeWithFont:font]; t…
iPhoneのAdHocテストなどの出るクラッシュログ。 アプリのシンボルコードが無くなって、分かりづらいですね。 シンボルコードを付ける方法を調べてやってみました。 symbolicatecrash というツールを使うとクラッシュログにシンボルを付加して、 こんなクラ…
しばらくブログの更新が滞ってました。(汗) とある理由でxibを使わない方法を行う事になり、やってみたコトのまとめを書く事にします。 いくつかやり方を探したのですが、基本はこのサイトが良さそうです。 Interface Builder を使わない iPhone アプリを…
iPhoneの前はFlashでゲームを作ったりしてました。 その時はデバッガ使わずに、変数を表示したりしてやってましたね。 デバッガで変数の中身を覗けるんですが、覗ける時と覗けない時があったりします。 ブレークポイントしかけても、汎用のメソッドに仕込む…
iPhoneのゲーム開発始めてから、Xcodeのデバッガを使い始めました。 多分、これからお話する事はベテランの方は既にご存知の事だと思います。 初心者の方には役に立つかもしれません。 エラーが特定の箇所で起こる時ですが、デバッガに切り替えて再現させる…
リリースしたMaxwell Gateですが、こんな簡単なゲームでも紆余曲折がありました。 その辺りをちょっとお話してみようと思います。 初めは、左右に赤の部屋、青の部屋を設けて、その真ん中にバーを置いて、 赤の花を赤の部屋に、青の部屋に青の花を仕分けする…
ついさっき、提出したゲーム"Maxwell Gate"がリリースされました♪ リジェクとされませんでしたから、このブログでご紹介したiAdの設置方法、まあ大丈夫そうです。 Maxwll Gate "Maxwell Gate"無料です。簡単なゲームで指一つで遊べますから、ちょっと空いた…
twitterのTLに流れていたので、早速覗いてみると、おお!ちょうど勉強したい事がまとめて書いてある本を見つけました。 実践iPad/iPhoneゲームプログラミング 目次を見ると、viewやらCore AnimationやOpenGLES2.0やゲームエンジンについての記載が! 早速ア…
ファミコンくらいの頃から、ゲームの処理がどれくらいかかっているかを画面に表示する、 「処理メーター」を良く目にしました。 画面の端に、メーターが表示され、そのメーターが振り切れると、処理オーバー、という事が判る仕組みです。 そうですね、CPUメ…
iPhoneの開発を始めて、いちばんの大きな障壁が英語でした。(あ、過去形じゃないですね) 何しろ何か調べようとすると、英語の情報に触れないとなりませんし、英語での登録作業なども必須ですから。 正直にお話しますと、中学2年で英語苦手になってそれ以…
昨日、作ったゲームを iTunes Connect 提出しました〜。 retina対応です。で、retina対応にした時の事をまとめてみました。 今までは320×480の解像度でしたが、iPhone4や新しいiPod Touchのretinaディスプレイ、 その倍の解像度になっています。 解像度のpix…