Thread: [Algorithms] Screen space subsurface scattering?
Brought to you by:
vexxed72
From: Darren G. <dg...@ke...> - 2007-09-28 01:31:07
|
Fantastic looking effect: http://www.gamedev.net/community/forums/topic.asp?topic_id=465715 http://www.cs.ucf.edu/~mali/ Does anyone have early conjecture to offer on the approach? More involved depth buffer techniques? Regards, ---- Darren Grant Lead Programmer http://www.kerberos-productions.com/ http://www.swordofthestars.com/ |
From: Ignacio C. <ica...@nv...> - 2007-09-28 02:11:39
|
I don't know if it's a related technique, but check this out too: http://www.sci.utah.edu/~bavoil/research/kbuffer/ -- Ignacio Casta=F1o ica...@nv... =20 > -----Original Message----- > From: gda...@li...=20 > [mailto:gda...@li...] On=20 > Behalf Of Darren Grant > Sent: Thursday, September 27, 2007 06:31 PM > To: gda...@li... > Subject: [Algorithms] Screen space subsurface scattering? >=20 > Fantastic looking effect: > http://www.gamedev.net/community/forums/topic.asp?topic_id=3D465715 > http://www.cs.ucf.edu/~mali/ >=20 > Does anyone have early conjecture to offer on the approach? =20 > More involved depth buffer techniques? >=20 > Regards, >=20 >=20 >=20 > ---- > Darren Grant > Lead Programmer > http://www.kerberos-productions.com/ > http://www.swordofthestars.com/ >=20 >=20 > -------------------------------------------------------------- > ----------- > This SF.net email is sponsored by: Microsoft Defy all=20 > challenges. Microsoft(R) Visual Studio 2005. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > GDAlgorithms-list mailing list > GDA...@li... > https://lists.sourceforge.net/lists/listinfo/gdalgorithms-list > Archives: > http://sourceforge.net/mailarchive/forum.php?forum_name=3Dgdalgo > rithms-list >=20 -------------------------------------------------------------------------= ---------- This email message is for the sole use of the intended recipient(s) and m= ay contain confidential information. Any unauthorized review, use, disclosure or di= stribution is prohibited. If you are not the intended recipient, please contact the= =20sender by reply email and destroy all copies of the original message. -------------------------------------------------------------------------= ---------- |
From: Darren G. <dg...@ke...> - 2007-09-28 03:03:15
|
Thanks for that, it looks like some good weekend reading. :D At 07:11 PM 9/27/2007, Ignacio Castano wrote: >I don't know if it's a related technique, but check this out too: > >http://www.sci.utah.edu/~bavoil/research/kbuffer/ > > >-- >Ignacio Casta=F1o >ica...@nv... ---- Darren Grant Lead Programmer http://www.kerberos-productions.com/ http://www.swordofthestars.com/ |
From: <ca...@gm...> - 2007-09-28 08:04:32
|
Actually, his following paper is probably more interesting, since it describes an implementation that is free of hazards and that works on current hardware: http://www.sci.utah.edu/~bavoil/ --=20 Ignacio Casta=F1o ca...@gm... On 9/27/07, Darren Grant <dg...@ke...> wrote: > Thanks for that, it looks like some good weekend reading. :D > > > At 07:11 PM 9/27/2007, Ignacio Castano wrote: > >I don't know if it's a related technique, but check this out too: > > > >http://www.sci.utah.edu/~bavoil/research/kbuffer/ > > > > > >-- > >Ignacio Casta=F1o > >ica...@nv... > > > > ---- > Darren Grant > Lead Programmer > http://www.kerberos-productions.com/ > http://www.swordofthestars.com/ |
From: <Pau...@sc...> - 2007-09-28 08:47:10
|
gda...@li... wrote on 28/09/2007 02:31:00: > Fantastic looking effect: > http://www.gamedev.net/community/forums/topic.asp?topic_id=465715 > http://www.cs.ucf.edu/~mali/ > > Does anyone have early conjecture to offer on the approach? More > involved depth buffer techniques? A complete and total guess and without even reading any of the above links but if you render front faces and then back faces into two separate depth buffers you can compute a thickness value per texel along the view direction. If you then combined this with a captured environment cubemap perhaps you could emulate subsurface scattering that way. I think thats how nvidia did it with their oldish demo? Cheers, Paul. ********************************************************************** This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please notify pos...@sc... This footnote also confirms that this email message has been checked for all known viruses. Sony Computer Entertainment Europe Limited Registered Office: 10 Great Marlborough Street, London W1F 7LP, United Kingdom Registered in England: 3277793 ********************************************************************** |
From: Ignacio C. <ica...@nv...> - 2007-09-29 23:53:12
|
Yeah, any of those algorithms do not really compute subsurface scattering= . Louis technique allows you to do capture multi-fragment effects, and yo= u can use that for various effects, like correct translucency of deep sha= dow maps. My guess is that they might be using a similar approach to achi= eve subsurface scattering. -- Ignacio Casta=F1o ica...@nv... =20 > -----Original Message----- > From: gda...@li...=20 > [mailto:gda...@li...] On=20 > Behalf Of Pau...@sc... > Sent: Friday, September 28, 2007 01:47 AM > To: Game Development Algorithms > Subject: Re: [Algorithms] Screen space subsurface scattering? >=20 > gda...@li... wrote on 28/09/2007 > 02:31:00: >=20 > > Fantastic looking effect: > > http://www.gamedev.net/community/forums/topic.asp?topic_id=3D465715 > > http://www.cs.ucf.edu/~mali/ > >=20 > > Does anyone have early conjecture to offer on the approach? More=20 > > involved depth buffer techniques? >=20 > A complete and total guess and without even reading any of=20 > the above links but if you render front faces and then back=20 > faces into two separate depth buffers you can compute a=20 > thickness value per texel along the view direction. If you=20 > then combined this with a captured environment cubemap=20 > perhaps you could emulate subsurface scattering that way. I=20 > think thats how nvidia did it with their oldish demo? >=20 > Cheers, Paul. >=20 > ********************************************************************** > This email and any files transmitted with it are confidential=20 > and intended solely for the use of the individual or entity=20 > to whom they are addressed. If you have received this email=20 > in error please notify pos...@sc... This footnote also=20 > confirms that this email message has been checked for all=20 > known viruses. > Sony Computer Entertainment Europe Limited Registered Office:=20 > 10 Great Marlborough Street, London W1F 7LP, United Kingdom=20 > Registered in England: 3277793 > ********************************************************************** >=20 > -------------------------------------------------------------- > ----------- > This SF.net email is sponsored by: Microsoft Defy all=20 > challenges. Microsoft(R) Visual Studio 2005. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > GDAlgorithms-list mailing list > GDA...@li... > https://lists.sourceforge.net/lists/listinfo/gdalgorithms-list > Archives: > http://sourceforge.net/mailarchive/forum.php?forum_name=3Dgdalgo > rithms-list >=20 -------------------------------------------------------------------------= ---------- This email message is for the sole use of the intended recipient(s) and m= ay contain confidential information. Any unauthorized review, use, disclosure or di= stribution is prohibited. If you are not the intended recipient, please contact the= =20sender by reply email and destroy all copies of the original message. -------------------------------------------------------------------------= ---------- |
From: <ca...@gm...> - 2007-09-30 09:25:22
|
Rereading myself I realize I don't make too much sense... "Louis technique allows you to capture multiple fragment per pixel, you can use that for various effects, like order independent transparency, correct translucency, and deep shadow maps. My guess is that they might be using a similar approach to achieve subsurface scattering." The technique that Paul and Jarkko refer to is probably the one described in Greg James' article in ShaderX2 "Rendering Objects as Thick Volumes". It's also described in this whitepaper: http://download.nvidia.com/developer/SDK/Individual_Samples/DEMOS/Direct3D9= /src/FogPolygonVolumes3/docs/FogPolygonVolumes3.pdf However, computing subsurface scattering requires you to not only integrate the scattered light through the volume along the ray, but to integrate the the light coming from any direction at the current pixel, that is a spherical integral of the irradiance. --=20 Ignacio Casta=F1o ca...@gm... On 9/29/07, Ignacio Castano <ica...@nv...> wrote: > > Yeah, any of those algorithms do not really compute subsurface scattering= . Louis technique allows you to do capture multi-fragment effects, and you = can use that for various effects, like correct translucency of deep shadow = maps. My guess is that they might be using a similar approach to achieve su= bsurface scattering. > > -- > Ignacio Casta=F1o > ica...@nv... > > > > -----Original Message----- > > From: gda...@li... > > [mailto:gda...@li...] On > > Behalf Of Pau...@sc... > > Sent: Friday, September 28, 2007 01:47 AM > > To: Game Development Algorithms > > Subject: Re: [Algorithms] Screen space subsurface scattering? > > > > gda...@li... wrote on 28/09/2007 > > 02:31:00: > > > > > Fantastic looking effect: > > > http://www.gamedev.net/community/forums/topic.asp?topic_id=3D465715 > > > http://www.cs.ucf.edu/~mali/ > > > > > > Does anyone have early conjecture to offer on the approach? More > > > involved depth buffer techniques? > > > > A complete and total guess and without even reading any of > > the above links but if you render front faces and then back > > faces into two separate depth buffers you can compute a > > thickness value per texel along the view direction. If you > > then combined this with a captured environment cubemap > > perhaps you could emulate subsurface scattering that way. I > > think thats how nvidia did it with their oldish demo? > > > > Cheers, Paul. > > |
From: Jarkko L. <al...@gm...> - 2007-09-30 10:09:38
|
Yeah, I didn't mean they would use the information as is like for the fog computation, but rather as prerequisite screen space information for the SSS approximation. I.e. once you have the depth info per pixel, you could perform some kind of approximation of the spherical integral by sampling the surrounding pixels. Of course that wouldn't be the real thing, but maybe good enough approximation to result in convincing looking SSS effect. Cheers, Jarkko ----- Original Message ----- From: "Ignacio Castaño" <ca...@gm...> To: "Game Development Algorithms" <gda...@li...> Sent: Sunday, September 30, 2007 12:25 PM Subject: Re: [Algorithms] Screen space subsurface scattering? Rereading myself I realize I don't make too much sense... "Louis technique allows you to capture multiple fragment per pixel, you can use that for various effects, like order independent transparency, correct translucency, and deep shadow maps. My guess is that they might be using a similar approach to achieve subsurface scattering." The technique that Paul and Jarkko refer to is probably the one described in Greg James' article in ShaderX2 "Rendering Objects as Thick Volumes". It's also described in this whitepaper: http://download.nvidia.com/developer/SDK/Individual_Samples/DEMOS/Direct3D9/src/FogPolygonVolumes3/docs/FogPolygonVolumes3.pdf However, computing subsurface scattering requires you to not only integrate the scattered light through the volume along the ray, but to integrate the the light coming from any direction at the current pixel, that is a spherical integral of the irradiance. -- Ignacio Castaño ca...@gm... On 9/29/07, Ignacio Castano <ica...@nv...> wrote: > > Yeah, any of those algorithms do not really compute subsurface scattering. > Louis technique allows you to do capture multi-fragment effects, and you > can use that for various effects, like correct translucency of deep shadow > maps. My guess is that they might be using a similar approach to achieve > subsurface scattering. > > -- > Ignacio Castaño > ica...@nv... > > > > -----Original Message----- > > From: gda...@li... > > [mailto:gda...@li...] On > > Behalf Of Pau...@sc... > > Sent: Friday, September 28, 2007 01:47 AM > > To: Game Development Algorithms > > Subject: Re: [Algorithms] Screen space subsurface scattering? > > > > gda...@li... wrote on 28/09/2007 > > 02:31:00: > > > > > Fantastic looking effect: > > > http://www.gamedev.net/community/forums/topic.asp?topic_id=465715 > > > http://www.cs.ucf.edu/~mali/ > > > > > > Does anyone have early conjecture to offer on the approach? More > > > involved depth buffer techniques? > > > > A complete and total guess and without even reading any of > > the above links but if you render front faces and then back > > faces into two separate depth buffers you can compute a > > thickness value per texel along the view direction. If you > > then combined this with a captured environment cubemap > > perhaps you could emulate subsurface scattering that way. I > > think thats how nvidia did it with their oldish demo? > > > > Cheers, Paul. > > ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ GDAlgorithms-list mailing list GDA...@li... https://lists.sourceforge.net/lists/listinfo/gdalgorithms-list Archives: http://sourceforge.net/mailarchive/forum.php?forum_name=gdalgorithms-list |
From: Jarkko L. <al...@gm...> - 2007-09-30 07:56:47
|
The way you can compute the thickness value for a ray that traverses through an object is to add depth of front faces and subtract back faces to the same buffer. IIRC, this was used in some old paper to compute heterogenous fog by using arbitrary fog geometry. Maybe they use this kind of screen space information for their SSS? Cheers, Jarkko ----- Original Message ----- From: <Pau...@sc...> To: "Game Development Algorithms" <gda...@li...> Sent: Friday, September 28, 2007 11:47 AM Subject: Re: [Algorithms] Screen space subsurface scattering? > gda...@li... wrote on 28/09/2007 > 02:31:00: > >> Fantastic looking effect: >> http://www.gamedev.net/community/forums/topic.asp?topic_id=465715 >> http://www.cs.ucf.edu/~mali/ >> >> Does anyone have early conjecture to offer on the approach? More >> involved depth buffer techniques? > > A complete and total guess and without even reading any of the above links > but if you render front faces and then back faces into two separate depth > buffers you can compute a thickness value per texel along the view > direction. If you then combined this with a captured environment cubemap > perhaps you could emulate subsurface scattering that way. I think thats > how nvidia did it with their oldish demo? > > Cheers, Paul. > > ********************************************************************** > This email and any files transmitted with it are confidential and intended > solely for the use of the individual or entity to whom they are addressed. > If you have received this email in error please notify pos...@sc... > This footnote also confirms that this email message has been checked for > all known viruses. > Sony Computer Entertainment Europe Limited > Registered Office: 10 Great Marlborough Street, London W1F 7LP, United > Kingdom > Registered in England: 3277793 > ********************************************************************** > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2005. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > GDAlgorithms-list mailing list > GDA...@li... > https://lists.sourceforge.net/lists/listinfo/gdalgorithms-list > Archives: > http://sourceforge.net/mailarchive/forum.php?forum_name=gdalgorithms-list |