0. 概要 乱数の生成: rand関数 乱数の種を設定: srand関数 乱数の幅を決める: 剰余演算 1. 乱数の生成(rand関数) #include <stdio.h> #include <stdlib.h> // rand関数 int main( ) { // 例1: 乱数の生成(rand関数) int val; // rand関数は0~32767の整数を返す val = rand(); printf( "ランダムに決定された値は%dです\n", val ); return 0; } 変数の値を決める方法には、プログラムであらかじめ決めておくか、scanf関数を利用してユーザに入力してもらう方法がありました。今回新たに学習するのは、プログラムがランダムに決めてくれるという方法です。 rand関数は、プログラム実行時にランダムな値を生成してくれる関数です。実行すると、プログラムはラン
今回のエンジニアブログを担当する大原です。 かっこいい文字を出したいと思った時に、固定の画像出力ではなく、ビットマップフォントを使うと、用意した文字画像のパターンだけ、 可変させる文字を表現できるため、とても便利になります。 そのためのビットマップフォントの作り方としてcocos2dに対応した、ツールのShoeBoxを使ってビットマップフォントの作り方と Cocos2d-xでの表示の仕方を書いていこうかと思います。 まずは、ビットマップフォントの作成を行います。 以下サイトから、ShoeBoxをダウンロードしてインストールしてください。 http://renderhjs.net/shoebox/ また、ShoeBoxを使う為には、Adobe AIRがインストールされている事が条件になります。 ShoeBoxは、ある文字画像から自動判定し1文字づつ分解し、切り抜いた文字画像毎に文字コードを割
cocos2dで原点が異なるオブジェクト同士、あるいはタッチ位置とオブジェクトの座標を比較するときに便利なconvertToWorldSpace系のメソッドですが、良く理解していなかったので少し調べました。 convertToWorldSpaceの類似メソッドとしてconvertToWorldSpaceARというものもあるのでそれらの違いについても書きたいと思います。 まず、converttoWorldSpaceメソッドですが、親のオブジェクトに対して自分の座標をパラメーターで渡すとスクリーン座標=ワールド座標での自分の座標が得られます。 例えば、 CGPoint worldPosition = [self.parent convertToWorldSpace:self.position]; のようにすると自分が画面上の座標のどの位置にあるかがわかります。 親オブジェクトにメッセージを送る
cocos2d上でUIScrollViewが使いたくなったけど、CCLayerにはaddSubviewが使用できないので、それらしい動きのクラスをCCLayerを継承して作ってみた。 * とか言ってみたものの既に近い動きをするプログラムがフォーラムに投稿されていたので、 そこから必要なところを継ぎ足して作らせていただきました。 ・ScrollLayer.h ・ScrollLayer.m - 参考にした記事 → http://www.cocos2d-iphone.org/forum/topic/3558#post-21636 記事そのままだと指を離した後にスクロールする部分が(3ページ以上の時など)に動かなかったので、修正しています。 使いたいCCLayerには - (void) initScrollLayer { int pageMax = 3;//ページ数 CGSize s = [
前回、タップの使い方について解説しました。今回はiPhoneアプリのインタラクションの特徴でもあるスワイプを扱ってみたいと思います。 通常のCocoa Touchを用いた開発では、UIGestureRecognizerのサブクラスUISwipeGestureRecognizerを使って方向などを取得しますが、cocos2dにUIKitフレームワークを入れなければならない上、SwipeGestureRecognizerはぶっちゃけ全然使いものになりません。スワイプを検出し、方向(上下左右)を決定するには特化していますが、ゲーム的な使い方には向いてないように思います。TouchBeganなどのタッチ系メソッドが反応しないので、スワイプの速さや細かな座標などを用いる処理には向いていなさそうです。 例えばオブジェクトを何処かへ飛ばすようなタッチアクションを作りたいとすると、4方向しか出せないUIG
鸟归巢:夜趣福利导第一导航|性交描述小说|男人插曲女视频40分钟|影音先峰男人资源,一部不行就来两部,身体要紧且看且珍惜。
cocos2d for iPhone 2013.10.02 cocos2d v2.0→v2.1 アップデート作業 iOS7が発表され、cocos2d v2.0でも動作はするのですが、いろいろと警告が出たりして気持ちが悪いので、iOS7に対応したv2.1にアップデートしたいと思います。 ● プロジェクトテンプレートをアップデートする cocos2d for iPhoneはプロジェクトテンプレートとして提供されています。プロジェクトテンプレート自体のアップデート作業は、インストール作業と変わりません。cocos2dの公式サイトのダウンロードページのStable versionのDownload: cocos2d-iphone-2.1.tar.gzをクリックして、データを保存します。保存したデータはダブルクリックで解凍できるので、データを解凍、任意の場所に移動します。 ターミナルを開いて、「cd
Optimize texture usage with Texture Packer and Pixel Formats! アップデート5/10/2013: Cocos2D 2.1-rc0a、Texture Packer 3.07、最新のObjective-Cスタイルに対応しました。(このチュートリアルのオリジナル投稿者はRay Wenderlich氏で、Tony Dahbura氏によってアップデートされました) 2Dのゲームを作成する時は、そのパフォーマンスの為に複数のスプライトを”Sprite Sheet”と呼ばれる大きな一枚のイメージの中に統合する事はとても大切な事ですね。 加えてこのTexture Packerは”Sprite Sheet”をいとも簡単に作成してくれるんです。ただ、ボタンをクリックするだけ。はい、それだけなんです。 今回の”Texture Packer”チュートリア
アプリ開発。Objective-C、Flash、cocos2d、Unity、Unreal Engine 4、ライブラリ、ツール類について。 cocos2dでCCSpriteをテクスチャーに描画する方法を調べていました。 Dr. Mandala のようなキャンバス系お絵かきソフトを cocos2d で作りたいと考えていたためです。 残念ながら、cocos2dのクラスリファレンスやネットを調べても、それらしい便利なメソッドは見つけられませんでした。 どうもそういう特殊用途のメソッドは、自分でOpenGL ESで実装するというのが正解みたいです。また、cocos2dのソースをちょっと見た限りでは、OpenGL ESを知っていればそう難しい事でもなさそうです。 今回調べて分かったことは、CCNodeクラスの -(void)draw メソッドをオーバーライドして、その中でOpenGL ESコマンドが
PhysicsEditor(1.0.5)が、同時に1つの書類しか編集できないことが分かりました。(汗) うーん、今どきすごい仕様です。 こんな出だしでスミマセンが、気を取りなおして、PhysicsEditor でシェイプを作る利点を書いてみたいと思います。 通常、リアルタイム処理を目的とした軽量の物理エンジンの場合、シェイプの形状には制約があります。 Box2D もそうで、Convex (凸)型の形状しかシェイプに登録できません。Concave (凹)型は NG です。 かと言って、それではとても不便なので、Convex 型のシェイプを組み合わせて、あたかも1つのシェイプように Concave 型のシェイプをつくります。 こうなるともう、グラフィックエディタから座標を読み取って…、などという方法ではとてもやっていられません。 PhysicsEditor で、やってしまいましょう。 例として
cocos2dのテンプレートから作成したプロジェクトのAppDelegate.mには、あらかじめpauseとresumeの処理が含まれています。アプリが動作中にホームボタンがタップされてアプリが非アクティブになっても、再びアクティブになった時にアプリが再開するようになっています。 // getting a call, pause the game -(void) applicationWillResignActive:(UIApplication *)application { if( [navController_ visibleViewController] == director_ ) [director_ pause]; } // call got rejected -(void) applicationDidBecomeActive:(UIApplication *)applic
アップデート3/12/2013:Cocos2D 2.1-rc0aに対応、Texture Packer 3.07、ARC、Ratina Display、最新Objective-Cスタイルを使用(この投稿のオリジナルはRay Wenderlich氏のよって執筆され、Tony Dahbura氏によってアップデートされました。) 以前からこのサイトへ「Cocos2D 2.xを使って、アニメーションとスプライトシートの使い方のチュートリアルを作ってくれないかな?」とのリクエストがたくさん来ていたので、はい、どん! 今回のチュートリアルではCocos2Dを使って熊が歩くだけの非常にシンプルなアニメーションの作成方法を学びましょうね。加えてSprite Sheetなるものを使用する事でアニメーションを効率的に、かつタッチイベントに対応して進行方向に向きを変え動くアニメーションの作成方法なんかも学んじゃい
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く