POV-Ray : Newsgroups : povray.binaries.images : PCMHair macro test, second try Server Time
4 Oct 2024 09:15:29 EDT (-0400)
  PCMHair macro test, second try (Message 1 to 7 of 7)  
From: Nieminen Mika
Subject: PCMHair macro test, second try
Date: 9 Apr 1999 20:30:15
Message: <370e8d87.0@news.povray.org>
This is a test image I made with the new PCM Hair macro by Chris Colefax.
  Looks quite promising.

  (Someone asked for a black cat; what do you think about this?)


Post a reply to this message


Attachments:
Download 'cat2.jpg' (176 KB) Download 'cat2cmp.jpg' (42 KB)

Preview of image 'cat2.jpg'
cat2.jpg

Preview of image 'cat2cmp.jpg'
cat2cmp.jpg


 

From: Spider
Subject: Re: PCMHair macro test, second try
Date: 9 Apr 1999 20:40:22
Message: <370E8EF3.93C9BC35@bahnhof.se>
Cute!!!
Really cute.....
he looks like he is drying from beeing wet or something(cats fur is much
smoother...)

this macro looks like it'll becmoe really great.


-- 
//Spider
        [ spi### [at] bahnhofse ]-[ http://www.bahnhof.se/~spider/ ]
What I can do and what I could do, I just don't know anymore
                "Marian"
        By: "Sisters Of Mercy"


Post a reply to this message

From: Thomas Lake
Subject: Re: PCMHair macro test, second try
Date: 9 Apr 1999 21:45:23
Message: <370EA052.19B5F8F9@home.com>
I am by no means an expert on macros and how to model hair, well actually I hardly
know anything about these. But as far
as far as I can tell it looks like each of the hairs is a separate object, or is this
some sort of complex texture
macro? I also remember you mentioning meshes. Anyways I can't see how any of these
options, exempt maybe the texturing
one could produce such low parse and render times. 14 second's!!! Unless these times
are for the hairless cat.

Nieminen Mika wrote:

>   This is a test image I made with the new PCM Hair macro by Chris Colefax.
>   Looks quite promising.
>
>   (Someone asked for a black cat; what do you think about this?)
>
>  [Image]
>
>   This is a picture of the cat model without fur (and with a whiter skin)
> (for comparison)
>
>  [Image]
>
>   The source code of the image:
>
> #include "colors.inc"
> #include "textures.inc"
>
> camera { location <400,200,200> look_at 0 angle 35 }
> light_source { <0,40,400> x+y*.5 }
> light_source { <200,-100,0> x+y*.5 }
> light_source { <200,600,-200> 1 }
>
> #include "pcmhair.mcr"
> #declare hair_length = 5;
> #declare hair_thickness = 1;
> #declare hair_rotation = z*75*1.5;
> #declare hair_sky = y;
> #declare hairs_per_patch = 20;
> #declare hair_patch_size = 12;
> #declare hair_rotate_to_surface = true;
> #declare hair_objects_per_unit = .08;
> #declare hair_radius=150;
> #declare hair_thickness_curvature=1;
> #declare hair_texture=texture { pigment { rgb .1 } finish { specular .3 roughness .2
} }
> triangle_patch_hairs_object ()
>
> union
> { object { read_mesh("cat.pcm") pigment { rgb .1 } }
>   sphere { 0,5 scale <1,1,.7> translate <-35,48,55> }
>   sphere { 0,5 scale <1,1,.7> translate <-35,29,58> }
>   pigment { rgb 0 } finish { specular .8 roughness .03 }
>   rotate <-90,120,0>
> }
>
> blob
> { threshold .1
>   sphere { <-50,0,-50>,100,.5 }
>   sphere { <50,0,-50>,100,.5 }
>   sphere { <50,0,50>,100,.5 }
>   sphere { <-50,0,50>,100,.5 }
>   pigment { rgb x }
>   normal { bumps .1 scale 30 }
>   finish { specular .1 roughness .1 crand .04 }
>   scale <1,.5,1>
>   translate -y*130
> }
>
> plane { y,-150 pigment { DMFWood1 scale 20 rotate y*-90 } }
> plane { x,-120*2 pigment { DMFWood4 scale 20 rotate x*90 } }
> box { <-120*2,-150,-10000><-120*2+10,-110,10000> pigment { DMFWood1 scale 20 } }
>
> -------------------------------------
>
>   Statistics of the image:
>
> Preset INI file is 'E:\PROGRAM FILES\POV-RAY FOR WINDOWS
V3.1\RENDERER\QUICKRES.INI', section is '[640x480, No AA]'.
> Preset source file is 'C:\My Documents\cat.pov'.
> Rendering using command line '+a0.1'.
> Persistence of Vision(tm) Ray Tracer Version 3.1e.msvc
>   This is an official version prepared by the POV-Ray Team(tm). See the
>     documentation on how to contact the authors or post a message on
>     CompuServe's GO POVRAY Forum.  Also visit http://www.povray.org/.
> Copyright 1999 POV-Ray Team(tm)
> This Windows version by Christopher J. Cason
> Parsing Options
>   Input file: C:\My Documents\cat.pov (compatible to version 3.1)
>   Remove bounds........On  Split unions........Off
>   Library paths: e:\Program Files\POV-Ray for Windows v3.1\INCLUDE
> Output Options
>   Image resolution 640 by 480 (rows 1 to 480, columns 1 to 640).
>   Output file: cat.tga, 24 bpp RLE Targa, 50 KByte buffer
>   Graphic display......On  (type: 0, palette: 3, gamma:  2.2)
>   Mosaic preview......Off
>   Continued trace.....Off  Allow interruption..Off  Pause when done.....Off
>   Verbose messages.....On
> Tracing Options
>   Quality:  9
>   Bounding boxes.......On  Bounding threshold: 3
>   Light Buffer.........On  Vista Buffer.........On  Draw Vista Buffer...Off
>   Antialiasing.........On  (Method 1, Threshold 0.100, Depth 3, Jitter 1.00)
>   Radiosity...........Off
> Animation Options
>   Clock value....   0.000  (Animation off)
> Redirecting Options
>   All Streams to console..........On
>   Debug Stream to console.........On
>   Fatal Stream to console.........On
>   Render Stream to console........On
>   Statistics Stream to console....On
>   Warning Stream to console.......On
>
> Scene contains 6080 frame level objects; 2 infinite.
>
> C:\My Documents\cat.pov Statistics, Resolution 640 x 480
> ----------------------------------------------------------------------------
> Pixels:          307840   Samples:         2010152   Smpls/Pxl: 6.53
> Rays:           2010152   Saved:                 0   Max Level: 1/5
> ----------------------------------------------------------------------------
> Ray->Shape Intersection          Tests       Succeeded  Percentage
> ----------------------------------------------------------------------------
> Blob                           2279287          882165     38.70
> Blob Component                 2716095         2589872     95.35
> Blob Bound                     9117148         2716095     29.79
> Box                             198671          198671    100.00
> Mesh                          76533812         2716311      3.55
> Plane                         12048152         4959129     41.16
> Sphere                           38587            6159     15.96
> Triangle                       2560061          601681     23.50
> Bounding Box                 442314541       187397797     42.37
> Light Buffer                 306921504       162497346     52.94
> Vista Buffer                 179620976       136332090     75.90
> ----------------------------------------------------------------------------
> Roots tested:              1292661   eliminated:               50915
> Calls to Noise:                  0   Calls to DNoise:        4564707
> ----------------------------------------------------------------------------
> Shadow Ray Tests:          9429161   Succeeded:              1935921
> ----------------------------------------------------------------------------
> Smallest Alloc:                 25 bytes   Largest:            51224
> Peak memory used:          6172936 bytes
> ----------------------------------------------------------------------------
> Time For Parse:    0 hours  0 minutes  14.0 seconds (14 seconds)
> Time For Trace:    0 hours 13 minutes   0.0 seconds (780 seconds)
>     Total Time:    0 hours 13 minutes  14.0 seconds (794 seconds)
>
> Returned from renderer
> POV-Ray finished
>
>   My computer is a PentiumII 350MHz with 64M of memory.
>
> --
> main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
> ):5;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/


Post a reply to this message

From: Ken
Subject: Re: PCMHair macro test, second try
Date: 10 Apr 1999 01:38:48
Message: <370ED480.BEE9206D@pacbell.net>
Thomas Lake wrote:
> 
> I am by no means an expert on macros and how to model hair, well actually I hardly
know anything about these. But as far
> as far as I can tell it looks like each of the hairs is a separate object, or is
this some sort of complex texture
> macro? I also remember you mentioning meshes. Anyways I can't see how any of these
options, exempt maybe the texturing
> one could produce such low parse and render times. 14 second's!!! Unless these times
are for the hairless cat.

If you look closer at the reported stats you will see that there are just
over 6000 objects in the scene. That is a walk in the park to parse. It is
when you have 50k or more objects that the memory and parsing overhead
become really noticable. What surprises me the most is the scale of the
object vs. the number of hairs it took to get full coverage. The camera
is a couple hundred units away from the object which implies to me
that it must be near a hundred pov units in size to fill the image the
way it does. I can't imagine how the object count is so low and the
coverage is so good. It may be a trick of the mesh compression utility
that Warp is running it through.

-- 
Ken Tyler

mailto://tylereng@pacbell.net


Post a reply to this message

From: Gilles Tran
Subject: Re: PCMHair macro test, second try
Date: 10 Apr 1999 08:47:03
Message: <370F3ADE.AC8D36A1@inapg.inra.fr>
My 2 cents on the object count problems : a mesh made of millions of individual
triangles still counts as one object. So if
the macro creates "patches" of hair, you can have 6000 patches and a really large
number of individual hair strands. I have a
macro that creates a prairie by collating meshes of grass patches (n x n individual
blades). The parsing & render time are
incredibly low in spite of the complexity. Of course, to do this on a curved object is
typical Colefax magic...

Gilles Tran

Ken wrote:

> If you look closer at the reported stats you will see that there are just
> over 6000 objects in the scene. That is a walk in the park to parse. It is
> when you have 50k or more objects that the memory and parsing overhead
> become really noticable. What surprises me the most is the scale of the
> object vs. the number of hairs it took to get full coverage. The camera
> is a couple hundred units away from the object which implies to me
> that it must be near a hundred pov units in size to fill the image the
> way it does. I can't imagine how the object count is so low and the
> coverage is so good. It may be a trick of the mesh compression utility
> that Warp is running it through.
>
> --
> Ken Tyler
>
> mailto://tylereng@pacbell.net


Post a reply to this message

From: Steve
Subject: Re: PCMHair macro test, second try
Date: 10 Apr 1999 21:24:45
Message: <370FD90E.A50D1586@ndirect.co.uk>
That is one hairy cat.  Really good.

Can you do curly hair with this new macro?  A mate of mine had a
white cat with thick curly hair, his name was Shankly even though
they were Everton supporters.

Cheers
Steve

PS: I'm going to wait until Haloween and make this my wallpaper.

Nieminen Mika wrote:
> 
>   This is a test image I made with the new PCM Hair macro by Chris Colefax.
>   Looks quite promising.
> 
>   (Someone asked for a black cat; what do you think about this?)
> 
>  [Image]
> 
>   This is a picture of the cat model without fur (and with a whiter skin)
> (for comparison)
> 
>  [Image]
> 
>   The source code of the image:
> 
> #include "colors.inc"
> #include "textures.inc"
> 
> camera { location <400,200,200> look_at 0 angle 35 }
> light_source { <0,40,400> x*.5 }
> light_source { <200,-100,0> x*.5 }
> light_source { <200,600,-200> 1 }
> 
> #include "pcmhair.mcr"
> #declare hair_length = 5;
> #declare hair_thickness = 1;
> #declare hair_rotation = z*75*1.5;
> #declare hair_sky = y;
> #declare hairs_per_patch = 20;
> #declare hair_patch_size = 12;
> #declare hair_rotate_to_surface = true;
> #declare hair_objects_per_unit = .08;
> #declare hair_radius=150;
> #declare hair_thickness_curvature=1;
> #declare hair_texture=texture { pigment { rgb .1 } finish { specular .3 roughness .2
} }
> triangle_patch_hairs_object ()
> 
> union
> { object { read_mesh("cat.pcm") pigment { rgb .1 } }
>   sphere { 0,5 scale <1,1,.7> translate <-35,48,55> }
>   sphere { 0,5 scale <1,1,.7> translate <-35,29,58> }
>   pigment { rgb 0 } finish { specular .8 roughness .03 }
>   rotate <-90,120,0>
> }
> 
> blob
> { threshold .1
>   sphere { <-50,0,-50>,100,.5 }
>   sphere { <50,0,-50>,100,.5 }
>   sphere { <50,0,50>,100,.5 }
>   sphere { <-50,0,50>,100,.5 }
>   pigment { rgb x }
>   normal { bumps .1 scale 30 }
>   finish { specular .1 roughness .1 crand .04 }
>   scale <1,.5,1>
>   translate -y*130
> }
> 
> plane { y,-150 pigment { DMFWood1 scale 20 rotate y*-90 } }
> plane { x,-120*2 pigment { DMFWood4 scale 20 rotate x*90 } }
> box { <-120*2,-150,-10000><-120*2,-110,10000> pigment { DMFWood1 scale 20 } }
> 
> -------------------------------------
> 
>   Statistics of the image:
> 
> Preset INI file is 'E:\PROGRAM FILES\POV-RAY FOR WINDOWS
V3.1\RENDERER\QUICKRES.INI', section is '[640x480, No AA]'.
> Preset source file is 'C:\My Documents\cat.pov'.
> Rendering using command line '.1'.
> Persistence of Vision(tm) Ray Tracer Version 3.1e.msvc
>   This is an official version prepared by the POV-Ray Team(tm). See the
>     documentation on how to contact the authors or post a message on
>     CompuServe's GO POVRAY Forum.  Also visit http://www.povray.org/.
> Copyright 1999 POV-Ray Team(tm)
> This Windows version by Christopher J. Cason
> Parsing Options
>   Input file: C:\My Documents\cat.pov (compatible to version 3.1)
>   Remove bounds........On  Split unions........Off
>   Library paths: e:\Program Files\POV-Ray for Windows v3.1\INCLUDE
> Output Options
>   Image resolution 640 by 480 (rows 1 to 480, columns 1 to 640).
>   Output file: cat.tga, 24 bpp RLE Targa, 50 KByte buffer
>   Graphic display......On  (type: 0, palette: 3, gamma:  2.2)
>   Mosaic preview......Off
>   Continued trace.....Off  Allow interruption..Off  Pause when done.....Off
>   Verbose messages.....On
> Tracing Options
>   Quality:  9
>   Bounding boxes.......On  Bounding threshold: 3
>   Light Buffer.........On  Vista Buffer.........On  Draw Vista Buffer...Off
>   Antialiasing.........On  (Method 1, Threshold 0.100, Depth 3, Jitter 1.00)
>   Radiosity...........Off
> Animation Options
>   Clock value....   0.000  (Animation off)
> Redirecting Options
>   All Streams to console..........On
>   Debug Stream to console.........On
>   Fatal Stream to console.........On
>   Render Stream to console........On
>   Statistics Stream to console....On
>   Warning Stream to console.......On
> 
> Scene contains 6080 frame level objects; 2 infinite.
> 
> C:\My Documents\cat.pov Statistics, Resolution 640 x 480
> ----------------------------------------------------------------------------
> Pixels:          307840   Samples:         2010152   Smpls/Pxl: 6.53
> Rays:           2010152   Saved:                 0   Max Level: 1/5
> ----------------------------------------------------------------------------
> Ray->Shape Intersection          Tests       Succeeded  Percentage
> ----------------------------------------------------------------------------
> Blob                           2279287          882165     38.70
> Blob Component                 2716095         2589872     95.35
> Blob Bound                     9117148         2716095     29.79
> Box                             198671          198671    100.00
> Mesh                          76533812         2716311      3.55
> Plane                         12048152         4959129     41.16
> Sphere                           38587            6159     15.96
> Triangle                       2560061          601681     23.50
> Bounding Box                 442314541       187397797     42.37
> Light Buffer                 306921504       162497346     52.94
> Vista Buffer                 179620976       136332090     75.90
> ----------------------------------------------------------------------------
> Roots tested:              1292661   eliminated:               50915
> Calls to Noise:                  0   Calls to DNoise:        4564707
> ----------------------------------------------------------------------------
> Shadow Ray Tests:          9429161   Succeeded:              1935921
> ----------------------------------------------------------------------------
> Smallest Alloc:                 25 bytes   Largest:            51224
> Peak memory used:          6172936 bytes
> ----------------------------------------------------------------------------
> Time For Parse:    0 hours  0 minutes  14.0 seconds (14 seconds)
> Time For Trace:    0 hours 13 minutes   0.0 seconds (780 seconds)
>     Total Time:    0 hours 13 minutes  14.0 seconds (794 seconds)
> 
> Returned from renderer
> POV-Ray finished
> 
>   My computer is a PentiumII 350MHz with 64M of memory.
> 
> --
> main(i,_){for(_?--i,main(i,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
> ):5;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/


Post a reply to this message

From: Nieminen Mika
Subject: Re: PCMHair macro test, second try
Date: 12 Apr 1999 06:39:36
Message: <3711bf58.0@news.povray.org>
Steve <sjl### [at] ndirectcouk> wrote:
: Can you do curly hair with this new macro?

  Of course.
  You can also use any object as a hair object. Chris has even a sample
scene which uses ttf letters as hair objects (!)

-- 
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):5;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.