AS3
あほげーという企画で、24時間でゲームを作りました。 作ったゲームは以下です。 投函のお手伝い はがきをポストに投げ込むゲームにしようとして作っていましたが、終盤にはがきの内容をどうしようかと思ってた時点で、提出に遅刻することがほぼ確定していた…
Blender で作ったものを Flash で表示する(マテリアルとかテクスチャとかも) の続きです。 Blender で作ったアニメーションデータを Away3D で使うことが出来たので記録しておきます。今回は主に Blender の話です。 対象環境 Blender 2.61 Away3D 4.0.0 B…
Blender で作ったものを Flash で表示する の続きです。 前回はマテリアルもテクスチャもライトも何も使わなかったので、真っ白な恐らく 3D っぽい何かが表示されていました。マテリアルとかテクスチャ含め、Blender で作ったものを Away3D で Flash 表示さ…
まだまだ分からないことは多いですが、ひとまず Flash で表示するところまで来たので記録しておきます。 目指す所は、 Blender で 3D のモデリング、 Away3D で Flash 表示です。 対象環境 Blender 2.61 FlashDevelop 4.0.0 RTM Flex SDK 4.6.0 Away3D 4.0 A…
AS3 でゲームを作る場合に僕が良く使うクラス構成です。 [caption id=“attachment_2481” align=“alignnone” width=“605” caption=“コンテキストを用いたデータのやり取り図”][/caption] 各オブジェクトのメイン処理は各クラスの execute() で行います。 各ク…
ちっちゃいネタですが、今まで気づかなかったので。 僕は AS3 で、できることなら for each を使いたがるのですが、この場合インデックスの情報を持っていないので、 「~番目のデータは処理しない」 とかの処理が出来ません。 まあそれは仕方ないのですが、…
Flash で外部ファイルを扱う場合、swf へ埋め込む方法と、直接画像ファイル等をロードする方法があります。swf へ埋め込むとコンパイルに時間がかかったり、埋め込んだ swf 自体のサイズが大きくなったりします。外部ファイルをロードする場合、素材自体が丸…
この記事は「ActionScript Game Utility Library ‘ヤスメ’」v0.61 を対象にしています。 Yasumeにはマップチップによるマップ描画と、マップに対するオブジェクトの当たり判定を行う機能があります。 サンプル(ソース) サンプルでは、マウスカーソルをカメ…
この記事は「ActionScript Game Utility Library ‘ヤスメ'」v0.61 を対象にしています。 Flex は Flash のようにタイムラインが存在しないため、アニメーションをさせるための機構を自分で作る必要があります。「ActionScript Game Utility Library ‘ヤスメ'…
ActionScript Game Utility Library ‘ヤスメ’ v0.61 をリリースしました。成果物はSpark projectをご参照下さい。 ActionScript Game Utility Library ‘ヤスメ’ v0.60からの主な変更点 シーン管理機能追加 RTMFPのNetStreamクラスによる複数人相互通信確立機…
RTMFP による通信手段には大きく分けて NetStream クラスを使う方法と、 NetGroup クラスを使う方法があります。それぞれ一長一短があるので、要件に応じてうまいこと使っていきたいところ、ということで、ゲームを作る上で調べてた時に気づいたことを書いて…
Flex で画面を作るのに MXML はとても便利なので使いたいけど、同時に Shape をぐりぐり動かすようなゲームも作りたいというような場合、MXML で Shape を addChild したいことと思います。しかし、MXML のコンポーネントに対して Sprite を addChild しよう…
FlashPlayer10から、クライアント間で直接データ送受信を行えるAPIが追加されたようです。Flashで複数のクライアント上のデータをリアルタイムに同期させようとすると、XMLSocketだとかソケットサーバーだとかで実現してたと思いますが、FlashPlayer10からは…
任意の引数を持つ初期処理メソッドを共通的に実行したい 昨日のエントリーのコードが間違っていました。initializeメソッドを定義しない場合は何もしない・・・という処理を書いたつもりが、そんなメソッド存在しませんという例外が出ていました。ブラウザの…
やりたかったことを思いついたのでメモします。wonderflで実験したら成功しました。 引数の異なる初期処理メソッドを共通的に呼び出すコード - wonderfl build flash online 僕がしたかったことは、ゲームのシーンを表すSceneクラスをSceneManagerクラスへ予…
「Error #1068」というランタイムエラーにはまってしまいましたので、調べた結果を記録しておきます。 see? 「Error #1068: int と * は共有できません。」というランタイムエラー再現 URL #wonderfl 2010-06-23 01:09:52 via web どうやらfor eachとラベル…
ホームページ作成 レンタルサーバー - Infoseek isweb やっぱり簡単にアクセス出来なければ人をひきつけることもできませんね。僕はもう少し自信を持ってもいい。・・・はず。
このコードって、「参照があいまい」と怒られます。 インターフェースがインターフェースを多重継承して、同じメソッドを実装した場合、どこかしらあいまいな様子...。 よく分からんなぁ。 package { import flash.display.Sprite; public class FlashTest e…
これは知りませんでした。 public interface IChild extends IParent { : : }
非同期処理のテストを行う場合、 dispatcher.addEventListener(Event.COMPLETE, addAsync(onComplete), 1000)); という感じでイベントハンドラのメソッドを addAsync でラップするのですが、この手のテスト中にはまってしまったことをメモ。 public function…
dispatchEventメソッドでイベントを発生させたりしていたのですが、Eventクラスのtargetプロパティって、何が設定されているのかが気になりました。 Flex3のasdocのEvent::targetには以下のように書かれています。 イベントターゲットです。このプロパティに…
例外がthrowされるかテストする場合、以下のように書けばいいと思っていました。 try { obj.throwFunc(); // テストするメソッド fail(); } catch (e:Error) { } throwFunc()実行時に例外がthrowされればcatchブロックへ飛ばされてfail()が実行されずテスト…
FlashDevelopでプロジェクト内にテストプロジェクトを埋め込んでみました。ビルド時に無理やりテストプロジェクトもビルドを行い、ビルド後、TestRunnerを起動するようにしました。こんなんでいいんですかね? FlashDevelopにUnitTest関連のプラグインとかあ…
昨日のテストをFlexUnitでやってみました。 FlexUnitはGUIでテスト結果を確認できるみたいです。 参考ページ 2008-05-13 - Codin’ In The Free World 失敗結果 これは見やすい。 AS3UnitにもAir製GUIツールがあるのですが、僕の環境の問題か、Airランタイム…
趣味でのプログラミングでは特にテスト等考えておらず、動作確認をしてパッと見動けばOKみたいな感じにしていました。適当にしすぎなので、趣味でもテストするようにしようと目論んでみます。 yossy/ASUnit - Spark project JUnitとかは聞いたことがあったの…
まえがき キーボードを使うゲームは、当然キー入力の状況を受け取らないといけません。 どのキーが押されているか、押されていないか等。 Aキーが押されているか、押されていないかだけでなく、 もうちょっといろんなパターンでのキー入力状況を簡単に取得で…
外部ファイルをロードする場合、ゲームをローカルで遊んでもらおうとすると、素材丸見えになってしまいます。 すべてswfに埋め込んでしまえばいいのですが、コンパイルが長くなるようです。 完成版のコンパイルで埋め込めばいいのですが。 で、前からちょっ…
前の。マップスクロールのクラスができた - 書き物 マップスクロールって、チップをカメラ位置にならべて表示させるだけではなく、 直接マップスクロールに関わらないオブジェクトの座標調整も問題になってきます。 その座標調整には、前回チップを表示させ…
ネーミングはちょっとしっくりきていないのですが、MapChipViewerクラスを作りました。 こんな感じで動きます。⇒■ ソースはコチラ。⇒■ 何やら使ってないクラスもありますが、主役は「mylib.system.map.MapChipViewer」です。 なんか妙な組み方になってますが…
EventDispatcherクラスを継承させて、任意の場所で dispatchEvent(new Event(Event.ADDED)); としておいて、 addEventListener(Event.ADDED, onAdded); としてやれば、任意の場所に処理が来たとき、イベントリスナーに登録したメソッドが呼ばれるらしい。 な…