カテゴリー: コンピュータ

Programming, コンピュータ

fltk Programming on OSX

半日かけて数年前に作った fltk1.x+OpenGL on Windows なアプリを fltk2 on OSX に移植してみた。

fltk1 から fltk2 への変更はほとんどがネームスペースまわりの扱いなので機械的な作業なのだけれども、たまにクラスが無くなっていたり定数の定義が変わっていたりするので、それを追いかけながら修正するのに結構時間を取られてしまった。

今日の作業で一通りコンパイルが通るようになったのだけれども、立ち上げようとすると Bus error で落ちてしまう。gdb で追いかけてみると、数年前にも似たような症状でハマった記憶があるようなところで落ちている。落ちた記憶はあるけれども、どうやって直したのかが覚えてない(笑。もしかしたら、応急処置的に動くようにしただけだったのかも。

こういうことは長期休暇ぐらいにしかできないし、半年以上まともにプログラムを書いていなかったリハビリも兼ているのでちょっと気合いを入れて動くところまで持っていきたい。

今回ほぼ初めて OSX 上でまともにコードを触っているのだけれどもそろそろ Xcode を使って開発をすることも試さないと。21世紀になって早数年、未だに Emacs+gdb で頑張るのもどうかと思うし。でもなぁ。Linux でも使える環境と言ったら Emacs+gdb が一番な気もするし。最近だと Eclipse もアリなのかな? 何だかんだ言って VisualStudio ってよくできてると思う。特にデバッギング環境は充実してて使いやすい。あれに匹敵するぐらいの環境ってないものかな。

ただ、VisualStudio を使うっていうことはあのメモ帳並の機能しかないエディタを使うっていうことになるのがたまらなく苦痛でしかない。あそこに Emacs が入ってればいいのに。昔はキーバインドだけ Emacs モドキにするようなことも試したけれども、中途半端すぎてむしろストレスが溜まるだけだったな。今でもかわらないんだろうか?

そういえば最近やねうらおさんのとこでもIDEの話をしてたよなーと思ったら見つけた。何かやねさん(VS派) vs 他(Eclipse派)みたいになってるような(笑。業界が違うんで鵜呑みにはできないけど、議論は参考になる。

 

Programming, コンピュータ

fltk bug on OSX(2)

昨日目をつけていた不具合を手当り次第修正したら、エディタの文字が崩れるのはなおった。ただ、まだカーソルを移動するとサブピクセル単位で文字がウネウネ動くのでちょっと気持ち悪い(笑。これもどこかで数値を丸めてしまっているんだろう。

 とは言え、自分用に使う分には問題ないのでこのまま放置してしまおうかと思っているw。今は単に手軽に使える(そして一番慣れている)ツールキットを使って 3D の描画がしたかっただけだから。それに、このままだと fltk のバグを直すだけで休みが終っちゃうし(笑。

Programming, コンピュータ

fltk bug on OSX

fltkを OSX で使うために最新のリビジョンをビルドしたものの、テキスト編集まわりの挙動がどうにもおかしい。
カーソルを動かせばゴミが残るし、エディタなんかになると表示がボロボロに崩れて使えたものじゃない。
正式リリースじゃないしテキスト入力系のバグはよくあるのでとりあえず調査開始。

 ・Windows でビルドすると?
最新版じゃビルドできないww。ML のアーカイブを見ると、Windows 版では対応していない機能が最近追加されたらしい。追加される前のリビジョンでテストするとうまく動く。OSX ではやっぱりダメ。

 ・もっと古いリビジョンを試す
かなり古いものを持ってきても症状は同じ。

 ・src をいじる
Windows で OK で OSX で NG  なので、怪しいのは src/osx の中。問題のあるウィジェットのソースを見てるとFont.cxx の中の getwidth() 関数が怪しそう。OSX のテキスト処理とか詳しくないし調べるのもメンドいので、とりあえず返り値の数字をいじってみる→思った通りに挙動が変わる。更に、7.201172 とかキリの悪い数字を返していることもわかる。この時点で嫌な予感。

 ・TextDisplay.cxx に戻る
予想通り、getwidth() の返り値を int でキャストしてる(ぎゃー!!。これが原因か。半端な数字が丸められて、結果カーソル位置の計算がずれるっぽい。
これを直すのは面倒臭そう。キャストするのをやめるだけで直ればいいんだけど、それだけで足りるかなぁ。

とりあえず今日はここで力尽きたのでやめ。あんまりにも面倒臭そうだったら fltk-ml に丸投げするかw

というか、OSX でちゃんと使ってる人は誰もいないの!?

コンピュータ

冬休みの課題:Broadcast Yourself!

一昨日のことですが、遂に念願のビデオカメラを買っちゃいました。機種は Canon のHF11

先日書いた記事では候補にすら上がっていなかったのですが、某氏の助言からいろいろ調べたら、意外といいんじゃない?っていうことでこれに決めました。

で。買ったからには何か使わねばってことで、今週は休みだし冬休みの課題と称して Youtube デビューをしてみたいと思います。ネタは、先日おわったプロジェクトで使えないかと思って休みの日に作ったもののお蔵入りしてしまったプログラム。


アカウント作成
まずは Youtube のアカウントを作るところからですが、これはすんなりと作れました。philosy という名前が使われてしまっていたので philosy08 です。

撮影・編集
次に素材の撮影。手元には iMovie HD しかないので、これを使います。が、ここで大ハマり。DV WideScreen なプロジェクトにビデオ入力経由で録画をすると、画面が縦長になって両側に黒が入ってしまいます。画面ではきちんとなっているんですけどね。。。

いろいろ試したところ、最初に 4:3 のプロジェクトで録画をしておいて、その DV ファイルを 16:9 のプロジェクトに持っていけばいいようです。これは面倒臭い :-(。Final Cut Express ならここらへんはさっくりと行けるんでしょうか?発注はしたので、到着次第確認したいと思います。

アップロード
ムービーの撮影・編集が終ったらあとは YouTube にアップロードすれば完成。ファイルの転送が終っても、サーバー側で再エンコード処理をするのでしばらく時間がかかります。

完成
そんなこんなでできたムービーはこちら。 Hello World!

あれ。4:3 になっちゃった orz。。。

3Delight, CG, RenderMan, コンピュータ

3Delight環境整備

metasequoiaonmac.png3Delight を触るにしても、データを作る際に全部 vi でゴリゴリやるわけにもいかないので、ちょっとしたモデリングと RIB エクスポートができる環境を用意することにしました。

とは言っても Mac の CG ソフトでフリーで RIB が出力できるものなんて Blender ぐらいしか知らないわけで。Blender ですかウムムムム…

そこでひらめいたのが  MikuInstaller。これを使って Metasequoia を動かせば万事解決です。Metasequoia なら RIB エキスポートできるし、昔に買ったライセンスがあるので追加の出費も必要ありません。

思いついたら即行動!!ということで MikuInstaller と Metasequoia をインストールしてみたら、アッサリと動いてしまいました。ほんと、意外なぐらい。更にサンプルデータを RIB で出力して 3Delight でレンダリングすると何も問題なくレンダリングされます。これはすごい!!

ただ、一つ問題があって Metasequoia が劇重ですw。OpenGL描画が有効になってると、まともにビューを動かすことができません。Configuration で OpenGL をオフにするとかなり軽くなりますが、それでもモッサリ感は残ります。これだったら VMWare 上で動かした方が軽快かも(笑。

第一歩としては悪くないですが、もうちょっと正攻法でいける方法を探した方がいい気がしますね。

コンピュータ

TMPDIRの怪

自宅 Mac を Leopard に変えてからいろいろとトラブルが起きているんですが、その中で一番不可解なのが謎の TMPDIR 環境変数。

chiyama@lain:/etc[121]% echo $TMPDIR
/var/folders/Jo/Jonjry+EHaeb9BGfWDzB2k+++TI/-Tmp-/

‘+’ が入ってたりして気持ち悪いなぁとかもあるんですが、一番の問題はこのディレクトリの権限が 700 になっていて、オーナーしかアクセスできないところです。

この TMPDIR 、OS のどこかで設定されているらしくていろいろなプログラムの起動のタイミングによってオーナーが変わることがあるみたいです。すると、他のプログラムはこのディレクトリが使えなくなってしまうのでいろいろ困ったことになるんですね。

一通りググってみたんですが根本的な解決策が見つからない状態で、しかたがないので手動で

chiyama@lain:/etc[122]% sudo chmod 775 $TMPDIR

とパーミッションを変更して凌いでいます。でも、これって OS が再起動する度に戻っちゃうんですよね…何かいい解決策はないものなんでしょうか。

CG, コンピュータ, 書評

スティーブ・ジョブズ 神の交渉力

スティーブ・ジョブズ神の交渉力―この「やり口」には逆らえない! (リュウ・ブックスアステ新書 48)

akiras さんから本を頂いたので、早速読んでみました。

この本はちょっと前に話題になってて、私も読みたいなと思ってたのでちょうどよかったです。

いやいや、この本に出てくるジョブスは、正に極悪非道、鬼畜と言うしかない酷い人物です。自分の気に食わないことをした人間は即クビ、どんなに会社に貢献した人物だとしても、存在した痕跡すらすっきりと消してしまうほどの非情さを持つなど、伝説のスピーチをした人間と同一人物とは全く思えないです。

だからこそ今の Apple があり、PIXAR があるんだとも言えるんでしょうが近くにいる人はたまったものじゃありません(笑

ただ、本書の内容はどこまでが事実で、どこからが著者の主観や憶測で書かれたことなのか曖昧な点が多すぎるので話半分、どちらかと言うと読み物として楽しむ程度に留めておいたほうがいいんじゃないかとは思いました。間違っても、ここに書かれているジョブス像を鵜呑みにして同じように振る舞うなんていう愚行だけはやめましょう(笑。ジョブスだからこそできることなんですから。

あと、各エピソードの終りに挟まれている著者の小噺が一々鬱陶しいです。途中からこの部分は読み飛ばしてしまいました。松下幸之助とかの話をされてもねぇ…本書が想定している読者は興味を持つ話なのかもしれないですけど。

コンピュータ, 雑記

復活

昨日から自宅ネットが不通になっていたのですが、ようやく復活しました。

原因は、昨日行なった電話設備工事で間違って私の家の線を切ってしまったからだそうで。困ったものです。

その時の言い訳がまたアレで、「線が古くて劣化してたみたいで、ハズみで切れちゃったみたいです」だそうで。えぇ〜;;

まあ、即日対応してもらえたしよしとしますが。

それにしても、自宅ネットが繋がらないとメールは受けとれないしアンテナは使えないし困りものです。やっぱりどこかにサーバーを借りた方がいいのかなぁ。

CG, コンピュータ

Vaio type Z

CGトラッキングさんの記事を読んでたら、Vaio type Z が欲しくなっちゃいました。

【物欲】 予約開始!CGも出来るモバイルノートPC『VAIO typeZ』を注文してみる

スペックだけ見ても、私が今使ってる type G の倍ぐらいは性能アップな上に、GPU に NVIDIA GeForce 9300M GS 搭載っていうのが魅力的です。これだったら、Houdini とかもそれなりに使えちゃったりするんでしょうか?

というか、このスペックだと仕事で使ってるマシンよりも性能がいいかも(ぇ

モノは試しと、さっくりと Web で見積りをとってみたら 264000円でした。うーん。今使ってる type G が幾らになるんだろう?あんまり保護とかキズとか関係なくガスガス使ってるから、下取りは期待しない方がいいんだろうなぁ。

…と思ってちょっと調べたら、最大で58000円ナノカ… Y!Auction だと 30000円とかで出てるよー。これだったら実家で使ってもらったほうがいいなぁ。 ガックシ。