PoseRay Manual
Import 3D models and scenes into POV-Ray
v.3.13.31 - March 2, 2021
Web: https://sites.google.com/view/poseray
Email: flyerx_2000@yahoo.com
Contents
Introduction
PoseRay is an utility to convert 3D model meshes into POV-Ray scenes and
Moray UDO files. PoseRay can also edit the materials and act as a simple
transformation tool for the geometry. PoseRay can also export the modified
model to wavefront (OBJ) format for use in other 3D programs. A list of main
features is shown below. (Check the history
for changes with the latest version)
Geometry:
- 3D Preview of geometry using the OpenGL ®
API.
- Import mesh geometry from OBJ, 3DS, RAW, LWO, PLY, WRL, POV, INC and DXF files.
- Special handling of DAZ Studio and Poser
scenes saved as OBJ models.
- Surface subdivision: smooth and flat.
- Export a complete POV-Ray scene from
imported model including lights and camera.
- Export of Moray v3.5 UDO files.
- Export Wavefront OBJ files with the
applied transformations and materials
- Geometry transformation: Translate,
rotate, scale and axis transpose with automatic normal update.
- Normal transformation: smooth with crease
angle and flip.
- Vertex transformation: change winding
order, weld, split by crease.
- UV transformation: transpose, flip U,
flip V, scale/translate U, scale/translate V.
- UV creation in planar, cylindrical,
spherical and cubic schemes.
- Mesh Displacement
- Add edge geometry to mesh
Materials:
- Reads materials from OBJ (MTL), LWO, 3DS and DXF files.
- Import materials from Poser 4.03 or
higher scene files
- Material editor including color, surface
finish, texture, transparency and bump map properties.
- Support for POV-Ray texture definition
for each material
- Built in resize, conversion and inversion
of maps.
- Built in file search for maps
- 3D preview of applied materials.
Lights + Camera:
- Interactive camera and light setup.
- Import Camera and lights from Poser 4.03
or higher scene files
- Light editor with options for color, intensity, position, rotation, light type and shadow.
- Camera editor with options for angle, type, position, rotation and focal blur.
- Camera presets.
Requirements
- Windows 2000, XP, Vista, 7, 8, or 10
- A screen resolution of at least 1024x768.
- Video card with OpenGL ® support. Most current computers should be able to handle that. Just Make sure that the video drivers are up to date.
- If you want to run PoseRay in Linux you can use Wine or VMware player.
Install / Uninstall
Install:
- There is no installation program. Extract all the files from the archive and place them in the same directory. To start PoseRay just execute poseray.exe
- If you are installing PoseRay into Windows Vista or later you may want to install outside of the Program Files directory. User Access Control may interfere with PoseRay trying to write settings to its own directory.
- If you want to render images with POV-Ray then, in PoseRay, go to the POV-Ray output tab, click Export... -> Set POV-Ray executable...
and select the POV-Ray executable (usually pvengine.exe or pvengine64.exe). Also
make sure that, in POV-Ray, the option under Script I/O Restrictions is set to No restrictions unless you want to add the scene and image paths to POV-Ray manually for each render.
- If you are using Wine make sure that the option PoseRay is running using Wine is enabled in PoseRay's Input tab.
Uninstall:
- Delete the PoseRay folder. PoseRay does not use the Windows registry and all of its settings
are saved in its directory.
- The file custom_pov_texture_lib.inc is in the PoseRay directory and will
contain any custom POV-Ray materials you saved.
PoseRay Main Tabs
PoseRay is broken into main tabs and a separate preview window. Each tab is used for a different
section in
the conversion process. The bottom of PoseRay's main window shows the status
messages and any warnings. Click on the [+] on the bottom left to expand it. The status bar also shows the
progress indicator.
Input Tab:
Load...
-
3D model... For details on what files can PoseRay handle see this section. Select as many
files as desired at once.
-
Merge Model... adds one model at a time to the geometry already loaded.
-
Poser scene... Dialog for loading a Poser scene. Read the tutorial
-
DAZ Studio scene...
Dialog to load DAZ Studio geometry. Read the tutorial
-
Batch process will prepare several input files for POV-Ray batch conversion.
Select the files you want to convert by clicking Add.... Then select the format you want to export to and if you want to
use a common material file. If not selected then each file's materials will be used in the conversion. Check Use default camera
and lights if you want to use the default camera and single light source attached to it during the conversion. If this is not checked
then PoseRay will use the current camera and light presets on the preview tab for the conversion. Exporting to separate POV-Ray files is suited
for different models with different materials and scales. Exporting to a single POV-Ray file is better for animations or related
scenes where the materials are the same. For a tutorial/example on loading an animation from Poser (or similar
program) see this section.
Reset options on close
Enable this to clear all the options when PoseRay closes. This does not clear saved cameras, lights, material filters, custom materials, or render presets.
Previously loaded models.
PoseRay remembers the past 20 files loaded. Select it from the drop
down list and and click either Load selected or Merge selected.
Import Options
-
Reorient 3DS and DXF files. These formats default to z being up. PoseRay defaults to y being up. This option will rotate these models -90 deg around the x axis.
- Read 3DS map transformations Toggles if you want to read any transformations applied to the maps in a 3DS file.
- Crease angle (deg): [angle] PoseRay will automatically calculate the normals in case the model does not have them.
-
Triangulation mode: This applies to OBJ, LWO and WRL models
where polygons with more than 3 vertices can be defined. Automatic will
use OpenGL tessellation unless it fails where it will default to the older
ear-cutting algorithm. If your computer has a version of GLU less than
1.2 then this option is not available and ear-cutting will be used.
- Texture map search paths... Selects where PoseRay will look for texture maps for all the models it loads.
Run options
- Check PoseRay is running under Wine if you are using PoseRay in Linux and are using Wine or a Wine-based emulator
- To avoid accidental close of PoseRay check Confirm Exit.
- To activate the automatic undo feature click on Automatic state backup. PoseRay will save the material and geometry every time
a change is made so the changes could be undone. Only one level of undo is available. With this option active will require more memory to
store the previous and current states.
- Temporary storage is used when PoseRay reads PZZ scene files or gzipped VRML models and decompresses a copy of the file.
Misc
mm/unit controls how many millimeters are in a unit. If the scene is in meters then this value is 1000. If it is in inches then this value would be 25.4.
Use this for SSLT and light fade scaling.
Preview Tab:
This tab has a toolbar and 4 sections that control preview options, camera and lights.
Tools:
- Save preview... will
save the current preview to a JPEG or TGA file. TGA is better quality but
larger. PoseRay will ask you if you want to anti-alias the image before
saving it to smooth the edges of the image. To raytrace in POV-Ray
instead use the POV-Ray output tab.
- Load scene settings... loads all the scene settings (camera, lights, background, etc) from a previously saved PoseRay scene.
Display Options:
- Show/Hide preview toggles the visibility of the preview window.
- Draw mode will change
how PoseRay displays the model. For a complex slow drawing model change
to bounding box solid display.
- Display orientation axis will
display a x-y-z axis fixed on the lower left of the window.
- Display world axis will
display a x-y-z axis fixed at the origin of the world coordinates.
- Display object axis will
display a x-y-z axis fixed on the lower left coordinate of the object.
- Display vertex normals toggles the display all the vertex normals.
- Draw Double Sided will display the back-faces of triangles in black.
- Apply mats to both sides
will apply the material to both sides of every triangle. This option
slows down the preview.
- Show maps toggles use of maps on the preview.
- Show Lines toggles display of line
entities.
- Reflections will show a
reflection effect (if there is a background map/sky loaded) using the
OpenGL® API ARBMultiTexture extension. If the extension is not available
from your video system this option will have no effect.
- Horizon will show the
horizon line perpendicular to the y axis. Horizon is only visible if the
camera is in perspective mode
- Grid will overlay a grid
with the given resolution on the preview window.
- Transparency threshold
will toggle the transparent maps in the preview. Only available if Show maps is active.
Change the value to control the threshold between 0 and 1 where the map will be assumed transparent. Usually a
value of 0.5 will work for most cases.
- GL Map size: Controls
the map size that the preview uses. This setting will only affect how
PoseRay displays the maps in the preview tab and will not modify the
originals.
If you have
an older computer/video card I strongly recommend leaving the map preview
at the default resolution. This will allocate about 65 kBytes
per map. If the map is smaller it will not be resized. The Apply button
refreshes the maps loaded into the model and the background with the new resolution.
- Show ground normal to y (Applicable to POV-Ray renders only) will display a ground plane
perpendicular to the y axis. This ground will not cast shadows in POV-Ray
renders. Press Drop to drop the ground to the lowest y vertex in the scene.
Press Ground Texture... to edit the POV-Ray texture for the ground.
- Background Color (Applicable to POV-Ray renders only): Changes the
background color of the preview window and POV-Ray render.
- Sky / Background... (Applicable to POV-Ray renders only) This allows you to enter the POV-Ray code for the sky or any other type of POV-Ray scene element in a text window. In
this window click on Insert to insert sky presets. Click on sRGB color to insert a color using the format color srgb < r,g,b > and
on Image map... to insert an image map into the text window using the format format "filename".
Press Preview to create a simple spherical render of the background and put it in the preview.
Some built-in values can also be inserted into the text:
- Scene center vector: the geometric center of the scene <x,y,z>
- Scene floor center vector: the point at the minimum y and centered in x and z <x,min y, z>
- Scene top center vector: the point at the maximum y and centered in x and z <x,max y, z>
- Scene min vector: the point at the minimum x, y and z of the scene <min x, min y, min z>
- Scene max vector: the point at the maximum x, y and z of the scene <max x, max y, max z>
- Scene diagonal: the distance between the minimum and maximum x, y and z coordinates of the scene
- Scene bounding box: a vector between the minimum and maximum x, y and z coordinates of the scene <max x - min x, max y - min y, max z - min z>
- Press From file... below the sky/background button to import the background from a previously saved PoseRay scene in obj of obj.gz format.
Camera: (Applicable to POV-Ray renders only)
- You can save camera presets by setting the camera as desired and pressing [+] and give it a name.
- You can recall camera presets by selecting the camera from the drop-down list.
- From file... will import the camera from a previously saved PoseRay scene in obj of obj.gz format.
- You can set what the left button controls
by selecting the mode from the drop down box.
- Recenter camera will
make the camera rotate about the center of the geometry
- Reset camera will set
the camera to an angle and zoom that will show the entire geometry
- Zero roll will set the
camera such that the y-axis is vertical.
- Snap to closest quadrant
will align the camera such as the world axis frames the current view.
- No perspective will
toggle the perspective of the camera.
- Use focal blur will make
POV-Ray use blur in the camera. The camera will be in focus for all the
geometry that is between the back and front planes. These planes are
always aligned with the camera and can be moved using the up-down
arrows.
- Show focus limits will
display two grid planes (magenta - back and cyan - front) that will
delimit the focused area seen by the camera. The distance to each plane
is referenced to the center of the geometry.
- Window size controls the size of the preview window in pixels.
Type in the size you want and press Apply to change.
- Stay on top forces the preview window to stay on top of the main
PoseRay window.
Lights: (Applicable to POV-Ray renders only)
- PoseRay uses a default light that is
attached to the camera. When you add lights to the scene this camera
light is disabled.
- You can save a set of lights as a light
preset. To save the current set of lights press [+] by the Light
Preset box. Pressing [-] deletes the preset. To recall the preset just select
it from the drop-down box.
- By the Choose light box you can
Press [+] to add a light and [-] to delete a single light to the current scene.
- From file... will import the lights from from a previously saved PoseRay scene in obj of obj.gz format. Current lights will be deleted.
- Delete all will remove
all the visible lights and use the camera light only
- Type: You can use parallel (infinite), spot or point lights.
- Intensity can be more than 100% for high power light sources or even negative.
- Fade distance Controls the distance at which area or point lights starts to fade. Any negative value will turn off fading. This would represent the edge of the light source.
For example the fade distance for a light bulb would be about 2 (2 inches if the scene is in inches).
- Elev, Rot (parallel light):
Orientation of parallel lighting.
- Position (spot or point). Origin of the light. Press GC to place the light at the
geometry center.
- Point to (spot light): Location
where the spot light points to. Press GC to point to the geometry
center.
- Shadow Toggle the shadow for the selected light.
- Soft shadow (area light) Makes the light cast soft shadows based on its size and distance.
- Jitter shadow will mix the soft shadows to decrease banding
- Area Illumination enables area specular effects.
- Area light Size controls how big the area light is in 3D space.
- Area light density The total number of lights for a soft shadow. More lights will give better soft shadows but with longer render times.
- Total intensity [ ] will distribute the intensity of all the lights to match the value given.
- Rotate All Lights rotates all lights around the vertical axis through the center of the scene
- Scale intensities by [ ] scales the intensity of all the lights by a factor.
- Show light pos
will toggle the preview of the light positions. Only current light shows only the selected light.
- To just use a head light and ignore the scene lighting for easy setup check Use head light only
- Right clicking on a light property will allow you to apply it to all lights
Materials Tab:
This tab controls the materials properties for the loaded geometry. Each
material is divided into pigment, finish, bump map and transparency. Also for each material you can
enter POV-Ray code and view/edit UV coordinates. All the material settings will be saved to any exported POV or OBJ files.
Material List
- Select a material to show its properties.
- Shift+click or CTRL+click to select several materials.
- For any of the material properties right-clicking on a setting will allow you to set the same property value on all or the selected materials.
Tools...
- Groups->Materials deletes the materials list and creates
a new set of materials based on the groups list.
- Groups & Materials -> Materials
deletes the materials list and creates a new material list based on the
intersecting sets of group and materials.
- Select all Selects all the materials
- Selection to clipboard sends the selected material list to the clipboard as text
- Load script... executes a set of commands in a text file to modify the materials. The script file should have the extension TXT. PoseRay includes a script (material-script.txt) that covers several Poser models. The accepted script commands are:
materialsubset material1, material2, ...
(material1, material2...: strings) Selects a subset from the material list. The materials must be in the order listed and include all the names listed.
selectmaterial material1, material2, ...
(material1, material2...: strings) Selects the materials from the main list if a materialsubset
has not been issued. If a materialsubset
has been issued then it will select the materials from the subset only. No order is required.
selectmaterial *all
Selects all materials
selectmaterial *none
Selects no materials
set Kd x1 x2 x3
(x1,x2,x3:float) each value is the fraction from 0 to 1 of the RGB components of the diffuse color
set Ka x1 x2 x3
(x1,x2,x3:float) each value is the fraction from 0 to 1 of the RGB components of the ambient color
set d x
(x:float) opacity of the material from 0 to 1
set km x
(x:float) bump strength. Typically from 0 to 1
set map_Kd s
(s:string) diffuse image map, leave s as blank to remove
set map_Ks s
(s:string) specular image map, leave s as blank to remove
set map_d s
(s:string) transparency image map, leave s as blank to remove
set map_Bump s
(s:string) bump map, leave s as blank to remove
set Ns x
(x:float) Basic specular size. x=100 for specular size=0, x=1 for specular size=100
set #Ns2 x
(x:float) Secondary specular size if specular mapping (map_ks) is used. x=100 for specular size=0, x=1 for specular size=100
set Ks x1 x2 x3
(x1,x2,x3:float) Basic specular color. Each value is the fraction from 0 to 1 of the RGB components of the specular color
set #Ks2 x1 x2 x3
(x1,x2,x3:float) Secondary specular color if specular mapping (map_ks) is used. Each value is the fraction from 0 to 1 of the RGB components of the specular color
set #bump_size x
(x:float) bump size scale for the bump map
set #r x
(x:float) reflection from 0 to 1
set #r2 x
(x:float) secondary reflection from 0 to 1 if specular mapping (map_ks) is used
set #usereffresnel
activates fresnel reflection for the material
set #ref_fresnel x
(x:float) ior for the reflection (default is 1.33)
set #noradiosity
deactivates radiosity for any geometry that uses the material
set #nocastshadow
deactivates casting shadows for any geometry that uses the material
set #noimage
deactivates visibility for any geometry that uses the material
set #noreflection
deactivates reflection from any geometry that uses the material
set #diffuse x
(x:float) diffuse multiplier (default is 0.6)
set #sslt n
(n:integer) SSLT (subsurface) type, default is 0 (none). Valid values are 0-none, 1-skin1, 2-skin2, 3-apple, 4-chicken1, 5-chicken2, 6-cream, 7-ketchup, 8-marble, 9-potato, 10-skimmilk, 11-wholemilk.
set #interp n1 n2 n3 n4
(n1..n4:integers) Image map interpolation mode. 0-none, 1-bilinear, 2-normalized, 3-bicubic. n1 is for map_kd, n2 is for map_ks, n3 is for map_bump and n4 is for map_d.
set #povmat,n
(n integer) next n lines are POV-Ray code that should be used for the material. Blank lines count.
- Scale bump size... You can scale the bump map strength for all the materials using this value
- Randomize colors will make all materials have a random color.
- Find all missing maps... will do a global search of every map used or remove all the maps.
- Remove all maps removes all diffuse, bump, transparency and specular maps from the materials.
- Merge selected materials merges all the selected materials into one. It copies the properties of the first material on the list. It asks for a common material name.
- Copy current material button copies the pigment, finish, transparency and any POV-Ray code
assigned to the selected material.
- Paste into all selected materials pastes a copied material into all the selected materials.
- Load material file... You can get
materials from Wavefront material MTL files or Poser files. PoseRay
recognizes .MTL, .PZ3, .PZZ, CR2, .CRZ, .PZ2, .P2Z, .HR2, .HRZ files. It
will read the map names, colors and other settings and assign them to the
materials list. See the limitations section
below for more details. If a Poser file calls for a BUM file PoseRay will
search for the corresponding JPG, TGA, BMP or TIF file with the same name
in the same directory. Bumpmap BUM files are proprietary to Poser and
cannot be loaded by PoseRay or POV-Ray but usually an image of the
bumpmap in another format is included with most Poser models.
- Save as material file... Saves
the materials to an MTL file. If you are manipulating multiple files with
the same materials you can reload this file to reset the materials.
- Search for material... You can search for a partial or complete material name here.
It will start searching from the current material down.
- Default diffuse for mats with image maps... Changes the default diffuse value in the finish for POV-Ray materials that use image_maps
- Default diffuse for mats with no image maps... Changes the default diffuse value in the finish for POV-Ray materials that do not use image_maps
- Add prefix to all material names Adds a string to the begining of each material name.
- Add postfix to all material names Adds a string to the end of each material name.
- Replace string replaces the string in the selected material names with another.
- Repair names... fixes the material naming format created by Poser. Converts name:number into name. If there are more than one material with the same name then an index is added to the name. Example: material skin and skin:1 will be converted to skin and skin_1
- Reload all textures refreshes all the textures in the materials list.
- Fix specular levels This tries to change the specular, diffuse and reflection levels to more realistic values. This is an experimental feature but prevents overly bright reflections and specularity.
- Apply material filters... (NOTE: deprecated, use material script instead) Changes part of the materials based on the material's name. It accepts similar commands that are present in the mtl files. The general commands are as follows:
Kd x1 x2 x3
(x1,x2,x3:float) each value is the fraction from 0 to 1 of the RGB components of the diffuse color
Ka x1 x2 x3
(x1,x2,x3:float) each value is the fraction from 0 to 1 of the RGB components of the ambient color
d x
(x:float) opacity of the material from 0 to 1
km x
(x:float) bump strength. Typically from 0 to 1
map_Kd s
(s:string) diffuse image map (no quotes)
map_Ks s
(s:string) specular image map (no quotes)
map_d s
(s:string) transparency image map (no quotes)
map_Bump s
(s:string) bump map (no quotes)
#gamma s
(s:string or float) gamma value for the diffuse texture. Can be a float or the strings default
or srgb
Ns x
(x:float) Basic specular size. x=100 for specular size=0, x=1 for specular size=100
#Ns2 x
(x:float) Secondary specular size if specular mapping (map_ks) is used. x=100 for specular size=0, x=1 for specular size=100
Ks x1 x2 x3
(x1,x2,x3:float) Basic specular color. Each value is the fraction from 0 to 1 of the RGB components of the specular color
#Ks2 x1 x2 x3
(x1,x2,x3:float) Secondary specular color if specular mapping (map_ks) is used.. Each value is the fraction from 0 to 1 of the RGB components of the specular color
#bump_size x
(x:float) bump size scale for the bump map
#r x
(x:float) reflection from 0 to 1
#usereffresnel
activates fresnel reflection for the material
#ref_fresnel x
(x:float) ior for the reflection (default is 1.33)
#noradiosity
deactivates radiosity for any geometry that uses the material
#nocastshadow
deactivates casting shadows for any geometry that uses the material
#noimage
deactivates visibility for any geometry that uses the material
#noreflection
deactivates reflection from any geometry that uses the material
#diffuse x
(x:float) diffuse multiplier (default is 0.6)
#sslt n
(n:integer) SSLT (subsurface) type, default is 0 (none). Valid values are 0-none, 1-skin1, 2-skin2, 3-apple, 4-chicken1, 5-chicken2, 6-cream, 7-ketchup, 8-marble, 9-potato, 10-skimmilk, 11-wholemilk.
#interp n1 n2 n3 n4
(n1..n4:integers) Image map interpolation mode. 0-none, 1-bilinear, 2-normalized, 3-bicubic. n1 is for map_kd, n2 is for map_ks, n3 is for map_bump and n4 is for map_d.
#povmat,n
(n integer) next n lines are POV-Ray code that should be used for the material. Blank lines count.
- Selected materials are hair sets the current set of materials to give better POV-Ray renders. It sets bump and specular to zero. It works best with trans-mapped hair.
- Backup current state manually saves the current material and geometry state and allows for undo. If Automatic state backup then
before each material change the state is automatically saved to allow for undo.
- Restore backed up state (undo) reloads the materials in the previous state that was automatically or manually backed up.
Options...
- Show thumbnails will show/hide the preview thumbnails.
- Auto update maps will
automatically update the map used in several materials when it is
changed. This option only works when changing from one map to another. It
will not auto-assign for materials with no previous maps or vice versa.
- Resize converted maps If left unchecked the map will not be resized when converted.
- Size of converted maps... controls the output size of the maps that are converted with the convert button.
- Show selected materials on preview toggles how the selected materials are shown in the preview. If enabled the selected materials will be shown a solid color.
- Selected color on preview... Choose the selection color here.
Before loading any maps keep these points in mind:
- See this
section for image types that PoseRay can preview.
- POV-Ray can only use gif, tga, iff, ppm, pgm, png, jpg, tiff, hdr, exr and bmp images and they cannot be
LZW-compressed or
interlaced. Special builds of POV-Ray may be able
to use other formats.
- If a map is applied to a surface that is not UV mapped the map
will not be displayed properly.
Basic Material
- Pigment:
- Maps work if the material has UV coordinates. If you manually type in the map name press Apply to
save it into the material.
- Interp: (Image map interpolation) controls how maps are interpolated when used on the scene. This has a larger effect on low resolution maps. If the material has SSLT it is recommended to use Bilinear interpolation.
- Color sets the surface color of the material. Click on sRGB to use the sRGB encoding on the color.
- Filtering mixes the map color with the base color.
- Translucency is how much light is let through the material.
- Gamma controls how POV-Ray decodes the image before it uses it. You can enter a value, or set it to default or srgb. If left as default POV-Ray assumes srgb encoding if the encoding is not embedded with the image. This setting is ignored for OpenEXR and Radiance HDR formats where gamma is linear (1.0).
- Finish:
- You can set a constant finish for the material or use a map to control how it varies
- It is recommended for best results that you use gray scale images.
- By default the material will have the properties in the finish section where the map is white and a dull finish where where this map is black.
- Interp: (Image map interpolation) controls how maps are interpolated when used on the scene. This has a larger effect on low resolution maps.
- Invert mapping swaps specular mapping between white and black.
- Ambient is the color the material would have if there were no lights. Ambient is usually
black unless it is a glowing surface or similar.
- Specular is the color of the light that the highlight will have at its brightest. POV-Ray uses the intensity of this color for rendering. So using a gray color would suffice.
- Specular Size is how much of the highlight covers the surface. A polished surface would
have small specular size while a rough surface would have a large specular size.
- Reflectivity is how much of the surroundings the material reflects. To multiply the
reflection by the pigment color enable metallic. Check Use Fresnel reflection for a more realistic effect.
Vary the IOR (index of refraction) value to match the material's surface type. The default is for glass.
Note: The Fresnel effect is applied to the entire surface and not controlled by the finish map.
- Bump:
- It is recommended for best results that you use gray scale images.
- Interp: (Image map interpolation) controls how maps are interpolated when used on the scene. This has a larger effect on low resolution maps.
- The default bump size of 1.0 should be enough for most purposes. Use a negative bump size to invert the bump effects.
- Transparency:
- It is recommended for best results that you use gray scale images.
- Interp: (Image map interpolation) controls how maps are interpolated when used on the scene. This has a larger effect on low resolution maps. For better results do not use interpolation if possible for transparency maps.
- By default the material will be
transparent where the map is black and opaque where this map is
white.
- Invert mapping swaps transparency mapping between white and black.
- Maps on any component can be transformed by clicking Transform.... You can scale, offset and rotate maps as long as the material has UV coordinates.
The preview will show the transformed pigment or transparency maps.
Reflection
|
Simple specular
|
Fake fresnel
|
Un-transformed map on box
|
Scaled (U=0.5, V=0.1)
|
Offset (U=0.5, V=0.2)
|
Rotated (45°, around U=0.5 V=0.5)
|
Combination of transformations
|
POV-Ray render showing independent transformation of pigment and transparency maps
|
POV-Ray Custom Material: (Applicable to POV-Ray renders only)
If the basic properties are not enough to describe the material you can use the POV-Ray code directly to create a material block. Basically a POV-Ray material is structured
as follows:
material{
texture{
pigment{}
normal{}
finish{}
}
interior{}
}
Texture is what is on the surface and interior
controls how the light passes through the material. Interior has no effect if
the material does not have some transparency or reflectivity.
You can type in the material using standard POV-Ray code syntax including declarations and macros. You can also put the declarations and macros
on the command code text box below the POV-Ray material text box. This will be included at the top of the material POV-Ray file
and will also be saved with the scene OBJ file.
-
Insert
- From POV-Ray library... brings up the POV-Ray library of predefined materials, textures, etc. If the POV-Ray library window does not have any thumbnails you can press Recreate thumbnails for each tab.
This is only done once and the thumbnails are saved in the same folder where poseray.exe is located under the name prevX.png where
X is an integer.
- From Basic Properties inserts the material as defined in the basic material sub-tab. You can then edit and add code as you wish.
- sRGB Color... inserts a color at the current cursor location using the POV-Ray format
color srgb <r,g,b>
- Image map... inserts an image map at the current cursor location using the POV-Ray format
type "path/filename"
- You can also start a new material by
inserting a material template first and then insert a texture and its
components
as indicated. Only a texture with a pigment are the minimum components
needed. A blank texture is black,
with no finish and smooth.
- To create a material texture with transparency
mapping insert a material template and then a texture with transparency template and fill in the rest the other insert tabs as needed.
- Copy all will copy the contents of the text box into the clipboard
- Clear will delete the contents of the text box
- Paste will paste any
text that is on the clipboard into the text box at the current cursor
location.
- Preview will call
POV-Ray and render a simple scene using the current material to give you
an idea of how it looks. UV range on each object surface is 0 -> 1.
- Bake... will call
POV-Ray, render a square texture using the POV-Ray code in the tab.
This can be useful to give a rough preview of the POV-Ray texture in PoseRay
or to use in other applications.
- Save... stores the material definition at the bottom of the custom material tab in the POV-Ray library
- Active will tell POV-Ray at render
time to use the advanced POV-Ray material instead of the basic material
properties.
- The POV-Ray material definition will be
saved if the model is exported to OBJ. This can be read back by PoseRay for later use.
- When PoseRay closes custom materials are saved into custom_pov_texture_lib.inc
kept in the same directory where PoseRay is installed.
- Check section 3.4 of the POV-Ray documentation for more details on advanced POV-Ray textures.
- You can use a partial POV-Ray texture. Go to the POV-Ray material window, start the code with
$pigment
, $finish
, or $normal
, then add the POV-Ray commands, and close them with $end
.
For example if you have a basic material setup but want a procedural normal you would type $normal normal{agate 0.2 agate_turb 1.0 scale 0.01} $end
in the POV-Ray material window. This will tell PoseRay to replace the normal in the material with the one between the $normal
and $end
. Anything outside will be ignored.
- Note: If you want to use a manually typed POV-Ray material with a UV-mapped surface you must
add the
uv_mapping
keyword to any pigment or normal you use as follows:
material{
texture{
pigment{ uv_mapping pigment_code }
normal{ uv_mapping normal_code }
finish{ finish_code}
}
or
material{
texture{uv_mapping
pigment{ pigment_code }
normal{ normal_code }
finish{ finish_code}
}
}
POV-Ray texture - 3D mapping
Texture applied continuously throughout the mesh
|
POV-Ray texture - UV mapping
Texture applied only to the surface UV coordinates. The box had the same UV mapping for all faces.
|
UV
PoseRay will display the UV coordinates for each
material zone. You can also do simple manipulation of them in this tab.
U is from left to right and V is from bottom to top.
- If you want to modify all the materials
check Work on all materials.
- Save as Map... saves the UV preview into a file using the resolution entered.
- Scale: Scaling up U or V will decrease the
texture coverage on the model and even appear as a repeated texture.
Decreasing the scaling will enlarge the appearance of the texture.
Negative scale on U or V will flip the texture appearance on the model.
- Translate: Moves the texture along the surface of the model.
- Fit in [0->1]: Scales and translates all UV coordinates so that they all are between 0 and 1 on both directions.
- Clip to [0,1]: Clips any UV coordinates outside the limits of 0 to 1.
- Transpose UV: rotates and flips the texture on the model.
- Weld UV: Welds coincident UV coordinates on the selected material.
- Remove orphan UVs: Deletes all UV coordinates not attached to a face.
- Refresh UV preview: Redraws the UV mapping preview
- Remap: You can do simple UV mapping of the
model. Enter the main axis components (ex: y axis = 0,1,0) and select
any of the following methods:
- Planar: the mapping
is perpendicular to the chosen axis
- Cylindrical: the
mapping is around the chosen axis (no caps)
- Spherical: mapping
is done around the chosen axis
- Cubic: mapping
aligned with the 3 main axis.
Map
|
Untextured sample box
|
Planar mapping perpendicular to vertical axis.
Edges of map stretch along the other faces.
|
Cylindrical mapping around vertical axis.
No vertical distortion.
|
Spherical mapping around vertical axis.
Vertical distortion is visible.
|
Cubic mapping
|
POV-Ray settings
- Select SSLT type (subsurface type for this material) that closest matches the real material. Setting this to other than none slows the renders significantly.
- Cast shadow toggles the shadow for the material. The material could still be visible or reflect off other surfaces.
- Visible toggles visibility of the material. The material could still cast a shadow or reflect off other surfaces.
- Reflects controls if the material reflects from other materials. The material could still cast a shadow or be visible.
- Affects radiosity toggles if the material is included in the radiosity calculations
- Toggling off all properties above will make the material completely invisible in the scene.
Groups Tab:
- Group List
- Click on the check mark to toggle visibility for the group.
Only visible groups will be modified.
- Tools
- Materials -> groups: Converts all material zones into groups.
- Materials & Groups -> Groups: Converts all unique material and group zones into groups.
- Load script... executes a set of commands in a text file to modify the geometry. The script file should have the extension TXT. The accepted script commands are:
select group-name-1, group-name-2, ...
(group-name-1, group-name-2,...: strings) selects (makes visible) the named groups. If the group uses a space use double quotes to enclose it.
select *all
selects all the groups
select *none
deselects all the groups
deselect group-name-1, group-name-2, ...
(group-name-1, group-name-2,...: strings) deselects (makes invisible) the named groups. If the group uses a space use double quotes to enclose it.
transform sx,sy,sz,rx,ry,rz,tx,ty,tz,cx,cy,cz
(all vars are floats) transforms the selected groups. Scale: sx,sy,sz, rotation: rx,ry,rz (degrees), translation: tx,ty,tz, and center of rotation and scale: cx,cy,cz.
weld x
(x:float) welds the selected groups
normals x,n
(x:float, n:integer) recalculate the normals in the selected groups with a crease angle of x degrees. n=1 for normal sum, n=2 for angle weighted, n=3 for unique normal, and n=4 for inverse area sum.
subdivide f1,f2,f3,f4,f5,f6,f7,x
(f1..f7:boolean, x:float) subdivides the selected groups. Boolean flags can be typed as true/false, 1/0, or yes/no.
- f1=(true:smooth, false:flat)
- f2=(true:smooth mesh edges, false:do not smooth mesh edges)
- f3=(true:smooth UV edges, false:do not smooth UV edges)
- f4=(true:keep mesh creases, false:do not keep mesh creases)
- f5=(true:only work on subdivision faces - if present, false:work on all faces)
- f6=(true:blend meshes, false:do not blend mesh)
- f7=(true:smooth mat boundaries, false:do not smooth mat boundaries)
- x=The crease angle for the subdivided surface in degrees
displace filename,x1,x2,n1,n2,n3
(filename:string,x1,x2:float,n1,n2,n3:integer) displaces the selected groups using an image.
- filename: Image used for displacement. Include full path. If the filename has spaces, it should be enclosed in double quotes.
- x1: min displacement limit
- x2: max displacement limit.
- n1=(1:displace x,0:do not displace on x)
- n2=(1:displace y,0:do not displace on y)
- n3=(1:displace z,0:do not displace on z)
addthickness x1,x2,n,x3
(x1,x2,x3:float, n:integer) adds an rounded cap to the free edges of a mesh.
- x1: width of the added edge
- x2: thickness of added edge
- n: number of mesh breaks the edge will have.
- x3: angle that the edge wraps around in degrees. Usually 180.
removeorphanvertices
removes vertices not connected to a face
removeorphannormals
removes normals not connected to a face
removegroups
removes non-visible (non-selected) groups
mergegroups name
merges the selected groups into a single group called name
- Any text started with // is a comment. Blank lines are ignored. parameters can have spaces between the commas.
- If active, the undo function will revert to the geometry present before the script was executed.
- If a command does not have all the required parameters it will be ignored.
- Most of the group commands are copied to the clipboard when executed in PoseRay. This way a script could be assembled easily by pasting the desired commands into a text editor.
- All invisible / visible: Makes all groups invisible / visible
- Invert visible flag: Inverts the visibility flag of all the groups
- Select Filter... filters the selection to a set of names. This is useful for selection of skin groups before subdivision of humanoid figures. Each line in the dialog is processed. Add a // at the beginning to disable it.
- Backup current state manually saves the current material and geometry state and allows for undo. If Automatic state backup then
before each geometry change the state is automatically saved to allow for undo.
- Restore backed up state (undo) reloads the geometry in the previous state that was automatically or manually backed up.
- Options
- Reset values: Sets all the values in this tab back to their defaults.
- Show selected group on preview: Toggles a wire box around the selected group.
- Selection color on preview: Controls the color of the selection wire box.
Faces, Vertices and normals:
- Transform: Here the
geometry can be transformed by scaling, rotating and translating.
A negative scale will mirror the geometry. The normals are automatically updated with scaling and rotation.
- Recalculate Normals: will
force any two faces that have an angle larger than the crease angle to
appear to have a sharp edge. If the angle is less than the threshold the
edge between the faces will appear to be smooth. This is accomplished by
creating or removing normals at the face edges. No vertices are created
with this option. The crease angle ranges from 0 to 180 degrees. If it is
set at 0 then all the faces in the model will appear flat. If it is set
to 180 then all of the faces will appear to be smooth. Smoothing only
works on faces that share edges. If two faces seem to share an edge and
smoothing does not change their appearance then most likely the edge is
not shared and each face has its own edge. To fix this you can weld
vertices (PoseRay will suggest to smooth when you check on weld
vertices). As a general rule organic-type models
should use 180 degrees and mechanical objects should use less than 90
degrees. There are 4 methods to calculate normals:
- Normal sum
calculates the normals at each vertex by direct average of the
normals from the faces sharing that vertex.
- Angle-weighted sum
will weight the average according to the face angle at the vertex.
(This method usually gives the best results)
- Unique normal sum
uses the unique normals at each vertex to calculate the average.
- Inverse area sum
weights each normal at a vertex by the inverse of the area of its
face.
- Remove orphan vertices: Deletes all vertices not attached to a face
- Remove orphan normals: Deletes all normals not attached to a face
- Remove non-visible groups: Permanently deletes all the groups that are invisible
- Merge visible groups: Combines visible groups into a single group.
- Split faces by crease angle: works similarly to smoothing but it does not create new
normals. Splitting will break any two faces that share an edge by
duplicating the shared vertices. It uses the crease angle entry for the
normals.
- Flip normals: Inverts the orientation of the normals.
- Reverse vertex winding Reverses the direction of the vertices around a face.
- Weld vertices: will merge
any two vertices that are within a tolerance. The tolerance is
automatically calculated for each model but you can change it. The larger
it is the longer the weld procedure will take. It is recommended that
smooth be active when welding vertices so that redundant normals are
removed.
- Flip face orientation: Flips normals and vertex winding in a single command
- Flip X-Y axis: Transposes X and Y coordinates in the geometry
- Flip Y-Z axis: Transposes Y and Z coordinates in the geometry
- Flip X-Z axis: Transposes X and Z coordinates in the geometry
Subdivision:
PoseRay can subdivide a model and smooth its appearance using the modified
Loop algorithm or a flat subdivision. Subdivision will
result in each triangle broken into 4 sub-triangles and 3 additional vertices. Not all models are suitable for
subdivision and results will vary. Press the Subdivide button to execute the command.
You can repeatedly subdivide a model. For example 3
subdivisions on a 5000 face model will result in 43=64 triangles per
original triangle. This would produce a model with a total of 64*5000=320000
faces after 3 subdivisions. It can be easily seen that the model could get very
large with just a few subdivisions. Usually one subdivision should be enough for most cases.
If after a subdivision the model shows numerous
gaps you may want to reload the model and weld the vertices before subdivision to prevent faces from rounding away from
edges.
There are two subdividing methods (flat and smooth):
- Flat will keep the surface shape intact. This is
useful for increasing the resolution of the mesh before mesh displacement. UV mapping is automatically
subdivided with this option.
- Smooth is a subdivision
method based on the modified Loop's algorithm developed to work better on triangular meshes.
After successive number of
subdivisions the surface will resemble a continuous NURBS surface.
Geometry subdivision automatically subdivides UV mapping. If the original
grid is extremely coarse the UV mapping may become distorted.
- Keep mesh creases keeps the sharp edges in the geometry. Suited best for mechanical type models.
- Smooth mesh edges smooths any free edges in the geometry. May distort seams in some
cases
- Smooth UV edges smooths any free edges in the UV map
- Smooth material boundaries maintains and smooth the edges between
materials during the subdivision
- Only work on subdivision faces (if present). LightWave models can contain faces that
need subdivision to be shown accurately. Leaving this on will only
subdivide those surfaces. If the model does not have any subdivision
surfaces then this option has no effect and all the faces will be
subdivided
- Blend zones modifies the triangles between subdivided and non-subdivided parts of the mesh so that there are no gaps. This
option has no effect if you subdivide the entire mesh
- Crease angle controls the normal threshold after the subdivision since the normals on the subdividing surfaces will be recalculated.
Below are a few examples of the smooth subdivision options used on the
same mesh.
Original mesh
|
2 Subdivisions
Options:
- Keep mesh creases ON
- Smooth mesh edges OFF
|
2 Subdivisions
Options:
- Keep mesh creases OFF
- Smooth mesh edges OFF
|
2 Subdivisions
Options:
- Keep mesh creases ON
- Smooth mesh edges ON
|
Mesh Displacement
This deforms the grid by moving each vertex along its normal according to
the intensity of a map at the UV coordinate of the vertex. The model must have texture (UV) coordinates for displacement
to work. For the deformation you can choose to move a vertex along
the normal at that vertex or just some of its components. If the model does
not have UV mapping you can create it in the UV sub tab.
Displacement images have usually denser resolutions than the mesh to which they are applied. Typically the denser the
mesh the better the displacement results. You can use subdivision to
increase the resolution of the mesh before it is displaced. But PoseRay can also do an adaptive subdivision of the
mesh where the displacement gradients are the largest. This prevents redundant subdivision and improves performance. To
do an adaptive subdivision and displacement just follow these steps after loading a model:
Steps for displacement:
- Select the groups that you want to displace. If you want to work on some materials instead just click on
Tools... Materials -> Groups and select the materials you want to displace.
- Load the displacement image. The amount of displacement can be controlled by setting the values at pure
black and at pure white in the image. Usually gray scale images are best for displacement.
- If the mesh is too coarse for the detail in the displacement map you can use adaptive subdivision as described below:
- Click on create gradient map. This creates an image where white will show where PoseRay will subdivide the mesh. You
can change the threshold value. The lower the threshold the more detail will be included but the subdivision area will increase.
The threshold should be increased for noisy displacement images. Typical threshold values are 0.01 to 0.1.
- Once you are satisfied with the gradient image select the number of subdivisions. For denser meshes 2 subdivisions is
usually enough. For very coarse meshes you may want to increase this value to 4 or more.
- Click on use adaptive subdivision before displacement
- click on Displace geometry. PoseRay will subdivide and displace the mesh.
Tip: to get an idea of how much to displace click on the status messages
and in the expanded status message box click on geometry stats. This will
give you the size of the geometry loaded. Start with small increments. If you make a mistake just go to Tools->Undo.
Texture map
|
Displacement map
Black = 0.0 displacement
White = +0.2 displacement
|
Undeformed and textured box mesh
10 x 10 x 10 units
|
Deformed box mesh
Adaptive subdivision, 0.07 threshold, 5 subdivisions
|
Converting Lines to tubes (Lines sub-tab)
- PoseRay can convert the line entities in the OBJ file into tubes of variable diameter. Just enter the tip and root diameter and press Convert lines to tubes.
- To control the density of the tube along the circumference you can change Breaks.
- The tubes will appear as new groups and materials.
- The tubes are UV-mapped. U along the original line and V around the tube.
- Each connected set of lines in the original OBJ file will define a tube.
- Tubes become part of the geometry and can be saved to OBJ, POV-Ray or Moray files and can be subdivided.
- Pressing Convert face edges to lines extracts unique face edges from the geometry and converts them to lines. You can then convert them to tubes so they
would be visible in a POV-Ray render.
- Note 1: These functions only work on visible groups.
- Note 2: To make the tubes look line solid-color lines you can assign a material to them with no shadow, pure white ambient and no specular or reflection.
- Note 3: If, after converting lines to tubes, the tubes are not visible or the mesh was covered by tubes then the default tube diameter may be too large or small.
Experiment with other sizes.
Light Dome (Applicable to POV-Ray renders only) (DEPRECATED)
Note: This feature is deprecated because of the radiosity improvements in POV-Ray 3.7. No new features or updates will be added to the Light Dome functionality. This feature will be removed in future versions of PoseRay. See this section for recomendations.
PoseRay can use a high dynamic range image to simulate
environmental illumination by using a set of lights (light dome) with the intensity and
color of the surroundings.
Original light probe (angular mapping)
|
Probe converted to latitude-longitude mapping with HDR Shop
|
Render using light dome extracted from probe. The hdr probe was also used in a sky_sphere for reflections. Dome had 64 infinite lights with soft shadows.
|
Extraction procedure:
- Get the utilities below and set them up as described on the installation section.
- If the HDR probe needs remapping and
conversion (see images above) then start HDRShop. Load the high dynamic
range image you want to use and if it is not using Latitude-Longitude
mapping (see above for example) go to Image -> Panorama -> Panoramic
Transformations... and in the source image format select Light Probe (angular map) and the destination image
format select Latitude-Longitude and click OK. A new
remapped image will be created.
- The image width must be twice its height so if the file is not you can resize it in HDR Shop
by clicking on Image -> Size -> Arbitrary Resize... and enter the corrected size.
- Then save the image as a High Dynamic Range Floating Point TIFF file (.TIF).
Also save the image as a jpeg for preview purposes.
- Back in PoseRay click on Extract lights using LightMapGen... to get the lights out of the TIFF file saved above. This will create a
file named filename.lm containing a list of lights.
- Click on Read LightMapGen output... and select the file created above. This puts all the lights on the scene.
The light distribution will be shown on the image box over the jpeg preview of the light probe if it is available.
- If you want to change the light export just change the Light Extract Options and reload the file from the previous step
- If you want to change the orientation of the lights just press the left or right arrows in the Rotate all lights
control in the preview tab.
There are two example light files included with PoseRay. They are called lightdome01.lm and lightdome02.lm.
They have 64 lights each. To use in PoseRay just start from step 6 above.
Options:
- Number of lights to extract.
Enter the maximum number of lights that you want to extract from the HDR TIF file using LightMapGen
- Convert all lights to white will make all the lights have a white color with the intensity controlled by the HDR file.
- Rescale overall intensity. To keep
the lights from saturating the scene they need to be scaled. Increase the
value of this if the scene is too dark and decrease if it is too bright.
Keep in mind that the PoseRay preview of the lights may not be
accurate so you may want to do a quick render of the scene to test
first.
- The number of lights that can have shadows can be changed by a percentage starting with the strongest lights.
To prevent shadows from the ground you can prevent any lights
originating from below ground from producing shadows by checking only above horizon.
- Soft shadows will use area lights
for the shadow lights. Point lights are used by default. Enabling this option
significantly increases render time.
- Automatic light dome diameter controls the distance to the light dome.
Keep in mind that not all probes give good
results. It depends on how they were processed and created.
Some may not have strong illumination, produce unnatural colored lights or
have the high range areas badly spread over the image.
POV-Ray Output Tab:
Examples of a DAZ Studio scene rendered with different settings. |
No radiosity and one point light.
|
Radiosity, one point light and illumination from background dome.
|
Radiosity, focal blur, one point light and illumination from background dome.
|
Radiosity and illumination from background dome only. No lights.
|
Export menu
- Set POV-Ray executable... If you want to render the images from PoseRay you need to tell it where the POV-Ray
executable (
pvengine.exe
or pvengine64.exe
) is in your computer. If you are using a modified executable then use that instead.
- Save... saves all the POV files needed to render the scene.
- Save & Render... saves all the files and calls POV-Ray to automatically render the scene
- Save & Edit... saves all the files and opens all the files in POV-Ray's editor.
POV-Ray scene files
- Version Controls what POV-Ray version should be used with the scene. Setting it to 3.6 will give a more generic code that uses rgb instead of srgb, does not use albedo in specular, and uses ambient instead of emission.
- For a scene called
scenename
PoseRay will create at most four files
- Main Scene: (
scenename_POV_scene.pov
) Contains scene camera, lights, sky, floor and main geometry call.
- Settings (
scenename_POV_main.ini
) contains the POV-Ray configuration settings. Open this file in POV-Ray to render the scene
manually.
- Geometry (
scenename_POV_geom.inc
) contains the geometry meshes.
- if Save each mesh into a separate file is enabled then the geometry will be split by material
scenename_material1_.inc, scenename_material2_.inc, ...
and called from scenename_POV_geom.inc
as includes.
- Materials: (
scenename_POV_mat.inc
) This file is called from the geometry file and contains all the material definitions.
Scene
- Radiosity settings listed
are the most common. PoseRay default is the same that was used for
older versions of PoseRay. Others are predefined settings from POV-Ray.
Radiosity has many options and you can browse the radiosity
tutorial in section 2.3.7 of the POV-Ray manual for more details.
- Break the mesh by: PoseRay breaks the geometry by material or materials & groups. Breaking it by material is faster.
There is no difference on the render with either method. This is useful only if you want to work on each mesh separately in POV-Ray.
- Spherical Camera
will render the scene into an image that can be wrapped around a sphere.
Useful for creating environment maps.
- Simplify geometry replaces the
geometry with the bounding boxes for each group. Useful for scene setup
within POV-Ray and quick test renders.
- Add standard includes adds links to the standard POV-Ray include files
- Enable SSLT toggles the SSLT effects if they are used in any material
- Enable SSLT fix adds a workaround for a color problem with SSLT in POV-Ray 3.7.0. This averages a small amount of white into all pigments if SSLT is used.
- Use soft lights toggles the soft shadow on all lights if present
- Use material transparency toggles transparency mapping in any material that uses it
- No materials toggles all the materials from a generic white to the real material set in the materials tab.
Output Image
- Name is the filename of the render
output from POV-Ray. Enable Add time stamp to name
to prevent overwriting any renders. This will add a number after the name that
represents the time at which the output files were written.
- The resolution of the render image can be
set to an arbitrary size or it can have the size of the preview window.
If the aspect ratio of the image is unchecked then the output image will
not match the preview window but it will not be distorted.
- Antialias: Recursive will give out slightly smoother results than non-recursive at the expense
of longer render times.
- Render Quality. Controls
the quality of the render from just rendering the colors to full quality
with radiosity (if enabled).
- You can save the render to a specific directory instead of the same where the output POV-Ray files are saved. Select Save render to a specific directory and press the button on the right of the checkmark to select the directory.
- Mosaic preview. This will
preview the render at a very low resolutions before the final image is
produced.
- Enabling alpha channel
in the rendered image will result in an image that is transparent where
the background color is present. As far as I know, from the available
formats, only TGA and PNG can store the alpha channel transparency
information. Background maps will not allow the alpha channel to show.
- Render can be restarted will make it possible for
you to pause and continue long renders in POV-Ray. Note that if you want
to render to an image that already exists and this option is enabled it
will result in POV-Ray not rendering anything new because it will think
that the new render is a continuation from previous image.
Custom
If you are a POV-Ray power user you can set up extra
initialization settings. The left text box text will be saved into filename_POV_main.ini
file. If you want to use your settings only then check Use only these and skip the settings above.
Check the POV-Ray documentation for available ini options. The right text box is for
custom POV-Ray commands at top of the main POV file where special includes, declarations,
etc can be entered.
Export options (after pressing save / save & render / save & edit):
- Overwrite files will overwrite all exported files except for the render.
- Include file paths to image maps should be enabled if the maps are located in a different
directory than the one used for the POV-Ray files.
- Copy all maps to the same directory will make copies of all maps used by the scene and
place them in the same directory where the POV files will be saved. Note
that when this option is enabled the paths to the images are not included
in the output files.
- Fix map names removes all non alphanumeric characters from the map
filenames.
- Fix map resolution to [ ]. This will resize the
maps as they are copied. Largest dimension will have this resolution. All
resized maps are converted to JPEG format.
Moray Output Tab:
Files
- For a scene called
scenename
PoseRay exports three files
- UDO file (
scenename_moray.udo
) contains the UDO model to be imported into Moray.
- Geometry (
scenename_moray.inc
) contains the 3D mesh.
- Materials (
scenename_moray_mat.inc
) Contains the material definitions (optional).
If you want to use Moray's material
editor on the model you will need to select Disable the original
materials so that PoseRay will not link and export the materials
list. You will have to set the materials in Moray.
Export options (after pressing save):
- Overwrite files will overwrite all exported files
- Include file paths to image maps should be enabled if the maps are located in a different
directory than the one used for the POV-Ray files.
- Copy all maps to the same directory will make copies of all maps used by the scene and
place them in the same directory where the POV files will be saved. Note
that when this option is enabled the paths to the images are not included
in the output files.
- Fix map names removes all non alphanumeric characters from the map
filenames.
- Fix map resolution to [ ]. This will resize the
maps as they are copied. Largest dimension will have this resolution. All
resized maps are converted to JPEG format.
Important notes using Moray:
- The path where the POV-Ray include files
are typically saved must be in the POVRAY.INI file. Start POV-Ray and in
the tools menu click on Edit -> Master povray.ini and add
this entry to the end of the file: Library_Path=xxx
where xxx should be the location where the include files are. For example
I have this entry at the end of my povray.ini file: Library_Path=C:\Work\3D since I place the files that
PoseRay exports there. So this way when Moray calls POV-Ray to do a
render using a PoseRay-created UDO file it will find all the needed
include files.
- The first time you import an UDO into
Moray it will ask you if you want to save the directory where the inc
file is for future use. I usually click yes and make sure that I export
all the UDO models into that directory from PoseRay.
- I recommend always closing POV-Ray before rendering from Moray.
- When you save your scene in Moray do not
use the root of the UDO filename because it may interfere with the .INC
files created by Moray. Just use a different name for the Moray .MDL
file. For example if you imported Box.udo into Moray do
not save the scene as Box.mdl, use another name.
- If you include an UDO model in Moray and
use some of Moray's materials in other parts of the scene you may
encounter problems with the material names. To avoid any naming conflicts
any Moray material used should be renamed. For example Moray's
Bronze_Metal conflicts with POV-Ray's Bronze_Metal. You can rename
Moray's material to Moray_Bronze_Metal.
- If POV-Ray or Moray hangs when rendering from Moray you should
uncheck the Auto-Load Error File menu item and check the Auto-Show Parse
Messages menu item in POV-Ray's Editor menu. Note that the Editor menu is
only displayed if a POV file is currently open for editing.
-
PoseRay exports the mesh as a set of groups and materials for easy
editing in Moray. As an example a model named car with two groups and two materials
will be broken as follows (assuming the materials are used by all groups):
car_group1_material1, car_group1_material2, car_group2_material1 and
car_group2_material2.
OBJ Output Tab:
PoseRay can save a Wavefront OBJ file and its materials containing all the
modifications done in PoseRay. Saving the scene as an OBJ file from PoseRay
will save all the scene information such as lights and camera as well as
materials. Reloading the OBJ file will restore the entire scene.
Files
- For a scene named
scenename
PoseRay will create two files
- OBJ filename (
scenename.obj
or scenename.obj.gz
) contains all the geometry.
- MTL filename (
scenename.mtl
) contains all the material definitions and will have the same prefix and the OBJ file.
Options:
- Save normals will save
the normals into the OBJ file. Some programs require this information for
properly displaying the model.
- Save texture coordinates (UV) will save the texture coordinates into the OBJ file. These
are needed if the model is texture mapped.
- Fix material and groups names. For example a material called skin:2 will be
renamed skin_2. This is useful if the importing program has problems with
the original naming.
- Export camera as a mesh. This will export the camera as a mesh
in case you want to use it for realigning the camera of the importing
program as it was in PoseRay.
- Compress obj file into gzipped file (filename.obj.gz) Compresses the OBJ file only using the gzip method. The file can be reloaded by PoseRay in this compressed state. This is just to save disk space. The MTL file is not compressed.
Export options (after pressing save):
- Overwrite files (except render) will overwrite all exported files
- Include file paths to image maps should be enabled if the maps are located in a different
directory than the one used for the POV-Ray files.
- Copy all maps to the same directory will make copies of all maps used by the scene and
place them in the same directory where the POV files will be saved. Note
that when this option is enabled the paths to the images are not included
in the output files.
- Fix map names removes all non alphanumeric characters from the map
filenames.
- Fix map resolution to [ ]. This will resize the
maps as they are copied. Largest dimension will have this resolution. All
resized maps are converted to JPEG format.
Kerkythea Output Tab:
PoseRay can save a Kerkythea file containing geometry and materials. Camera and lights will not be saved into this file.
Misc. options:
- Format Model can be saved in compressed (kzx) or uncompressed (xml) formats.
- Scale Some models may be too large or small for the default Kerkythea scene. You can type in a value here and the geometry will be scaled accordingly before being saved.
Export options (after pressing save):
- Overwrite files will overwrite all exported files
- Include file paths to image maps should be enabled if the maps are located in a different
directory than the one used for the POV-Ray files.
- Copy all maps to the same directory will make copies of all maps used by the scene and
place them in the same directory where the POV files will be saved. Note
that when this option is enabled the paths to the images are not included
in the output files.
- Fix map names removes all non alphanumeric characters from the map
filenames.
- Fix map resolution to [ ]. This will resize the
maps as they are copied. Largest dimension will have this resolution. All
resized maps are converted to JPEG format.
Command line options
This section assumes that you are already familiar with the basic operation of PoseRay. Filenames need to have
the full path so that PoseRay can find them. Also if they have any spaces enclose the path and filename with double quotes.
Available commands:
-load filename.ext. Loads the model in filename.ext into the scene. The file could be a single model file or a text file containing a set of files.
-convert format_number. Converts the loaded files into another format as follows:
FORMAT | Value of format_number |
POV-Ray separate files | 1 |
POV-Ray single file | 2 |
Wavefront OBJ | 3 |
-material filename.mtl. Uses the materials in filename.mtl instead of the materials in each of the files to be converted.
-camera "name". Sets the camera to a preset before doing the conversion. The value of name corresponds to
the name used by the camera preset selector on PoseRay's interface. If this command is not used then the default camera will be used.
Enclose name in double quotes.
-light "name". Sets the lights to a preset before doing the conversion. The value of name corresponds to
the name used by the light preset selector on PoseRay's interface. If this command is not used then the default single light aligned with
the camera will be used. Enclose name in double quotes.
-exportprefix "name". Sets the prefix name for all the exported files. Enclose in double quotes. If not specified PoseRay will use the input filename.
-close forces PoseRay to close once it is done with the commands.
Examples
Just load a single model into PoseRay
poseray.exe -load "e:\3d models\car.lwo"
Convert a single model to a POV-Ray scene and then close PoseRay
poseray.exe -load "e:\3d models\car.lwo" -convert 1 -close
Convert a single model to OBJ using the name newcar as the export name. Close PoseRay after done. The exported file will be called newcar.obj and newcar.mtl.
poseray.exe -load "e:\3d models\car.lwo" -exportprefix "newcar" -convert 3 -close
Convert into a POV-Ray format a small 9-frame set of files from a Poser animation using a single material file.
Also use camera anim 1 and light set dome 4 and then close PoseRay when done.
poseray.exe -load "e:\3d models\animation.txt" -convert 2 -material "e:\3d models\mats.mtl" -camera "anim 1" -light "dome 4" -close
Where the file animation.txt would contain the following lines:
J:\scenes\animation_test_0.obj
J:\scenes\animation_test_1.obj
J:\scenes\animation_test_2.obj
J:\scenes\animation_test_3.obj
J:\scenes\animation_test_4.obj
J:\scenes\animation_test_5.obj
J:\scenes\animation_test_6.obj
J:\scenes\animation_test_7.obj
J:\scenes\animation_test_8.obj
Tips &Tutorials
These tutorials assume that you already installed all the
needed programs.
Rendering a 3D model in POV-Ray:
- Start PoseRay and on the Input tab click on Load... and select the desired model (or models).
- After the model loads you can see the
model in the preview window. Set the camera and lights as
desired. You can also modify the materials
and geometry.
- If there are warnings that maps are
missing you can use the search tool in the materials tab to find them.
- Once the options have been set the model can be rendered by
selecting the POV-Ray Output tab and
clicking on the Export -> Save & Render menu. Default options should work for most cases
Rendering a Poser scene in POV-Ray:
- Create the scene in poser and save it. (PZZ or PZ3 format). If you want to read the camera make sure the camera at frame 1 is the one you want. PoseRay only reads the camera at frame 1.
- I do not recommend Poser dynamic hair. It is too CPU expensive and, with the current specular controls in POV-Ray, will not render as well as transmapped hair.
- Do not spend too much time adjusting Poser materials. PoseRay will strip everything and use image maps and its POV-Ray's commands. Just make sure the image maps, colors and transparencies are set right.
- In Poser go to File -> Export -> Wavefront Object and save the scene as a Wavefront OBJ file. Use the default options.
- Start PoseRay and in the input tab click on Load... and then Poser scene... and select the Wavefront OBJ and, optionally, the Poser file saved above.
If you do not load the Poser scene then you can manually set the camera and lights within PoseRay.
- Sometimes Poser mangles the normals and does not join vertices when exporting OBJ files. To prevent this check cleanup geometry in this dialog.
- If you want to read the camera and lights that were present in the Poser scene then check read camera and read lights.
- Poser 5 and later sometimes includes the same diffuse map on the highlight as a default. This can lead to unnecessary extra render times with no visible change on the rendered image. To prevent this check Skip redundant highlights. This option removes any highlight map that is the same as the diffuse map.
- Scale scene scales the typically small size of Poser scenes to a more usable size for POV-Ray. According to its manual, Poser always exports in Poser units.
One Poser unit is 103.2in (262.128cm). So if you
want to keep your scene in inches (as the default in Poser) then the scale is 103.2. If you work in centimeters then the scale would be 262.128. Using a scale less than 10 may lead to render artifacts.
- Click on Texture map search paths... to select the directories where you want to start searching for Poser
textures. Typically this will be the ..\poser\runtime\textures folder. You can add
several directories to the list in case you have several runtimes. PoseRay
will save the directory list for future use.
- Apply material script Loads a script to clean up the materials and try to assign the material properties to give better POV-Ray renders. PoseRay includes a script (material-script.txt) that covers several Poser models.
- Apply material filter (deprecated, use apply material script above instead) will apply several rules to materials based on their root name. For more details go to this section.
The included default filters should work for most Poser models. They give reflective eye surfaces, slight specular and SSLT to the skin and removes all ambient color.
- After the scene loads go to the preview
tab and make sure the camera and lights are the way you want it. Also check that
there are no missing or incompatible textures by looking at the warning
text on the status tab. Click on the [+] button at the bottom of PoseRay to get more details.
- Tip: Select all the hair materials and go to Tools->Selected Materials are Hair to clean up the hair so that it will render better in POV-Ray.
- Make sure there are not materials that should not have SSLT active. This may happen if the filters pick up a material that matches the names in the filter.
- Go to the POV-Ray export options tab, select the render preset you want at the top, and press Save & Render... (defaults should work for most cases).
- Note: Materials may not match perfectly between Poser and POV-Ray. This is due to the
use of shader nodes in Poser. PoseRay can read limited information from these nodes and may miss configure some of the more complicated shaders.
Do some test renders and adjust the materials as needed. Many times is just better to use the basic materials from Poser (color, image map, etc), skip the Poser node import, use the material filters, and adjust the final material in PoseRay.
- More POV-Ray export details in this section.
- For details on what limitations PoseRay has with Poser scenes see the limitations section
Rendering a DAZ Studio scene in POV-Ray:
- Export the scene from DAZ Studio using File -> Export... type in the OBJ filename and select Maya preset.
- Start PoseRay and click on Load... -> DAZ Studio scene...
and select the file saved in the step above.
- Scale scene scales the geometry to a more usable size for POV-Ray.
The Maya export setting uses cm. So if you
want to keep your scene in inches (as the default in Poser) then the scale is 0.3937. If you work in centimeters then the scale would be 1.0. Using a scale less than 0.1 may lead to render artifacts.
- Apply material script Loads a script to clean up the materials and try to assign the material properties to give better POV-Ray renders. PoseRay includes a script (material-script.txt) that covers several Poser and DAZ Studio models.
- Apply material filter (deprecated, use apply material script above instead) will apply several rules to materials based on their root name. For more details go to this section.
The included default filters should work for most Poser models. They give reflective eye surfaces, slight specular and SSLT to the skin and removes all ambient color.
- After PoseRay loads the scene check that
there are no missing or incompatible textures by looking at the status
messages at the bottom. Click on the [+] to get more details.
- Tip: Select all the hair materials and go to Tools->Selected Materials are Hair to clean up the hair so that it will render better in POV-Ray.
- Make sure there are not materials that should not have SSLT active. This may happen if the filters pick up a material that matches the names in the filter.
- Add lights and set the camera the way you want it.
- Go to the POV-Ray output tab, select the render preset you want at the top and press Export -> Save & Render... (defaults should work for most cases).
- More POV-Ray export details in this section.
Tips for better rendering results
- I am no expert but this settings give me better renders. If you have any suggestions please let me know.
- Use radiosity. There are many radiosity presets in the POV-Ray tab. I would recommend the PoseRay high quality setting since it has been adjusted for the typical geometry found in Poser.
- Use SSLT for skin and other translucent materials.
- Use a background HDR image, a single light and radiosity for illumination instead of a light dome. You can get high dynamic images easily from the web (HDR or OpenEXR formats). For them to work properly in POV-Ray they should be in Latitude/Longitude mapped so they can be applied to a sphere. If they come in Angular or probe mapping they should be converted using HDRShop V1.
- If the HDR probe needs remapping and conversion then start HDRShop. Load the high dynamic range image you want to use and if it is not using Latitude-Longitude mapping go to Image -> Panorama -> Panoramic Transformations... and in the source image format select Light Probe (angular map) and the destination image format select Latitude-Longitude and click OK. A new remapped image will be created.
- Also, to prevent artifacts in POV-Ray, you may want to blur the HDR image used for illumination. HDRShop V1 can also be used for that in Image -> Filter -> Gaussian Blur. Use a value large enough to smooth out the smaller details in the image.
- Use soft shadows.
- Focal blur helps to eliminate the flatness of a fully focused scene.
- Background image. This image can be separate from what the scene uses for illumination. HDR or OpenEXR give better reflections such as bright windows or lamps. This image should use Latitude/Longitude mapping just like the illumination image.
- To apply a visible background image, reflection, and an image for illumination in the same scene, you can use the Sky / Background button in the Preview tab in PoseRay. Copy and paste the following template into the text box, edit the image names and apply it to the scene. It will be visible in the render, not the preview.
//THIS IS THE BACKGROUND IMAGE SPHERE AROUND THE SCENE
sphere {<0,0,0>,10000 //MAKE THIS RADIUS MUCH LARGER THAN THE SCENE.
texture{
pigment {
image_map {
jpeg "E:\images\background_image.jpg" //THIS IS THE BACKGROUND IMAGE - DOES NOT HAVE TO BE IN HDR FORMAT
interpolate 2 map_type 1
}
}
finish{diffuse 0 ambient 0 emission 1 specular 0 phong 0 reflection{0}} //NOT AFFECTED BY LIGHTING
}
rotate y*0 //enter sky rotation here in degrees
no_shadow
no_reflection
no_radiosity
}
//THIS IS THE REFLECTION SPHERE AROUND THE SCENE
sphere {<0,0,0>,12000 //MAKE THIS RADIUS LARGER THAN THE BACKGROUND SPHERE.
texture{
pigment {
image_map {
hdr "E:\images\reflection_image.hdr" //THIS IS THE IMAGE THAT REFLECTS
interpolate 2 map_type 1
}
}
finish{diffuse 0 ambient 0 emission 1 specular 0 phong 0 reflection{0}}
}
rotate y*0 //enter sky rotation here in degrees
no_shadow
no_radiosity
}
//THIS IS THE ILLUMINATION SPHERE AROUND THE SCENE
sphere {<0,0,0>,15000 //MAKE THIS LARGER THAN THE REFLECTION SPHERE
texture{
pigment {
image_map {
hdr "E:\images\light_image.hdr" //THIS IS THE IMAGE THAT ILLUMINATES, BLURRED FOR BETTER RESULTS
interpolate 2 map_type 1
}
}
finish{diffuse 0 ambient 0 emission 2 specular 0 phong 0 reflection{0}} //change emission to control the brightness
}
rotate y*0 //enter sky rotation here in degrees
no_shadow
no_reflection
}
Splitting models along normal breaks using PoseRay:
Some 3D programs automatically smooth the meshes and disregard any
normal information. PoseRay can break a model so that sharp edges are kept
even after full auto smoothing. This is important if you want to import a
model into an older version of Poser or DAZ Studio and keep the proper appearance of any sharp
edges.
- Start PoseRay and load the model or scene
that you want to import.
- Check the preview and confirm that
the model is loaded right. If you want to fix the sharp edges continue to
step 3 else skip to step 11.
- Go to the geometry tab after the model loads.
- If the file is DXF, RAW or POV-Ray mesh
(POV, INC) then press Weld vertices
- In the preview check that the
face orientation is right. Check show normals in the
preview options section. If normals are shown pointing out of the surface the
geometry is oriented right.
- Go to geometry tab and if the normals are not pointing out of the surface then click on
Flip face orientation
- In the geometry tab select a normal
crease angle. Usually 35 to 60 degrees works best. A crease angle of 0
will make the model have flat faces and 180 will make the model appear
fully smooth. Then press Recalculate normals
- Increase the crease angle and repeat the step above if you want the surface to be smoother.
- Once you have settled on a crease angle click on Split faces by crease angle
Since splitting faces creates extra vertices the modified model will have
a larger file size than the original.
- Change material properties if desired.
- Go to the OBJ Output tab.
Make sure that Fix materials and group names is checked. Then click on Save.
- In the export options either save to the
same directory where the original model is or check Copy all maps to
the same directory if you are saving it to another directory. Poser
(at least version 4) needs the textures either in the same directory were
the model is or in the Runtime/Textures directory.
Rendering a Poser Animation
- Create the animation in poser and save the
scene. (PZZ or PZ3 format)
- In Poser go to File -> Export -> Wavefront
Object and save the animation as multiple OBJ files. This may take a long
time for dense meshes and numerous frames.
- For this tutorial I will assume that the
OBJ files are called walk_0.obj, walk_1.obj, walk_2.obj, ...
walk_60.obj with a common material file walk.mtl and a scene file walk.pz3
- Start PoseRay and load the Poser scene made up of walk_0.obj and walk.pz3.
- Check that there are no missing or
incompatible textures by looking at the warning flag on the status text at
the bottom.
This step will ensure that the materials are properly set and that there
are no orphan image maps. Poser sometimes uses TIFF images that may not
be compatible with POV-Ray. You can convert them in the materials tab.
- Go to the preview and set the camera and lights
to what you want. Camera and lights are not animated so they will be
fixed during the animation. Then save the camera and lights as a preset by pressing [+] buttons by the
preset lists. Make sure that the preset lists have selected the camera and lights that you saved.
- Go to the material tab and press Tools... -> Save material file...
to save the materials as an MTL file. This will contain
the updated material file for the animation. It has the right paths for
all the image maps. In this tutorial it will be called walk_materials.mtl.
- Set the size of the render in the POV-Ray tab and any other options like Radiosity, etc.
- Now from the input tab click on Load... and then Batch...
and add ALL the OBJ files from the animation (walk_0.obj to walk_60.obj). You can select several files at once in the dialog
- Select Export to POV-Ray (single file - animation)
- Check Use common material file and select the material file you saved in the steps above.
- Uncheck Use default camera and lights so that PoseRay uses the camera and lights you saved on the preset lists.
- Click on Convert... and select the output directory, export name prefix and map export options.
- PoseRay will load the files in sequence and once it is finished you can render the animation by loading the ini file in POV-Ray.
The name of the ini will be the one that was in the export name prefix. For this case it would by default called batch_process.ini since it uses
the first name on the file list.
- Once POV-Ray is done rendering the images you can use your favorite program to put all the frames into a movie. You can use
VirtualDub for this purpose.
Changing the materials in POV-Ray:
PoseRay can edit some of the material properties but POV-Ray allows you
much more flexibility and power. If you want to use some of the nicer
materials available in POV-Ray you can modify the *_mat.inc file created by
PoseRay. For example the following is a definition from a typical material
include file for a material called SkinBody_1:
#declare SkinBody_1=
material{
texture {pigment {color rgb <1,1,1> transmit 0}} //underlying color
texture {pigment{p_map4} //image map
normal{p_map5} //bump map
finish {phong 0 phong_size 30 ambient rgb <0,0,0> reflection{0}}}
}
If you want to use one of the built in POV-Ray glass materials you can
change the definition to look like
#include "glass.inc" //M_Glass1 is in glass.inc
#declare SkinBody_1= material {M_Glass1} //use M_Glass1 for the SkinBody_1 material
Creating a morph target for Poser using mesh
displacement in PoseRay:
- In Poser load the model that you want to
apply the morph to. Zero the joints and make sure that the hip, body
position and rotation are zero.
- Export the body part that you want to
apply the morph to as a Wavefront OBJ file. Leave the options in their
default state.
- Load the body part into PoseRay as an OBJ
file and go to
the geometry tab and then the displacement sub-tab. Then load the displacement map that you want to use. The
map will use the UV coordinates so it will use the same template as a texture.
- Enter the displacement values and click on Displace geometry. These values use the same scale as the model.
- Save the modified geometry into a OBJ file.
- Go back to Poser and select the body part
you want to morph. Load the file saved in PoseRay as the morph target and
name the morph. Change the dial in Poser to get the morphed geometry.
How do I merge an exported model from PoseRay into an
existing POV-Ray scene?
PoseRay can create complete POV-Ray scenes but if you have an existing
scene where you want to place a converted mesh then check Only export
geometry and material files in the files section of the POV-Ray tab.
This option will export POV files with the geometry and the materials only.
In your existing POV-Ray scene you can add an include statement at the top of
the scene file and call it in the code as shown below. Once the model is
loaded as an object{} you can manipulate it inside POV-Ray as any other
object.
The example below assumes the geometry was saved into
poseraymodel_POV_geom.inc and the materials were saved into
poseraymodel_POV_mat.inc. Make sure that POV-Ray can find them when it runs
so best place to put it is in the same directory as the main scene file. The
materials are called from poseraymodel_POV_geom.inc so there is no need to
include an additional call for poseraymodel_POV_mat.inc.
//top of pov file with the existing scene
#include "poseraymodel_POV_geom.inc" //geometry file that PoseRay exported
.
.
//POV-Ray commands here.....
.
.
//call the model that is inside poseraymodel_POV_geom.inc.
//In this example it is called PoseRayModel (Capitalization matters)
object{ PoseRayModel } //modifiers are accepted
.
.
//end of pov file
How to create a height field from an image map
- Load the model poseray_plane.obj. It is
in the directory where poseray.exe is located. This plane is centered at
the origin, 1 unit by 1 unit and has UV coordinates from 0 to 1 along
each edge.
- Go to geometry tab and flat subdivide the
model several times. This will create a high resolution mesh from the
plane.
- Go to the subdivision subtab and select
the image map you want to use. Enter a min and max displacements.
- Press update to deform the mesh.
- Do a single smooth subdivision using the
default settings. This will smooth out sharp edges.
- To smooth out the appearance go to the Faces,
vertices & Normals subtab and make the crease angle 180 deg and press
update.
- The plane is smoothed and deformed. Now
it can be textured and used in a render. You can save it as a OBJ file
and used in other scenes.
- This is a very similar procedure to what POV-Ray does internally
with the height_field object. The main difference is that with PoseRay
you can control how dense the mesh is and that you can save the deformed
mesh.
Tips on reducing amount of memory needed by PoseRay.
PoseRay can take quite a large amount of memory for very complex models.
It saves triangles, normals, vertices, UV coordinates and materials among
others. The use of the OpenGL ® API also requires memory for maps and display
lists.
The settings that will allow you use less memory are listed below:
- Enable preview. Located
on the options section of the Preview tab. Un-checking this option will disable the
preview and clear the data from memory.
- GL map size [ ] x
[ ]. Located in the Preview tab under Options . All preview images
in PoseRay are 32 bit. This means that every pixel in an image requires 4
bytes. So for a preview map at a resolution of 1024x1024 the needed
memory is 4 MB. If the preview map is resized to 128x128 then the memory
needed is 65 KB (less than 2% of the memory needed for the original
image).
- Model subdivision dramatically increases the allocated memory. Do
not subdivide a model if it is not needed.
Tips on POV-Ray render times
Sometimes POV-Ray parse/render may take a very long time. The following
items will lengthen the time to get a rendered image:
- Focal blur
- Radiosity
- SSLT
- Transparency and reflection
- Too many lights, very dense area lights, area lights with jittered shadows
- Anti-aliasing
- High resolution of the render
- Very dense meshes
- High resolution maps. You can reduce the map dimensions by enabling the resizing of all the maps
when you export the scene to POV-Ray. Very high density maps with intricate detail (like hair maps) will need massive amounts of antialiasing to look smooth in a render. I would recommend downsizing them if the scene is not a closeup.
What types of files can PoseRay handle?
PoseRay will extract polygon meshes from ASCII or binary files. ASCII
files can be line terminated by CR, LF or a combination of them. Besides mesh
PoseRay will extract the material properties and load any image maps that the
model uses if they are present. Although I do not have an extensive list of
3D applications PoseRay has been tested successfully with exported models
from 3DExploration, Poser, DAZ Studio, Cinema 4D, AutoCAD, Rhino3D, Wings3D,
Anim8or, Xfrog, Blender, Milkshape, MetasequoiaLE, ppModeler, MeshLab and UVmapper.
It is difficult to say from which 3D programs PoseRay will recognize the 3D
model files but below is a description of how it handles each format to give
you and idea.
Wavefront (OBJ) (ASCII)
Geometry: Only groups identified with the g 'groupname'
entry will be recognized. Each group in the OBJ file is preserved in the
conversion. If the group is reused many times in the file it will be
combined into a single group. PoseRay reads the vertex data in vertices
(v), normals (vn) and texture coordinates (vt). Weights in these entries
will be ignored. The polygon faces recognized are defined by f or fo
statements and can have positive or negative vertex indices. If a face
has more than 3 sides PoseRay will break it up into triangles but the
vertices will be left unchanged. The line entities (l) will be also read
and if it has more than 2 vertices it will be broken into line segments.
The least minimum that a OBJ file must contain so that PoseRay can load it
is a vertex list (v statements) and a face list (f or fo statements) or a
line list (l statements). Normals and texture coordinates are
optional.
Materials: PoseRay reads the material names from the OBJ
file. Then it opens the linked material file (.MTL) and reads the material
properties. Materials not used will not be loaded. If a material is not
listed on the mtl file PoseRay will use a default white material. If there
are polygons with no material calls in the OBJ file then PoseRay will
assign a generic material to them called 'poseray_material' and it will be
set to default white. PoseRay will recognize the following material
commands: Ns, Ka, Kd, Ks, d, tr, map_Kd, and map_Bump. If the material file
is not present then all materials will have a default white color but will
still be separated by name. The specular exponent (Ns) is taken to be
glossiness from 0 to 1 if the file was exported from DAZ Studio or if the
materials were read from a Poser file. Ns will be assumed to be an exponent
for any other OBJ file. If the model was exported from DAZ Studio
transparency mapping will not be visible in PoseRay but it will work in
POV-Ray.
AutoDesk 3D Studio (3DS)
Geometry: PoseRay will read 3D studio version 3 or later
3DS binary files although it will try to load any 3DS file. Meshes will be
read as a set of triangles linked to a set of vertices and uv mapping
coordinates. Each mesh entry in the file will be assigned as a group.
Normals are automatically calculated for all the meshes. If the file is
truncated PoseRay will try to close the mesh properly. Parenting
information is not read. The geometry will be rescaled by the master scale
in the file.
Materials: PoseRay will read diffuse, bump and
transparency map names (including paths). Surface properties include color,
ambient, highlight, glossiness, transparency, reflectivity and bump
strength. It can read percent or integer values and 24bit or floating
values for colors. If no material definitions are found in the file then
PoseRay will create a new material and all the polygons will be linked to
this new material. Some 3DS files may have unusually high ambient
colors.
LightWave 5 and 6+ (LWO)
Geometry: PoseRay will recognize binary LightWave 5 object (LWOB), LightWave 5 Layered object
(LWLO) and LightWave 6 object (LWO2) or
later files. The faces will be grouped with the surfaces if there are no
layers present. If the file is layered then it will group the geometry by
layers. If the layers do not have a name PoseRay will name them "Layer_1,
Layer_2,...". Layer offsets are kept after loading the file. If the model
uses subdividing patches it can be subdivided in
the geometry tab. You can check if the model uses subdivision surfaces by
looking at the status text window
Materials: For LightWave 5 files the properties recognized
are color, diffuse multiplier, ambient, specular level, reflectivity,
transparency, glossiness, color map, bump map, transparency map, projection
axis, projection mode, map size, map center and bump amplitude. In case the
model is LightWave 6+the same material properties from a LightWave 5 model
are also recognized plus map wrapping and map rotation. For LW 6+ files the
material is read by blocks and only the first block of each material
property will be read. VMAP, VMAD, Planar, cylindrical, spherical and cubic
UV mapping are supported. After reading a LWO model you may need to search
for the maps using the search tool in the materials tab.
POV-Ray mesh or mesh2 objects (POV, INC)
Geometry: PoseRay can read triangle meshes defined as
mesh{} or mesh2{}. UV and normal information is also read. Each mesh is
saved as a group. PoseRay can handle comments and other POV-Ray code. Mesh
types can be mixed in the same file. Note: This format
replaces the UDO import. Models created by Moray can still be imported
through the INC files that Moray saves. PoseRay cannot parse any transformations in the mesh
Materials: Because of the complexity of the shading
language PoseRay only reads the material entry in the mesh and saves it as
a POV-Ray material in the material tab. PoseRay assumes that the materials
are defined separately and identifiers are used in the mesh. PoseRay reads
the identifiers only. Unspecified materials will default to
white.
Virtual Reality Modeling Language - VRML (WRL, GZ)
Geometry: PoseRay has a very limited VRML import function
that can read indexed face and line sets from ASCII VRML 1.0 or 2.0 files.
Transformation nodes are recognized and modify the vertices as they are
read. Each mesh node is saved as a group. All polygons must be closed with
-1. PoseRay can also load gzip-compressed VRML files with the extension *.gz.. Predefined shapes such as cylinders, spheres, boxes etc will not be
recognized.
Materials: Basic material properties are recognized.
Materials saved as DEF statements can also be read. Shape nodes with
repeated material nodes will be merge into a common material. Unspecified
materials will default to light gray.
AutoDesk Drawing Interchange Format (DXF)
Geometry: PoseRay can recognize ASCII AutoCAD R10 DXF
files or later although it will try to read any DXF file. PoseRay can read
3DFACE and polygon mesh entities encapsulated by the POLYLINE entity. Faces
with 4 vertices will be broken into 2 triangles. Normals are automatically
calculated for both polygon descriptions. Geometry will be separated into
layers or blocks where each will be a group.
Materials: DXF files only store the surface color. PoseRay
will read the colors by block, by layer or the local color. Materials will
be named ACAD_color_# where # is the AutoCAD color used.
Default AutoCAD colors from 1 to 255 are recognized. Unspecified/out of
range colors will default to white (ACAD color 7).
Polygon File Format (PLY):
Geometry:
ASCII format only. If a face
has more than 3 sides PoseRay will break it up into triangles but the
vertices will be left unchanged.
Raw Triangle file (RAW)
Geometry: PoseRay can read multiple objects in raw format.
The file must be in ASCII format and contain a triangle definition per
line. A new object will be delimited by having a name at the start of the
group of triangles that corresponds to that object. For example a RAW file
can be defines as shown below. The x,y,z are the 3D coordinates of the
triangles. The RAW file can be space, comma or tab delimited. Blank lines
will be ignored.
Wheels
x1 y1 z1 x2 y2 z2 z3 y3 z3
x1 y1 z1 x2 y2 z2 z3 y3 z3
x1 y1 z1 x2 y2 z2 z3 y3 z3
.
.
Doors
x1 y1 z1 x2 y2 z2 z3 y3 z3
x1 y1 z1 x2 y2 z2 z3 y3 z3
x1 y1 z1 x2 y2 z2 z3 y3 z3
.
.
Hood
x1 y1 z1 x2 y2 z2 z3 y3 z3
x1 y1 z1 x2 y2 z2 z3 y3 z3
x1 y1 z1 x2 y2 z2 z3 y3 z3
.
.
Materials: Raw files do not contain material information.
All geometry will be linked to a default material. PoseRay can create
materials from the groups in the materials
tab.
All Formats:
Geometry: If there are polygons without a group name then
PoseRay will create a generic group. Any degenerate faces will not be read
and any degenerate normals will be set to (1,0,0).
Image Maps:
PoseRay is able to load the following map types:
- JPEG images (.jpg, .jpeg)
- TIFF (.tif; .tiff)
- GFI fax images (.fax)
- sgi (.bw, .rgb, .rgba, .sgi)
- Autodesk (.cel;.pic)
- Truevision (.TGA; .vst; .icb; .vda; .win)
- Zsoft (.pcx, .pcc)
- Word 5.x screen capture files (.scr)
- Kodak Photo-CD images (.pcd)
- Portable pixel/graymap images (.ppm, .pgm, .pbm)
- Dr. Halo images (.cut,.pal)
- CompuServe images (.gif)
- SGI Wavefront images (.rla,.rpf)
- Standard Windows bitmap images (.bmp,.rle, .dib)
- Photoshop images (.psd, .pdd)
- Paintshop Pro images (.psp)
- Portable network graphic images (.png)
For formats where vector and raster elements are present the raster part
is the only one recognized. If an image has several layers only the bottom
layer will be loaded. Any image type not listed above will not be displayed
but will be kept in the translation.
Limitations/Known Issues
- Materials
- PoseRay cannot read a Poser material that uses nodes. It is strongly recommended that if you are reading a Poser or DAZ Studio scene you should use the material script option.
- With a Poser scene if there is more
than one texture with the same name in the Poser directory PoseRay
may use the wrong texture. If this happens use the search in the materials tab to
find the right one.
- Specular strength or reflectivity is not exported by
DAZ Studio files.
- PoseRay cannot read the full material from POV-Ray mesh files. It will only use generic materials.
- PoseRay will not be able to translate short file names to
long file names for maps while running in Wine. For example if a model has saved a map filename woodenf~.jpg that
actually is wooden_floor.jpg in Windows then trying to read this model into PoseRay under Wine
will fail and give a file not found warning. 3DS files created with older software will be most
susceptible to this problem.
- Preview
- PoseRay cannot show accurately all
the lights in the scene if there are too many of them. The OpenGL ®
API in Windows is usually limited to 8 lights. Any more will be
merged into 6 weighted global lights. This depends on the
implementation of the OpenGL ® API in your hardware. PoseRay will
check for how many lights it can use before displaying them. This
only affects the preview and the POV-Ray render will use all the
lights.
- PoseRay does not show shadows or radiosity effects from background lights.
Because of this the image rendered in POV-Ray may look darker than
the preview in PoseRay.
- Sometimes transparent textures in
PoseRay look strange. The OpenGL ® API (v1.1) requires polygon
sorting for transparency to show properly and I have not implemented
that into PoseRay. PoseRay can display threshold transparency to
alleviate this and will work most of the time for previewing
purposes.
- Bump maps are not shown in the preview.
- PoseRay lighting is by vertex. This
means that light calculations are done from vertex to vertex. If the
model has a very coarse mesh any lighting on it shown in PoseRay will
look very blocky. The render in POV-Ray will not show this
limitation.
- PoseRay cannot preview .IFF maps.
- PoseRay cannot show POV-Ray materials
in the preview.
- PoseRay only shows reflection as 100%
and it is just a rough approximation of a real reflection.
- Geometry
- PoseRay can only access about 2GB max of RAM since it is a 32Bit application. This will result in a limit of about 7 million triangles for any imported model. Unfortunately, due to memory fragmentation, if a model is subdivided too many times the limitation is about 2 million triangles.
- PoseRay does not read parenting
information from 3DS files. This may result in models with parts not
aligned or scaled properly when read.
- Under rare conditions the
triangulation routine may not be able to break some folded or crumpled polygons.
- Subdivision of UV coordinates may give bad results on unusually folded meshes or overlapping UVs.
- Subdivision of UV coordinates will be distorted if the original mesh is very coarse.
- Not all models subdivide well. Usually organic models work best with default settings.
- PoseRay only reads POV files with mesh or mesh2 objects. Anything else (sphere, plane, torus, etc) is ignored.
- PoseRay will not read mesh or mesh2 files if they have transformations applied.
Help
Warning Messages:
- Help file
poserayhelp.htm missing - must be in PoseRay's directory. The
help file was not found. Check that it was extracted properly from the
download archive.
- Material
(materialname): Map filename.ext is not compatible with
POV-Ray. Convert image. POV-Ray can only use gif
(non-interlaced), TGA, iff, ppm, pgm, png, jpg, tif and bmp. You
can convert the map by going to the materials tab, select the material
and convert the map to a compatible format. Special builds of POV-Ray may
be able to read other formats but PoseRay only checks for these.
- Material
(materialname): Map filename.ext not found. Use search tool
in materials tab. If the map was not found you can use PoseRay
to find it. The search utility is in the materials tab.
- Material
(materialname): POV-Ray cannot use filename.ext because it
uses LZW compression. The map uses LZW compression and POV-Ray
will not display it properly. You can convert it to TGA or JPEG in
PoseRay's material tab.
- Material
(materialname): POV-Ray will not load filename.ext because
of non ASCII characters in filename. POV-Ray (at least for
windows) will not load image maps that have international characters in
their filenames. You can resave the file with another name in PoseRay.
- Material
(materialname): POV-Ray cannot use filename.ext because it
is interlaced. The map is an interlaced image and POV-Ray will
not load it. You can convert it to TGA or JPEG in PoseRay's material
tab.
- There are no
vertices in geometry. Check transformation. This usually
happens after welding vertices with a very large tolerance resulting in
all vertices welded into a single point.
- There are no
faces in geometry. Check transformation. This usually happens
after welding vertices with a very large tolerance resulting in all
vertices welded into a single point and all faces disappearing.
- Geometry extents
too large. POV-Ray may not render it properly. POV-Ray is
limited to how far the camera can be from the extents of the geometry.
PoseRay checks that the geometry bounding box diagonal be no larger than
106 units.
- Geometry extents
too small. POV-Ray may not render it properly. POV-Ray has a
minimum tolerance for the geometry size. PoseRay checks that the geometry
bounding box diagonal be no smaller than 10-6 units.
- Geometry too far from origin. Recenter to
avoid precision loss. PoseRay will loose preview precision if
all of the geometry is too far away from the origin. This is visible by
broken polygons in the preview. Only the preview is affected and POV-Ray,
OBJ and Moray output is not affected. Internally PoseRay uses double
precision. The threshold is at (magnitude of geometric center)/(bounding
box diagonal)=30000.
Troubleshooting:
Read the limitations first.
Most crash problems can be traced to outdated
video drivers so make sure that you have the latest video drivers for your
hardware.
Problem: PoseRay does
not work or crashes.
Suggestions:
- If you are using Windows 95, Windows
98 or Windows ME I strongly recommend upgrading your operating system
to at least Windows 2000. The latest release of PoseRay uses memory
management tailored for NT systems (such as Windows 2000 or Windows
XP) and was not tested with Windows ME, Windows 98 or Windows 95.
- Check that you have the latest
official drivers for your video card. For PoseRay to work your card
must have hardware acceleration for OpenGL ® API v1.1 or later.
Software rendering was not tested and it is not supported.
- The model may be too close to the
viewer. Set Camera to Show All to re-center the model on the window.
If the window is still black then an OpenGL ® API error may have
occurred or you are running out of memory or resources. Close
unnecessary programs and restart PoseRay.
- If you need to use Windows 95 you
must have the latest libraries for the OpenGL ® API to work. You can
obtain them from the Microsoft support
site. PoseRay was not tested with Windows 95 so it may not work
at all.
- I have received reports that the
combination of Norton System Works 2000 and Windows 98 does not work
well with PoseRay.
- You applied too many subdivisions
creating a very dense model and overwhelming the system. Do not
subdivide a model unless it is needed to improve appearance.
- Check that you are not running out of disk space.
Problem: I closed the Preview window. How do I get it
back?.
Suggestion: Go to the Preview tab and check Enable Preview under the Display options section.
Problem: I loaded DAZ's
Victoria and/or Michael model (or derived model) from Poser into PoseRay.
The eyes have a frosted appearance.
Suggestion: Go to the materials tab and load a Poser
scene file with the proper materials or select eyeball and press Make this material invisible.
See this tutorial on how to properly import a Poser
scene.
Problem: PoseRay loaded a Poser scene with the wrong texture.
Suggestion: PoseRay automatically searches for the
textures using their names only. Paths are discarded. If there are two
different textures with the same name PoseRay will load the first it finds.
If it loads the wrong one then go to the materials tab and for the wrong map
click search. PoseRay will display all the maps in the search paths that it
found. Pick the right one from the list. All the other links to the same map
will be updated for all materials if you have Auto-update activated.
Problem: Texture has a
grainy appearance in the POV-Ray render although the texture is smooth.
Suggestion: Use the recursive high quality (+A0.1) anti-alias setting or decrease the resolution of the texture.
Problem: I used a glass material from the POV-Ray library on a car windshield and the car looks like it is filled with water.
Suggestion: Glass materials work best for objects where there is a front and back surface with some gap in-between. Use a glass texture instead (no interior) such as
material{texture{Glass3}}
instead of material{M_Glass3}
.
Problem: Transparency
effects do not look good in PoseRay.
Suggestion: This usually happens with overlapping
transparent surfaces. Click on use cutoff on the Preview tab under options.
This only changes the preview and does not modify the maps.
Problem: PoseRay gives
an error or does nothing with a DAZ Studio script with camera or lighting
Suggestion: The file may be created with a beta version
of DAZ Studio. Upgrade to the official release and also make sure that
the file was saved as a plain text DAZ script (*.ds).
Problem: Sometimes the
POV-Ray render model shows random dark blocky spots on a surface.
Suggestion: POV-Ray has problems with coincident
geometry. Two or more triangles taking up the same room in 3D space. Some
models may have this problem and you can use the geometry tab and
deselect the offending material or group before rendering in POV-Ray.
Problem: Sometimes the
model shows artifacts around the edges of shadows.
Suggestion: This is a known problem with mesh geometry
in POV-Ray. See section 2.4.8 of the POV-Ray manual for details. I
have found that decreasing the light intensity and using some filler
lights alleviate this problem. Also if the model is low resolution you
may want to subdivide it to make it
smoother.
Problem: The POV-Ray
render does not match the resolution I typed in PoseRay.
Suggestion: Make sure that the command line box in
POV-Ray's toolbar is empty before you render.
Problem: After
subdivision the model shows numerous gaps.
Suggestion: Weld the vertices before subdivision to
prevent gaps.
Problem: The sky is not
blue behind the clouds
Suggestion: Some of the skies have transparent areas and
will let through the background color. Set the background color to what
you want first and then set the sky.
Problem: The sky is not
visible
Suggestion: Make sure the camera is in perspective mode.
If you are using a floor check that the camera is not covered by it.
Problem: PoseRay shows
black or transparent areas on the model where I know it is not.
Suggestion: The model has normals or winding order in
the opposite direction. By default PoseRay displays surfaces with the
color in the direction of the normal and applies black to the back. Check
on Apply mats to both sides and Draw double
sided on the preview tab.
Problem: The textures in
the POV-Ray render have a washed out appearance.
Suggestion: This usually occurs with TIFF textures from
Poser. You can convert them in PoseRay to JPEG.
Problem: The POV-Ray
render has a dark band/shadow over the model and sky
Suggestion: Make sure that a light originating below the
ground is not casting shadows. The headlight always casts shadows.
Problem: I apply a map
on a model but it does not show or the model just changes color.
Suggestion: The material where the map is being applied
does not have UV coordinates. Create some UV coordinates in the Materials tab for that material.
Problem: A model is
shown with inverted transparency mapping
Suggestion: Go to the materials tab and check Invert mapping by the transparency map name.
Problem: PoseRay is not
displaying reflections
Suggestion: PoseRay uses spherical reflection mapping to
give the illusion of a reflective surface. For this to work PoseRay
checks for the extension ARBMultiTexture which is available in later
versions of the OpenGL ® API. Also there must be an background map loaded
(see preview tab).
Problem: I try to
re-render a scene in POV-Ray but it renders it very fast and does not
update the image.
Suggestion: The Render can be paused
option may be enabled in the POV-Ray Render options tab in PoseRay.
Disable it and re-render from PoseRay.
Problem: Poser 5 dynamic
hair does not show right.
Suggestion: Poser 5 exports hair as line elements.
PoseRay can read those lines with no problem but unfortunately it seems
that Poser 5 does not export all the dynamic hairs. It only exports the
guide hairs. You can go into Poser and enable more hairs before exporting.
Problem: POV-Ray started
a render but nothing happens and it seems locked.
Suggestion: POV-Ray takes some time to parse the files
before it renders them so it may look like it has stopped responding.
Look at POV-Ray's bottom status bar while it processes the file.
Problem: The line mode
preview is too slow.
Suggestion: With some OpenGL ® API implementations line
preview is very slow. Disable Apply mats to both sides
in the preview options to speed this up. Also upgrading to the latest
video drivers should help.
Problem: I lost the INI
file and want to render the scene with the proper settings. I still have
the POV and INC files.
Suggestion: Start POV-Ray, load the pov file. There
should be a line in the comments that looks similar to "//+W1016
+H544 +FT +AM2 +A0.3 +UA". This contains the render settings
that were saved in the ini file. Right click on that line and select copy "..." to Command Line to transfer them to the
command line box in the toolbar. Then press Run and the
scene will render with the settings that you wanted.
Problem: I saved the POV-Ray
files. How do I render the scene without PoseRay?
Suggestion: Make sure that all the exported files are in the same
directory. Start POV-Ray, load the ini file that PoseRay created, clear
the command line box in POV-Ray's toolbar and click on render.
Problem: Where is
PoseRay's source code?
Suggestion: At this time I will not release the source
code. If you need to run PoseRay in Linux or Mac OS you can try an emulator.
There are instructions now for setting up PoseRay in
Linux using Wine or VMware.
Problem: I see some
texture seams on the preview tab. I know my texture is perfect. What is
wrong?
Suggestion: By default PoseRay internally resizes the
textures before using them in the preview tab. This resizing will degrade
their appearance in PoseRay. This will not affect the final rendered
image in POV-Ray. If you want to see the textures closer to their actual
size change the preview map size option in the Preview tab under options.
Then press reload maps to update the preview.
Problem: The POV-Ray
render is too dark.
Suggestion: Use more lights, increase the light
intensity or enable radiosity.
Problem: Cannot get
Moray 3.5 to work with POV-Ray.
Suggestion: Read this section
for tips on getting Moray to work.
Problem: The geometry is
too small/big or aligned wrong.
Suggestion: Use the scaling, translation and rotation
tools in the geometry tab.
Problem: I exported a
OBJ file from Poser 3 but it does not have any materials no matter what
options I select.
Suggestion: Unlike Poser 4, Poser 3 does not export MTL
files but it will include the material calls in the OBJ file. Make sure
that the version of Poser that you are using has been updated to the
latest revision. Go to Smith Micro
for free revision updates available for Poser 3 and later.
Problem: How do I make
the POV-Ray files portable?
Suggestion: If you want to render the scene in another
system when you export the files select Copy all maps to the same
directory. This will place all maps in the same directory and
will not include any path information in the POV files. Copy the .ini,
.inc and .pov files and all the maps into the same directory into the
other system.
Problem: I loaded a set
of materials from a Poser file but it does not set all the materials
right.
Suggestion: See the limitations.
Problem: I just loaded a
model and it looks too bright (or just white).
Suggestion: This usually happens with 3DS models.
Sometimes they have a very high ambient color. Go to the materials tab
and increase the glossiness and make the ambient color darker. To do it
for all materials right click over the material property and select apply
to all materials.
Problem: The POV-Ray
render is just a solid color or just black
Suggestion: If you are using a floor check that the
geometry is not below it. If the scene is inside a closed room do not use
parallel lights. The enclosing room will not let any light in. Use point,
spot or area lights and make sure that they originate inside the room or make the room not cast shadows in the materials tab.
Problem: I created a
scene in Poser with the built-in props (cone, box, ball, etc) and when I
export them I only get one material: 'preview'. I had every object with
different material properties now all of them use the same material.
Suggestion: This is a limitation of how Poser exports
.OBJ files. In poser the material name for each built in prop is
'preview'. When the file gets exported all the materials get merged into
the same because they use the same name. This only occurs with props,
figures are immune to this. You can import the scene into DAZ Studio and
export it again in OBJ format. DAZ Studio keeps the names separate.
Problem: PoseRay seems
to hang while reading camera, material or light information from a Poser
file.
Suggestion: PoseRay may take a long time while searching
for the camera and light information contained in large .PZ3 files. It
may take longer if the file is a compressed file (.PZZ). This may give
the impression that PoseRay has stopped working but it is still searching
just give it a minute or so to search. In a 23MB file PoseRay can take
about 20 seconds to search for the camera. The speed also depends on your
system.
Problem: I used a sky
but the POV-Ray render shows it repeating below the horizon.
Suggestion: POV-Ray skies work best with the ground
visible. Activate the ground (in the Preview tab under options) before
exporting the POV-Ray scene.
Problem: How can I get
the cool effects with environmental maps using PoseRay?
Suggestion: POV-Ray does not support environmental maps
but you can get the real thing using reflectivity. Turn the reflectivity
of the material to more than 30% and set the glossiness to about 50%. Add
a sky so that the material reflects it.
If you enable metallic make sure that the pigment color is not too dark
or it will barely reflect.
Problem: Reflective
surfaces look too bright in POV-Ray.
Suggestion: Background color will reflect. For example
if you have a reflective ball and a white background the ball will look
almost solid white. Try using a darker background if possible. A sky will
reflect nicely also and it can be added in the preview tab.
Problem: I can't get a
texture to line up properly in POV-Ray.
Suggestion: In some models if two coincident surfaces
are textured POV-Ray may select the wrong one to display. Removing the
texture that is a problem may help. If the texture is the same for both
meshes then try to remap the UV coordinates of the model. UVmapper is a
good program for that.
Problem: I get the
following message in POV-Ray: I/O restriction prohibits read access to
'texture name...'.
Suggestion: Just click OK and POV-Ray will have access
to the texture. If you want this to be permanent disable restrictions in
POV-Ray using the POV-Ray Options menu and selecting Script I/O
Restrictions -> No restrictions.
Problem: I get this
error in POV-Ray: Expected 'object', keyword found instead.
Suggestion: This is because of the name of the .POV file
and/or the mesh object is using a POV-Ray reserved keyword. For example
if your object is called 'sphere' it will give you an error in POV-Ray
since 'sphere' is a reserved word. Section 3.1.1.1 of the POV-Ray manual lists the reserved words.
Problem: The camera in
PoseRay does not match my Poser settings.
Suggestion: Use another camera in Poser. PoseRay only
recognizes the MAIN, AUX, TOP, BOTTOM, LEFT, RIGHT, FRONT and BACK cameras
at frame 1. Any others will default to the MAIN camera.
Problem: POV-Ray gives
me an error saying that it cannot read an image map.
Suggestion: POV-Ray will not read interlaced GIF maps.
You can convert them to another format in the PoseRay materials tab. Also
POV-Ray will not load the map if its filename contains any non
alphanumeric ASCII characters used in languages other than English. You
can resave the map with a different name in the materials tab. The image
may also be corrupt or using a variant of the image type not
supported.
Problem: Lights with no
shadows look strange in POV-Ray.
Suggestion: POV-Ray handles shadowless lights as fill
lights and enhance the lighting in the scene but do not render
highlights.
Problem: Moray does not
display the UDO model.
Suggestion: Decrease the UDO detail level in the scene
settings. Usually 10% works.
Problem: Some of the
materials in the mtl file are not listed in PoseRay.
Suggestion: If the OBJ file does not require the
material PoseRay will not load it from the mtl file.
Problem: Some of the
groups listed in the OBJ file are not listed in the PoseRay output.
Suggestion: If the group does not contain any polygons
it is not included in the output.
Problem: PoseRay does
not do anything with the OBJ or DXF file and sometimes it hangs or gives
me an error.
Suggestion: The file may not be an ASCII OBJ or DXF file
or the file may be locked by another application.
Problem: PoseRay loads a
DXF, RAW or UDO file but it is faceted (not smooth)
Suggestion: Go to the Faces, vertices & normals
subtab of the geometry tab and check on weld vertices and calculate
normals. Then press update. That should smooth the model. If it still has
too many hard edges increase the crease angle and update again.
Problem: I have a very
large model with a million triangles and I keep running out of memory.
Suggestion: See the tips on
reducing memory requirements.
Problem: I made a mess
of the options and cant get PoseRay to its default state.
Suggestion: Select Reset Options on Close in the input tab and close and restart PoseRay
Problem: I can't find the solution to my problem here! / I want to submit a bug report
Suggestion: If you have problems with PoseRay or
have suggestions send me a message to flyerx_2000@yahoo.com Check
the PoseRay site https://sites.google.com/site/poseray/
to see if there is a new version available.
Acknowledgments
I would like to thank all the people that have reported bugs and tested PoseRay.
PoseRay uses the following:
Legal information and License
- Program is poseray.exe and all accompanying files included in the compressed archive
- The program is distributed free of charge
- You can use the program for any purpose you see fit
- You can redistribute the program as long as the contents of the original packaged file are unchanged
- You cannot directly or indirectly sell the program
- I am not responsible for any direct or indirect damage that this program may cause
- Using the program implies that you agree to the above terms
- Brand and product names referred to are trademarks or registered trademarks of their respective owners