タグ:xUbuntu12.10 ( 5 ) タグの人気記事

Using Hardware Devices | Android Developers

LinuxでAndroidの実機確認をするために、/etc/udev/rules.d/でUSBの認識用ファイルを入れる必要があったんですが、いつの間にか公式で詳しく記載+ベンダーIDが列挙されてましたね。

なので、記載されている全IDをぶちこんだrulesファイルをGithubに公開することにしました。

yamacraft/ubuntu_android_device_rules

Ubuntuであれば、そのまま該当のパスにコピーすれば使えるかなと。
最近は公式のDeveloperが静かにいろいろ便利な情報が記載されているようなので、どこかで一度落ち着いて全チェックしてみようかなと思います。

あと昨日、休みをとった勢いで資料作ってmixiのLTに参加してみました。
これは後日更新予定です。いろいろ勉強できました。
[PR]
ひょんなことで、enchant.jsとかその辺を使ってゲームを作ることになりました。
その関係で、いつものノートPC(MSI U100)にapache2と、ついでにvimにNeoBundleいれたりシンタックスハイライトの設定をしたので、その時のメモ書きです。


apache2のインストール、vhostの設定
実はapache2はだいぶ前にインスコしてました。どうやってインスコしてたのか、覚えていません…。
でもたしかこんな感じで設定してたはず。

$sudo apt-get install apache2


これだけだと1サイトしか作れないので、バーチャルホスト対応させます。
バーチャルホスト用のサイトは、ユーザーディレクトリ下にSitesというディレクトリを作って、そこで管理するようにしています。

$mkdir -p ~/Sites/yamacraft.xxx.local/
$vi /etc/apache2/sites-available/virtual.host2

# 下の内容を入力
<VirtualHost *:80>
DocumentRoot /home/yamacraft/Sites/yamacraft.xxx.local
ServerName yamacraft.xxx.local
ServerAdmin yamacraft.xxx.local
<Directory "/home/yamacraft/Sites/yamacraft.xxx.local">
AllowOverride All
</Directory>
</VirtualHost>


そして下記コマンドで、作成したバーチャルホスト設定を有効化させます。
ちゃんとできると、/etc/apache2/sites-enabled/にシムリンクができます。

$a2ensite virtual.host


最後にapacheを再起動させましょう。

$sudo service apache2 reload


しかしこれだけではまだアクセスできません。
hostsに下記の内容を設定します。

$sudo vi /etc/hosts

#下の内容を追記します
127.0.0.1 yamacraft.xxx.local


これでブラウザを開いて
http://yamacraft.xxx.local
にアクセスすれば、設定した環境にアクセスできるようになります。

NeoBundleを入れて、vimにシンタックスハイライトさせる
現在のvimがあんまりハイライトしてくれてない感じがしたので、ついでにNeoBundleを入れて、その経由でsolarizedを入れることにしました。

まずはNeoBundleの設定。.vimフォルダにいろいろするんですが、.vimがrootユーザーになっていたので、権限を変えます。

$sudo chown -R yamacraft:yamacraft ~/.vim


そしてインストール準備。gitが入ってること前提です。

$mkdir -p ~/.vim/bundle
$git clone https://github.com/Shougo/neobundle.vim ~/.vim/bundle/neobundle.vim
$git clone https://github.com/Shougo/vimproc ~/.vim/bundle/vimproc


.vimrcを作成します。
一緒にsolarizedのインストール設定もしてしまいます。

$vi .vimrc

" 下の内容を記述
set nocompatible
filetype off

if has('vim_starting')
set runtimepath+=~/.vim/bundle/neobundle.vim/
call neobundle#rc(expand('~/.vim/bundle/'))
endif

NeoBundle 'Shougo/neobundle.vim'
NeoBundle 'altercation/vim-colors-solarized'

filetype plugin on
filetype indent on

" solarized設定
syntax enable
call togglebg#map("")
set t_Co=256
set background=dark
let g:solarized_termcolors=256
colorscheme solarized


g:solarized_termcolorsだけでなく、t_Coも設定しないと反映してくれませんでした。
上記の.vimrcを作成したら、vimを起動して(恐らく「colorscheme solarized」の部分でエラーが出ますが無視)、

:NeoBundleInstall


このコマンドを実行すると、NeoBundl+solarizedがインストールされます。
solarizedはインストールして直ぐに反映されないので、インストールが完了したら、いったんvimを開き直しましょう。

と、ここまで書いておいてなんですが、多分ちゃんとsolarizedの配色が反映されてない……。
とりあえず、ハイライト表示はされているのでいったんここで妥協してます。
あと上の設定だと、F5キーを押すたびに、ハイライトのコントラストが変化します。ノートPCのディスプレイと、外部ディスプレイ出力を交互に使う自分の場合、両方の色表示が微妙に違うので、この設定は結構便利です。

というわけで、課題は残っていますが、まずはここまで。
[PR]
by yamacraft | 2013-12-02 22:00 | いろいろ

Ubuntu(xbuntu)12.10にcocos2d-x入れてみた日記
http://yamacraft2.exblog.jp/18987676


以前cocos2d-xを入れてみたわけですが、結論を言うとU100のスペックでは、ビルドするたびに艦隊これくしょんの演習を1回やれるぐらいの待ち時間が発生して非常にストレスだったので、macminiとかをいずれ買った時に改めてちゃんとやろうかな、という感じで現在放置しています。

そんな中、KLabが自社のゲームエンジンであるPlaygroundのOSS版を公開していたので、試しにサンプルだけ動かしてみようと挑戦してみました。


KLabが開発したゲームエンジン「Playground」のソースコードを公開 | ニュースリリース | KLab株式会社
http://www.klab.com/jp/press/130926.html


結論からいうと、公開当日の環境構築ゲームは敗北に終わったわけですが、別でwindows側でサンプルの動作に成功していた人がいたので、あらためて参考にして挑戦しました。


2D/2.5Dゲームエンジン Playgroundのセットアップ | ブライテクノBlog
http://brightechno.com/blog/archives/150


内容はかなり上の記事に酷似しています。そりゃ環境構築なんだから当たり前なんですけど。


0. PlaygroundOSSのソース取得

https://github.com/KLab/PlaygroundOSS/

通常のgit cloneしてしまえばいいです。


% git clone https://github.com/KLab/PlaygroundOSS.git
% cd PlaygroundOSS


ブランチを切るかどうかはお好みですが、なんだかんだでしばらくは激しく修正が行われるので、やっておいたほうがいいかもしれないです。(ここでは書きません)

1-1. pythonのインストール
いるのでやっておきましょう。(割愛)

1-2. NDKのインストールとかSDKのインストールとかADTとかEclipseとか
もうここで書く必要もないので割愛します。
ただこの後のビルド作業の中で、NDKにPATHが通っていることを前提とした部分があるので、忘れないように注意してください。
ちなみにPlaygroundOSSの中はNDKのバージョンがr9前提となっているので、コレを機に最新版のNDKを落としておきましょう。


export PATH=$PATH:$HOME/android-ndk-r9/


もしかしたらsdkのplatform-toolsもPATHに通しておいたほうがいいかもしれません。コマンドライン上でどこからでもadbコマンド叩ければ、PATH通ってると思います(投げやり感)。

2. PlaygroundOSSエンジンのビルド
正直ここは何やっているのかよくわかっていないです。
とりあえずビルド用のPythonファイルに実行権限を与えて、python越し初回のndk-buildとかをやらせてるみたいです。


% cd (省略)/PlaygroundOSS/Engine/porting/Android/GameEngine-android
% chmod +x ./build.py
% ./build.py --rebuild --project SampleProject


SampleProject以外だと失敗するらしいですが、じゃあ新規にプロジェクト作りたい場合はどうするんだという疑問もつきないでしょう。いいんです、とりあえず私は動作確認だけしたいので。

成功すれば、GameEngine-android/libs/以下にgcm.jar以外のいろんなライブラリファイル(*.so)があるはずです。ndk-buildだけ失敗すると、フォルダだけできて中身が何もはいっていないことがあるので注意してください。

3. プロジェクト用のassetsを作成
GitHubにアップされている説明書は何故かここからあやふやな記述になっていた、自分はここでつまっていましたが、Tutorial以下のサンプルフォルダを指しているようでした。
いまはどこにあったかわかりませんが、当日は他にも同じ内容のzipファイルかなにかがあって、しかも必要なファイルがないという罠が仕掛けてあって恐ろしい目にあいました。


% cd (省略)/PlaygroundOSS/Tutorial/01.SimpleItem/.publish/android
% zip -r -0 (省略)/PlaygroundOSS/Engine/porting/Android/GameEngine-android/assets/AppAssets.zip ./*
% echo -n "1" > (省略)/PlaygroundOSS/Engine/porting/Android/GameEngine-android/assets/version ./*


2行目でassetsにあるフォルダを無圧縮zipに固めて、先ほどビルドしたプロジェクト内のassetsフォルダに入れて、versionというファイル名の無圧縮zip内のファイルリストのテキストファイルを、同じようにassetsフォルダに入れます。頭に1がつくのは、今回は01.SimpleItemだからかなあと思いますが、よくわかりません……。
そもそもgit cloneしてきた中身にどんどんプロジェクト作るのも変じゃないかって??私にもよくわかりません……。でもとりあえず、動いてるところがみたいだけです……。

4. プロジェクトをeclipse - adtでインポート
インポート手順の詳細は省略します。
インポートの選択は「Existing Android Code into Workspace」で、インポートするフォルダは、先ほどassetsで色々おいたフォルダの一つ上「GameEngine-android」になります。

あとインポートしたプロジェクトを右クリック-プロパティを呼び出して
「C/C++」の中のビルドコマンドのパス、「C/C++ -> 環境(Environment)」の中身のパスを修正しておいてください。

5. 実行
Lintエラーとかで実行出来ない場合は、何度かF5キーでプロジェクト内をリフレッシュしたり、2のエンジンビルドを何回か再実行してみてください。
eclipse上でクリーンビルドすると、艦隊これくしょんで演習を1つ進められる時間が発生する上に、それでいてビルド失敗する可能性があるので注意してください。

とりあえず実行に成功すると、猫の写真に変な色合いのフィルターがかかってなんか数秒間だけ動いて止まる何かができました。

d0252816_2353572.png


このフィルターは正しいのかどうかわかりませんが、とりあえず動きました。ちなみにバックボタン聞かないので注意してください。

ただ正直言って、プロジェクトの作成手順がなんか複雑だし、そもそもサンプルがluaファイルだし、結局ビルドまでの手間暇とビルド時間はcocos2d-xと対して変わらないなあということで、しばらく自分はゲームはAndEngineでやっていこうと思いました。

もうちょっとプロジェクトの修正が落ち着いて、ある程度運用方法の情報が出来上がったタイミングで、改めて考えることにします。


はやくビルド時間に困らないハイスペックなPCが買いたーい。
[PR]
を入れた時の簡易メモ

1. 公式サイト(http://developer.android.com/sdk/installing/studio.html)でandroid studioのLinux版を落とす

2. 好きな場所に解凍する

3. (androud studioのroot)/bin/studio.sh を実行

4. 動かなかったら、.bash_profileにでも
JAVA_HOME=/usr/bin/java
でも入れたり、studio.shの中身で未定義のパスとかを何とかすればいいと思います。


メモにもならない。
あとU100ではandroid studioは重いです。Eclipseより明らかに重い。あとJDKのせいかしらないけど見た目が若干しょぼい。あと解像度が高さ768px以上あること前提にしてるので、プロジェクトの新規作成をしてもOKボタンが押せないなどの不便があります。

なので私はしばらくEclipseでいいです(終わり)
[PR]
突然ですが、androidでcocos2d-xを試してみたいので、先日用意したxUbuntuネットブックに導入することにしました。

内容はcocos2d-x.jpで公開してる資料を参考にしています。
http://www.slideshare.net/doraemonsss/windowscocos2dx-212android
資料はwinですが、実質Linuxでの導入方法になっているので一番参考になります。

0. python
pythonがいるらしいけれど、すでに2.7.3を入れていた(自分で入れたのか最初からあったのか覚えてない)ので割愛。

1. NDK導入
実際はcocos2d-xとは関係ないけど、入れてなかったのでついでに。
Android NDKの公式サイトからLinux 32bit版をダウンロードして、ユーザーディレクトリの真下に移動。
.bashrcにNDKのPATHを追加しておく。
ついでにEclipseで自動ビルドできるようにNDK_ROOTも設定。


PATH=$PATH:/home/ユーザーディレクトリ/android-ndk-r8e
export PATH

export NDK_ROOT=/home/ユーザーディレクトリ/android-ndk-r8e


2. cocos2d-x導入
cocos2d-x公式からダウンロード
今回は特に理由もないので、最新版のcocos2d-2.1rc0-x-2.1.3をダウンロード。
ダウンロードしたらそのまま解凍して、NDKと同様ユーザーディレクトリの直下に移動。
そのままだとパス名長すぎるなーと思って、「cocos2d-2.1.3」にリネーム。
またしてもPATHを修正。

PATH=$PATH:/home/ユーザーディレクトリ/android-ndk-r8e:/home/ユーザーディレクトリ/cocos2d-2.1.3
export PATH


3. Eclipse設定
設定画面で
3-1. 「一般」-「ワークスペース」-「リンクされたリソース」の定義済みパス変数に「名前:COCOS2DX 値(ロケーション):cocos2d-xのパス」を追加。
3-2. 「C/C++」-「ビルド」-「環境」にて「変数:NDK_ROOT 値:ndkのパス」を追加

4. libcocos2dxをインポート
(cocos2d-xのパス)/cocos2dx/platform/android/java
上記をEclipseにインポート。ワークスペースのコピーはしない。ビルドがちゃんと通ればbinフォルダにlibcocos2dx.jarが作られる。ワークスペースにプロジェクトをコピーした場合は、build.xmlとかその辺りを修正すること。

5. 新規プロジェクト作成
ターミナルで
(cocos2d-xのパス)/tools/project-creater
へ移動。
./create_project.py -project MyProject -package net.tks2.myproject -language cpp

を実行すると、C++言語のパッケージがnet.tks2.myprojectでMyProject という名前のプロジェクトが、cocos2d-xパス直下のprojectに作成される。

6. Eclipseでインポート
上記プロジェクト内に「proj.android」というディレクトリとがあるので、ここをルート指定してプロジェクトをインポート。
クリーンビルドして問題がなければ、そのまま実行すればサンプルアプリが動作する。
完全クロスプラットフォームなので、バックボタンはききません。右下の電源マークを押して終了しましょう。


X. 動かない
1. ビルドターゲットがAPI8なので、API8のSDKをインストールしなおす
2. C/C++インデクサが異常に長い+重いので、設定の「C/C++」-「インデクサー」から、インデクサー使用のチェックを外す。 外すとリンクが取れずにビルドエラーになっちゃってビルドできなくなるので、ちょっとここの設定を見直し。(6/23追記)エラーは「C/C++」-「コード解析」のSynrax and ~のチェックを外せば解決しました。もともとコードチェック自体があんまりよろしくないみたい。
3. SDKとかADTを更新した直後なら、一度eclipseをクリーン起動してみる。


自分は3のせいで無駄な時間を2時間消費しました。おかげで翌日は酷い頭痛になりました。
実際のコーディングは残り2週間かけてちょっといろいろサンプルソースを打ち込んだりしてみます。
[PR]