POV-Ray : Newsgroups : povray.general : render depth/normal map with povray? Server Time
5 Nov 2024 03:20:07 EST (-0500)
  render depth/normal map with povray? (Message 1 to 10 of 12)  
Goto Latest 10 Messages Next 2 Messages >>>
From: sirhenjo
Subject: render depth/normal map with povray?
Date: 15 Nov 2007 09:00:01
Message: <web.473c4fbbdb567e121d0a17590@news.povray.org>
I am wondering if it's possible to render a depth and/or normal map using
povray, instead of a regular scene render.

The depth map can be generated by measuring the depth from a reference plane
(bounding box for example) and cast rays to the surface of the objects.

Is this possible?
I know there are other platforms that can do this, just wondering if POV-Ray can
be setup to generate such maps.


Post a reply to this message

From: Jan Dvorak
Subject: Re: render depth/normal map with povray?
Date: 15 Nov 2007 09:49:14
Message: <473c5c6a@news.povray.org>
sirhenjo napsal(a):
> I am wondering if it's possible to render a depth and/or normal map using
> povray, instead of a regular scene render.
> 
> The depth map can be generated by measuring the depth from a reference plane
> (bounding box for example) and cast rays to the surface of the objects.
> 
> Is this possible?
> I know there are other platforms that can do this, just wondering if POV-Ray can
> be setup to generate such maps.
> 
> 
depth map:
set a gradient pigment perpendicular to the camera plane and set ambient 
1 diffuse 0


Post a reply to this message

From: Trevor G Quayle
Subject: Re: render depth/normal map with povray?
Date: 15 Nov 2007 10:15:01
Message: <web.473c6176fcd9bf9ac150d4c10@news.povray.org>
Jan Dvorak <jan### [at] centrumcz> wrote:
> sirhenjo napsal(a):
> > I am wondering if it's possible to render a depth and/or normal map using
> > povray, instead of a regular scene render.
> >
> > The depth map can be generated by measuring the depth from a reference plane
> > (bounding box for example) and cast rays to the surface of the objects.
> >
> > Is this possible?
> > I know there are other platforms that can do this, just wondering if POV-Ray can
> > be setup to generate such maps.
> >
> >
> depth map:
> set a gradient pigment perpendicular to the camera plane and set ambient
> 1 diffuse 0

Normal map, use combined slope patterns.

-tgq


Post a reply to this message

From: Alain
Subject: Re: render depth/normal map with povray?
Date: 15 Nov 2007 11:48:01
Message: <473c7841@news.povray.org>
sirhenjo nous apporta ses lumieres en ce 2007/11/15 08:55:
> I am wondering if it's possible to render a depth and/or normal map using
> povray, instead of a regular scene render.
> 
> The depth map can be generated by measuring the depth from a reference plane
> (bounding box for example) and cast rays to the surface of the objects.
> 
> Is this possible?
> I know there are other platforms that can do this, just wondering if POV-Ray can
> be setup to generate such maps.
> 
> 
For the depth map:
1 - remove all textures and pigments.
2 - bind everything but the camera in one union.
3 - apply a gradient pattern to your big union scaled to it's depth. Have the 
gradient perpendicular to the camera axis.
4 - remove all light_source and use ambient 1 diffuse 0.

For the normal map:
Do the same, but replace the gradient by a slope pattern.

Both are easier with a camera on an axis looking as the origin, but you can have 
the camera set at any possible location.

-- 
Alain
-------------------------------------------------
You know you've been raytracing too long when your idea of a complete computer 
is a fast CPU, lots of RAM, and a means of running POVray.
Aaron Gage a.k.a Slartibartfast


Post a reply to this message

From: sirhenjo
Subject: Re: render depth/normal map with povray?
Date: 15 Nov 2007 15:45:00
Message: <web.473cafc7fcd9bf9af721d5e80@news.povray.org>
Okay, thank you all. It seems that POV-Ray is indeed capable of doing it.
However, to make it really viable for me, I need some more functionality. During
the raycasting I want to make some extra checks.

For example, I have multiple objects in front of eachother with some space
between them. Instead of writing a depth map of the scene, letting rays end
whenever they hit any object, I may want to write the depth values of an
complete second object.

To achieve this I may need to let the ray keep till it hits the 3rd face,
ignoring the first 2 faces.

Is this possible at all?


Post a reply to this message

From: Zeger Knaepen
Subject: Re: render depth/normal map with povray?
Date: 15 Nov 2007 18:37:35
Message: <473cd83f@news.povray.org>
"sirhenjo" <sir### [at] hotmailcom> wrote in message 
news:web.473cafc7fcd9bf9af721d5e80@news.povray.org...
> Okay, thank you all. It seems that POV-Ray is indeed capable of doing it.
> However, to make it really viable for me, I need some more functionality. 
> During
> the raycasting I want to make some extra checks.
>
> For example, I have multiple objects in front of eachother with some space
> between them. Instead of writing a depth map of the scene, letting rays 
> end
> whenever they hit any object, I may want to write the depth values of an
> complete second object.
>
> To achieve this I may need to let the ray keep till it hits the 3rd face,
> ignoring the first 2 faces.
>
> Is this possible at all?

uhm, just remove the blocking object?

I don't get it :)

cu!
-- 
#macro G(b,e)b+(e-b)*C/50#end#macro _(b,e,k,l)#local C=0;#while(C<50)
sphere{G(b,e)+3*z.1pigment{rgb G(k,l)}finish{ambient 1}}#local C=C+1;
#end#end _(y-x,y,x,x+y)_(y,-x-y,x+y,y)_(-x-y,-y,y,y+z)_(-y,y,y+z,x+y)
_(0x+y.5+y/2x)_(0x-y.5+y/2x)            // ZK http://www.povplace.com


Post a reply to this message

From: sirhenjo
Subject: Re: render depth/normal map with povray?
Date: 16 Nov 2007 03:15:01
Message: <web.473d50b6fcd9bf9a1d0a17590@news.povray.org>
"Zeger Knaepen" <zeg### [at] povplacecom> wrote:
> "sirhenjo" <sir### [at] hotmailcom> wrote in message
> news:web.473cafc7fcd9bf9af721d5e80@news.povray.org...
> > Okay, thank you all. It seems that POV-Ray is indeed capable of doing it.
> > However, to make it really viable for me, I need some more functionality.
> > During
> > the raycasting I want to make some extra checks.
> >
> > For example, I have multiple objects in front of eachother with some space
> > between them. Instead of writing a depth map of the scene, letting rays
> > end
> > whenever they hit any object, I may want to write the depth values of an
> > complete second object.
> >
> > To achieve this I may need to let the ray keep till it hits the 3rd face,
> > ignoring the first 2 faces.
> >
> > Is this possible at all?
>
> uhm, just remove the blocking object?
>
> I don't get it :)
>
> cu!
> --
> #macro G(b,e)b+(e-b)*C/50#end#macro _(b,e,k,l)#local C=0;#while(C<50)
> sphere{G(b,e)+3*z.1pigment{rgb G(k,l)}finish{ambient 1}}#local C=C+1;
> #end#end _(y-x,y,x,x+y)_(y,-x-y,x+y,y)_(-x-y,-y,y,y+z)_(-y,y,y+z,x+y)
> _(0x+y.5+y/2x)_(0x-y.5+y/2x)            // ZK http://www.povplace.com


Heheh, should have said "without removing the blocking object".
It may seem like something silly to do, but I have my reasons for this question.


Post a reply to this message

From: Zeger Knaepen
Subject: Re: render depth/normal map with povray?
Date: 16 Nov 2007 10:23:12
Message: <473db5e0$1@news.povray.org>
"sirhenjo" <sir### [at] hotmailcom> wrote in message 
news:web.473d50b6fcd9bf9a1d0a17590@news.povray.org...
> Heheh, should have said "without removing the blocking object".
> It may seem like something silly to do, but I have my reasons for this 
> question.

Could you elaborate?  'cause I still don't understand why you need the 
blocking object if it won't be visible in the render :)

cu!
-- 
#macro G(b,e)b+(e-b)*C/50#end#macro _(b,e,k,l)#local C=0;#while(C<50)
sphere{G(b,e)+3*z.1pigment{rgb G(k,l)}finish{ambient 1}}#local C=C+1;
#end#end _(y-x,y,x,x+y)_(y,-x-y,x+y,y)_(-x-y,-y,y,y+z)_(-y,y,y+z,x+y)
_(0x+y.5+y/2x)_(0x-y.5+y/2x)            // ZK http://www.povplace.com


Post a reply to this message

From: Nicolas Alvarez
Subject: Re: render depth/normal map with povray?
Date: 16 Nov 2007 11:52:20
Message: <473dcac4$1@news.povray.org>

> 
> Heheh, should have said "without removing the blocking object".
> It may seem like something silly to do, but I have my reasons for this question.

If you need it for reflections/shadows/whatever, use no_image.


Post a reply to this message

From: Alain
Subject: Re: render depth/normal map with povray?
Date: 16 Nov 2007 18:57:36
Message: <473e2e70$1@news.povray.org>
sirhenjo nous apporta ses lumieres en ce 2007/11/16 03:11:
> "Zeger Knaepen" <zeg### [at] povplacecom> wrote:
>> "sirhenjo" <sir### [at] hotmailcom> wrote in message
>> news:web.473cafc7fcd9bf9af721d5e80@news.povray.org...
>>> Okay, thank you all. It seems that POV-Ray is indeed capable of doing it.
>>> However, to make it really viable for me, I need some more functionality.
>>> During
>>> the raycasting I want to make some extra checks.
>>>
>>> For example, I have multiple objects in front of eachother with some space
>>> between them. Instead of writing a depth map of the scene, letting rays
>>> end
>>> whenever they hit any object, I may want to write the depth values of an
>>> complete second object.
>>>
>>> To achieve this I may need to let the ray keep till it hits the 3rd face,
>>> ignoring the first 2 faces.
>>>
>>> Is this possible at all?
>> uhm, just remove the blocking object?
>>
>> I don't get it :)
>>
>> cu!
>> --
>> #macro G(b,e)b+(e-b)*C/50#end#macro _(b,e,k,l)#local C=0;#while(C<50)
>> sphere{G(b,e)+3*z.1pigment{rgb G(k,l)}finish{ambient 1}}#local C=C+1;
>> #end#end _(y-x,y,x,x+y)_(y,-x-y,x+y,y)_(-x-y,-y,y,y+z)_(-y,y,y+z,x+y)
>> _(0x+y.5+y/2x)_(0x-y.5+y/2x)            // ZK http://www.povplace.com
> 
> 
> Heheh, should have said "without removing the blocking object".
> It may seem like something silly to do, but I have my reasons for this question.
> 
> 
Is it that you wand to see the object in the back trough that in the front?

-- 
Alain
-------------------------------------------------
You know you have been raytracing for too long when the animation you render 
will be finished after yourself.
Urs Holzer


Post a reply to this message

Goto Latest 10 Messages Next 2 Messages >>>

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