The Lightflow Rendering Interface |
|
The Lightflow Rendering Interface is
an object oriented programming interface to synthetic
rendering, which provides a common environment and description language to treat light distribution
in three dimensional spaces. |
#include < Lightflow.h > int main (int argc, char* argv[]) { LfLocalSceneProxy* scene = new LfLocalSceneProxy(); LfArgList list; list.Reset(); list << "position" << LfPoint(5.0, -5.0, 4.0); list << "color" << LfColor(1.0, 1.0, 1.0)*3e2; scene->LightOn( scene->NewLight( "point", list ) ); list.Reset(); list << "ka" << LfColor( 0.0, 0.0, 0.5 ); list << "kc" << LfColor( 1.0, 0.5, 0.5 ); list << "kd" << 0.5; list << "km" << 0.1; LfInt plastic = scene->NewMaterial( "standard", list ); scene->MaterialBegin( plastic ); list.Reset(); list << "radius" << 1.0; scene->AddObject( scene->NewObject( "sphere", list ) ); scene->MaterialEnd(); list.Reset(); list << "file" << "ball1.txt"; LfInt saver = scene->NewImager( "saver", list ); scene->ImagerBegin( saver ); list.Reset(); list << "eye" << LfPoint(0.0, -4.0, 0.0); list << "aim" << LfPoint(0.0, 0.0, 0.0); LfInt camera = scene->NewCamera( "pinhole", list ); scene->ImagerEnd(); scene->Render( camera, 400, 300 ); delete scene; } |
All the images present in this document were created and rendered with
the Lightflow Rendering Tools by Jacopo
Pantaleoni, and they can be redistributed only with the
following copyright notice: |