Rendering学習日記

日々、3DCGの世界は進歩しています。勉強して理解したことをまとめていきます。RenderMan互換レンダラーやグローバル・イルミネーション。いろんなことに好奇心を持って、面白くなる。目指せShader書き!!
ありがとうございます。

CAPIのアニメーションのRIB出力

3Delightで試してみた。RIBを出力するには,RiBegin(RI_NULL)のカッコ部分に出力するRIB名を書き込んでおいてコンパイルすればよい。

http://www.not-enough.org/abe/manual/renderman/animation.html
サンプルファイルをコンパイルしてみる。
#include 

main()
{
int frame;
char filename[128];
RtColor color = {0.8, 0.0, 0.0};

RiBegin("anim_test.rib");
for(frame = 1; frame <= 10; frame++)
{
RiFrameBegin(frame);
sprintf(filename, "sphere%d.tif", frame);
RiDisplay(filename, RI_FILE, RI_RGBA, RI_NULL);
RiWorldBegin();
RiColor(color);
RiTranslate(frame*0.1 - 0.5, 0.0, 0.0);
RiSphere(1.0, -1.0, 1.0, 360.0, RI_NULL);
RiWorldEnd();
RiFrameEnd();
}
RiEnd();
}

-----------------------------------------
1. anim_test.cで保存。
2. コンパイル
  >cl /I%DELIGHT%/include %DELIGHT%/lib/3delight.lib anim_test.c
3. RIBファイルの出力
  >anim_test.exe
続きを読む>>
  • -
  • -

CAPIでパーティクル

Essential RenderManのパーティクルのサンプルをコンパイルしてみた。
Visual C++では,random()ではなくてrand()に書き換えたら,コンパイルできた。
>cl /I%DELIGHT%/include %DELIGHT%/lib/3delight.lib curves.c

RC本のサンプルのコンパイルでも,参照するヘッダファイルやリスト名を間違えないようにしないといけない。RCのサンプルのinclude先に間違いがあった。

point.PNG
color.PNG
curves.PNG
  • -
  • -

「実践CGへの誘い」 パラメトリック面,ジオメトリック変換と階層モデリング

RC「実践CGへの誘い」の第6章と第7章のコンパイルを行いました。
7章のCSG作成では,以下のように行う。
>cl /I%DELIGHT%/include %DELIGHT%/lib/3delight.lib main.c surf_go.c listing8_2.c listing8_3.c

>cl /I%DELIGHT%/include %DELIGHT%/lib/3delight.lib main.c wedge_go.c listing8_2.c listing8_3.c

アルファチャンネルで抜けているがPNGにしたら,ちょっと青みがかっています。以下は,コンパイルしたリスト。

listing6_1
listing6_1.PNG
listing6_2
listing6_2.PNG
listing6_3
listing6_3.PNG
listing7_2
listing7_2.PNG
listing7_3
listing7_3.PNG
listing7_4
listing7_4.PNG
  • -
  • -
<< 171/184 >>