2015-07 << 2015-08 >> 2015-09

2015-08-31 (月)

眠い...

* SO-04E

いいかげん何か買おうと思って,家出る前にAmazonでSO-04Eを注文したのだけど,帰ってきたら届いていた.

せっかくなので緑色のあれなバージョンを買った.

起動したらホーム画面に変な生き物いると思ったけど,これが噂のiコンシェルか・・・アンインストールできないっぽいのでアプリ設定で無効に.他にも見覚えの無いアプリアンインストールするか無効にしてすっきりした.

IIJmioのsimだけど特に問題は無さそう.

数世代前のやつだけど,つなぎとしては結構よさげ.初めて国産スマホを買いました.念願の防水.モバイルSuicaも使える.あとはQiに慣れてしまったので充電のたびにUSBつないだりドックにセットするのがめんどかったり,Androidのバージョン古いのは,まぁ2年以上前の機種だから仕方ない.

良い

  • 防水!
  • FeliCa
  • microSD挿さる

微妙

  • Android古い
  • Qi未対応
  • APNプロトコルがIPv4だけっぽい(?)

テザリング回り心配してたけど,Bluetoothテザリングがメニューから消されてなかったのはうれしい.

ADB

http://qiita.com/pik/items/88db97c4df5924c1cbeb

MirrorLink の設定したらいけた.どちらかというと署名の無いドライバをWindows10にインストールするのではまった.

http://decoy284.net/2013/11/28/windows-8-fastboot-driver-install/

shutdown /r /o /t 0

でWindowsの起動方法選べるのか.

2015-08-30 (日)

出かけようと思ってたけど,天気悪いので引き籠る.

次のスマホ何買うか探してるけど,あまり良さそうな機種ないな...

* Nexus5

水没したNexus5のディスプレイ分解して水洗いして1週間干しておいたので,試しにつないでみる.

IMG_20150824_004613.jpg

バックライトのシートの中まで水が入り込んでて分解しないと乾きそうになかったので,こんな感じで干していた.

先週はディスプレイつなぐと起動しなかったのだけど,ちゃんと起動した.Androidのdumpsysを見るとディスプレイは生きているっぽい.一見真っ暗だからダメかと思ったけど,これはバックライトが点かなくなってるからで,パネルを透かして見ると何か映っているように見える.

携帯用のディスプレイのインターフェイスあまり知らなかったのだけど,普通のLVDSじゃなくてMIPIとかが使われてるのか.

ここまで来たらバックライトもどうにかしたいので基板眺めてると,simスロットの横にある回路がバックライトの電源の昇圧回路っぽいと気づく.インダクタとダイオードコンデンサが並んでいて,いかにもという感じ.

IMG_20150831_025555.jpg

写真の上部にあるsimスロットの横のオシロのプローブにつけた針が当たってる箇所がそれです.ちなみに,バッテリーとメインの基板さえあれば写真の状態で何事もなくAndroidが起動してWiFiにもつながってます.

ここが壊れてるものだと思ったけど,オシロで見てる限り,昇圧用ICは生きていて動作してる.ただ,本来バックライトが光っているはずの時間に3Vくらいの電圧しか出力されず,ディスプレイが消えるであろうタイミングで短時間だけ24Vくらいに上がる.

バックライトの電流をモニタして何かやってるか,どこかがショートしてて動いてない感じ.あちこち腐食してて特定むずかしいし,多層基板でパターンを追えないので,回路から切り離してしまって直接バックライトつなぐか...バックライト単体では光るの確認してるのでどうにでもなるはず.

直したところで,接着剤と両面テープ無理やりはがしたりカッターで切ったりしてるので,実用的な状態にはならないのだけど.

* [3DCG] メタセコ

この前作ったモデルで,メタセコイアのボーンのウェイトを設定をペイントで調整していたけど,球体で設定してみる.

boneweight.png

補完が有効だと補完された箇所が思わぬウェイト設定になっていることがあるので,たまに補完切って黒い箇所を気にする必要があった.あと細かい箇所は頂点ごとに設定しないとダメそう.

ボーンの操作は通常のオブジェクトと別扱いなのでショートカットキー使えないみたいでつらい.

曲面をフリーズする前のモデルと後のモデルを行き来しながら作業してるので,こんなスクリプト書いてボーンをコピーしたり左右間で同期取ったりしていた.メタセコイア上で実行できるようにpythonで書こうと思ったのだけどスクリプトのAPIからはボーンにアクセスできないようなので,面倒なのでrubyでmqxファイル直接書き換えることに...

2015-08-29 (土)

Oculus SDK V0.7.0.0-betaを入れた.Windows 10でもServiceに接続できないとは言われなくなった.外部ディスプレイとしては認識しない方針になったのか...ヘッドトラッキングとか無視してブラウザ+WebGLだけで遊ぶみたいなことはやりにくくなる.そしてドライバ入れろと書いてあるけど,メインマシンはオンボードのIntel HD Graphicsなのでどうしようもない.

2015-08-28 (金)

ここ数日,とても眠い.

2015-08-26 (水)

牡蠣食べた.

2015-08-24 (月)

電子工作する日.

2015-08-23 (日)

* 水没したNexus 5

ポケットに入れたまま泳いだのは水没とは呼ばないと言われた気がするけど.

IMG_20150823_202120.jpg

目に見えてあちこち腐食している.すぐ分解してバッテリーを取り外せなかったのは痛いなあ.

電源ボタン押しても一見何も起きないけど,CPU付近がほんのり暖かくなる.あとUSBもNexus5としては認識されないけど,Android composite adb interface出てきた.

これ,なんとかなるのではと少し粘ってたら,奇跡的に(?)adb logcatつながった.周辺デバイスが色々死んでいて起動途中でエラー出てるだけでCPUもストレージも生きてるっぽい.だいぶ前に色々いじるときに,(セキュリティ的にはあれだけど)Unlockしたままにしてたので,fastbootで起動してファイルシステムをマウント.

まだ中に水が残ってそうなので,最低限必要なものだけ救出して電源切っておく.

本当にダメだったら,オモチャとしてARMにJTAGでつなぐの試すとか,ダメもとでフラッシュメモリ剥がして直接データ見てみるとか試したかったけど,その必要なくなった.

ディスプレイパネルの中に水が入ってるのが見えるので,組み立てる前にどうにかしたいのだけど難しい...

ディスプレイ以外組み立てて起動したら少し改善してて,Android起動するところまで来た.ディスプレイない状態でもddmsとかで画面の様子見れるし,とりあえず問題なく動いてる.

Nexus5の液晶パネル

メモ:

裏面から

  • 鏡面の薄いフィルム
  • LEDの光を導く溝が入ったプラスチック版
  • 光を拡散させる半透明のフィルム
  • 半透明で鏡面のフィルム
  • 半透明なフィルム
  • 液晶本体
  • タッチパネル(液晶から剥がすのはほぼ無理)

みたいな感じで,各フィルムの間に水が溜まってたので剥がして乾かす.

バックライトのLEDは3本線が繋がっているけど,12個のLEDが左右6個の2系統に分かれていた.アノードコモン.直列につながっているので,6個光らせるには18Vくらい必要っぽい.試しに電源つないだらパネルは光ったので,本体側に載っている昇圧回路が死んだっぽい.高い電圧かかってると水に弱そうだ.

2015-08-22 (土)

* 川とバーベキュー

川に行く日.

7時に東銀座に集合なので6時前に起きる.

キャプ場のバンガロー借りてバーベキューしたり泳いだり飛び込んだり.

IMG_20150822_151639.jpg

行く途中,コストコで肉をたくさん買ったのだけど,おいしかった.そしてコストコはじめて行ったけど大きくて面白い.

帰る前にまた川で遊んでいて,ふと写真撮ろうと思ってスマホをどこに置いたか考える.そして,ポケットにNexus5を入れた状態で服着たまま水の中にいることに気づいた...

ちなみに,首から下は水の中.

水に入った直後に気づけばまだ救いはあったのだろうけど,散々遊んだ後なので絶望的.すでに電源切れてるし,端末振ると水が出てくる状態だけど,とりあえずカッターナイフ借りてカバーをベリベリ無理やり剥がして叩いて中の水を出す.出せる水分は全部出した状態で車内で乾かしつつ帰る.

とうか,Nexus5って特殊ドライバー無いと電池すら外せないのか...つらい.

帰れば別の端末はあるし,データは大体どうにかなるだろうけど,今日撮った写真は電波弱くて転送できてなかったのが心残り.

IMG_20150822_170833.jpg

最後に撮った写真.この10分後には水の中だった.(写真サルベージできた)

帰宅

家で本格的に復旧しようと思ったけど,工具が足りなくて半ば断念.精密ドライバーとラジオペンチで無理やりこじ開けようとしたのでネジがだいぶダメになってしまった.もう数時間経ってるので時間との勝負という感じも無いのだけど手元の道具だけで.そしてまだ水が出てくる...腐食してる箇所ありそうなので歯ブラシで磨いて,ドライヤーで多少乾かして,シリカゲルと一緒に袋に入れておく.

一昔まえなら,基板を歯ブラシで磨くの結構効果があったのだけど,BGAパッケージばっかりなので意味あるかわからない.それでもQFPや普通の表面実装部品も多いのでやらないよりはよさそう.

とても眠いので寝る...

2015-08-19 (水)

* starts_with/ends_with

文字列クラスの startsWith/endsWith相当の関数,利用頻度そこそこ高いけど各言語で微妙に違っていてつらい.特にスネークケースな言語はstarts_withなのか,start_withなのか,startwithなのかstart_with?なのかいつも迷う.

自分が最近使った言語だけ考えても,見事にバラバラ...

  • Ruby start_with?
  • Python startswith
  • boost starts_with
  • Java startsWith
  • Golang HasPrefix
  • Erlang パターンマッチ

2015-08-18 (火)

眠いので帰ってすぐ寝る.

昨日のスクリプト少しいじる.

週末から指が痛いので会社でトラックボール使い始めた(借り物).けど,やっぱりキーボード上にトラックポイントがあると手を動かすのが億劫で痛くても使ってしまって良くない...赤いぽっちを外すことを考えよう.

2015-08-17 (月)

* mqoファイルを編集するスクリプト書き始めた

今までもmqoファイルを編集する自前のRubyスクリプトを多用していたけど,もう少し汎用的にしてPythonで書き直すことに.

mqoのモデルを読み書きするライブラリはいくつかありますがロード&セーブすると非サポートのチャンクが消えてしまったり,構造が維持されない部分があるので困る.特にgitで管理しているとdiffが役に立たないのが困りもの.なので,あくまでテキストファイルとして変更を加えるスクリプトです.

作りかけ https://github.com/binzume/metaseq-py

Pythonで書き直したと言いつつ,元がRubyだった名残でRubyでmetaseq.pyを生成しているけど,気が向いたら直す...

おまけとして,クラスのインターフェイスをMetasequoiaのMQ~クラスに合わせたので,メタセコイアが無くてもメタセコイア用スクリプトを実行できます.

作りかけなのでまともな編集はできないですが,メタセコイアのインストールディレクトリのScriptsフォルダにある,camera.pyやmaterial.pyはそのまま動きます.

./ScriptRunner.py camera.py hoge.mqo

で,hoge.mqoのカメラの情報がコンソール上に出力されます.

GUIの無いLinux上で作業してること多いのでメタセコイア無くても動くのは個人的には便利になりそう.

話は変わりますが,メタセコイアのスクリプト,メニューにある機能を呼び出したりできないっぽい(?)ので,曲面のフリーズとかしたいとき自前で全部実装しないといけないんですかね...そんなことないはずと思いたいのですが.

2015-08-16 (日)

休みが終わってしまう...

休み中に考えたりやったりしたことを慌ててアウトプットしてる感ある.

コミケは3日目らしいので気力があれば見に行くかなあ.→昼寝の誘惑に負けて行かなかった...

未だにMakefileを手で書くことがあるんだけど,BSD Makeと GNU Make と NMAKE のどれでも通るように書くときの書き方が定まらない.

* [3DCG] MetasequoiaでPMDを保存するときの材質の色

Metasequoiaで保存したPMDの材質の色を上手くコントロールするのむずい.なにも知らずにやるとテクスチャ貼ってないところが軒並みひどい色になる.

  • 拡散光を少し暗めに設定&周囲光にも物体色を暗くした色をセット
  • Metasequoia上での見た目がイマイチになるので自己照明パラメータを少し追加
  • もしくは,テクスチャ貼る
  • もしくは,PmxEditorでがんばる

なにか間違ってるせいで苦労したのかもしれないけど.→PMD(HLSL)というシェーダが選べるのでMMDと同じ表にには出来る. http://blog.metaseq.net/2014/12/pmd.html

光源の設定もリンク先ではRGB=(154,154,154)に設定しているけど,最新版だとプリセットで「PMD」が用意されているので選択すれば終わり.

メタセコイア上で全材質のシェーダをHLSL(pmd)に設定にして色とか調整するやっつけスクリプト.

doc = MQSystem.getDocument()
for mat in doc.material:
  orgShaderName = mat.shaderName
  mat.shader = 5
  mat.shaderFilename = "pmd"
  mat.shaderNode.setParameterIntValue("Toon", 5)
  if mat.textureMap == "":
    ar = mat.color.red * 60 / 100
    ag = mat.color.green * 60 / 100
    ab = mat.color.blue * 60 / 100
    mat.ambientColor = MQSystem.newColor(ar, ag, ab)
  MQSystem.println("mat: " + str(orgShaderName) + "->"+ str(mat.shaderName))
MQSystem.println("ok.")

pythonスクリプトからシーンの光源の設定ってあまりできないのかな...MQCScene::SetGlobalDirectionalLightColor()とかあるのでプラグインからは呼べるっぽい.

ThinkPadのトラックポイントでモデリングしてると指が痛くなるので,マウスが欲しいかもしれない.

2015-08-15 (土)

* [Golang] goleveldb 使ってみる

https://github.com/syndtr/goleveldb を使ったりする日.

Golangから手軽に使えるDBなにが良いかなといろいろ試し中.boltdbでも良さげだった.

sqliteはCのバインディングなのでピュアGolangな奴が欲しかったので.

とりあえず使えてはいるけど,ORM的な層を書くため,Golangのリフレクションを久しぶりに触ったけどやっぱ辛い.実行しつつやらないと,今使っているValueがなんの型なのかすぐ分からなくなる...

* [3DCG] Metasequoia 4.5.1

一年ぶりにMetasequoia触ってみる.標準でボーン入れられるようになってたのは気づいてましたが初めて使いました.

頂点ごとにウェイトを指定できる.

metaseq451.png

ボーンの編集とモデルの編集を行ったり来たりするので,モデル編集時にもボーンが表示したいなあ.これはボーンをポリゴンとして入れるのに慣れてしまったせいなので慣れるかも.

メモ:

  • ボーン複数同時に操作したい場合はボーンリストのツリーを展開して選択
  • ロックされてるオブジェクトはリアルタイムに変形されない
  • ボーン情報は.mqxのxmlファイルに書かれるっぽい
  • PMDに出力した時IKの名前がおかしい時はボーンの設定モードを「PMD向け」にすると設定出る

satsuki.png

髪型変えたり色変えたり顔変えたりしていたら,最近見た覚えのあるキャラクタになった.色々雑すぎる感ある.

2015-08-14 (金)

この日記,いままで怪しげなwiki記法で書いていたけど,Markdownにしてみる.久しぶりにPerl書いた.

気づけば休み終わりそうになってる.一日12時間以上寝てるのがダメなんだろうか...二か月くらい休みが欲しい.

電気街と本屋とマクドナルドとルノアールで過ごしてる気がするので,引き籠っていたというには微妙だけどメールとかTwitterとかSNSの通知全部無視して外からの情報ほとんどシャットアウトしてるので,普通に引き籠るよりダメな感じの生活を送ってる...

* C88 3日目 東2ホールO-45ab

また第7開発セクションで記事書かせてもらいました.「ななかInside PRESS vol.7」コミケで見かけた方は手に取っていただけると嬉しいです.詳しくはリンク先を参照してください.

p1_s

締め切り守れないし直前で修正入れたりして迷惑かけまくった気がしますが,ちゃんと出てよかったです.

2015-08-13 (木)

コード書く日.

家から一歩も出なかったような気がする.

2015-08-12 (水)

溜まっていたアニメやラノベを消化.

2015-08-11 (火)

14時間くらい寝た.

部屋片づけたり,買い物に出かけたりする日.

もう少し高性能な頭が欲しいなぁと多々思うのだけど,どうにかならないんだろうか.

とはいえ,一握りの異常な天才っぽい人を除けば人間の頭の良さは誤差の範囲だろうし,ヒトという種は今後退化していくんだろうと思うと,タンパク質製のハードではなくて,光ファイバで結ばれたシリコン上の知能に掛けるしかないという感はある.

2015-08-10 (月)

とても眠い.

だるくて夕方までやる気がでず.終了数時間前から少し頑張る.

やっぱ変なので寝る前に熱計ったら37度あるな...3日間頭を使うためには,まず体力が足りてなかったらしい.

* ICFP Contest 2015

終わった.

終わったので寿司食べました.

IMG_20150810_214720.jpg

なにが悪かったんだろうと思ったけど,頭が悪いんだろうという結論?.

ICFPC メモ

3日間やっていました.今回は二人で参加.

終了時点のLeaderboardを見ると26位っぽい.悪くはないけど昨日の夜は8位とかだったので,微妙なところ.

今回のテーマはクトゥルフでした.クトゥルフ神話については這いよれニャル子さんで得た知識しか無いです.思い返すと関数型言語と関係なかった気がするけど,気付いてないだけかなあ.

Phrase of powerは18種類あったらしいけど,良くわからないので問題セットをひと目見ただけで分かる,4語だけで戦っていた.Power 6未満のチームではトップ...

例年通りC++で書きました.とりあえず全員掛ける&どんな問題来ても頑張ればどうにかなるC++だけど,最近書かなくなったし別の言語を探すべきかもしれない.久しぶりだったので,なかなかコンパイル通らないストレスもある.セミコロン忘れるとか,宣言時の型を後ろに書くとか,ネームスペースのコロンがひとつ足りないとかが多い.配列の初期化の{~}[~]で書いてて,コンパイラにラムダ式がどうとか言われた時はいったい何を言ってるんだと思った.

niwasakiも言っていたけど幅優先探索とかが手軽に書ける言語が欲しい.

2015-08-09 (日)

眠い.

ピザ食べた.

IMG_20150809_193815.jpg

2015-08-08 (土)

ICFPC

ソルバ書いたり.バグ取ったり.

2015-08-07 (金)

ICFPCのついでに夏休み取ることにしたので今日と来週は仕事は休みです.

Windows 10来てたので,とりあえず一台だけアップデートした.メインマシンのX250もやりたいけど,開発環境壊れると嫌なのでICFP終わってからにしよう.

* ICFP Contest 2015

今年は二人で.

まずは問題読みつつシミュレータを書いたりする.それらしく動くけど,判定が違う部分があるらしくvalidだと思っていたものが提出したらスコア0になってしまったりする.

2015-08-05 (水)

日本語書けない...

2015-08-02 (日)

暑い.そして眠い.

秋葉原行って本買ったり,ルノアールでコード書いたり夏用の原稿書いたり.

2015-08-01 (土)

やらないといけないこと色々あるような気がしないでもないけど,だるいので寝る日.