2014年2月17日月曜日

Unityの問題点という題名の愚痴

多分問題点なんてなくて、とてもいまリソースが集まっていて旬で
さくさく3D使ったインタラクティブなアプリが作れる、最高の開発環境に違いないのだ。

でも金がなくて使えないので、悔し紛れにUnityを使わない理由を書く。

①払う金額で利用できる技術が差別される
  Unity PROでないとLODもAudio FilterもStencil Bufferもない
②Unity用のC#とかJavaScriptとか覚えても世の中が飽きた後職に困る
③Unityテクノロジーズに囲い込まれるうえクローズドソースだ
④結局コンパイル言語なのでスクリプトベースのものより開発ループを回すのに
  時間がかかる。LuaとかJava scriptとか使おうよ。
⑤それなりに広い知識が要求され難しいうえに、
  それで育った人間の知識は中途半端に潰しの利かないものになる。
⑥そも3Dまではいらない事例のが身の回りに多い。

いつかUnityがなくなるなんてことはなかなかないと思う。
納得いかないのは①だ。端末に備わってる機能を使うのに金余計に払うとか馬鹿らしい。

スマホ開発に関してもOSの更新に対して即応性はない。一時期マルチ開発でTitaniumの採用事例があったが、
広告をいれるのにコストが余計にかかるせいで、標準的な仕様で作り直してるなんて事例もある。
(Titaniumについては、ぶっちゃけ「分かる人があんまりいないので」避けたほうが無難だ。
 やってみたけどTitanium用のプラグイン開発なんてCOMプログラム思い出すくらい手間)

いやTitaniumなんて、わざわざ出さなくても、Unityプロジェクトの破綻事例はいくつか目にしてる。
体制を整えて乗り込まないと、危険というのは事実っぽい。

①Unityを作れば3Dゲームが簡単に⇒3D以外のところとかUnity固有の問題、ローカライズの問題にぶちあたり、プロジェクトが盛大に座礁。
②Unityをつかってゲーム作りました⇒開発者がいなくなってコンパイルできない
③とにかくUnity(Unreal Engineでも可)を使える人材が欲しい⇒いない

Unityを使うことで得られるのはUnity社の知見でありUnity社の知見を理解できて使いこなせる人がいないとまあどうにもならない。

もしくは、頭のいい根性のある子に、時間とUnityを与えて好きに作らせるとかですね。

2014年2月14日金曜日

cocos2d-x 2.2.1とかそのあたりでandroid向け/armeabi-v7でコンパイルすると大量に警告

はい

cocos2d-x 2.2.1でarmeabi-v7でコンパイルするとワーニングが大量にでてコンパイルできない問題。2.2.2は知らない。3系はためしてないが多分解決している。リリース用にコンパイルすべとv7をいれた途端コンパイルできねえとなるので、とても困る。

再現が面倒なので細かいメッセージは省くが、ワーニングを見るとlibcurlが含まれているのが確認できるはず。これは配布ファイル内のlibcurl.aがstripされてるのが原因とのこと。
$(cocos2dx_home)\cocos2dx\platform\third_party\android\prebuilt\libcurl\libs\armeabi-v7a\libcurl.a

これをgithubの3.0の配布ファイルに含まれてる下記のURLにあるものに置き換えれば、ワーニングは消える。

https://github.com/cocos2d/cocos2d-x/tree/develop/external/curl/prebuilt/android/armeabi-v7a/

2014年2月5日水曜日

Flash : FLAファイルのライブラリから音声ファイルを抽出したい場合

FlashもCCになったので、なんとなく触ることもすくなくなってきたんだけど
あまり情報がないやつ

Flashにはライブラリの機能があって、動画や画像、音声など、いろいろな
要素をつっこんでおける。

素材は基本的にはflaファイルと同じ場所にディレクトリを掘っておいて置
くものなのだがこれを紛失した場合も画像と動画に関してはflaファイルの
ライブラリから直接取り出すことが可能だ。

基本的に素材のまま格納されてるので素材を紛失してもflaファイルがあ
ればなんとかなったりする。
 ただUIを追う普通のやり方だと音声ファイルだけはFlashのライブラリから
取り出すことができない。
元の素材なくしちゃったけどflaファイルだけある場合取り出す方法は下記

swfファイルからもツールを使って取り出すことは可能ではあるが、これは
画像も音声もswfにする際にflashが圧縮するので微妙になる。

で手順。

①空のFlaファイルを作成し、対象の音声をライブラリにコピーする
②音声をステージにドラッグドロップするとタイムラインができる
③タイムラインを音の収まる範囲まで広げる
④ファイル⇒書き出し⇒ムービーの書き出しでwavファイルとして出力

元ファイルではないが、FlashCS6で圧縮する前の音声を取り出すことができた