3日ほどUnityのiOS、Androidアプリを作ってみて、
コイン落としのようなアプリができたので使用感とハマったポイントを書き出してみる
・公式の日本語ドキュメントは豊富
・Assetを使うと時間を短縮できる
・言語は3つある
Javascript
チュートリアルや書籍の多くがJavascriptで書かれているが
UnityScriptと呼ばれるぐらいHTMLで使用するJavascriptと離れているのでちょっと使いにくい
Boo
Pythonっぽい言語になっている、これで書いている人は少ないようだ
C#
ドキュメントも豊富で結局C#を選択した
・全てのassetやサンプルプログラムがスマホ用に最適化されているわけではない
Unityでは複数のプラットフォームに対応するために
[Project Setting]>[Input]から呼び出せる入力用Wrapperが標準で用意されているために
コントローラー、ジョイスティックやキーボードの入力を簡単に設定できる
例、プレイヤーが右に移動するスプリクトを組むだけで
コントローラー右、ジョイスティックを右に傾ける、キーボード"D"キー
の3つが対応される
ただしタッチパネルの場合は例外でコードを入力する必要がある。
function Update () {
for (var touch : Touch in Input.touches) {
//TODO touch event
}
}
タッチイベント用のAssetも豊富にある
オススメはこちら
TouchScript
タップ、ドラッグ、ロングタップなどに対応
スマホ以外にもWindows系列にも対応している
サンプルの動作が自然な感じなので作成するアプリに役立ちそう
2014年5月20日火曜日
2014年4月21日月曜日
[AndroidSDK]エラー"R cannot be resolved to a variable"
"R cannot be resolved to a variable"というエラーが出る場合の対処方
Rファイルが更新されてないのが原因っぽいが、そうでも無いこともあって意味不明
以下は経験則に基づいた対処法
・Clean>Build
一番お手軽だけど解決されないことが多い
・eclipseを終了>プロジェクトフォルダ内のbinとgenを削除>eclipse起動
これで解決することが結構ある
・エラーの起こるソースに"import com.example.android.R;"を追加する
プロジェクトを作って1回目のBuild時にこれを入れるとeclipseを再起動しなくてすむ
・↑の逆で「エラーの起こるソースの"import com.example.android.R;"を外す
--NEW--
・エラーの起こるソースのパッケージ名を変更>エラーが出たままなのでパッケージ名を戻す
でなぜかエラーがとれたことがあった
・Android2.1など古い段階でに作られたプロジェクトに起こる可能性が高いような気がする
新しいAndroidSDKで新規にプロジェクトを作成し必要なデータのみコピーしたところ発生しなくなった
Rファイルが更新されてないのが原因っぽいが、そうでも無いこともあって意味不明
以下は経験則に基づいた対処法
・Clean>Build
一番お手軽だけど解決されないことが多い
・eclipseを終了>プロジェクトフォルダ内のbinとgenを削除>eclipse起動
これで解決することが結構ある
・エラーの起こるソースに"import com.example.android.R;"を追加する
プロジェクトを作って1回目のBuild時にこれを入れるとeclipseを再起動しなくてすむ
・↑の逆で「エラーの起こるソースの"import com.example.android.R;"を外す
--NEW--
・エラーの起こるソースのパッケージ名を変更>エラーが出たままなのでパッケージ名を戻す
でなぜかエラーがとれたことがあった
・Android2.1など古い段階でに作られたプロジェクトに起こる可能性が高いような気がする
新しいAndroidSDKで新規にプロジェクトを作成し必要なデータのみコピーしたところ発生しなくなった
2014年4月19日土曜日
[iOS]Xcode5.1でアプリ申請時に出たエラー
Could not find any content hosted eligible apps.
iTunesConnectで設定したIn-App Purchaseがappleのホスト設定になっていない(自前サーバーからコンテンツをダウンロードするようになっている)
In-App Purchaseの設定で"Hosting Content with Apple"をYESにすることで解消
ERROR ITMS-9000 : "Invalid Image Paht - No image found at the path
referenced under key 'CFBundleIcons': 'icon-Small' at SoftwareAssets/SonftwareAsset(MZItemspSoftwareAssetPackeage)
ERROR ITMS-9000のエラーは検索すると色々な原因があるらしい、
今回はアイコン関係のエラーでicon-Smallなどのファイルパスが見つからないとのこと
もちもん設定はしてあるが認識できてない、元のプロジェクトがXcode3またはXcode4で作成した事が原因っぽい
対策として
[app-name]-Info.plistから
Icon files、Icon files (iOS-5)、CFBundleIcons~ipadなどのicon関係のファイルをすべて削除
プロジェクト設定のターゲットからGeneral>App Iconsの項目から"Use Asset Catalog"をクリック
Asset CatalogはXcode5から入った機能で、スプラッシュやアイコンの設定がGUIで分かるようになる便利機能
プロジェクトにImages.xcassetsが加わるので選択する
見たまま表示上のサイズのアイコンをドラッグアンドドロップで完了
iTunesConnectで設定したIn-App Purchaseがappleのホスト設定になっていない(自前サーバーからコンテンツをダウンロードするようになっている)
In-App Purchaseの設定で"Hosting Content with Apple"をYESにすることで解消
ERROR ITMS-9000 : "Invalid Image Paht - No image found at the path
referenced under key 'CFBundleIcons': 'icon-Small' at SoftwareAssets/SonftwareAsset(MZItemspSoftwareAssetPackeage)
ERROR ITMS-9000のエラーは検索すると色々な原因があるらしい、
今回はアイコン関係のエラーでicon-Smallなどのファイルパスが見つからないとのこと
もちもん設定はしてあるが認識できてない、元のプロジェクトがXcode3またはXcode4で作成した事が原因っぽい
対策として
[app-name]-Info.plistから
Icon files、Icon files (iOS-5)、CFBundleIcons~ipadなどのicon関係のファイルをすべて削除
プロジェクト設定のターゲットからGeneral>App Iconsの項目から"Use Asset Catalog"をクリック
Asset CatalogはXcode5から入った機能で、スプラッシュやアイコンの設定がGUIで分かるようになる便利機能
プロジェクトにImages.xcassetsが加わるので選択する
見たまま表示上のサイズのアイコンをドラッグアンドドロップで完了
2014年4月18日金曜日
[iOS]XcodeDefault.xctoolchain/usr/bin/clang failed with exit code 1
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang failed with exit code 1
というエラーが出た
調べてみるといろいろな原因があるようだが
今回の原因はソースコードが不足、インポートしたモジュールのソースコードが赤マークになっていた。
というエラーが出た
調べてみるといろいろな原因があるようだが
今回の原因はソースコードが不足、インポートしたモジュールのソースコードが赤マークになっていた。
2014年4月17日木曜日
2014年4月9日水曜日
[iOS]1つの画像からretina対応、非対応の画像を作る
NSString *imagePath = [[NSBundle mainBundle] pathForResource:@"image_file" ofType:@"png"]; UIImage *image = [[UIImage alloc] initWithContentsOfFile:imageFilePath]; //resizeImageがRetina対応の画像となる UIImage *resizeImage = [UIImage imageWithCGImage:image.CGImage scale:2.0 orientation:UIImageOrientationUp];
2014年4月8日火曜日
[iOS]UIGestureRecognizerがtouchイベントを発生させない
UIGestureRecognizerを新しく作ったviewにaddしても有効にならないタイミングがある(?)
とりあえずNSTimerでviewが作られた後にaddすればうまくいった
とりあえずNSTimerでviewが作られた後にaddすればうまくいった
登録:
投稿 (Atom)
