Flex、AIR、Java、Androidなど

Posts Tagged ‘デザイン

1/27 20:02 ソース、zipファイル修正。
1/28 12:10 ソース、sipファイル修正。詳しくはzipファイル内のreadme.txtに記載。

Nexus Sが届きましたのでとりあえずざっと作ってみました。強制終了したりもあると思いますが多目にみて下さい。w
連絡くれたら自分の手持ちの端末で再現するかどうかやってみて、できれば直します。うちのNexus Sだと動いてるんですが・・・。

とりあえず実機がある方は上のQRコードかここからアプリ落として動かしてみてください。apk置いといてもいいのですがエミュレーターではメイン画面すら開けないほど重いのでやめときます。
動いてますか?瀬戸デ部な方々に手伝ってもらってFPSのチェックをしたのですが、IS03だと遊べないレベルかもしれません。Xperiaでギリ、Desireとやや遅くらいかも。まあパフォーマンスのことは私に聞かれてもわかんないのでこれで進めますね。
サンプルになるほど出来は良くないですが、とりあえずソースまるごと公開します。
まず、AndEngineとOpenFeintを前回の記事を見ながら使えるようにして下さい。ソースのZIPも公開しますが、OpenFeintのIDがないと強制終了すると思うんで実際に動かしてみたい方はID取って下さい。無料ですぐもらえます。
あとはガリガリ書いていくだけ。なるべく分かりやすいように変数や関数は名前付けてます。落とす前に見たいという方の為に貼っときます。長いですし横が入りきらないんでお手持ちのテキストエディタにでも貼りつけてみて下さい。
とりあえず何点かポイント?を。

とりあえず画面は下層からEngine、Scene、Layerで構成されている。Layerはシーン上に複数置くこともできるし、一枚だけでも良い。Scene、LayerへはどこからでもgetScene().getTopLayer()とかでアクセス可能。
Layer上に画像から生成したオブジェクト(Sprite)やテキスト等を置くときには準備が必要。画像の場合はTextureRegionを作ってそれをTextureに配置、それからEngineのTextureManagerにTextureを登録。こっちにもちょっと書いてます。
毎フレーム毎の処理を登録するのはscene.registerUpdateHandler(IUpdateHandler updateHandler)で。
アニメーション処理は〇〇Modifierが担当。AndEngineに同梱のドキュメント読むべし。
Sprite生成時に同時にListenerを登録してnewできるが、getEngine().getScene().getTopLayer().registerTouchArea(Sprite);しないと反応しないので注意。
画像はできるだけ軽く。8bitで書きだす
処理入れるごとにFPSチェックする。すぐ重たなるので。パーティクルとか大丈夫なん?
女の子に100万DLの自作アプリ見せる → はて (・_・”)?、 3日で作ったてきとーゲーム → +.d(・∀・*)♪゚+.゚。、はおおげさでもとりあえず話ふくらます出発点くらいにはなる!モバゲーとかみんなやってるしね。

Javaのソースファイルは3つだけです。
InitialActivityFrame.java
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361package biz.stachibana.android.Hige;

import java.io.IOException;

import org.anddev.andengine.audio.music.Music;
import org.anddev.andengine.audio.music.MusicFactory;
import org.anddev.andengine.audio.sound.Sound;
import org.anddev.andengine.audio.sound.SoundFactory;
import org.anddev.andengine.engine.Engine;
import org.anddev.andengine.engine.camera.Camera;
import org.anddev.andengine.engine.options.EngineOptions;
import org.anddev.andengine.engine.options.EngineOptions.ScreenOrientation;
import org.anddev.andengine.engine.options.resolutionpolicy.RatioResolutionPolicy;
import org.anddev.andengine.entity.scene.Scene;
import org.anddev.andengine.entity.shape.IShape;
import org.anddev.andengine.entity.shape.modifier.AlphaModifier;
import org.anddev.andengine.entity.shape.modifier.FadeInModifier;
import org.anddev.andengine.entity.shape.modifier.LoopShapeModifier;
import org.anddev.andengine.entity.shape.modifier.SequenceShapeModifier;
import org.anddev.andengine.entity.shape.modifier.IShapeModifier.IShapeModifierListener;
import org.anddev.andengine.entity.sprite.Sprite;
import org.anddev.andengine.input.touch.TouchEvent;
import org.anddev.andengine.opengl.texture.Texture;
import org.anddev.andengine.opengl.texture.TextureOptions;
import org.anddev.andengine.opengl.texture.region.TextureRegion;
import org.anddev.andengine.opengl.texture.region.TextureRegionFactory;
import org.anddev.andengine.ui.activity.LayoutGameActivity;
import org.anddev.andengine.util.Debug;
import org.anddev.andengine.util.modifier.IModifier;

import android.content.Intent;
import android.net.Uri;

import com.openfeint.api.OpenFeint;
import com.openfeint.api.OpenFeintDelegate;
import com.openfeint.api.OpenFeintSettings;
import com.openfeint.api.ui.Dashboard;

public class InitialActivityFrame extends LayoutGameActivity {

    private static [...]

iPhone用新作ゲーム、Horseback Archery -Yabusame- をリリースしました。
プレイ&説明動画を撮ってますので御覧ください。

軽快に遊べる横スクロールやぶさめゲーです。単純なゲームですが得点を上げれば上げるほど的は小さくなり、馬が走るスピードもアップします。
クリアするまで寝れないようなのめりこむタイプのげーむではないですがちょっとした空き時間にやりたくなるかも?

メニュー画面です。音のON/OFFの設定やヘルプ画面、ゲームモードの選択ができます。また、右下のアイコンをタップするとオンラインランキングが見れます。

ヘルプ画面です。英語のみなので説明しておきます。

矢を射る高さは左下のコントロールをぐりぐりして調整して下さい。
矢を射るためにはパワーを貯めないといけません。画面を長押しするとプレイヤーのまわりを赤い炎が包みますのでその状態になればまっすぐに射ることができます。
普通の的は1点、ラジコンヘリは30点、鳥は-50点です。コンボは5の倍数回矢を的に当て続けるとその数だけ加算されます。

ゲームが終了すると結果が表示されます。点数が最高だった場合は自動的にサーバーに登録されます。
無料ですので是非お試しください!気に入って頂けましたらレビュー、フィードバックもお願いします。

コメントは受け付けていません。

Android勉強会@愛媛会場でiPhoneアプリリリースのお知らせ記事を書いています(笑)。楽しい会なのでお近くの方は是非一緒に開発しましょう。
というわけで新作アプリの紹介。
2dのゲームなのですが、ただひたすらきゅうりを小口切りにするゲームです。
iPhone、iPad、iPod Touchに対応、また得点の世界ランキング機能も搭載してます。

基本的なルールは2つ。
(1) きゅうりは薄く!
(2) きゅうりは残さず使い切る!
これだけです。
ゲームモードはタイムトライアル、切りまくり、サドンデスの3つがありますがこの2つのルールは変わりません。

◇タイムトライアル
規定ポイントを稼ぐのにどれだけの時間がかかったか。
◇切りまくり
規定の時間内で何ポイント稼げたか。
◇サドンデス
失敗しないように慎重に切る。厚く切っちゃったり、きゅうりがまだ残っているのに新しいのを持ってくるとアウトです。
最短だと1ゲーム10秒で終わるような簡単で明瞭なゲームです。
無料ですので、是非試してみてください(^^)
DLはこちらから。
ご意見、ご感想等ございましたらお気軽にご連絡ください♫

コメントは受け付けていません。

ブログを書くのも久しぶり&最近本業でも長文を書くことがほとんどないので腕が痛くなりそうですが、iPhone向けとしては初のアプリをリリースしましたので書いておきます。

以下、App Storeの説明文より引用。楽できるとこは楽しないとね。

車が好きな方、あなたの知識を試してみて下さい!
このアプリは大きく分けて2つの機能があります。

▼中古車の検索機能
全国で販売されている中古車を検索し、詳細情報を確認することができます。検索結果は順次読み込まれ、自由に並べ替えることができますので素早く目的の車種を探し出すことができます。
▼車種当てクイズ機能
自動車の画像を見て車種を3択から選ぶクイズを遊ぶことができます。難易度は3つに分かれておりますのでレベルを選択して遊んでください。30問解答した時点でのスコアがサーバーに送信され、ランキングで表示されます。目指せハードモードでの正解率100%!!

☆イージーモード
車の静止画が5枚表示されます。画像から車種を判断して3択から解答して下さい。

☆ノーマルモード
あなたは道路を走行していて、対向車が前方から走ってきます。その一瞬で画像から車種を判断して3択から解答して下さい。

☆ハードモード
あなたは暗いトンネルを走行していて、無灯火の対向車が前方から走ってきます。その一瞬で画像から車種を判断して3択から解答して下さい。 ハードモードで正解率100%を出せた方は間違い無く車に詳しいと自慢できるでしょう!

アプリは無料ですので車が好きな方や、小学生位までの車好きな息子さんがいらっしゃっる方は是非試してみて下さい。
私も子供の頃から車が相当好きでしたが、ハードモードで正解率100%出せる方は車屋さん以外ではそういないと思います。
ダウンロードはこちらからどうぞ。
既に得点ランキングも更新されてきています。本当うれしいです!遊んでいただきありがとうございます!
# 以下、作ってみた感想など。
Android業界の知り合いの方はご存じかもしれませんがこのアプリのアイディア自体はA3 Springに提出したこのアプリと全く同じ物です。両者の違いは学習機能とランキング位ですね。
Android(Java)、iPhone(Objective-C) 両方で同じ物を作った上での感想ですが、箇条書きにしときます。
・Objective-C自体は書き方は変わっているがやってることはJavaとそう変わらない。あくまでもこの程度のアプリだったらですが。英語読めたら案外理解はしやすいです。
・AndroidやってたらiPhoneの一画面(AndroidでいうところのActivity)単位の構成はすぐできます。Viewの子を配置して、背景画像を変えるだけ。解像度が一定な分作りやすいぐらいかも。
・難しいのはstartActivityの部分。presentModalViewControllerとかdismissModalViewControllerを使うのがAndroidやってると分かりやすいんだけど、親のViewがLinearLayoutとかじゃないので手軽にアニメーション効かせた画面推移をさせたいんなら上にViewかぶせるのが簡単だった。ゲーム画面 → 結果表示画面とか。
・得点のランキング機能はOpenFeint使うとすぐできる。でもOpenFeintはそのままだと生のクラスファイルなのでターゲットを変える度にビルドに3分くらいかかりだるい。全部できて最後に入れた方がいいかもね。
・サウンドファイルやらリソースの参照やらはAndroidとほとんど同じ。
・アニメーションはiPhoneが簡単。メソッドが充実してる。あとサンプルとなる見た目の出来が良いアプリがごろごろしてるので同じ様に作れるPhotoshopの腕があれば見た目は綺麗にできます。パクりゃいいんだから。
みたいな感じです。個人的にはAndroidでアプリ作ったことがあって、iPhoneを長く使ってて自然な挙動が分かってる方だとアイディアがあればあとはサクサク作っていけるのではないかと思います。
でも、NavigationControllerとかはちょっとくせがありそうなんでいつか使ったときにでも感想書きますね。
最後になりましたが、アプリの審査は日曜の夜提出、次の土曜日の昼にReady for Sale、3時間後にApp Storeに並びました。6日くらいです。無料だからこんなもんでしょうかね。
自分がやらずに人にお願いするのも図々しいのですが広島か岡山あたりでiPhoneアプリ開発者の勉強会&飲み会とかあったらなあ。。。あんま趣味でとか個人でとかやってる人いないんですかねぇ。。

コメントは受け付けていません。

30 3月, 2009

swfobjectとiepngfixを両方使うときの問題点

Posted by: tachibana In: Flex

ホームページ作りももう終盤ということでhtmlをコーディングしていたのですがswfobjectとiepngfixを両方同時に使ってしまうとIEでSWFを操作できないようになる問題が発生する模様です。
どちらもよく使っているので油断してました。
状況は以下。
・IFPJNGFIX 1.4
・swfobject 2.0
・スタイルでIEPNGFIXを指定しIE6で透過PNGを利用できるように
・swfobjectでbodyのonLoad時にswfを埋め込む
・上記手順により見た目は問題なく透過pngもswfは表示されるが、IEではswfを操作できない。右クリックしてもflash上で右クリックした時のようなコンテキストメニューでなく通常のものが開いてしまう。
・IEPNGFIXを利用しなければ問題なく操作できる
どうもスタイルでIEPNGFIXを指定したタグの子や孫はマウスでの入力を受け付けなくなることがあるようです。
私の場合はちょっとトリッキーな方法でswfを画面の中心に持ってくるようにしているので全ての場合において通用するかどうかは分からないのですが、IEのみに適用するようなCSSを書き、該当する(マウスでの入力を受け付けさせたい)箇所に以下のタグを追加して、ずれた分位置を調整してやることで解決しました。
position:absolute;
display:block;
z-index:100;

しかし、いつになったらIE6を無視することが許されるようになるでしょうかねえ(苦笑)

コメントは受け付けていません。

Categories

 

2017年12月
« 4月    
 123
45678910
11121314151617
18192021222324
25262728293031

About

Author: tachibana

  • ちょっとしたことはTwitterに書いています。こっちはアプリの公開等の時に更新されます。
  • 最近はもっぱらJavaとObjective Cです。AS3は飽きました。
  • スクリプト言語ではPerlが好きでしたが最近はGAE/Jで何でもやってます。
  • Linuxは自宅サーバー建てるのがやっとのレベルです。前の会社で何日も徹夜してやったのはいい思い出です。
  • アプリへのご要望などご意見等ありましたらお気軽にご連絡下さい。

Alternative content here