POV-Ray : Newsgroups : povray.newusers : Glowing Plasma : Re: Glowing Plasma Server Time
1 Jun 2024 22:11:42 EDT (-0400)
  Re: Glowing Plasma  
From: Arcalon
Date: 7 Jun 2013 03:05:04
Message: <web.51b184f32610dbabd6dd4370@news.povray.org>
Alain <kua### [at] videotronca> wrote:

> > Hi guys,
> >
> > I am trying to model some glowing plasma, like in
> > http://www.wsz-whv.de/wp-content/uploads/2011/01/3.jpg or
> > http://www.roboterschweissen.net/images/3d_plasmaschneiden2_gross.jpg.
> >
> > My first approach was using a union of pointlights:
> > union{
> >          light_source{-0.5*y, color rgb<1,1,1>}
> >          light_source{-0.5*y, color rgb<1,0,1>}
> >
> > }
>
> Also, you never actualy see the light_source itself, just it's effect
> and the highlights is cause.
>
> > This approach has a nice glowing effect, however I do not have the possibility
> > to model the "actual" light. As seen in the example, the light has to occlude
> > the top of the plasma cutter. Moreover it has an oval shape.
> >
> > To have more possibilities shaping the light I tried using object-media in union
> > with a light_source:
> >   union{
> >   sphere
> >   { 0,0.5 scale <1,1.5,1>
> >   pigment { rgbt 1 } hollow
> >     interior
> >     { media
> >       { emission 1
> >         density
> >         { spherical density_map
> >           { [0 rgb 0]
> >             [0.1 rgb <.5,.1,.5>]
> >             [0.2 rgb <1,.8,1>]
> >             [1 rgb 1]
> >           }
> >         }
> >       }
> >    }
> >   }
> >   light_source{0, color rgb<1,0,1>}
> >   }
> >
> > But I am not really confident with the results. Do you have any advice?
> >
> >
>
> In your case, emissive media is the way to go. After all, that plasma is
> emissive and a gaz that media is meant to simulate.
> You may want to combine it with an area_light as the media itself will
> NOT shed any light on it's environment in a normal scene, but will get
> reflected on reflective surfaces. For that, you need to use the
> radiosity feature with the option "media on".
>
> Your media and it's container are OK, but could be coded in a beter way:
> Always create your container at the origin. Many patterns are relative
> to the origin.
> As you use a spherical pattern, you should start with a sphere of radius
> 1 as it's the extent of that pattern.
> It may be interesting to add some turbulence. In this case, you need to
> make the container larger. If you use turbulence 0.5, then a container
> of radius 1.5 should be large enough.
> Apply any scaling AFTER you add your media. That way, the media will get
> scalled toggether with it's container. In your case, it will make the
> media ellipsoid.
> Next, rotate the container if needed, and lastly, apply any translation
> needed to place the media in it's desired location.
>
> To increase the quality of your media, change the samples value. It
> default to 10. For emissive media, samples 500 is not so slow... but is
> probably overkill.
>
> If the media is emissive snough, it will hide what is beheind it. You
> may eventualy want to add some absorbing or scattering media. You can
> have many medias in any single container, but normaly, a plasma don't
> cause any shadow.
>
> Personaly, I'd change the light to an area_light like this:
>
> light_source{0 color rgb<1,0,1> area_light 0.6*x 0.6*z 9 9 circular
> orient adaptive 0}
>
> If you use version 3.7 (and you realy should), you have the new
> area_illumination option that works great and can imporve your result.
>
> circular and orient make the light act as if it was a sphere sheding light.
> adaptive 0 make the area_light render MUCH faster.
> There should be no need to use adaptive 1 in your case. The value after
> adaptive is NOT a boolean switch, but the minimal number os subdivision
> if the array of lightlets.
>
> For the various metallic parts, you should try to use blured reflection.
> Add a normal statement using a buzzy pigment, like granite, scalled very
> small and render using antialiasing. You modulate the intensity of the
> bluring by changing the strenght if the normal, like granite 0.1 scale
> 0.00001. You can also use unevent scaling to get a brushed effect.
> If you use reflection bluring, you can use a much tighter specular or
> phong highlighting as the bluring will affect those highlights.
>
> You may try radiosity.
> Initialy, just add radiosity{} in your global_settings block to enable
> radisoity using the defdault values.
>
>
>
>
> Alain

Thank you for this detailed answer!


Post a reply to this message

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