<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic A small bug in Embree, and a solution in Intel® Embree Ray Tracing Kernels</title>
    <link>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/A-small-bug-in-Embree-and-a-solution/m-p/796905#M115</link>
    <description>Thanks for reporting this bug. It is fixed in version 1.0 final.&lt;BR /&gt;&lt;BR /&gt;And yes, I'm interested in hearing more about your ray tracer. Please send an email to Embree support.&lt;BR /&gt;</description>
    <pubDate>Tue, 22 Nov 2011 17:43:51 GMT</pubDate>
    <dc:creator>Manfred_Ernst__Intel</dc:creator>
    <dc:date>2011-11-22T17:43:51Z</dc:date>
    <item>
      <title>A small bug in Embree, and a solution</title>
      <link>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/A-small-bug-in-Embree-and-a-solution/m-p/796904#M114</link>
      <description>Hi&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;We're using Embree in the latest incarnation of our mental ray compatible raytracer, and we've noticed a bug concerning axis aligned rays. When Embree calculates the reciprocal direction vector, it doesn't check for divide by 0, which then causes it to fail to intersect. Here's a simple fix - in ray.h&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;#define BIGNUM(3.4E38f)&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;/*! Constructs a ray from origin, direction, and ray segment. Near&lt;BR /&gt;  * has to be smaller than far. */&lt;BR /&gt; __forceinline Ray(const Vec3f&amp;amp; org, const Vec3f&amp;amp; dir, const float&amp;amp;&lt;BR /&gt;near = zero, const float&amp;amp; far = inf)&lt;BR /&gt;  : org(org), dir(dir), near(near), far(far)&lt;BR /&gt;   {&lt;BR /&gt;       rdir.x = (dir.x==0.0f)? BIGNUM
: 1.0f/dir.x;&lt;BR /&gt;       rdir.y = (dir.y==0.0f)? BIGNUM
: 1.0f/dir.y;&lt;BR /&gt;       rdir.z = (dir.z==0.0f)? BIGNUM
: 1.0f/dir.z;&lt;BR /&gt;   }
&lt;!--EndFragment--&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;I'm sure you guys will have a better solution, but this seems to work, at least. :-)&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Congratulations on Embree, it's really zippy! If you're interested in hearing more about our raytracer, let me know!&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Best Regards&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Matt Taylor&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Tue, 08 Nov 2011 10:34:34 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/A-small-bug-in-Embree-and-a-solution/m-p/796904#M114</guid>
      <dc:creator>taylorius</dc:creator>
      <dc:date>2011-11-08T10:34:34Z</dc:date>
    </item>
    <item>
      <title>A small bug in Embree, and a solution</title>
      <link>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/A-small-bug-in-Embree-and-a-solution/m-p/796905#M115</link>
      <description>Thanks for reporting this bug. It is fixed in version 1.0 final.&lt;BR /&gt;&lt;BR /&gt;And yes, I'm interested in hearing more about your ray tracer. Please send an email to Embree support.&lt;BR /&gt;</description>
      <pubDate>Tue, 22 Nov 2011 17:43:51 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/A-small-bug-in-Embree-and-a-solution/m-p/796905#M115</guid>
      <dc:creator>Manfred_Ernst__Intel</dc:creator>
      <dc:date>2011-11-22T17:43:51Z</dc:date>
    </item>
  </channel>
</rss>

