OpenGLを勉強中

以前の仕事でもver 1.x系しかつかってなく、前回の仕事でもあまりGLESには深入りせず終わったんですが、さすがにGLSLすら書けないのもマズいと思い、ぽつぽつ勉強をしてます。

都合良くRadeonのOpenGL 4.0/3.3対応のドライバが先月出てました。
サクっとインストールして3.3 Core Profileで床井先生のページをみながらやっていますが、VBOとかFBOとかが分かってくれば案外なんとかなりますね。

「なんでもかんでもシェーダーで」というのも、慣れてくれば便利だなぁと感じてきました。RenderMonkyが3.x対応してくれればもっと楽に勉強できるんでしょうけどね。

OpenGL ES

最近、仕事でOpenGL ESを触るようになりましたが…GLES2.0以降って、今までのGL経験とかほとんど使えないですね。
OpenGL自体も3.0以降は同じようになるみたいですし。今後は全部シェーダーなのかな。今月は既にGL4.0発表されたみたいだし、ついていくのが大変だ。

Sandboxテーマを導入

ちまちまとWordpressの勉強をしつつ、自作テーマを導入してみました。Sandboxという好都合なテーマがあったので、これを叩き台にSkinを作成・一部どうしてもカスタマイズしたい箇所などはSandbox自体にも手を入れてあります。

きっとSandboxのバージョンアップで苦労するだろうなぁ。

まだまだ細かいところの調整もできてないし、自作CSSがLive Writerと相性悪いらしく、編集作業がつらいです。このへんは要調査項目ですね。

なんにせよ一歩一歩進めていくことにします。

MSDNリニューアル

開発者のみなさまのために : MSDN オンライン、リニューアルスケジュール アップデート

17日~20日にかけてアップデートだそうです。

赤基調から青基調に変更され、若干見やすい感じになった…のか?
Firefox3.5.3だと若干表示が崩れているような。

image

サイトをWordPressに移行しました

Movable Type 5 beta 3を試してみました。

MovableType 5のβ3なんかがリリースされている昨今です。
今までMTメインで使用していたので、さっそくローカルサーバーにインストールして試した結果…

  1. MySQL以外がサポート対象外に変更された。
  2. ウェブサイト構築サポートの強化がいまいちわかりにくい。
  3. やっぱり逐一再構築を要求される。

という点に不満が残りました。

1点目は現在のレンタルサーバーにMySQLデータベース数の制限があるため、それを節約できる意味でもMTのSQLiteサポートは有り難かったのですが…。動作するとはいえ、サポート対象外の環境を維持しようとは思えませんので、このアドバンテージがなくなりました。

2点目は割と注目していたのですが、「複数編集者によるサイト運営、別々のテーマで構築された複数サイトの一元管理」ということで、私のサイトでは意味のない機能だったようです。ウェブページ管理周りは余り変化があったようには見受けられませんでした。

そして、やっぱり3点目の再構築です。
あいかわらず、なにか操作をするたびに要求される再構築。いい加減、嫌になってしまいました。

結論として

Movale TypeからWordPressに移行する事にしました。

ローカルサーバーとして使っているEeePC-4G(Celeron M 900MHz / RAM 2GB)上でもさくさく動いてくれます。MTよりいくらか軽いようです。

  1. 再構築不要。変更がサクサク反映される。
  2. ブラウザ上から自動アップデートができる。
  3. ウェブページ管理はMTよりも楽に行える(気がする)。
  4. Maintenance Mode Pluginが便利。

と、中々に満足しています。

しばらくはPHPの勉強がてら、WordPressをいじることになる予定です。

下らないことでchownにはまる

愚行を繰り返さないようにチラ裏メモ。

SDHCをUbuntuで使っていたら、sudo chownで”Operation not permitted”などと言われてしまった。

「なんでやろー?」と一晩悩んでいましたが、原因は単に「SDHCがFAT32だったから」。

あーはいはい、私が悪うございました。そりゃFATにアクセス権限なんて概念アリマセンでしたね。

慶良間にもぐってきました

kerama kerama-1

さすがは世界有数のダイビングポイント! 半端なく綺麗でした。

今回の旅行でPADI OWDのライセンスが取れたので、これからはちょくちょく機会を見て潜りに行きたいと思います。
趣味にまで昇華できればいいのですが…。

WTL版CppUnit TestRunner

最近はすっかりメインストリームから置いてけぼり食らってそうなCppUnitですが、個人的にはまだまだ現役で使ってます。
最近書いてるコードもCppUnitを利用しているんですが、自作ライブラリ側(非MFC)とMfcTestRunnerの相性が悪く不具合が…。

テンプレートライブラリで済む軽量TestRunner(つまりWindows Template Library版)があればいいのにな~と探してみたけど、作って公開している人がいないみたいなので自作してみました。 まぁニッチだよね。

The So-Software Studioさんの所を眺めつつ、適当に書き上げたのでコメントは皆無ですが…まぁ「中を読もう」とする人なら問題ない…ハズ。

ヘッダファイル1つ(WtlTestRunner.h)のみで2000行程度です。
挙動やレイアウトなどはMfcTestRunnerのものを受け継いでいます。
Visual Studioとの連携不具合解消など多少の改良もしてあります。
ヘッダファイルのみで構成されている都合上、MfcTestRunnerにあったアイコンは表示されません。

MfcTestRunnerのコードを流用しているため、ライセンスはCppUnitと同様LGPLになります。

WtlTestRunner – クロノアシステムズ

qedit.hというかdxtrans.hの小ネタ

最近、久し振りにDirectShowなぞを触っていて、qedit.hを使おうとして定番の”dxtrans.hが見つかりません。”にぶち当たりました。

以前SampleGrabberを使ってたときは確か、SDKのヘッダファイルを書き換えていた気がします。
あれから随分と立つのに、VS2008 SP1&DirectX SDK Nov 2008でも相変わらずエラー残ってますかそうですか。
SDKのヘッダなんて触りたくないんだけど。

「ぼちぼちエレガントな対策はでてないもんか」とgoogle先生にお伺いしたところ、本家MSDNフォーラムでビンゴ。

http://social.msdn.microsoft.com/Forums/en-US/windowssdk/thread/ed097d2c-3d68-4f48-8448-277eaaf68252

Very helpful!  With one more line you can get by without editing qedit.h.

#pragma include_alias( "dxtrans.h", "qedit.h" )

#define __IDxtCompositor_INTERFACE_DEFINED__

#define __IDxtAlphaSetter_INTERFACE_DEFINED__

#define __IDxtJpeg_INTERFACE_DEFINED__

#define __IDxtKey_INTERFACE_DEFINED__

#include <qedit.h>

素晴らしい!そのてがあったか!
include_aliasなんて無縁と思ってたけど、使い道あったんですね。

MfcTestRunnerでエラー行にジャンプ

Visual Studio 2008 SP1でMfcTestRunnerを使っていて、ジャンプできないのに気づいたので修正してみました。

src\msvc6\testrunner\MsDevCallerListCtrl.cppの135行目のbstrFileNameを以下のように変更します。

CComPtr< EnvDTE::Document > pIDocument;
TCHAR path[MAX_PATH]={0};
::GetFullPathName( fileName, _countof( path ), path, NULL );
CComBSTR bstrFileName( path );
CComVariant type=_T("Text");
CComVariant read=_T("False");

まぁ、だいたい動くと思います。