Home > 4 月, 2009

2009.04.30

OpenGLで3D、やってみよう

先日、話題に上った google の O3D。
プラグインをインストールすれば、ブラウザ上で 3次元CG を表示できる!ということで、ちょっとだけ話題になりました。
O3Dは、OpenGLまたはDirect3Dを利用して 3D を描画します。

 

★ ん、ところで OpenGL って何?

OpenGLというのは、SGI社が開発したOSに依存しない 3D のためのライブラリのこと。
GLは、Graphics Libraryの略。
iアプリもiPhoneの 3D も、Androidの 3D も、みんな OpenGL を使ってます。

余談だけど、アメリカSGI社はチャプター11(日本の民事再生にあたる)を申請して、買収されてしまいました。
SGIといえば、CG屋にとってみれば憧れのブランド名だっただけに淋しいもんですね。

 

★ GLUTという便利なライブラリがあります

本日は、この OpenGL を、これまた便利な GLUT を使ってプログラミングしてみます。

OpenGLがOSに依存しないライブラリといっても、Windowsであればそれ専用の描画処理を書かなくてはならず、Linuxやモバイル機器用OSでも同じこと。
ウィンドウを生成したり、キーボード入力を取得したり、といった OS特有 の一般的な処理も吸収してくれるライブラリが GLUT です。
ライブラリというか、Utility Toolkitですね。

 

(more…)

2009.04.24

ライセンスなどのおさらい

ライセンスとは

知的財産権の側面におけるライセンスは、
権利者が独占する権利の実行を他者に許諾するものであるため、
当該権利を保有する人材や企業の確保は国益に重大な
影響を及ぼす。
そこで欧米ではこの分野を国際的な
政治戦略として高い位置づけでとらえ、
各種ライセンスの積極的な保護育成に力を
注いでいる。

らしい

主に、

実行許諾系と利用許諾系

実行許諾系には、下記のようなものがある

* フリーソフト
フリーウェア - 無償のソフトウェア
フリーソフトウェア - フリーソフトウェア財団が提唱する
自由なソフトウェア
* シェアウェア
無償で使用可能であるが、継続使用する場合には対価を求める
開発費をユーザーで分担する」という意である。
* キーウェア
ソフトウェアの使用時にライセンスキーを入力しないと、
利用できないかデモ版として動作する。
* メールウェア
しばらくの間ユーザにソフトウェアを使ってもらい、
利用した感想や意見、バグレポートなどをメールで送って
もらうライセンス形態
* ポストカードウェア

などなど

よく聞くのは、フリーソフト、シェアウェア、キーウェア
もう一度おさらい。。。

利用許諾系には、下記が有名

GNU General Public License

かなり長いので、下記を参考に

http://ossipedia.ipa.go.jp/legalinfo/

2009.04.17

IPアドレスの基礎知識

WEBサービスを運営していると、必然的にサーバの設定をする機会が増えていきます。アプリの設定とか、運用とかの知識は増えていくのですが、すごく基礎的な部分が置き去りになっていることもしばしば…

 

ということで、今回はネットワークを考える上で避けて通ることはできない、「IPアドレス」について書いてみます。

(more…)

2009.04.10

パイプとリダイレクトを間違えて

とあるCentOSサーバにroot権限でログイン中に
ちょっとしたテストで以下のコマンドを打とうとしたところ・・・
(more…)

2009.04.06

階層クラスタリング for はてブ・タグ付けデータ

階層クラスタリングは、データマイニング手法の一つです。
今回はこの手法を、はてなブックマークのタグ付けデータに対して適用しました。
まずは、結果から紹介します:

階層クラスタリング for はてブ

より大規模なデータセットを用いて解析した結果はこちら:
ツリー表現 タグクラウド表現 

=== 解説 ===
(more…)

2009.04.01

PHPの高速化@お手軽な切り札

さて…なにかしら作っていると、やはり「処理にかかる時間」ってのは気になると思います。

まぁ、本来はそこでコード,アルゴリズム,処理フロー等を見直したり、
DB,Webサーバ環境面のチューニングを行なったり。
はたまた運用フローを調整して処理をカットしたり…など、色々と対策を打つワケで。

ただ「それでもイマイチ軽くならない」と言った場合に使う「お手軽なカード」として、
「APC(Alteanative PHP Cache)」ってのを使ってみました。

APCってのはPHP用のアクセラレータ(機能,処理向上させる為のソフトやハードの総称)の1種でして、
他にもeAccelerator,XCache,ZendOptimizer,PHPAccelerator辺りが有名らしいですが、
とりあえず今回はAPCだけ。

(more…)