tag:blogger.com,1999:blog-7277449027963623452.post788092931767135031..comments2023-12-07T05:43:10.401-08:00Comments on Ray Tracey's blog: GPU path tracing tutorial 2: interactive triangle mesh path tracingSam Laperehttp://www.blogger.com/profile/05688552048697970050noreply@blogger.comBlogger46125tag:blogger.com,1999:blog-7277449027963623452.post-90636549073867083502017-03-30T01:03:12.858-07:002017-03-30T01:03:12.858-07:00Hi Berry,
1. you're right, I forgot to multip...Hi Berry,<br /><br />1. you're right, I forgot to multiply the colour with a cosine factor, thanks for pointing that out. The "2" factor could be anything really, it's just a fudge factor to make the scene look brighter<br /><br />2. that's how it works for Whitted ray tracing, path tracing on the other hand doesn't split rays, but randomly chooses one type of ray according to some probability distribution function. It's how path tracing works (both on CPU and GPU) and is not a limitation of non-recursive tracing on the GPU (every recursive algorithm can be converted to an iterative one by keeping a stack). Sam Laperehttps://www.blogger.com/profile/05688552048697970050noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-64120233770941094592017-03-29T23:37:10.994-07:002017-03-29T23:37:10.994-07:00Hi Sam! There are two questions I want to ask:
1. ...Hi Sam! There are two questions I want to ask:<br />1. When the material is "Diffuse", you wrote "mask *= f", shouldn't it be "mask *= f * dot(d, nl) * 2"?(considered the inverse pdf, ρ and cosine coefficent)<br />2. When the material is "Refractive", the incoming ray should split into two rays: reflected ray and refracted ray(ignore total internal reflect). But in your code, you randomly choose one kind of ray, is it reasonable? I know it's hard to deal with this in a non-recursive function:(Anonymoushttps://www.blogger.com/profile/01766456030052894588noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-67113223490318247262016-03-03T04:00:52.304-08:002016-03-03T04:00:52.304-08:00Appreciate it! Thanks.Appreciate it! Thanks.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-33660205387889147472016-03-03T03:43:07.683-08:002016-03-03T03:43:07.683-08:00Hi Tristan, thanks for letting me know. I fixed it...Hi Tristan, thanks for letting me know. I fixed it and updated the code on github. The problem was in the way the VBO got created. It should run fine now.Sam Laperehttps://www.blogger.com/profile/05688552048697970050noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-27172274889629768902016-03-02T15:16:29.618-08:002016-03-02T15:16:29.618-08:00Hey Sam, I couldn't get it to work either and ...Hey Sam, I couldn't get it to work either and seem to have the same problem as Anon on Dec 2. It appears to compile fine, although there are some warnings, but when I run it I just get a display driver crash. I'm also using cuda 7.5 so maybe there's an incompatibility there.<br /><br />Any advice?<br /><br />Cheers, Tristan.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-22257489420027841962016-01-27T03:46:09.868-08:002016-01-27T03:46:09.868-08:00Brochure iBrouchure with numerous exceptional capa...<a href="http://www.ibrochure.xyz" rel="nofollow">Brochure</a> iBrouchure with numerous exceptional capacity to make your undertaking intriguing. It tells the story and interactive.<br />Anonymoushttps://www.blogger.com/profile/05897459235431476713noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-67943209390055512212016-01-17T05:04:31.027-08:002016-01-17T05:04:31.027-08:00Have you run path tracing stuff on one Nvidia GeFo...Have you run path tracing stuff on one Nvidia GeForce GTX Titan X piece of shit ? <br /><br />How is the overall performance ? Johnhttps://www.blogger.com/profile/08154705424835302415noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-59883102611145515082016-01-07T11:52:19.037-08:002016-01-07T11:52:19.037-08:00Nice find Jenson! I almost lol'ed :D. This mus...Nice find Jenson! I almost lol'ed :D. This must be your most on topic comment so far.Sam Laperehttps://www.blogger.com/profile/05688552048697970050noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-14877570867121628402016-01-07T02:52:26.125-08:002016-01-07T02:52:26.125-08:00WTF???
https://www.youtube.com/watch?v=EgMy5dqAl...WTF??? <br /><br />https://www.youtube.com/watch?v=EgMy5dqAl_U<br /><br />https://www.youtube.com/watch?v=MnIlpoamQYcJohnhttps://www.blogger.com/profile/08154705424835302415noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-65939506678823016572015-12-31T09:37:53.828-08:002015-12-31T09:37:53.828-08:00Athbhliain faoi mhaise daoibh !Athbhliain faoi mhaise daoibh !Johnhttps://www.blogger.com/profile/08154705424835302415noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-54045506601382763022015-12-28T21:43:21.221-08:002015-12-28T21:43:21.221-08:00Ironically, you cannot even make perfect digital 3...Ironically, you cannot even make perfect digital 3D models, but yet dreaming of a highly computer performance intensive rendering technique. <br /><br />Intel/Nvidia hamper, who will finally begin with producing extremely fast computer hardware required for graphics? Johnhttps://www.blogger.com/profile/08154705424835302415noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-22955897160632583012015-12-22T12:55:08.433-08:002015-12-22T12:55:08.433-08:00With ECL hardware I already now am looking absolut...With ECL hardware I already now am looking absolutely not towards, but straight beyond any sampled rendering techniques, currently being deified, that are inevitably flawed. This is in contrast to the senseless view of the dreamers that have started /r/pathtracing which I shouldn't haunt. Johnhttps://www.blogger.com/profile/08154705424835302415noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-65566687045841048392015-12-19T12:42:46.494-08:002015-12-19T12:42:46.494-08:00Good idea, Chris. I'll join the discussion whe...Good idea, Chris. I'll join the discussion when I find some time.Sam Laperehttps://www.blogger.com/profile/05688552048697970050noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-55656793272604869382015-12-17T22:52:36.729-08:002015-12-17T22:52:36.729-08:00I just created a subreddit for realtime pathtracin...I just created a subreddit for realtime pathtracing if anyone wants to have discussions there instead of spamming Sam's blog:<br /><br />/r/pathtracing<br /><br />@Sam Lapere - would love to see ya there :)Chrishttps://www.blogger.com/profile/09966938012901731212noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-36597494846065025692015-12-13T20:19:23.603-08:002015-12-13T20:19:23.603-08:00Now, let's briefly summarize the situation:
o...Now, let's briefly summarize the situation:<br /><br />of about 23000 races that inhabit our galaxy {located in the 17th of currently almost 47 Creations each accommodating hundreds and thousands of Universes}, the humankind is one of the least advanced, i.e. still being Low-End. Of course, there are High-End Civilizations that used to live in the centre of Milky Way, but their main value is Cosmic Love {comprises eight true virtues; shouldn't be confused with Goodness, which is just the anti-Evil active/defensive energies kit of the Lord} & they act strictly together with the Creator, a complex of multiple Monadic arrays which were born by the infinite ocean of Primary Matter that had always existed, and, apart from the Greatest Tibetan Teachers, there were also Christ & Lenin, the two famous Genii of Earth called for to crusade against Cosmic Evil, a very mighty formation off Space-Time deviation, that totally rules on Earth. And there are Middle Civilizations that actively use the so-called Continuous Logic of Cognition, otherwise simply known as 'integrated thinking'. And what I had to say is that the latter is the only thing by means of which the earthly hardware can be fabulously improved. Johnhttps://www.blogger.com/profile/08154705424835302415noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-90611206714524193532015-12-12T20:34:59.878-08:002015-12-12T20:34:59.878-08:00Intel/Nvidia/AMD have bottom-lines like any compan...Intel/Nvidia/AMD have bottom-lines like any company, I'm sure they could create something better suited for pathtracing, but the money doesn't point there right now. Nvidia is happy to support software that doesn't break the hardware cycle (like Optix or VXGI), but a hardware-cycle-breaking change is very very unlikely. <br /><br />The only thing we can do is create better software to compliment Moore's law and expedite the time until pathtracing is "here". The good news is we are nowhere near the apex of software's contribution; new intersection and sampling routines are constantly improving with new research. Keep your ears to the wall ;)Chrishttps://www.blogger.com/profile/09966938012901731212noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-69205625993546780672015-12-12T16:41:35.930-08:002015-12-12T16:41:35.930-08:00> there are some hard limits on calculation spe...> there are some hard limits on calculation speed<br /><br />Yes, limitless is only the greediness of the top management of the computer hardware companies. Hopefully, somewhere around 2130, Intel/Nvidia might have finally achieved today's level of computer technology. We shall be waiting impatiently. Johnhttps://www.blogger.com/profile/08154705424835302415noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-19577198995086955692015-12-12T14:47:30.973-08:002015-12-12T14:47:30.973-08:00That meaning: you lose control of the workings its...That meaning: you lose control of the workings itself, even when the declarative language is based on solving problems using constraints given to the program, rather than using an algorithm written by a programmer? Johnhttps://www.blogger.com/profile/08154705424835302415noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-78664235129465828792015-12-12T14:25:21.549-08:002015-12-12T14:25:21.549-08:00@Jenson Button
Declarative is shorter to write do...@Jenson Button<br /><br />Declarative is shorter to write down what you actually want, but you lose control of the workings itself. I'd say you can't really have one without the other. I think over some time the solution is to have a basic functional or declarative basis with an imperative core you can tweak when necessary. Much like existing ray tracing frameworks like Optix or FireRays offer these functional solutions to global illumination, however still not open source.Spectrallichttps://www.blogger.com/profile/12343988024196284554noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-5076971358800497902015-12-12T14:04:04.196-08:002015-12-12T14:04:04.196-08:00@ Robbin Marcus
Then, what would you say about de...@ Robbin Marcus<br /><br />Then, what would you say about declarative languages being intrinsically better than imperative ones? Johnhttps://www.blogger.com/profile/08154705424835302415noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-17576590974872137302015-12-12T13:44:17.249-08:002015-12-12T13:44:17.249-08:00@Jenson Button
If you take perspective of consume...@Jenson Button<br /><br />If you take perspective of consumer hardware in the form of a PC with a CPU and GPU, there are some hard limits on calculation speed and memory bandwidth. Theoretically, with any provided framework you should be able to achieve speeds up to this limit. Of course, this task is not trivial. Every language has its own interface to communicate with the hardware. <br />There are advantages over one language in comparison to others, but this is more a personal preference I would say. <br /><br />The language level can increase your performance: if you write code and cross reference the compiled code (low level) with the intended workings, you may notice some redundant work. However, writing the complete algorithm in this compiled form would cost more valuable time than it would increase performance eventually. Spectrallichttps://www.blogger.com/profile/12343988024196284554noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-33622966436609241282015-12-12T13:15:23.122-08:002015-12-12T13:15:23.122-08:00@ Robbin Marcus
As understood: language level &am...@ Robbin Marcus<br /><br />As understood: language level & its declared advantages cannot gain performance ? Johnhttps://www.blogger.com/profile/08154705424835302415noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-16449186262203873872015-12-12T12:13:31.575-08:002015-12-12T12:13:31.575-08:00@Jenson Button
The host language does not matter ...@Jenson Button<br /><br />The host language does not matter so much, but for the best performance you're looking to work in a language that works on the GPU. This could be CUDA, OpenCL or even compute shaders from DirectX or openGL.Spectrallichttps://www.blogger.com/profile/12343988024196284554noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-41507037580988799712015-12-12T12:10:02.702-08:002015-12-12T12:10:02.702-08:00Sam: language choice does not influence in terms o...Sam: language choice does not influence in terms of program performance on the final result ? Johnhttps://www.blogger.com/profile/08154705424835302415noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-88263763588201033062015-12-12T11:37:45.799-08:002015-12-12T11:37:45.799-08:00@Sam Lapere
i really hope so. Currently i am drun...@Sam Lapere<br /><br />i really hope so. Currently i am drunk of the Enlighten GI implemented in Unity 5.<br />The Courtyard demo is so breathtakingly beautiful. (modified it also with a blue sky.)<br />Sth completely different. <br />My God i wish i could be there now in VR. XDRetinahttps://www.blogger.com/profile/07837338662579054049noreply@blogger.com