RSS2.0

LWJGL ライブラリの開発環境を整える

LWJGL を自分で拡張したい等の理由で、LWJGL 自体の開発環境を整える手順を書き残しておきたいと思います。環境は例によって Linux(Fedora 17)です。

LWJGL はプロジェクトも順調に進んでいますし、自分でライブラリ本体のメンテナンスをしなければならないということはないでしょうが、せっかくのオープンソースプロジェクトですし、一念発起してソースをいじってみたいという方が居ないとも限らないので、私が環境構築した際の情報を残しておきたいと思います。

ただ、LWJGL 自体を開発するための資料は見つけられなかったので、ソースコードを自前で eclpse に読み込んでいます。不足事項などあれば御指摘ください。

続きを読む LWJGLLinux  コメント (0)  2013/06/25 22:35:08

Linux 環境で LWJGL ライブラリをビルドしてみる

2013 年 4 月 21 日に LWJGL 2.9.0 がリリースされました。maven リポジトリにも ver 2.9.0 がアップされているので、maven を使う場合には pom.xml のバージョン番号を更新するだけで新しい jar ファイルを入手することができます。

今回はそこからさらに一歩踏み込んで、自分で LWJGL をビルドしてみたいと思います。環境はいつも通り Linux (Fedora17) です。LWJGL のビルドでは、jar ファイルの他に JNI として呼び出されるネイティブライブラリも生成されます。これはビルド環境用のライブラリのみビルドされるので、Windows 用のネイティブライブラリを作りたい場合は Windows でビルドしなければなりません。
また、LWJGL はビルドプロセス中で Annotation Processing Tool を使ってソースコードを自動生成しているため、リポジトリ内に必要なすべてのソースコードがコミットされている訳ではありません。もしリポジトリからソースコードを持ってきて自分で LWJGL の開発環境を作るのであれば、一度ビルドしてから eclipse などの IDE に読み込ませてください。
続きを読む LWJGLLinux  コメント (0)  2013/06/24 23:49:28

Linux 環境でマルチコア CPU を利用した python プログラムを書く

マルチコア CPU を利用した python プログラム、と言っても、Linux 環境ではプロセス単位で CPU が割り当てられるので、つまりはマルチプロセスを意識したプログラミングになります。

java でマルチコア CPU を利用しようとするとマルチスレッドで実現することになりますが、python の場合はわかりやすく別プロセスで実現されているため、ps や top コマンドで見えて面白いです。

python ではマルチプロセス用に multiprocessing モジュールが用意されていますが、今回はひとまず古典的な fork() 関数を使い、実際に複数のプロセスがマルチコア CPU によって処理されている様子を見てみたいと思います。

どちらかというと新人さん向けのプロセスのお話になってしまいましたが、季節柄ということで。
続きを読む Linuxpython  コメント (0)  2013/04/16 19:42:27

MeCab を使ってみた

Linux 環境で、UTF8 で使えるよう MeCab をビルドするところまでやってみました。

MeCab は辞書に登録されている単語をもとに、日本語の文章を品詞に分解するソフトウェアです。
日本語の品詞分解に対するこのアプローチは形態素解析と呼ばれる手法で、もとにする辞書が充実していればしているほど精度が上がっていきます。
辞書に登録する語彙によって解析できる品詞が変わるため、辞書に学習させる過程による癖が出やすく、個人的には愛着の出やすい手法なのじゃないかと感じています。

しかし、逆に言えば言葉の移り変わりに応じて辞書のアップデートをしていかなければならず、また辞書をメンテしていくことで辞書ファイル自体のサイズが大きくなってしまうというデメリットがあります。

Mecab 自体はとても歴史のあるプロジェクトで、現在では Java や Python のバインディングまで提供されているため、かなり組み込みやすい環境が整っています。
続きを読む MeCabLinux  コメント (0)  2013/04/09 06:41:31

Linux でメモリテストをする

Windows を使う人ならともかく、Linux でメモリテストをするという話はあまり聞いたことがなかったのですが、調べてみると memtest86 というパッケージがちゃんと用意されていて、ただ私が聞いたことがなかっただけのようです。
先月から進めているわが家の開発マシン強化計画の一環で、DDR2 4GB のメモリを 2 枚増設することにしたので、さっそくメモリテストを走らせてみました。

DDR3 って安いんですね…。DDR2 と比べてメモリ単価ががが

続きを読む Linux  コメント (0)  2013/02/05 08:20:49

VMWare Player 上の Fedora 17 32 bit にて共有フォルダを有効にする

会社の Windows7 マシンに VMWare Player をインストールし、ゲスト OS として Fedora17 32bit を乗せてみたものの、共有フォルダ機能が有効になりませんでした。
よくよく vmware-config-tools.pl の出力結果を見てみると vmhgfs.ko のビルドに失敗していて、このままだと共有フォルダは使えないよーと言われていました。ネットで調べつつなんとか動くところまで持っていけたので、手順を載せておきたいと思います。

エラーはこんな感じ。
make[1]: ディレクトリ `/usr/src/kernels/3.6.3-1.fc17.i686' に入ります
  CC [M]  /tmp/modconfig-sKMWK6/vmhgfs-only/message.o
  CC [M]  /tmp/modconfig-sKMWK6/vmhgfs-only/request.o
  CC [M]  /tmp/modconfig-sKMWK6/vmhgfs-only/hgfsUtil.o
  CC [M]  /tmp/modconfig-sKMWK6/vmhgfs-only/cpName.o
  CC [M]  /tmp/modconfig-sKMWK6/vmhgfs-only/backdoorGcc32.o
  CC [M]  /tmp/modconfig-sKMWK6/vmhgfs-only/link.o
  CC [M]  /tmp/modconfig-sKMWK6/vmhgfs-only/rpcout.o
  CC [M]  /tmp/modconfig-sKMWK6/vmhgfs-only/tcp.o
  CC [M]  /tmp/modconfig-sKMWK6/vmhgfs-only/hgfsEscape.o
  CC [M]  /tmp/modconfig-sKMWK6/vmhgfs-only/file.o
  CC [M]  /tmp/modconfig-sKMWK6/vmhgfs-only/transport.o
  CC [M]  /tmp/modconfig-sKMWK6/vmhgfs-only/inode.o
  CC [M]  /tmp/modconfig-sKMWK6/vmhgfs-only/super.o
/tmp/modconfig-sKMWK6/vmhgfs-only/inode.c:121:4: 警告: 互換性のないポインタ型からの初期化です [デフォルトで有効]
/tmp/modconfig-sKMWK6/vmhgfs-only/inode.c:121:4: 警告: (‘HgfsDirInodeOperations.create’ 用の初期化付近) [デフォルトで有効]
/tmp/modconfig-sKMWK6/vmhgfs-only/inode.c:126:4: 警告: 互換性のないポインタ型からの初期化です [デフォルトで有効]
/tmp/modconfig-sKMWK6/vmhgfs-only/inode.c:126:4: 警告: (‘HgfsDirInodeOperations.lookup’ 用の初期化付近) [デフォルトで有効]
/tmp/modconfig-sKMWK6/vmhgfs-only/inode.c: 関数 ‘HgfsPermission’ 内:
/tmp/modconfig-sKMWK6/vmhgfs-only/inode.c:1820:7: エラー: ‘struct hlist_head’ は ‘next’ という名前のメンバを持っていません
/tmp/modconfig-sKMWK6/vmhgfs-only/inode.c:1820:7: 警告: 型が全く異なるポインタの比較でキャストを欠いています [デフォルトで有効]
/tmp/modconfig-sKMWK6/vmhgfs-only/inode.c:1821:19: 警告: 互換性のないポインタ型からの初期化です [デフォルトで有効]
make[2]: *** [/tmp/modconfig-sKMWK6/vmhgfs-only/inode.o] エラー 1
make[2]: *** 未完了のジョブを待っています....
make[1]: *** [_module_/tmp/modconfig-sKMWK6/vmhgfs-only] エラー 2
make[1]: ディレクトリ `/usr/src/kernels/3.6.3-1.fc17.i686' から出ます
make: *** [vmhgfs.ko] エラー 2
make: ディレクトリ `/tmp/modconfig-sKMWK6/vmhgfs-only' から出ます

The filesystem driver (vmhgfs module) is used only for the shared folder 
feature. The rest of the software provided by VMware Tools is designed to work 
independently of this feature.

If you wish to have the shared folders feature, you can install the driver by 
running vmware-config-tools.pl again after making sure that gcc, binutils, make
and the kernel sources for your running kernel are installed on your machine. 
These packages are available on your distribution's installation CD.
[ Press Enter key to continue ] 

続きを読む Linux  コメント (0)  2013/02/04 21:16:40

Linux でマザーボードの情報を調べる

うちの開発用マシンは、今はなきクレバリーのショップブランド PC です。
買ったのは 2008 年 11 月。当時にしてはそれなりのスペックだったはずなのですが、4 年も経てばさすがに時代に取り残された感が拭い切れず、この度増強をすることにしました。

が、メモリを増やそうにも肝心の最大認識量がわからず。
納品書にはマザーボードのチップセットしか書かれていなかったのです。

Windows ではマザーボードを調べるフリーソフトがありますが、
Linux ではどうなんだろうと調べてみると、dmidecode コマンドを使うと表示することができるそうです。
ということで Fedora さんにて yum してみました。
続きを読む Linux  コメント (0)  2013/01/11 23:15:39

LWJGL で Hello world してみる(環境構築編)

 LWJGL や JOGL といったライブラリを使うと、Java で OpenGL を使うことができます。触ってみた感じ、両方とも OpenGL をほぼそのままの形で呼び出せるので、どっちを使うかは好みで決めてもいいくらいです。わたしの場合は最初に触ったのが LWJGL だったので、LWJGL でゲーム開発をしています。

 LWJGL は正式名称を Lightweight Java Game Library といい、Java から OpenGL を呼び出すための Java 用クラスを提供しています。Java でゲームを作ろうとすると、3D 系は特に pure Java では弱い印象なので、そこを強化するためにグラフィックス描画では OpenGL を採用するのが妥当なのかな、と個人的には感じています。
 ゲームライブラリと名のついているだけあって、他にも高精度のタイマーやキー入力系など、ゲームプログラミングをする上では便利な API が用意されています。

 JOGL は比較的に日本語の資料も多いのですが、LWJGL は入門者向けのまとまった資料があまりない印象だったので、記録を残す意味でも少しずつ書いていってみようと思います。
 ということで、今日は Eclipse での環境構築と、四角形を描くところまで。ブログのネタに困ったとかじゃないよ!ホントだよ!
d1bc38550bfc60450e0905c03d299c5ce6df.png

続きを読む LWJGLLinux  コメント (0)  2012/03/01 00:20:54

ゲームパッド買ったよ

やったよ! Amazon 先生が新しいゲームパッドを届けてくれたよ!

最近は PSP とか PS3 ばっかりだったのですが、ひさしぶりに遊ぼうかなーと愛用のゲームパッドをひっぱり出して Windows マシンにつなげてみたところ、ドライバーが見つかりませんとエラーが…。
ドライバー CD なんて残ってるはずもないし、ネットを探しても開発元の シグマA・P・O が去年潰れていたそうでどうにもならず、新しく買うことにしました。
今まで使ってたやつって、学生時代にラグナロクバトルオフラインをやるために買ったんですよね。約 10 年前だしもういいだろう、ということで。
続きを読む Linux雑記  コメント (0)  2012/01/23 23:07:47
プロフィール HN: ももかん
ゲーム作ったり雑談書いたり・・・していた時期が私にもありました。
カレンダー
<<2019, 6>>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456