2004年09月01日

flex / bisonの導入

flex/bisonはじめて8時間以内FAQを見て導入。
bisonとflexはSourceForge GnuWIn32 File Listからとってくる。
以前、インストールした時はいろいろと足りなくて、いろいろ入れた気が・・・。
で、普通にbison.simpleとかないっすね。
バージョンが
bison 1.875
flex 2.5.4a
となっていたので、参考にしたページよりかなりbisonのバージョンが上がってますね。
とりあえず、解凍して出来た物をそれぞれC:\bisonとC:\flexに入れて、それぞれのbinへパスを通す。
で、動きやがれ!
動いた。一部コンパイルでエラーが出ているが、昔のバージョンから何かが変わって、指定方法が違うようになってしまったからだろう。
特に問題はないことにしよう。
bisonよりflexが使いたくて入れたわけだし。
なので、うまくいかなかったら、また調べることにする。

投稿者 Takenori : 03:55 | コメント (0) | トラックバック

2004年12月03日

ロジクールのキーボード

少し前からキーボードのテンキーの0が時々凹んだままになって、000・・・って打たれてしまうようになった。
これはそろそろ替え時かなとロジクールのキーボード iK-27を購入。
今日届いたので、つなぎ替えた。
で、後ろの足を立てて、置くと・・・ 水平なんですけど。
確かにスーパーフラットキーボードって書いてあったけど・・・
これは・・・
でも、せっかく買ったので少し使ってみるとことにした。
そしたら意外や意外、打ちやすいかも。
いや、キータッチが好きなかたさと感触なのかな?
メカニカルでやたらカタカタ鳴るのがいいと思っていたけど、ややソフトなタッチ感のほうが良いのかも。
まあ、そんなにこだわりがあるわけではないが。

投稿者 Takenori : 10:28 | コメント (0) | トラックバック

2005年01月18日

クリエティブ・コモンズ

http://internet.impress.co.jp/im/pdf/cc.pdf
http://hotwired.goo.ne.jp/matrix/0311/

すばらしい。
著作権などのライセンスにかかわることを自動化しようという試み。
これから積極的に取り入れていきたいと思う。

投稿者 Takenori : 03:45 | コメント (0) | トラックバック

2005年02月16日

Nortonアンインストーラ

Norton Internet Security 2005 が、他のアプリをアンインストールしたらうまく動かなくなったので、再インストールするために、アンインストールしようとしたがエラーの嵐。
仕方なく [無視] をひたすら押してアンインストールを進めると「アンインストールは無事終了しました」というようなメッセージが出て終了。全然無事じゃない気がするけど・・・
で、インストールしようとするが、案の定途中で「instopts.dat が見つかりません」とかエラーが出る。
Symantec だからね。Nortonではいつものことだ。
そこで、レジストリからSymantec が付く物をすべて削除。
すごく数が多かった。
また、フォルダやファイルも削除。
それでも同じように「instopts.dat が見つかりません」が出る。
今度はNorton が付く物をすべて削除。
これも結構な数あった。
が、やはり「instopts.dat が見つかりません」が出る。
再びフォルダやファイルを削除して、再度実行するが結果は同じ。
何だこれは? いつもより強力だ。
で、いろいろと探すと、SymUninst.exe という物があった。
何らかの原因でアンインストールがうまくいかなかった時、インストール情報を一掃してくれるツールのようだ。
なんだかなぁと思いつつ実行。
結構時間がかかって、再起動。
起動中にシステム更新のプログレスバーが出た。なんだ?
そして、インストールを実行。
が、コンポーネントの更新かインストールか何かのところで失敗する。
なんだ?
IEのバージョンか? と思って、バージョンを確認するが、バージョン番号が表示されない。(一度インストールしているので、IEのバージョンなわけはないのだが)
???
IE6のセットアッププログラムをDLして、インストール。
そして、再びNorton Internet Security 2005 のインストールを実行。
無事にインストールできた。
なんかすさまじく時間を費やした気がする。

投稿者 Takenori : 15:54 | コメント (2) | トラックバック

2005年04月10日

Ajaxに少し興味を

Ajax解説ページ
ようはJavaScriptで通信をして動的にブラウザの画面を書き換える手法のことみたい。
Ajaxに当たるかどうか分からないけど、GoogleSuggestは楽しい。
携帯の予測変換みたいに言葉を提示してくれる。
日本語でもきちんと処理されるところがすごい。
インクリメンタル検索で、確定するまで検索が行われないものが多いので、変換中に文字を取得して何かするって言うのは出来ないのかと思っていたけど、そうでもないのか。でも、よく考えたら、Excelとか他のセルと同じ言葉っぽいのは途中でも候補が出るか。インクリメンタル検索は使い勝手の問題かな。

で、Ajaxを使えば、ブラウザをUIとするアプリの使い勝手が向上しそうだ。
Javaを使えばいろいろと出来るが、VMの起動が遅くていらいらするので、あまり使いたくないというか、あんまり使ったことない。
JavaScriptならブラウザが立ち上がっていれば、即座に動くので快適。動作速度も気になるほど遅いようには感じない。
これはなかなか良いなぁと思ったけど、Flashでもいいんじゃないか? とふと思った。なぜだか知らないけど、Flashはすぐに動き出す。それにXMLも扱える。
FlashをUIとするアプリを作っても面白いかもしれない。
Mingを何に使うのか考えていたけど、フォームデザイナみたいなのを作ると面白いかも。
C++Builderのようにイベントを割り当てたりして、アプリを作るような。
でも、そういうのってC#とかに近いかも。
まあ、なんにしてもいろいろと出来そうだな。

その他 Ajaxメモ
Ajax で画面遷移なしの Amazon 検索
Ajax: A New Approach to Web Applications
BMediaNode::JavaScript Templates
JavaScript Templates

投稿者 Takenori : 15:49 | コメント (0) | トラックバック

2006年01月29日

blogger API クライアント

mixi Alertに日記投稿機能を追加したら、思っていたよりも使い勝手が良いので、blogger API クライアントを試してみることにした。
Windows 環境で使える blogger API クライアントの一覧にある程度まとまっている様子。
シェアウェアだけど、よさげなBlogWriteをとりあえず試用してみることにした。
ブログの投稿が活発化するかも。
試用期間は2週間なので、あんまり使わなかったら良さはわからないし。

投稿者 Takenori : 20:35 | コメント (0) | トラックバック

2006年02月06日

サーバーのハードディスクが壊れた

昨日まで何ともなかったのに今日いきなりアクセス出来なくなった。
ログインしようとしたらフリーズしてしまったので、再起動するとHDDが認識されなかった。
いろいろとやってみるがHDDが壊れた可能性が高い。
バージョン管理しているソースコードがー
まあ、最新のはあるので特に問題はないけど、気分的に悲しい。
それで、とりあえずいつも使っているWinマシンにSubversionを入れようとしたらApacheのバージョンが古いと言われたので、Apacheのバージョンを上げてからSubversionをインストール。
リポジトリを作って最新のソースを入れた。
なんか、ローカルで使うだけならWinの方が使い勝手がよくていいかも。
今後はローカル用は普段のWinマシンで、公開するのはLinuxのサーバーにしようかな。
でも、またインストールして設定するのかと思うと気が重い。
今後のためにAcronis True Image 8.0のようなバックアップソフトを購入しようか迷う。

投稿者 Takenori : 23:01 | コメント (0) | トラックバック

2006年11月24日

関数呼び出しグラフ

Doxygenでは生成できなくて、ずっと欲しいと思っていたら、いつの間にか追加されていたみたい。
ChangeLogを見るとDoxygen Release 1.4.7 (release date 11-06-2006) で追加されたみたい。
どうも誰かが追加したみたいですね。
6月ってことは今入れてるやつでは出来ないので、入れ替えないと。

投稿者 Takenori : 12:34 | コメント (0) | トラックバック

2007年03月03日

入力インターフェイスとしてのカメラ

カメラを入力インターフェイスとして見た場合、大体カメラを固定してそこに映ったものをどうにかするというアプローチが多い。
ピンポン球とウェブカメラで作る6自由度インタフェース 3Dインタフェースも、カメラを固定して、そこに映ったピン球の位置で座標を得るような仕組みだ。
でも、Wiiライクな操作でスクロールできるNetFrontの新ブラウザを見て衝撃を受けた。
カメラを動かして、映った映像の動きを検出して、それを入力とするとは。
携帯電話の場合は、ほとんどの機種にカメラが付いているので、それを入力機器として利用するのもすごい。(ただ、携帯電話の場合は画面も動いてしまうので少々見づらい気がするが・・・)

この発想でいけば、HMDにカメラ付けて、そのカメラを入力デバイスとすれば、実際に見た方向を映すことができる。
動き検出は様々な場面で使われているので、上下左右移動は問題ないと思うが、拡大縮小の検出はどうなのだろうか?
それが出来れば、前後移動も検出でき、3軸の入力デバイスとして扱える。
手につけて3D空間上の任意の位置をポイントすることも可能になるはず。
空中で操作するマウスのようなデバイスが出来そうだ。
3Dデスクトップに3Dマウス。
使い勝手はわからないが、なんだか楽しそうだ。

ゲームでもカメラを動かすとゲーム中のカメラが動くようにすると操作性が上がるだろう。

投稿者 Takenori : 19:20 | コメント (0) | トラックバック

2007年03月14日

TRACのマイルストーン

TRACのマイルストーンは今まで使ってなかったけど、きちんと入れてみると少しうれしい。
マイルストーンを入れると、全チケット数と解決済みチケット数で進捗度があらわされるようになるので、後やらなければならないことがどれくらいかわかりやすい。
進捗管理などをしているリーダーにとっては、常時チケット数をメトリクスとして進捗を把握できる。
進捗が目に見えるので、モチベーションの向上につながる。
でも、実質的な効果はないかもしれない。
ただ、開発はモチベーションがすべてなので、少しでもモチベーションが向上すればやる価値はあるだろう。

投稿者 Takenori : 21:29 | コメント (0) | トラックバック

2007年10月10日

「IPAフォント」が一般配布されたということで

※ 2007/10/10 回答追記

IPAが日本語フォント「IPAフォント」を一般に配布
一般利用者向けIPAフォントのダウンロード

使用許諾条件で、レンダリング済みフォントの扱いについてわかりづらいので問い合わせてみた。

内容は以下の通り

----

お問い合わせ項目:お問い合わせ
お問い合わせ内容:
IPAフォント使用許諾契約についての質問です。

IPAフォントをレンダリングし、bitmap形式のファイルなどに保存、テキストを表示する時に、そのbitmap形式のファイルから文字ごとに切り出して、テキストを表示するような用途で利用する場合についてどのような扱いになるのか疑問に思いましたので、ご教授願います。

1. レンダリング済みのbitmap形式のファイル自体を単体で配布する。
2. レンダリング済みのbitmap形式のファイルをゲーム等のコンテンツ内に含めて配布する。
3. レンダリング済みのbitmap形式のファイルとIPAフォントそのままのファイルをゲーム等のコンテンツ内に含めて、bitmap形式のファイルを使用してテキストを描画するコンテンツを配布する。
4. ゲーム等へIPAフォントをそのままの形で同梱し、実行時にbitmapへレンダリングしたものを表示する。

上記の1~4のケースについて可能か不可かをご教授願いたく。

以上、よろしくお願いいたします。

----

使用許諾契約書を読むと、4はまず大丈夫だと思うが、他は微妙なので質問。
2がOKとなると、かなりありがたいのだが。

以下、回答内容。

----

ご回答
お問い合わせの項目のうち、
1. は内容に変更を加えた物の再配布に当たりますので、配布できません。
2.について、フォントの一部があらかじめ文書等に埋め込まれた状態のものであ
れば、配布可能です。文書がダイナミックに生成される場合については、フォン
トがあらかじめ文書に埋め込まれたものの配布であるとは認定し難いと考えます。
3.改変されたものが含まれますので、これを再配布することはできません。
4.は可能です。

----

ある程度予想通りだが、一番辛い結果。。。
レンダリング済みフォントとして組み込むことは出来ないか。
やはり実行時レンダリングか。

投稿者 Takenori : 15:28 | コメント (0) | トラックバック

2007年11月11日

インデント

ここ最近ソースコードをよく読んでいた。
その際、気になるのがインデント。
まあ、自分のスタイルと違っていてもと言うか、多くの場合は違っているけど、そのまま読む。
読むだけなら、たいした影響はない。
でも、それらのソースコードを自分のソースコードに取り込もうとした時、インデントが違っていると気にくわない。
でまあ、自分のソースコードに合うようにインターフェイスなどを合わしつつ、インデントも合わせていた。
そうすると、インデントを合わすのが面倒くさい。
と言うことで、インデントしてくれるツールを使うことにした。
初めに思いつくのは indent だけど、とりあえず検索してみた。

C/C++ソース整形ツール と言うページ発見。
この中で対応言語の多い Uncrustify を試すことにした。
で、まずはオプションを見て、設定ファイルを書く。
長い...
以前、indent を使おうとして、設定ファイルの途中で面倒になってやめことを思い出す。
でも、今回は一応書いた。
こんな感じ Uncrustify_opt.zip
完全に期待通りではないが、いつもの書き方と大体同じになったのでよしとした。
今後使いながら、直せそうなら設定ファイル直すかな。
ちなみに、上のはShift-JISにしていない。
でも、意外と細かい部分で自分のルールがあるものだと気付いた。
たとえば、普段は、小括弧の中に変数などがあるとスペースを入れるが、while(1)の時は入れないとか ( でも、これは上の設定ファイルでは反映できていない ) 。
設定ファイルが長くなってしまうわけだ。

投稿者 Takenori : 21:04 | コメント (0) | トラックバック

2008年01月28日

処理負荷のバーとか出して遊んでみる

D3D で処理負荷のバーを出して遊んでみる。
こんな感じ。
bar_image_20080128.png

GeForce 8600 GTだとこの程度では振り切れてる。
770FPS超え。
以下はオンボードの GeForce 6100 で実行したところ。
青いのが60FPSなので、200FPSぐらいかな。
結構適当に作っているので、がんばればもっと行くと思う。
追記 : オンボードだとメモリアクセスに食われていそう。
だから、単純な Clear で時間食っているかも。

bar_image_20080128_2.png

一応、ソースコード
D3D の処理とか、結構適当。

投稿者 Takenori : 01:47 | コメント (0) | トラックバック

2008年03月20日

TortoiseSVN のインストール方法

TortoiseSVN のダウンロードページにアクセスして本体と日本語パックをダウンロードする。
本体は、ページの上の方にある ( 下の画像のようなリンク ) 。
32 Bit TortoiseSVN-1.4.8.12137-win32-svn-1.4.6.msi Installer と書かれたもの ( OSが64bitなら64bitの方 ) 。
20080320_TortoiseSVN_DLPage_01.png

日本語パックは少し下にあるので、スクロールすると以下のようなリンクがある。
20080320_TortoiseSVN_DLPage_02.png
この中の 18 Japanese Setup …… と書かれた Setup をクリックして、ダウンロードする。
これも 32 Bit の方。

両方ダウンロードしたら、最初に本体をインストールする。
ダウンロードした「TortoiseSVN-1.4.8.12137-win32-svn-1.4.6.msi」をダブルクリックして起動する。
20080320_TortoiseSVN_Inst01.png
Next を押す。
20080320_TortoiseSVN_Inst02.png
ライセンスを確認して問題なければ、「I accept the terms in the License Agreement」にチェックして Next を押す。
20080320_TortoiseSVN_Inst03.png
インストール先を選択する。「C:\Program Files\TortoiseSVN\」で問題なければそのまま。
Next を押す。
20080320_TortoiseSVN_Inst04.png
この次に進んで他のアプリが起動していると、インストール時にアプリによっては終了してくれと出るので、あらかじめ起動しているほかのアプリは終了しておく。
Install を押す。
20080320_TortoiseSVN_Inst05.png
インストールが始まる。
もし、インストールを阻害するアプリが起動していたら警告が出るので、そのアプリを終了してから Retry を押す。
20080320_TortoiseSVN_Inst06.png
インストール終了。
Show Chengelog のチェックはどちらでもいいが、ほとんどの人は見ないだろうから外しておいてかまわない。
Finish を押す。
20080320_TortoiseSVN_Inst07.png
再起動確認が出る。
再起動してからでないと、日本語パックが入れられないので、ここで Yes を押して再起動。


再起動したら日本語パックをインストールする。
LanguagePack-1.4.8.12137-win32-ja.exe をダブルクリックして、インストーラを起動する。
20080320_TortoiseSVN_JP_Inst01.png
「インストール」を押す。
20080320_TortoiseSVN_JP_Inst02.png
「完了」を押す。
これで日本語が入ったので、次に日本語が表示されるように設定する。

適当なフォルダで右クリックする。
20080320_TortoiseSVN_Setting_01.png
TorsoiseSVN を選んで、その下の Settings を選ぶ。
20080320_TortoiseSVN_Setting_02.png
設定画面が出るので、Language:のEnglishを選んで、日本語にしてから「OK」を押す。
これで表示が日本語になる。
以上でインストールは終了。

投稿者 Takenori : 15:47 | コメント (0) | トラックバック

TortoiseSVN でのチェックアウトと更新

開発メンバーの中にはバージョン管理どうこうではなく、単純にリポジトリからデータを落としてきて、そのデータを使うと言うか、動かしてみてみるだけの人も多いと思う。
その人用にチェックアウトと更新のみ解説する。
まずは、データをダウンロードするフォルダを作る。
ここは以後更新するたびにずっと使う。
作成したフォルダで右クリックする。

20080320_TortoiseSVN_CheckOut_01.png

「SVNチェックアウト」を選択する。

20080320_TortoiseSVN_CheckOut_02.png

リポジトリのURLに指定されたパスを入力する。
チェックアウトディレクトリは、右クリックしたフォルダの名前になっているはず。
「トップフォルダのみチェックアウトする」にチェックが入っているときは外す ( すべて落とす時 ) 。
「OK」を押す。
これでチェックアウトが行われる。
パスワードなどが必要な場合は、聞かれると思うので、ユーザー名とパスワードを入力する。
しばらく待てばチェックアウトが終了する。
以上、データがダウンロードできたことになる。

次に更新。
開発作業中では、全てのデータが更新されることはまれで、だいたい一部のファイルのみ更新される。
バージョン管理を使って開発しているプログラマーなどは、その更新したファイルをリポジトリに反映するので、データを利用するメンバーはその更新したデータを取得する必要がある。
TortoiseSVN を使っていればこの作業は簡単。
上のチェックアウト用に作ったフォルダで右クリックする。

20080320_TortoiseSVN_Update_01.png

前回と少しメニュー項目が変わっていると思う。
ここで「SVN更新」をクリックする。
クリックすれば更新が行われるので、しばらく待つ。
完了すると変更のあったファイルのみ更新されているので、後は動かして動作を確認すればよい。

投稿者 Takenori : 15:52 | コメント (0) | トラックバック

2008年05月22日

ディジタル神話

「音楽 CD は、バイナリがまったく同一でプレイヤーも同じなら音質は変わらない。」は間違いだ。
これは事実として認識しても間違いないようだ。

事の発端はガラスで出来た CD の音が良いと言う話題から。
そんなことはありえないと言う意見が多かったが、私は「ディジタルを構成しているものは全てアナログなのだから、何か影響があってもおかしくない」と言う意見だった。
つまり、音は変わることはあり得るという考えだ。

まず、疑ったのは音楽 CD は、読み込みエラーが多いと言う考え。
CD は、読み取りエラーが発生すると、エラー訂正によってほぼ元のデータに復元される。もし、それでも復元されなければ、補間によって、元のデータに近いと考えられるデータになる。
つまり、補間がかかればデータが変わるのだ。
だが、CD の読み取り面が綺麗で、CD プレイヤー自体も経年劣化などしてないければ、読み取りエラー自体発生しないようだ。
また、通常使用時においても、エラー訂正で訂正できないレベル以上、つまり補間がかかることはまずないということが複数の検証サイトによって検証されている。
補間がかかるというか、読み取りに失敗するのは、CD プレーヤー自体に衝撃が加わった時。
これの対策としてポータブル CD プレイヤーには音飛び防止バッファが数十秒積まれている。
ただ、カーオーディオにおいては、この音飛び防止バッファが削られていっているらしい。
理由は至極納得できるもので、常に振動が加わる車では音飛び防止バッファがいくらあっても、バッファを使い切ってしまうと言うことのようだ。
そのため、音飛び防止バッファに頼るのではなく、CD プレイヤーに加わる振動を軽減し、読み取りエラー自体が発生しないようにする方向に進んでいるんだとか。
話がそれたが、エラーによって音が変わるということはなさそうだ。
このエラー以外に音が変わる原因についての論拠は尽きたが、どうも釈然としないためさらにいろいろと調べた。

比較的信頼にたるソースとして、プレクスターの技術者が記者のインタビューに答えると言う記事が見付かった。
プレクスターと言えば、高性能 CD-R ライタで有名だったメーカーだ。
第14回:迷信だらけのデジタルオーディオ[特別編] ~ドライブメーカー「プレクスター」に聞く、CD-Rの変化~

CD-R に焼くと、どうも音がこもった感じがするような気がしていたが、その感覚は間違いではなさそうだ。
さらに有名な検証サイトを以下にリンクしておく。
かなり、長いので上の記事で納得できない人や興味のある人は読むといいと思う。

以下、今日の必ず得する一言 より
音楽CDの音質とジッタの関係のナゾ(CDの神髄編)
音楽CDの音質とジッタの関係のナゾその2(原信号特性編)
音楽CDの音質とジッタの関係のナゾその3(ジッタ変動とスタビライザーX編)
音楽CDの音質とジッタの関係のナゾその4(みんなでジッタサウンド編)
音楽CDの音質とジッタの関係のナゾその5(ジッタの電源ライン波及編)
音楽CDの音質とジッタの関係のナゾその6(緑に塗ったりカットしたり編)
音楽CDの音質とジッタの関係のナゾその7(ジッタの影響はDACか?アンプか?)
音楽CDの音質とジッタの関係のナゾその8(ジッタ量とエラー訂正頻度)
音楽CDの音質とジッタの関係のナゾその9(TE信号とエラー信号記録法)
音楽CDの音質とジッタの関係のナゾその10(山本式メカニカルダンパー変造)
CD-Rのジッタとメーカーの言い分のナゾ

A-1 DRIVE
CD(ディジタルオーディオ -S/PDIF) エラーカウンタ/ステータスモニタの製作

ジッタ計測などを行っているページ efu's page

これらの記事を読んでどう判断するかは自由だが、私は音は変わるという意見になった。
まあ、元々そうだったんだが……

投稿者 Takenori : 10:46 | コメント (0) | トラックバック

デジタルトキワ荘とSNS

気付いたらデジタルトキワ荘が SNS になっていました。
今月のはじめごろに登録し、活用しています(?)。

mixi とは異なり、クリエーターの方ばかりでいろいろと刺激があります。
似たような悩みを持っている人や考えている人、開発上の話など、読みたいと思う日記が多いです。
それで、よくぐおーーーっもっとかんばってもっと早く開発しなければ!と思います。
負けず嫌いなので、すごい人とか見ると、絶対負けない、がんばると思います。

デジタルトキワ荘では、ブログと同じような日記を書いていますが、マニアックな内容は少し避けています。
読んでもそのことに詳しいプログラマ以外わからないようなこともブログでは気にせずガンガン書いていますが、日記ではもう少し軽めです。
後、ある程度クローズドなので、実験的に作ったものを適当に置いてみたりしてます。
ここだと、ある程度しっかりしないと公開し辛い面がありますが、SNS なら、まっ、いっかと。
日記も途中の段階であれこれ考えていることを書いています。
ここのブログはそうじゃないときもありますが、ある程度まとまってから書くようにしているので、途絶えたりする時がありますが、日記ではこーかな?あーかな?と書いてたりします。

後、○○出来る人募集とか、探したりするのもやりやすそうです。
これ出来る人いない? こういう人探しているんだけどとか、今こういうことやってるけどうまくいかないなど、同じ開発者だからわかることや出来ることが出来そうで期待しています。
似たような人たちだから距離も近く感じます。
また SNS をしている人はわかると思いますが、ブログよりも SNS の日記の方がコメントしやすいです。

ちなみに私のページはここです。
よほど変な人でなければ、マイフレンド申請してもらえば OK します。
ただ、ある程度どんな人かわかるようにプロフィールなど書いておいて欲しいです。
さすがにどんな人かわらないのに OK すること出来ないので。

ま、気が向いたら一度お試しあれ。

投稿者 Takenori : 13:34 | コメント (0) | トラックバック

 
Total : Today : Yesterday :