アプリつくってみっか!趣味でiPhone/Androidアプリを開発し、日々勉強した事を書いています。オープンワールド系レースゲームをUnityで開発中です。この広告は、90日以上更新していないブログに表示しています。JPスペースハリアーに欠かせないのがチェッカー模様の地面。これを再現するのが一番難しそうなので最初にクリアしたいと思います。KitのEffectNodeで台形に変換して奥行きをつけてみたりしましたが、スペハリのような広大な地面を作るには巨大なスプライトを変形させる必要がある事がわかりとりあえずこの方法は断念。Page」というサイト。ほとんどが擬似3Dのレースゲームの地面の実現方法についての解説ですが、スペハリの地面がどのようなデータになっているかの説明もあったりします。縦縞のデータが必要なんですね。お絵描きソフトを引っ張り出して描き始めましたが、縞を扇状に10数本引いたところで断念。いつまでたっても扇形のままでいつまでたっても両端が水平線まで上がってきません。これは手描きでは無理だぞということで、プログラムで絵を描いてみる事にしました。Graphicsとか慣れないことにチャレンジしなくてはならないようです。Wenderich」のサイト。見よう見まねでプログラムを組んでみました。0x0というエラーが大量に発生してしばらくハマりました。完成したのがこのプログラムです。CGContextRestoreGState(context);}draw1PxStroke関数は上記のサイトからそのままお借りしました。画面上部中央から画面下部に向かって少しずつ下端の位置をズラしながら線を描いていき、ある程度描いたら色を入れ替えるという作業をひたすら繰り返すプログラムです。実行結果はこうなります。いい縞模様だと思います。扇形がほぼ水平にまで広がっています。理論上、上端は完全には一直線にはならないので少しカットして使用します。ちなみに、これをiPhoneで実行すると計算にものすごい時間が掛かります。2.3GHzのMacのiOSシミュレーター上で実行すると約33秒かかりました。アクティビティモニターで見る限り使っているコアは1個だけです。iPhone4Sだと1/10の200本の縞を描くのに約1分かかりました。単純計算でMacより20倍遅いことになります。このプログラムでは線幅の半分だけズラした位置に次の線を描いていくようにしています。単純に線幅ずつズラしていくと画面中央下部にモアレが出てしまうからです。参考までに、モアレありバージョンのスクリーンショットです。この奇麗なグリーンはスペースハリアーのスクリーンショットからRGBの値をゲットしました。Meterを使いました。こんな感じにカーソル位置のRGB値を知る事ができます。UIColorオブジェクトは0.0-1.0の値を取るので255.0で割った値を使用します。次回は作成したデータをファイルに保存する方法を考えます。横スクロール用に画面外のデータも少し必要なのでスクリーンショットは使えませんから。Graphicsでシマシマの地面を描...2013-09-09【cocos2d】慣性スクロールの実装。背景をヌルヌル動かすタッチ操作に合わせて気持ちよく背景を慣性スクロールさせてみ...2013-09-08【cocos2d】タイルマップの隙間に四苦八苦。アプリこの商品を含むブログを見るプロフィールid:takujidev個人でiPhone/Androidゲームを開発しています。ミツバチ軍団vs昆虫軍団の縦スクロールシューティング。