続
さて、3DCG関係のTIPSなどをGoogleで調べていると、3DCG関係をやったことのある人はSecondLifeでオリジナルな服を開発したりしている人が多いようです。やはり、限られた中からしか選べない洋服よりはオリジナルな服を自分のアバターに着せたいと思うのは当然で、オリジナルTシャツなんかを販売したりもできるようですし。3DCGをできる人にはSecondLifeはよりとっつきやすいでしょうね。
3DCGについて箇条書きでまとめておく
・モデリングを行う
・ボーンを埋め込み、ポーズなどをとらせる
・テクスチャを適用させる
・アニメーションする人は作成
・レンダリングして書き出す
というのが流れのようですが、全てを1つのソフトでやるのではなく、それぞれに得意なソフトを連携させてやるというのが多いようです。
つーことで、まずはソフトウェアの選択と入門書を買ってみて挫折しないようにがんばります。
Blenderは自分にはまだ難しいorz
2007年6月24日日曜日
3DCGをはじめるのにはまる
Erlangをやってみっかと思ったのも束の間、次にターゲットに目移りしてしまいました。
それは、3DCG!
なぜかというと、Second Lifeをちょろちょろ見ていたところ、自分も3DCGアバターみたいなのを作ってみたいなと。さらには、Flashで3Dを表示させるという、Papervision3Dというのを見つけたのでした。
要は、
・Webアプリとして、swfを生成してクライアントに返す。
・その中で3DCGアバターもどぎが動いている。マウスに反応してグリングリン動く!
というのをやってみたいと思ったのでした。
で、さっそくもろもろ調べてみたところ、まず、
Papervision3DはActionScript3で動く→AS3はどうやるんだ→Adobe Flex3
とたどり着き、Flex Builder(Eclipseにプラグインとして入れました)でAS3をシコシコ書いたところ
無事にサンプルの3Dぽいのがswfとして生成されました。
サンプルでは、3DのあらかじめあるシェイプをnewしてaddChildしたんですが、Papervision3Dでは、colladaという3Dの統一規格のファイルを読み込めるということが判明。さっそく、どの3Dソフトができるのかいなと調べたところ、Blenderというオープンソースな3DCG統合ソフトがありますと。
よーし、人でもつくってみっかと開いたところ、まるでわからん。プログラム関係ならどの言語でも、ははーんこうやればHello Worldだせるなぐらいは速攻でわかるんですが、3DCGソフトはさっぱりわからん。右クリックで選択って逆じゃねーのみたいな。
というわけで一から3DCGソフトを勉強しようと調べはじめたところ、ピンきりでいろいろあるんですな。昔聞いたことのある、ShadeやLightWaveから六角大王などなど。で、人体を手っ取り早く作るのはPoserというのがドンピシャ!SLのアバターのポリゴンが配布されていて、これでSL内の自分のアバターに着せるオリジナルな服を開発できちゃったりするようです。
さらに調べると、このPoserとの互換性のあるソフトが無料で配布されている!その名もDaz|Studio。さっそくインストール。見事、付属しているフィギュアを表示させ、レンダリングできました。が、どうもリアルすぎるwテカテカ光っていて、肌もなめらか。もうちょっとゴツゴツしたのでいいんだが。
と、わけわからん文章になったが、まとめると
swf関係
・Papervision3D 神
・Flex 3 神
・ActionScript3を勉強すべし!
3DCG関係
・モデリングやらテクスチャやらレンダリングやらをまず勉強すべし
・フリーなものから高価なものまでソフトがあるので、まずどれかで特訓すべし。
・人体はPoserがリアルすぎるw。
・Poser向けにSLのポリゴンメッシュが配布されている。
・collada形式で吐き出すのはBleder(オープンソース)が可能。
それは、3DCG!
なぜかというと、Second Lifeをちょろちょろ見ていたところ、自分も3DCGアバターみたいなのを作ってみたいなと。さらには、Flashで3Dを表示させるという、Papervision3Dというのを見つけたのでした。
要は、
・Webアプリとして、swfを生成してクライアントに返す。
・その中で3DCGアバターもどぎが動いている。マウスに反応してグリングリン動く!
というのをやってみたいと思ったのでした。
で、さっそくもろもろ調べてみたところ、まず、
Papervision3DはActionScript3で動く→AS3はどうやるんだ→Adobe Flex3
とたどり着き、Flex Builder(Eclipseにプラグインとして入れました)でAS3をシコシコ書いたところ
無事にサンプルの3Dぽいのがswfとして生成されました。
サンプルでは、3DのあらかじめあるシェイプをnewしてaddChildしたんですが、Papervision3Dでは、colladaという3Dの統一規格のファイルを読み込めるということが判明。さっそく、どの3Dソフトができるのかいなと調べたところ、Blenderというオープンソースな3DCG統合ソフトがありますと。
よーし、人でもつくってみっかと開いたところ、まるでわからん。プログラム関係ならどの言語でも、ははーんこうやればHello Worldだせるなぐらいは速攻でわかるんですが、3DCGソフトはさっぱりわからん。右クリックで選択って逆じゃねーのみたいな。
というわけで一から3DCGソフトを勉強しようと調べはじめたところ、ピンきりでいろいろあるんですな。昔聞いたことのある、ShadeやLightWaveから六角大王などなど。で、人体を手っ取り早く作るのはPoserというのがドンピシャ!SLのアバターのポリゴンが配布されていて、これでSL内の自分のアバターに着せるオリジナルな服を開発できちゃったりするようです。
さらに調べると、このPoserとの互換性のあるソフトが無料で配布されている!その名もDaz|Studio。さっそくインストール。見事、付属しているフィギュアを表示させ、レンダリングできました。が、どうもリアルすぎるwテカテカ光っていて、肌もなめらか。もうちょっとゴツゴツしたのでいいんだが。
と、わけわからん文章になったが、まとめると
swf関係
・Papervision3D 神
・Flex 3 神
・ActionScript3を勉強すべし!
3DCG関係
・モデリングやらテクスチャやらレンダリングやらをまず勉強すべし
・フリーなものから高価なものまでソフトがあるので、まずどれかで特訓すべし。
・人体はPoserがリアルすぎるw。
・Poser向けにSLのポリゴンメッシュが配布されている。
・collada形式で吐き出すのはBleder(オープンソース)が可能。
2007年6月19日火曜日
Yaws (Erlang HTTP Server)を入れてみる
Erlangという言語を知りました。
なんでもエリクソンで電話交換機用のプログラムとしてはるか昔からあったようです。
それが1998年にオープンソースとして公開されたものらしいです。
Yawsとは、このErlangで書かれた超高速なHTTP1.1のサーバです。
Yet Another Web Server の略だそうです。
さっそく入れてみました。といってもDebianのパッケージがあるので
インストール自体は簡単です。
sudo apt-get install yaws
インストール後、デフォルトではPort:8080で起動されるようなので
(既にApacheで8080があがってたりしたらずっこけるかも)
ブラウザで、http://colinux:8080/
とやって、「If you can see this, it means that the installation of the Yaws web server software on this system was successful.…」なページがでれば
ばっちり完了。
関数型言語というのは正直触ったことがないので、これを機会にやってみます。
http://yaws.hyber.org/
Web開発でそんなテレコム言語がなんの役に立つんだ?あ?という方は
twitterブームの陰で注目を集める“Erlang”@IT
をご参照ください。
なんでもエリクソンで電話交換機用のプログラムとしてはるか昔からあったようです。
それが1998年にオープンソースとして公開されたものらしいです。
Yawsとは、このErlangで書かれた超高速なHTTP1.1のサーバです。
Yet Another Web Server の略だそうです。
さっそく入れてみました。といってもDebianのパッケージがあるので
インストール自体は簡単です。
sudo apt-get install yaws
インストール後、デフォルトではPort:8080で起動されるようなので
(既にApacheで8080があがってたりしたらずっこけるかも)
ブラウザで、http://colinux:8080/
とやって、「If you can see this, it means that the installation of the Yaws web server software on this system was successful.…」なページがでれば
ばっちり完了。
関数型言語というのは正直触ったことがないので、これを機会にやってみます。
http://yaws.hyber.org/
Web開発でそんなテレコム言語がなんの役に立つんだ?あ?という方は
twitterブームの陰で注目を集める“Erlang”@IT
をご参照ください。
2007年5月20日日曜日
Writing Apache2 Module in C/C++ その2
apxs2により、まずモジュールの雛形を作成します。
今回はモジュール名をcgiwebapp とします。
cd dev/apache2
apxs2 -g -n cgiwebapp
Creating [DIR] cgiwebapp
Creating [FILE] cgiwebapp/Makefile
Creating [FILE] cgiwebapp/modules.mk
Creating [FILE] cgiwebapp/mod_cgiwebapp.c
Creating [FILE] cgiwebapp/.deps
という具合に雛形が作成されます。このままでもコンパイルは通るので、
Makefileの、top_srcdirを、
top_srcdir=/usr/share/apache2
としておきます。
(make install時のbuildスクリプトのため)
apxsもapxs2にしておきます。
make
sudo make install
とやると、mod_cgiwebapp.so が/usr/lib/apache2/modulesにコピーされます。
/etc/apache2/apache2.confに
LoadModule cgiwebapp_module /usr/lib/apache2/modules/mod_cgiwebapp.so
を追加し、
/etc/apache2/site-avaliable/defaultの<virtualhost>内に、
<location>
SetHandler cgiwebapp
</location>
と書きます。
その後、apache2をリスタートし、
http://colinux/cgiwebapp
とやると、
The sample page from mod_cgiwebapp.c
が表示されて、ひとまず動作確認完了
今回はモジュール名をcgiwebapp とします。
cd dev/apache2
apxs2 -g -n cgiwebapp
Creating [DIR] cgiwebapp
Creating [FILE] cgiwebapp/Makefile
Creating [FILE] cgiwebapp/modules.mk
Creating [FILE] cgiwebapp/mod_cgiwebapp.c
Creating [FILE] cgiwebapp/.deps
という具合に雛形が作成されます。このままでもコンパイルは通るので、
Makefileの、top_srcdirを、
top_srcdir=/usr/share/apache2
としておきます。
(make install時のbuildスクリプトのため)
apxsもapxs2にしておきます。
make
sudo make install
とやると、mod_cgiwebapp.so が/usr/lib/apache2/modulesにコピーされます。
/etc/apache2/apache2.confに
LoadModule cgiwebapp_module /usr/lib/apache2/modules/mod_cgiwebapp.so
を追加し、
/etc/apache2/site-avaliable/defaultの<virtualhost>内に、
<location>
SetHandler cgiwebapp
</location>
と書きます。
その後、apache2をリスタートし、
http://colinux/cgiwebapp
とやると、
The sample page from mod_cgiwebapp.c
が表示されて、ひとまず動作確認完了
Writing Apache2 Module in C/C++ その1
Apache2のモジュールを開発します
なぜかというと、以前apache1.3系のモジュールを作ったので、それを
apache2に書きなおしたいというわけです。
そのモジュール自体はかなり機能豊富でしたが、まずは通常のCGI-Webアプリとして
使い物になる程度まで仕上げたいと思います。
メモを残しつつ、多少時間がかかると思いますが完成させたいと思います。
というわけでまずは開発環境。
colinux上に、apache2、apache2-mpm-prefork、apache2-prefork-devをインストールします。threadモデルでやりたいところですが、モジュールをスレッドセーフにかける自信がないので、preforkで開発します。
sudo apt-get install apache2-mpm-prefork
sudo apt-get install apache2
sudo apt-get install apache2-prefork-dev
モジュールのルートディレクトリを作成。今回は
~/dev/apache2/
とします。
mkdir dev/apache2/
続く
なぜかというと、以前apache1.3系のモジュールを作ったので、それを
apache2に書きなおしたいというわけです。
そのモジュール自体はかなり機能豊富でしたが、まずは通常のCGI-Webアプリとして
使い物になる程度まで仕上げたいと思います。
メモを残しつつ、多少時間がかかると思いますが完成させたいと思います。
というわけでまずは開発環境。
colinux上に、apache2、apache2-mpm-prefork、apache2-prefork-devをインストールします。threadモデルでやりたいところですが、モジュールをスレッドセーフにかける自信がないので、preforkで開発します。
sudo apt-get install apache2-mpm-prefork
sudo apt-get install apache2
sudo apt-get install apache2-prefork-dev
モジュールのルートディレクトリを作成。今回は
~/dev/apache2/
とします。
mkdir dev/apache2/
続く
2007年5月19日土曜日
colinuxによる開発環境の構築
仕事とは別に
自分の好き勝手にできる開発環境が欲しかったのでcolinuxをwindows xp上に構築してみました。
実行速度は申し分ないです。
Debianを入れましたが、他のディストリビューションでもインストール可能のようです。
インストール方法などは
・http://aoineko.ciao.jp/text/colinux/colinux.html
・http://www.si-linux.co.jp/wiki/silinux/index.php?CoLinux
を参考にさせていただきました。
付属でダウンロードしたDebianのディスクイメージだと1GBとさすがに少ないので
自分の環境では4GBに変更してあります。
仕事のサーバがDebianなので、Debianの勉強などにはもってこいですね。
クリーンインストールした状態のデータをバックアップしておくと、
ぶっ壊してもいつでも復活できます。このあたりがすばらしい!
自分の好き勝手にできる開発環境が欲しかったのでcolinuxをwindows xp上に構築してみました。
実行速度は申し分ないです。
Debianを入れましたが、他のディストリビューションでもインストール可能のようです。
インストール方法などは
・http://aoineko.ciao.jp/text/colinux/colinux.html
・http://www.si-linux.co.jp/wiki/silinux/index.php?CoLinux
を参考にさせていただきました。
付属でダウンロードしたDebianのディスクイメージだと1GBとさすがに少ないので
自分の環境では4GBに変更してあります。
仕事のサーバがDebianなので、Debianの勉強などにはもってこいですね。
クリーンインストールした状態のデータをバックアップしておくと、
ぶっ壊してもいつでも復活できます。このあたりがすばらしい!
2007年5月17日木曜日
Apache2のmoduleのon/off
DebianでのApache2のmoduleのon/off
パッケージから入れた場合、
/usr/sbin/a2enmod
/usr/sbin/a2dismod
を使用する
mod_rewriteを例にとると
onにする場合:
sudo a2enmod rewrite
sudo /etc/init.d/apache2 force-reload
offにする場合:
sudo a2dismod rewrite
sudo /etc/init.d/apache2 force-reload
ソースから入れた場合、あるいはモジュールだけソースからコンパイルした場合は
例によって、
LoadModule php5_module modules/libphp5.so
のようです。
Debianでモジュールを入れる場合はパッケージでそろえた方が管理が楽でいいですね。
パッケージから入れた場合、
/usr/sbin/a2enmod
/usr/sbin/a2dismod
を使用する
mod_rewriteを例にとると
onにする場合:
sudo a2enmod rewrite
sudo /etc/init.d/apache2 force-reload
offにする場合:
sudo a2dismod rewrite
sudo /etc/init.d/apache2 force-reload
ソースから入れた場合、あるいはモジュールだけソースからコンパイルした場合は
例によって、
LoadModule php5_module modules/libphp5.so
のようです。
Debianでモジュールを入れる場合はパッケージでそろえた方が管理が楽でいいですね。
登録:
投稿 (Atom)