Readme file for povman. READ POVLEGAL.DOC FOR LICENCE AGREEMENT! WHAT is povman povman is custom patch of popular raytracing program POV-Ray, which adds limited support for RenderMan (R) Shading Language (SL)to define texture pigments in POV-Ray scene files by Shading Language. Original idea and implementation by Robert J. Mercier. This patch is based on MegaPov 0.7 HOW to make povman? LINUX (I assume Linux, other platforms may differ with respect to directories) * untar tar file povman. Suggested directory is /usr/local/lib/povman If this tar is unpacked to some other directory, then be sure to adjust povman makefile. * Change permissions/owner, if needed. (Owner should be changed most likely) * Go to the povman/povslc directory. make povslc by invoking make. NB! Yacc will report 2 shift-reduce conflicts, which are safe to ignore: one of them is classical dangling if-else conflict, other is optimization for array subscription with constant expression. * Go to the povman/unix directory and invoke make to create povman executable (xpovman for X Windows). NB! libpng and zlib are not included in this distribution, they could be obtained from official POV-Ray distribution. * Make povslc and xpovman available: either copy them to /usr/local/bin directory or create link in this directory (latter is good for development) WINDOWS * Make povslc.exe and POVMan.exe available by copying them appropriate directory: povman should go to the same directory as other POV-Ray executable and .dll files are, most likely it is C:\Program Files\POV-Ray for Windows v3.1\bin. * Read documentation (You downloaded it, didn't You?) for getting idea of binding between POV-Ray and SL and start tracing. QUICK How-To-Use-Patch * Compile shader file (shaders are usually with .sl extension): povslc shader_file_name.sl this should create byte-code compiled file with .slp extension. Make it available to POV-Ray include path (easiest way is to hold POV-Ray scene file and shader in same directory). * Syntax for using shader in POV-Ray scene: object{ object_name texture{ pigment{ shader{ shader_file "shader_file_name.slp" "shader_parameter_name" shader_parameter_value } } finish{ ambient 1 diffuse 0 } } } * render scene xpovman +pov_scene_file.pov +d CHANGE Log: 2001.04.03: Added missing shader call in Compute_Pigment(). Bug fix with declared camera with normal. 2001.03.17: Cloth patch updating. 2 Bug fixes (#default directive parsing and crash with transformable warps). 2001.03.06: Corrective service 0.71 is released. It corrects memory leak in pvbmp.c (for Windows) and crash in using Hashxd (warp pattern and shaders with cellnoise are affected by it) 2001.02.24: Version 0.7. Merged with MegaPov 0.7 Added Christophe Bouffartigue's cloth patch. Shaders could be used to calculate isosurface potential values. Various performance improvements and fixes for SL compiler and shader VM. Removed shader's support for POV-Ray finish values. For more complete list of changes see documentation. 2000.12.11: Service release 0.62. Corrected following defects: POVMan Core dump, if shader is used as pigment for non-objects (e.g. sky sphere). Added warning display, if shader is used as pigment for non-objects: only intersection (evaluation) point is available in this case. POVSLC Logical not (!) operator op-code generation was missing. Op-codes, which argument list was longer, than 2 bytes, were not generated correctly during user function inlining. Temporary files were not deleted in case of syntax error in shader. Corrected mix function: if first parameter was triple and second float, then second parameter was not promoted to triple. NB! Version number of shader compiler is changed, so recompilation of all shaders is required! 2000.10.25: Previous fix wasn't good enough (didn't handled errors in POV-Ray scene file), so this fix is made. Additionally counters for shader load and call are reset. Bison chocked on gram.y file, small fix for it (empty action for param nonterminal) 2000.10.24: Fixed crash during rerendering, if invalid shader parameter was encountered on previous rendering. shdrread.c. CONTACT information Author: Vahur Krouverk Authors e-mail address is: vahur@aetec.ee Authors web page (for source code, documentation and updates): http://www.aetec.ee/fv/vkhomep.nsf Cloth patch is created by Christophe Bouffartigue e-mail address tofbouf@free.fr clothray homepage http://tofbouf.free.fr/clothray/index_en.html in French http://tofbouf.free.fr/clothray/index.html Unofficial patches newsgroup in POV-Ray newsserver is probably best place for discussion: news://news.povray.org/povray.unoffical.patches Aussi, pour les francophones: news://news.newz.net/nzn.fr.3D.pov