Croquet(http://www.opencroquet.org/)

スクリーンショットを見て驚愕しましょう。
これが未来です。学校では教えてくれない、フューチャーです。


……って、湯川(元)専務の真似をするととたんに胡散臭くなりますが(^^;)。
いや、すごいですよ、ほんとに。
もちろん、うちのマシンでは全く動きませんでしたが。OpenGL関係のドライバもしくはライブラリが必要なのかなぁ?

使ってくださってありがとうございます(id:kzou:20060421/1145566268)

力を入れたタブ関係とキーボードショートカットを気に入ってくださってうれしいです。


でも、

EditControlを使っているEditorにありがちな長文を書いて最初の方を編集すると描画に問題あって変換時に遅くなるという問題もありませんし、

えっとその、あります(^^;)。EditControlは、.NetFramework上ではTextBoxクラスと呼ぶのですが、しょせんOSの機能であることには違いありませんので……。


Windows Mobileを使いたそうとすると、どうしてもMicrosoftが仕様として切り捨てた部分がどうしても気になりますね。ソフトウェアの設計として、用途を制限することで使用スタイルを固定することによって、そのスタイルの中では使いやすくするという方針はわかります。
EditControlの容量制限も、FileDialogのサブディレクトリ制限も、「ファイルをたくさん持ち歩かない、一つ一つのファイルは大きくしない」という方針の産物なんだろうなぁ、とは思いますが、いかんせん制限されていなかった環境に慣れちゃってる身からするとどうにも窮屈です。
細かなバグ以外はおおむね落ち着いたので、腰を据えて以下のものでも作ろうかなぁ。

  • TextBoxとインターフェース互換の独自文章編集Control
  • FileDialogとインターフェース互換の独自ファイル入出力Control

まずは、.Net Compact Framework上で、カスタムコントロールを作る方法を調べないと。

新版(0.0.0.5)

新版を作りました。

試しにJavaのソースを打ち込んでみて、1文字書き換えるごとに「タブの文字列がちらつく」事にやっと気づきました。全く同じ文字列をTextに指定するときにはredrawしないってのは、本来はOSの側でやるべき事なんじゃないのかなぁ……。

バロン届きました。

オカムラのバロンが今日届きました。これで、事務所で仕事をしていても腰が痛くならないですむ(^^)。
しかし、はじめて新品のバロンに座りましたが、思ったよりも座面が堅いんですね。というよりも、家具屋さんに置いてあるものはみんな座って大分緩くなってるんだなぁ(^^;)。

渋全(asin:B000BW80JK)

渋さ知らズ
面白かった!「ひこーき」最高!
作品との評価とは無関係に、「渚の男」「ニューゲート」変拍子でミニマルな木管楽器が現代音楽に聞こえてきます。最近、現代音楽を精力的に聴いてたからなぁ。

iAudio M3のクレイドルとACアダプターが届いた

事務所で音楽を聴くときに使っているiAudio M3は、当然ながら一日使っていると夕方には電池が切れちゃうので、適宜USBに刺しながら(その間はPC経由で再生)使っていたのですが、どうにも運用しづらいので、公式通販からモバイルじゃない普通のクレイドルとACアダプタを入手しました。
USBは下手に刺しちゃうと再起動の手間があるので、普段はUSBの口には何もささないでおいて、LineOutだけをTimedomain miniにつないであります。
iAudio M3+クレイドル+Timedomain miniでかなり快適なオーディオシステムになる……ということを考えると、AppleiPod Hi-Fiは、なるほどうまい商売だなぁと思ってみたり。

Microsoft.WindowsMobile.DirectX.Direct3D.Deviceクラスのnew

W-ZERO3においては、「横画面」だとどんなパラメータであっても失敗します。その上、Exceptionの内容が数字エラーコード(0x80004005:E_FAIL(Unspecified Error))。
原因がざっぱりわからず、午後いっぱいかけてしまいました(;_;)。
悔しいのでC#による初期化コード。

PresentParameters presentParams = new PresentParameters();
presentParams.Windowed = true;
presentParams.SwapEffect = SwapEffect.Discard;
presentParams.AutoDepthStencilFormat = DepthFormat.D16;
presentParams.EnableAutoDepthStencil = true;

device = new Device(0, DeviceType.Default, this,
CreateFlags.None, presentParams);

……え?サンプルと一緒?
でも動くようになるまでむちゃくちゃかかったんですよー(;_;)。


だけでは情報がないので、いくつか。

  • Manager.CheckDeviceType(0, DeviceType.Default, Format.R5G6B5, Format.Unknown, true)

必ず失敗します。これは、W-ZERO3にはHALが乗っていないから。でも、Windowss Mobileにおいては、HALがなくてもいいみたい。うーむ。

  • sdカード上にデータとバイナリを配置するには

巨大なリソースをアプリだと、配置するだけで本体メモリを使い切っちゃいますが、sdカード上に置けばまずは一安心です。

各プロジェクトの「プロパティ」で
バイス
出力ファイル フォルダの... を開く
バイス上の出力場所 の「ルートフォルダ」を選択
サブディレクトリに「miniSDカード\」を先頭に追加

巨大なリソースって……ギャルゲでも作るつもり(笑)?>自分

コントロールライブラリは、DLLの形にビルドされます。手始めに、NotepadWMで使っているクラスをdllにしてみようかな。

人柱募集中(http://florianswiki.dyndns.org/Web/16)

一部クラスを上で書いていた「コントロールライブラリ」の形に直しました。
以下のクラスがDLLとして分かれています。

  • TextBoxWM(標準EditControlにどうしても必要な機能だけを付け加えた物)
  • OpenFileDialogWM(標準OpenFileDialogのラッパー)
  • SaveFileDialogWM(標準SaveFileDialogのラッパー)

野望としては、TextBoxWMの文字入力・編集部分をスクラッチから起こして、長文編集に耐えるようにしたいなぁ……という所ではありますが、まずは、DLLに出来るかどうかを調べるところから始めています。
あと、tGetFile.dllみたいな感じの.Net Framework2.0版みたいなものに、できればしたいなぁ、とか思っていたりいなかったり>OpenFileDialogWM,SaveFileDialogWM
現時点では、一つ前のバージョンと機能的には全く変わりませんが、もし興味のある方は人柱になって下さると涙が出るほどうれしいです。何せ、構造をかなり変えているので、どこにどんなバグが潜んでいるやら……。
もちろん、安定して使う分には、一つ前のバージョン(0.0.0.5)の方がおそらく安定しています。

「終了」メニューの不具合

「終了」メニューを選択時、2つ以上連続して未セーブのテキストがあると、ダイアログが出ずに無条件で閉じられてしまいます。
あんまり「終了」を使わないでやってください。すぐ直しますので。

セルフコンパイル

昨日「Javaでセルフコンパイル」なんてなことを言いましたが、Windows Mobileは、実はそこそこ使えるセルフコンパイラがありません。JavaはJeodeやIntentを使えばそこそこ行けそうですが、PocketPC用のバンドルものはあっても、今単体で手に入るものはないし、CやC++C#などのコンパイラも見つけられませんでした。
Perl,Rubyはありますが、コンソールがろくすっぽ使えないWindowsCEでは本領発揮とは行かず、頼みの綱のSqueakもキーボードが使えない状態((VS2005でリビルドできないかしばらくあがいたのですが、どうにもリンクがうまく行きませんでした))。
単体で暇つぶしにゲームを作るのは難しいかと落胆していたのですが、考えてみれば、ありましたね、GUI環境。JavaScriptってのが。
さいわい、フルブラウザが3種類もそろっているので、環境依存のコードを書いちゃったら、あわてて別のブラウザで見るってこともできるし。
ただ、JavaScriptで作っていると、ファイル分割をする理由はほとんどないのでした。せっかくのマルチテキストは生きませんねぇ……。