<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-68005766611026061</id><updated>2011-12-26T01:14:55.957-08:00</updated><category term='alpha blending foliage pure black rock studio'/><title type='text'>GPU Pro</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://gpupro.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://gpupro.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Wolfgang Engel</name><uri>http://www.blogger.com/profile/11031097395025597662</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_2YU3pmPHKN4/S33Rp8uu1TI/AAAAAAAAAd0/uE4Hw49vwCs/S220/n579488995_8879.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>17</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-68005766611026061.post-6255971134987768721</id><published>2010-06-21T00:11:00.000-07:00</published><updated>2010-06-21T00:11:41.648-07:00</updated><title type='text'>AK Peters GPU Pro Source code website available</title><content type='html'>The accompanying source code page for the book GPU Pro is now available at&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.akpeters.com/gpupro/"&gt;http://www.akpeters.com/gpupro/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;All the source code is available from there and the Table of Content from the book. As you can see in the TOC the book ended up with 709 colorful pages that will stimulate your retina and brain.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/68005766611026061-6255971134987768721?l=gpupro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gpupro.blogspot.com/feeds/6255971134987768721/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://gpupro.blogspot.com/2010/06/ak-peters-gpu-pro-source-code-website.html#comment-form' title='20 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/6255971134987768721'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/6255971134987768721'/><link rel='alternate' type='text/html' href='http://gpupro.blogspot.com/2010/06/ak-peters-gpu-pro-source-code-website.html' title='AK Peters GPU Pro Source code website available'/><author><name>Wolfgang Engel</name><uri>http://www.blogger.com/profile/11031097395025597662</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_2YU3pmPHKN4/S33Rp8uu1TI/AAAAAAAAAd0/uE4Hw49vwCs/S220/n579488995_8879.jpg'/></author><thr:total>20</thr:total></entry><entry><id>tag:blogger.com,1999:blog-68005766611026061.post-3213548257377933546</id><published>2010-05-01T23:36:00.000-07:00</published><updated>2010-05-01T23:59:25.516-07:00</updated><title type='text'>Stylized Rendering in Spore</title><content type='html'>Dear GPU Pro Blog,&lt;br /&gt;In chapter 9.1 Stylized Rendering in Spore, we spill the details about Spore's scriptable "filter chain" compositing system. We believe such a system is indispensable for any engine that supports deferred shading and discuss our design and final implementation. We also show how the system can be used to generate a bunch of NPR-esque visual styles that are available as cheats in the game.&lt;br /&gt;&lt;br /&gt;Here is an oil painting effect done with the system:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_-1mX3Yn9bK4/S90hU07TaBI/AAAAAAAAAT8/Q8afZNtEOzo/s1600/screen1-1.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px; height: 239px;" src="http://2.bp.blogspot.com/_-1mX3Yn9bK4/S90hU07TaBI/AAAAAAAAAT8/Q8afZNtEOzo/s320/screen1-1.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5466562164386129938" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here's a crayon rendering done with the system:&lt;br /&gt;&lt;div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_-1mX3Yn9bK4/S90hu3p1MhI/AAAAAAAAAUE/r4ih283268Q/s1600/crayonhouse.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px; height: 164px;" src="http://4.bp.blogspot.com/_-1mX3Yn9bK4/S90hu3p1MhI/AAAAAAAAAUE/r4ih283268Q/s320/crayonhouse.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5466562611794752018" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For more, check out our chapter!&lt;br /&gt;&lt;a href="http://www.shalinshodhan.com/"&gt;Shalin Shodhan&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.andrewwillmott.com/"&gt;Andrew Willmott&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/68005766611026061-3213548257377933546?l=gpupro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gpupro.blogspot.com/feeds/3213548257377933546/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://gpupro.blogspot.com/2010/05/stylized-rendering-in-spore.html#comment-form' title='9 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/3213548257377933546'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/3213548257377933546'/><link rel='alternate' type='text/html' href='http://gpupro.blogspot.com/2010/05/stylized-rendering-in-spore.html' title='Stylized Rendering in Spore'/><author><name>DangerousYams</name><uri>http://www.blogger.com/profile/08833821668087270642</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_-1mX3Yn9bK4/SVFdslKXYBI/AAAAAAAAAJs/PQl8z7kw3Mg/S220/me.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_-1mX3Yn9bK4/S90hU07TaBI/AAAAAAAAAT8/Q8afZNtEOzo/s72-c/screen1-1.jpg' height='72' width='72'/><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-68005766611026061.post-6232624348652053326</id><published>2010-05-01T08:58:00.000-07:00</published><updated>2010-05-02T09:02:26.855-07:00</updated><title type='text'>Polygonal-Functional Hybrids for Computer Animation and Games</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_X5JK6gdG4-U/S9xQEr9omCI/AAAAAAAAC5I/AUD6Xo1mr1M/s1600/conv-gpu-shot.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 187px;" src="http://1.bp.blogspot.com/_X5JK6gdG4-U/S9xQEr9omCI/AAAAAAAAC5I/AUD6Xo1mr1M/s400/conv-gpu-shot.jpg" alt="" id="BLOGGER_PHOTO_ID_5466332089171875874" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I am Denis Kravtsov, a PhD student at the National Centre for Computer Animation at Bournemouth University, UK. Me and my colleagues present an approach utilising hybrid models, combining together both polygonal and Function Representation models. We perform model evaluation and rendering entirely on the GPU using NVidia CUDA SDK. Our approach allows us to produce animations involving dramatic changes of the shape (e.g. metamorphosis, mimicked viscoelastic behaviour, character modifications etc) and interactively create complex shapes with changing topology in short times.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/68005766611026061-6232624348652053326?l=gpupro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gpupro.blogspot.com/feeds/6232624348652053326/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://gpupro.blogspot.com/2010/05/i-am-denis-kravtsov-phd-student-at.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/6232624348652053326'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/6232624348652053326'/><link rel='alternate' type='text/html' href='http://gpupro.blogspot.com/2010/05/i-am-denis-kravtsov-phd-student-at.html' title='Polygonal-Functional Hybrids for Computer Animation and Games'/><author><name>Denis</name><uri>http://www.blogger.com/profile/16941545328062149008</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_X5JK6gdG4-U/S9xQEr9omCI/AAAAAAAAC5I/AUD6Xo1mr1M/s72-c/conv-gpu-shot.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-68005766611026061.post-5383777682276947589</id><published>2010-03-12T08:27:00.000-08:00</published><updated>2010-03-12T08:27:21.766-08:00</updated><title type='text'>AK Peters Website</title><content type='html'>You can find GPU Pro on AK Peters website &lt;a href="http://www.akpeters.com/product.asp?ProdCode=4728"&gt;here&lt;/a&gt;. There will be additional material on this website as well. Please bookmark this page :-)&lt;br /&gt;&lt;br /&gt;BTW: the release date is in May.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/68005766611026061-5383777682276947589?l=gpupro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gpupro.blogspot.com/feeds/5383777682276947589/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://gpupro.blogspot.com/2010/03/ak-peters-website.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/5383777682276947589'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/5383777682276947589'/><link rel='alternate' type='text/html' href='http://gpupro.blogspot.com/2010/03/ak-peters-website.html' title='AK Peters Website'/><author><name>Wolfgang Engel</name><uri>http://www.blogger.com/profile/11031097395025597662</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_2YU3pmPHKN4/S33Rp8uu1TI/AAAAAAAAAd0/uE4Hw49vwCs/S220/n579488995_8879.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-68005766611026061.post-8223809666335185864</id><published>2010-02-27T10:24:00.001-08:00</published><updated>2010-02-27T10:24:55.849-08:00</updated><title type='text'>GPU Pro: Table of Content</title><content type='html'>&lt;div class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-size: 12.0pt; line-height: 115%;"&gt;Section 1 Mathematics&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="MsoListParagraphCxSpFirst" style="margin-left: .25in; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -.25in;"&gt;&lt;span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"&gt;&lt;span style="mso-list: Ignore;"&gt;1.1&lt;span style="font: 7.0pt &amp;quot;Times New Roman&amp;quot;;"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;GPU Color quantization by Chi Sing Leung, Tze-Yui Ho and Yi Xiao&lt;/div&gt;&lt;div class="MsoListParagraphCxSpLast" style="margin-left: .25in; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -.25in;"&gt;&lt;span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"&gt;&lt;span style="mso-list: Ignore;"&gt;1.2&lt;span style="font: 7.0pt &amp;quot;Times New Roman&amp;quot;;"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Visualize Your Shadow Map Techniques by Fan Zhang, Chong Zhao and Adrian Egli&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-size: 12.0pt; line-height: 115%;"&gt;Section 2 Geometry Manipulation&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;2.1 As-Simple-As Possible Tessellation for Interactive Applications by Tamy Boubekeur&lt;/div&gt;&lt;div class="MsoNormal"&gt;2.2 Rule-based Geometry Synthesis in Real-time by Milan Magdics and Gergely Klar&lt;/div&gt;&lt;div class="MsoNormal"&gt;2.3 GPU-based NURBS Geometry Evaluation and Rendering by Graham Hemingway&lt;/div&gt;&lt;div class="MsoNormal"&gt;2.4 Polygonal-Functional Hybrids for Computer Animation and Games by D. Kravtsov, O. Fryazinov, V. Adzhiev, A. Pasko, P. Comninos&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-size: 12.0pt; line-height: 115%;"&gt;Section 3 Rendering Techniques&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;3.1 Quad-tree Displacement Mapping with Height Blending by Michał Drobot&lt;/div&gt;&lt;div class="MsoNormal"&gt;3.2 NPR effects using the Geometry Shader by Pedro Hermosilla and Pere-Pau Vazquez&lt;/div&gt;&lt;div class="MsoNormal"&gt;3.3 Alpha Blending as a Post-Process by Benjamin Hathaway&lt;/div&gt;&lt;div class="MsoNormal"&gt;3.4 Virtual Texture Mapping 101 by Matthaus G. Chajdas, Christian Eisenacher, Marc Stamminger, Sylvain Lefebvre&lt;/div&gt;&lt;div class="MsoNormal"&gt;3.5 Volume Decals by Emil Persson&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-size: 12.0pt; line-height: 115%;"&gt;Section 4 Global Illumination&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;4.1 Fast, Stencil-Based Multiresolution Splatting for Indirect Illumination by Chris Wyman, Greg Nichols and Jeremy Shopf&lt;/div&gt;&lt;div class="MsoNormal"&gt;4.2 Screen-Space Directional Occlusion by Thorsten Grosch and Tobias Ritschel&lt;/div&gt;&lt;div class="MsoNormal"&gt;4.3 Real-time multi-bounce ray-tracing with geometry impostors by Peter Dancsik and Laszlo Szecsi&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-size: 12.0pt; line-height: 115%;"&gt;Section 5 Image Space&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;5.1 Anisotropic Kuwahara Filtering on the GPU by Jan Eric Kyprianidis, Henry Kang and Jürgen Döllner&lt;/div&gt;&lt;div class="MsoNormal"&gt;5.2 Edge Anti-aliasing by Post-Processing by Hugh Malan&lt;/div&gt;&lt;div class="MsoNormal"&gt;5.3 Environment Mapping with Floyd-Steinberg Halftoning by Laszlo Szirmay-Kalos, Laszlo Szecsi, and&lt;/div&gt;&lt;div class="MsoNormal"&gt;Anton Penzov&lt;/div&gt;&lt;div class="MsoNormal"&gt;5.4 Hierarchical Item Buffers for Granular Occlusion Culling by Thomas Engelhardt and Carsten Dachsbacher&lt;/div&gt;&lt;div class="MsoNormal"&gt;5.5 Realistic Depth-of-Field in Post-Production by David Illes and Peter Horvath&lt;/div&gt;&lt;div class="MsoNormal"&gt;5.6 Real-Time Screen Space Cloud Lighting by Kaori Kubota&lt;/div&gt;&lt;div class="MsoNormal"&gt;5.7 Screen-Space Subsurface Scattering by Jorge Jimenez and Diego Gutierrez&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-size: 12.0pt; line-height: 115%;"&gt;Section 6 Handheld Devices&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;6.1 Migration to OpenGL ES 2.0 by Ken Catterall&lt;/div&gt;&lt;div class="MsoNormal"&gt;6.2 Touchscreen-based user interaction by Andrea Bizzotto&lt;/div&gt;&lt;div class="MsoNormal"&gt;6.3 iPhone 3GS Graphics Development and Optimization Strategies by Andrew Senior&lt;/div&gt;&lt;div class="MsoNormal"&gt;6.4 Optimizing a 3D UI Engine for Mobile Devices by Hyunwoo Ki&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-size: 12.0pt; line-height: 115%;"&gt;Section 7 Shadows&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;7.1 Fast Conventional Shadow Filtering by Holger Gruen&lt;/div&gt;&lt;div class="MsoNormal"&gt;7.2 Hybrid Min-MaxPlane-Based by Holger Gruen&lt;/div&gt;&lt;div class="MsoNormal"&gt;7.3 Shadow Mapping for Omni-Directional Light Using Tetrahedron Mapping by Hung-Chien Liao&lt;/div&gt;&lt;div class="MsoNormal"&gt;7.4 Screen Space Soft Shadows by Jesus Gumbau, Miguel Chover and Mateu Sbert&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-size: 12.0pt; line-height: 115%;"&gt;Section 8 3D Engine Design&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;8.1 Multi-Fragment Effects on the GPU using Bucket Sort by Meng-Cheng Huang, Fang Liu, Xue-Hui Liu&lt;/div&gt;&lt;div class="MsoNormal"&gt;and En-Hua Wu&lt;/div&gt;&lt;div class="MsoNormal"&gt;8.2 Parallelized Light Pre-Pass Rendering with the Cell Broadband Engine™ by Steven Tovey and Stephen McAuley&lt;/div&gt;&lt;div class="MsoNormal"&gt;8.3 Porting code between Direct3D9 and OpenGL 2.0 by Wojciech Sterna&lt;/div&gt;&lt;div class="MsoNormal"&gt;8.4 Practical Thread Rendering for DirectX 9 by David Pangerl&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-size: 12.0pt; line-height: 115%;"&gt;Section 9 Game Postmortems&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;9.1 Stylized Rendering in Spore by Shalin Shodhan and Andrew Willmott&lt;/div&gt;&lt;div class="MsoNormal"&gt;9.2 Rendering Techniques in Call of Juarez: Bound in Blood by Paweł Rohleder and Maciej Jamrozik&lt;/div&gt;&lt;div class="MsoNormal"&gt;9.3 Making it large, beautiful, fast and consistent – Lessons learned developing Just Cause 2 by Emil Persson&lt;/div&gt;&lt;div class="MsoNormal"&gt;9.4 Destructible Volumetric Terrain by Marek Rosa&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-size: 12.0pt; line-height: 115%;"&gt;Section 10 Beyond Pixels &amp;amp; Triangles&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;10.1 Parallelized Implementation of Universal Visual Computer by Tze-Yui Ho, Ping-Man Lam and Chi-Sing Leung&lt;/div&gt;&lt;div class="MsoNormal"&gt;10.2 Accelerating Virtual Texturing using CUDA by Charles-Frederik Hollemeersch, Bart Pieters,&lt;/div&gt;&lt;div class="MsoNormal"&gt;Peter Lambert, and Rik Van de Walle&lt;/div&gt;&lt;div class="MsoNormal"&gt;10.3 Efficient Rendering of Highly Detailed Volumetric Scenes With GigaVoxels by Cyril Crassin, Fabrice Neyret, Miguel Sainz, and Elmar Eisemann&lt;/div&gt;&lt;div class="MsoNormal"&gt;10.4 Spatial Binning on the GPU by Christopher Oat, Joshua Barczak and Jeremy Shopf&lt;/div&gt;&lt;div class="MsoNormal"&gt;10.5 Real-Time Interaction between Particles and Dynamic Mesh on GPU by Vlad Alexandrov&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/68005766611026061-8223809666335185864?l=gpupro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gpupro.blogspot.com/feeds/8223809666335185864/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://gpupro.blogspot.com/2010/02/gpu-pro-table-of-content.html#comment-form' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/8223809666335185864'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/8223809666335185864'/><link rel='alternate' type='text/html' href='http://gpupro.blogspot.com/2010/02/gpu-pro-table-of-content.html' title='GPU Pro: Table of Content'/><author><name>Wolfgang Engel</name><uri>http://www.blogger.com/profile/11031097395025597662</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_2YU3pmPHKN4/S33Rp8uu1TI/AAAAAAAAAd0/uE4Hw49vwCs/S220/n579488995_8879.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-68005766611026061.post-2432185409165839452</id><published>2010-02-20T12:05:00.001-08:00</published><updated>2010-02-21T18:41:45.544-08:00</updated><title type='text'>GPU Pro 2: Call for Authors</title><content type='html'>After the tremendous success of the first seven entries to the ShaderX book series, and the upcoming success of the GPU Pro book (see below), we are looking for authors for GPU Pro 2.&lt;br /&gt;&lt;br /&gt;The upcoming book will cover advanced rendering techniques that run on the DirectX and/or OpenGL run-time or any other run-time with any language available. It will include topics on: Geometry Manipulation; Rendering Techniques; Handheld Devices Programming; Effects in Image Space; Shadows; 3D Engine Design; Graphics Related Tools; Environmental Effects and a dedicated section on mathematics used in graphics programming.&lt;br /&gt;&lt;br /&gt;Proposals are due by May 17th, 2010. Please send them to wolf at shaderx.com. An example proposal, writing guidelines and a FAQ can be downloaded from &lt;a href="http://gpupro2.blogspot.com/"&gt;http://gpupro2.blogspot.com/&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/68005766611026061-2432185409165839452?l=gpupro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gpupro.blogspot.com/feeds/2432185409165839452/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://gpupro.blogspot.com/2010/02/gpu-pro-2-call-for-authors.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/2432185409165839452'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/2432185409165839452'/><link rel='alternate' type='text/html' href='http://gpupro.blogspot.com/2010/02/gpu-pro-2-call-for-authors.html' title='GPU Pro 2: Call for Authors'/><author><name>Wolfgang Engel</name><uri>http://www.blogger.com/profile/11031097395025597662</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_2YU3pmPHKN4/S33Rp8uu1TI/AAAAAAAAAd0/uE4Hw49vwCs/S220/n579488995_8879.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-68005766611026061.post-1398793629715977114</id><published>2010-02-20T12:04:00.001-08:00</published><updated>2010-02-20T12:04:40.416-08:00</updated><title type='text'>GPU Pro on its way to the printer</title><content type='html'>Finally the book is on its way to the printer. It can be pre-ordered at &lt;a href="http://www.amazon.com/GPU-Pro-Advanced-Rendering-Techniques/dp/1568814720/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1266696252&amp;sr=8-1"&gt;Amazon&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/68005766611026061-1398793629715977114?l=gpupro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gpupro.blogspot.com/feeds/1398793629715977114/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://gpupro.blogspot.com/2010/02/gpu-pro-on-its-way-to-printer.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/1398793629715977114'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/1398793629715977114'/><link rel='alternate' type='text/html' href='http://gpupro.blogspot.com/2010/02/gpu-pro-on-its-way-to-printer.html' title='GPU Pro on its way to the printer'/><author><name>Wolfgang Engel</name><uri>http://www.blogger.com/profile/11031097395025597662</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_2YU3pmPHKN4/S33Rp8uu1TI/AAAAAAAAAd0/uE4Hw49vwCs/S220/n579488995_8879.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-68005766611026061.post-3601630123959366238</id><published>2009-12-20T09:00:00.000-08:00</published><updated>2010-04-12T13:18:40.898-07:00</updated><title type='text'>Anisotropic Kuwahara Filtering on the GPU</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_r3yDdpIRyqU/S8N776mXTxI/AAAAAAAABHA/t3HnlnDnPy0/s1600/akf-gpupro.png"&gt;&lt;img style="float: right; margin: 0pt 0pt 10px 10px; cursor: pointer; width: 256px; height: 192px;" src="http://4.bp.blogspot.com/_r3yDdpIRyqU/S8N776mXTxI/AAAAAAAABHA/t3HnlnDnPy0/s320/akf-gpupro.png" alt="" id="BLOGGER_PHOTO_ID_5459343442575838994" border="0" /&gt;&lt;/a&gt;We are &lt;a href="http://www.kyprianidis.com/"&gt;Jan Eric Kyprianidis&lt;/a&gt; (Hasso-Plattner-Institut, Germany) and &lt;a href="http://www.cs.umsl.edu/%7Ekang/"&gt;Henry Kang&lt;/a&gt; (University of Missouri, St. Louis, USA). In this chapter we present a GPU implementation of the &lt;a href="http://www.kyprianidis.com/pg2009.html"&gt;anisotropic Kuwahara  filter&lt;/a&gt;. The anisotropic Kuwahara filter is a generalization of the  Kuwahara filter that avoids artifacts by adapting shape, scale and  orientation of the filter to the local structure of the input. Due to  this adaption, directional image features are better preserved and  emphasized. This results in overall sharper edges and a more  feature-abiding painterly effect. Unlike existing nonlinear smoothing filters, the anisotropic Kuwahara filter is robust against high-contrast noise and avoids overblurring in low-contrast areas, providing a consistent level of abstraction across the image. It also ensures outstanding temporal coherence in video abstraction, even with per-frame filtering.&lt;br /&gt;&lt;p style="margin: 0px; text-indent: 0px;"&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/68005766611026061-3601630123959366238?l=gpupro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/3601630123959366238'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/3601630123959366238'/><link rel='alternate' type='text/html' href='http://gpupro.blogspot.com/2009/12/anisotropic-kuwahara-filtering-on-gpu.html' title='Anisotropic Kuwahara Filtering on the GPU'/><author><name>Jan Eric Kyprianidis</name><uri>http://www.blogger.com/profile/15659230766516820620</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_r3yDdpIRyqU/S77Mz0GhXXI/AAAAAAAABGc/9GgNYNXrmlo/S220/jkyprian-photo_100x100.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_r3yDdpIRyqU/S8N776mXTxI/AAAAAAAABHA/t3HnlnDnPy0/s72-c/akf-gpupro.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-68005766611026061.post-7361217873627072328</id><published>2009-12-13T10:52:00.000-08:00</published><updated>2009-12-13T11:46:56.695-08:00</updated><title type='text'>Making it large, beautiful, fast and consistent – Lessons learned developing Just Cause 2</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_gRtPT5yd1ro/SyVEpC-HNcI/AAAAAAAAABA/81VhsE2ebME/s1600-h/JC2.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 180px;" src="http://3.bp.blogspot.com/_gRtPT5yd1ro/SyVEpC-HNcI/AAAAAAAAABA/81VhsE2ebME/s320/JC2.jpg" alt="" id="BLOGGER_PHOTO_ID_5414809598945605058" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: right;"&gt;&lt;br /&gt;&lt;/div&gt;My name is Emil Persson and I'm working as a graphics programmer at Avalanche Studios. This article (with potentially the longest title in the book) covers some of the rendering technique we used in Just Cause 2. Some of highlights include:&lt;br /&gt;&lt;br /&gt;Our dynamic lights - Instead of moving to deferred shading we come up with a solution for having a large number of dynamic lights without multi-passing or increasing the draw calls.&lt;br /&gt;&lt;br /&gt;Our shadowing system - A shadowing solution that scales well to large distances. The practical problems we tackled and the extra features we added.&lt;br /&gt;&lt;br /&gt;A cross-platform interface for rendering. The advantages of having one, and how we crammed DX10 into a common interface with DX9 consoles and maintained good performance.&lt;br /&gt;&lt;br /&gt;Ambient occlusion volumes - Our solution to ambient occlusion from dynamic objects.&lt;br /&gt;&lt;br /&gt;Particle trimming - How we doubled performance of particle and cloud rendering at no visual loss.&lt;br /&gt;&lt;br /&gt;Cross platform consistency issues and how we dealt with them.&lt;br /&gt;&lt;br /&gt;Floating point precision problems we experienced due to our huge world and how we fixed it.&lt;br /&gt;&lt;br /&gt;Hope you the enjoy article and hope you play the game when it is released on March 23.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/68005766611026061-7361217873627072328?l=gpupro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gpupro.blogspot.com/feeds/7361217873627072328/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://gpupro.blogspot.com/2009/12/making-it-large-beautiful-fast-and.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/7361217873627072328'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/7361217873627072328'/><link rel='alternate' type='text/html' href='http://gpupro.blogspot.com/2009/12/making-it-large-beautiful-fast-and.html' title='Making it large, beautiful, fast and consistent – Lessons learned developing Just Cause 2'/><author><name>Humus</name><uri>http://www.blogger.com/profile/17961459500805203998</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_gRtPT5yd1ro/Sr-BY8oDWmI/AAAAAAAAAAM/KliraLXb4U0/S220/Humus2crop.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_gRtPT5yd1ro/SyVEpC-HNcI/AAAAAAAAABA/81VhsE2ebME/s72-c/JC2.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-68005766611026061.post-473747754569839840</id><published>2009-11-04T02:20:00.001-08:00</published><updated>2009-11-04T02:28:21.494-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='alpha blending foliage pure black rock studio'/><title type='text'>Alpha Blending as a Post-Process</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_YNgSqMcS1IQ/SvFWHv6PSUI/AAAAAAAAAG4/bz4O6cfyvGg/s1600-h/Final+Image.bmp"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 180px;" src="http://1.bp.blogspot.com/_YNgSqMcS1IQ/SvFWHv6PSUI/AAAAAAAAAG4/bz4O6cfyvGg/s320/Final+Image.bmp" alt="" id="BLOGGER_PHOTO_ID_5400192119313746242" border="0" /&gt;&lt;/a&gt;&lt;p style="font-family: arial;" class="MsoNormal"&gt;My name is Benjamin Hathaway, a senior graphics programmer at Black Rock Studio.  In the article presented I will explain a novel approach to the rendering of foliage (and other alpha-test renderings) which was developed for our 2008 title &lt;span style="font-style: italic;"&gt;Pure&lt;/span&gt;. &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;The technique (Screen-Space Alpha Masking) is a cross-platform solution that enables the rendering of thousands (or millions) of apparently alpha-blended foliage polygons without the need for any prior depth sorting, using no more than two draw-calls and a full-screen post-process.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/68005766611026061-473747754569839840?l=gpupro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gpupro.blogspot.com/feeds/473747754569839840/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://gpupro.blogspot.com/2009/11/alpha-blending-as-post-process.html#comment-form' title='10 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/473747754569839840'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/473747754569839840'/><link rel='alternate' type='text/html' href='http://gpupro.blogspot.com/2009/11/alpha-blending-as-post-process.html' title='Alpha Blending as a Post-Process'/><author><name>Benjamin Hathaway</name><uri>http://www.blogger.com/profile/01331452212673220734</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_YNgSqMcS1IQ/SsCEoV5oEHI/AAAAAAAAAGU/6JdjguvtLtI/S220/Me.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_YNgSqMcS1IQ/SvFWHv6PSUI/AAAAAAAAAG4/bz4O6cfyvGg/s72-c/Final+Image.bmp' height='72' width='72'/><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-68005766611026061.post-6719755858531699243</id><published>2009-10-29T01:20:00.000-07:00</published><updated>2009-10-29T01:36:31.601-07:00</updated><title type='text'>Fast Conventional Shadow Filtering</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_HL9loHpzG7M/SulT6gfqa3I/AAAAAAAAAA4/-Y0hrUN77uc/s1600-h/Untitled.jpg"&gt;&lt;img style="MARGIN: 0px 0px 10px 10px; WIDTH: 320px; FLOAT: right; HEIGHT: 201px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5397937893000506226" border="0" alt="" src="http://4.bp.blogspot.com/_HL9loHpzG7M/SulT6gfqa3I/AAAAAAAAAA4/-Y0hrUN77uc/s320/Untitled.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;My name is Holger Grün. I do work within the European GPU ISV relations team of AMD. If you want to know how to drastically reduce the number of texture operations for conventional shdaow map filtering you should read my article. With the methods described in the article one can evaluate shadow map filters defined by a separable weights matrix in only (N/2)x(N/2) texture operations. A filter that does consider 8x8 visibility samples would usually be carried out using 49 PCF operations but now only 16 PCF operations are necessary. The article further describes techniques for fast shadow filtering using non-separable weight matrices and presents two usecases for these techniques. &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/68005766611026061-6719755858531699243?l=gpupro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gpupro.blogspot.com/feeds/6719755858531699243/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://gpupro.blogspot.com/2009/10/fast-conventional-shadow-filtering.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/6719755858531699243'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/6719755858531699243'/><link rel='alternate' type='text/html' href='http://gpupro.blogspot.com/2009/10/fast-conventional-shadow-filtering.html' title='Fast Conventional Shadow Filtering'/><author><name>Holger Gruen</name><uri>http://www.blogger.com/profile/16151599020509400429</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_HL9loHpzG7M/SulOLqr0lYI/AAAAAAAAAAU/Jks2VZNCgRo/S220/Holger.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_HL9loHpzG7M/SulT6gfqa3I/AAAAAAAAAA4/-Y0hrUN77uc/s72-c/Untitled.jpg' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-68005766611026061.post-5423389139707460326</id><published>2009-10-28T06:12:00.000-07:00</published><updated>2009-10-28T06:46:14.973-07:00</updated><title type='text'>As-Simple-As Possible Tessellation for Interactive Applications</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_F6d_ZwgA4tw/SuhKh-r9DwI/AAAAAAAAArI/6FL0GUtPslY/s1600-h/phong-tessellation.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 200px; height: 140px;" src="http://3.bp.blogspot.com/_F6d_ZwgA4tw/SuhKh-r9DwI/AAAAAAAAArI/6FL0GUtPslY/s200/phong-tessellation.png" alt="" id="BLOGGER_PHOTO_ID_5397646101027032834" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;My name is &lt;a href="http://www.telecom-paristech.fr/%7Eboubek"&gt;Tamy Boubekeur&lt;/a&gt;, Ph.D in computer science. I am Associate Professor at &lt;a href="http://www.telecom-paristech.fr/en/"&gt;Telecom ParisTech&lt;/a&gt; within the &lt;a href="http://www.paristech.fr/en/index.html"&gt;Paris Institute of Technology&lt;/a&gt; (France) where I lead the research activities in Computer Graphics.&lt;br /&gt;In this chapter, I describe and extend the &lt;a href="http://www.telecom-paristech.fr/%7Eboubek/papers/PhongTessellation/"&gt;Phong Tessellation&lt;/a&gt; operator, a simple and efficient way to define curved geometry from flat polygons. This operator is local, defined per-polygon using only vertex position and normal vectors and does not require to generate any explicit patch. It completes Phong normal interpolation in locations where curved geometry is critical to hide polygonization artifacts (silhouette, interior contours) . I extend the original operator to the case of quads, making it compatible with triangle, quad and tri-quad meshes. This technique can be implemented on today's GPUs using &lt;a href="http://hal.archives-ouvertes.fr/inria-00260838/en/"&gt;uniform&lt;/a&gt; or &lt;a href="http://hal.archives-ouvertes.fr/inria-00260825/en/"&gt;adaptive instanced tessellation&lt;/a&gt; as well as on future DX11 graphics architectures using the &lt;span style="font-style: italic;"&gt;tessellator unit&lt;/span&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/68005766611026061-5423389139707460326?l=gpupro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gpupro.blogspot.com/feeds/5423389139707460326/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://gpupro.blogspot.com/2009/10/my-name-is-tamy-boubekeur-ph.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/5423389139707460326'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/5423389139707460326'/><link rel='alternate' type='text/html' href='http://gpupro.blogspot.com/2009/10/my-name-is-tamy-boubekeur-ph.html' title='As-Simple-As Possible Tessellation for Interactive Applications'/><author><name>Tamy Boubekeur</name><uri>http://www.blogger.com/profile/10632706838642550951</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_F6d_ZwgA4tw/SuhKh-r9DwI/AAAAAAAAArI/6FL0GUtPslY/s72-c/phong-tessellation.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-68005766611026061.post-5018389822125492203</id><published>2009-10-22T04:49:00.001-07:00</published><updated>2009-10-22T04:57:50.083-07:00</updated><title type='text'>Textured Silhouette Edges and Pencil Rendering on the Geometry Shader</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HS_vyVhWBMs/SuBIpHwrwBI/AAAAAAAAAAc/EJEaVkixADc/s1600-h/Conejo_dist_ajusted_2_2.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px; height: 200px;" src="http://2.bp.blogspot.com/_HS_vyVhWBMs/SuBIpHwrwBI/AAAAAAAAAAc/EJEaVkixADc/s200/Conejo_dist_ajusted_2_2.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5395392224884932626" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 9px/normal Helvetica; "&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;We are Pedro Hermosilla and Pere-Pau Vázquez of the MOVING graphics group at UPC in Barcelona. Our contribution to GPU Pro deals with Non-Photorrealistic Rendering on the GPU.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 9px/normal Helvetica; "&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 9px/normal Helvetica; "&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Silhouette detection is a key issue in many non-photorealistic rendering algorithms. Silhouettes play an important role in shape recognition because they provide one of the main cues for figure-to-ground distinction. However, since silhouettes are view-dependent, they must be computed per frame. &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;In this paper we present a couple of techniques that make use of the Geometry Shader in order to generate and texture silhouettes and to simulate pencil rendering in realtime. We provide both the insights of the technique and the source code of a sample application that makes use of the techniques to render a simple object.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:arial, serif;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style=" ;font-family:Georgia, serif;"&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 10px/normal Helvetica; "&gt;&lt;span class="Apple-style-span"  style="font-family:arial, serif;"&gt;&lt;span class="Apple-style-span"  style=" ;font-size:medium;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;span class="Apple-style-span"  style="font-family:arial, serif;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial, serif;"&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial, serif;"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/68005766611026061-5018389822125492203?l=gpupro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gpupro.blogspot.com/feeds/5018389822125492203/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://gpupro.blogspot.com/2009/10/textured-silhouette-edges-and-pencil.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/5018389822125492203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/5018389822125492203'/><link rel='alternate' type='text/html' href='http://gpupro.blogspot.com/2009/10/textured-silhouette-edges-and-pencil.html' title='Textured Silhouette Edges and Pencil Rendering on the Geometry Shader'/><author><name>Pere Pau</name><uri>http://www.blogger.com/profile/14553006197952899636</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_HS_vyVhWBMs/SuBIpHwrwBI/AAAAAAAAAAc/EJEaVkixADc/s72-c/Conejo_dist_ajusted_2_2.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-68005766611026061.post-8275985152115291828</id><published>2009-10-12T01:42:00.001-07:00</published><updated>2009-10-12T03:02:56.185-07:00</updated><title type='text'>Rendering Techniques in Call of Juarez: Bound in Blood</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_9jyW5zOJT6o/StL-BVJJ36I/AAAAAAAAAAU/2LqCAvmfRg4/s1600-h/CoJ2_thumb_02.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 200px; height: 150px;" src="http://3.bp.blogspot.com/_9jyW5zOJT6o/StL-BVJJ36I/AAAAAAAAAAU/2LqCAvmfRg4/s320/CoJ2_thumb_02.png" alt="" id="BLOGGER_PHOTO_ID_5391651002724769698" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I am Pawel Rohleder, 3D graphics programmer and researcher at &lt;a href="http://www.techland.pl/"&gt;Techland&lt;/a&gt;. Our contribution to GPU Pro discloses rendering techniques applied in &lt;a href="http://www.callofjuarez.com/"&gt;Call of Juarez: Bound in Blood&lt;/a&gt;, the Wild West FPS action game. The game depicts the wildest West ever through the story of Ray and Thomas McCall, two deadly gunslingers who are in the quest for the legendary gold of Juarez.&lt;br /&gt;&lt;br /&gt;The article goes through very detailed description of single game frame rendering process based on deferred shading method. It demonstrates the advanced lighting and shadowing techniques, adopted do complex, open-space virtual environments, combined with top-notch post-processing effects (SSAO, motion-blur, tone mapping) and natural phenomena visualizations (sky, clouds, water, rain).&lt;br /&gt;We also give the reader a short description of various core subsystems (like terrain, geometry, material management) which are the integral tool-kit enclosed in &lt;a href="http://en.wikipedia.org/wiki/Chrome_Engine"&gt;ChromeEngine4&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/68005766611026061-8275985152115291828?l=gpupro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gpupro.blogspot.com/feeds/8275985152115291828/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://gpupro.blogspot.com/2009/10/rendering-techniques-in-call-of-juarez.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/8275985152115291828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/8275985152115291828'/><link rel='alternate' type='text/html' href='http://gpupro.blogspot.com/2009/10/rendering-techniques-in-call-of-juarez.html' title='Rendering Techniques in Call of Juarez: Bound in Blood'/><author><name>Pawel Rohleder</name><uri>http://www.blogger.com/profile/16717846569496175774</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_9jyW5zOJT6o/StL-BVJJ36I/AAAAAAAAAAU/2LqCAvmfRg4/s72-c/CoJ2_thumb_02.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-68005766611026061.post-4288561834787666591</id><published>2009-10-07T06:39:00.000-07:00</published><updated>2009-10-07T06:51:22.831-07:00</updated><title type='text'>Virtual Texturing using CUDA</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_JSWhIz13rAo/SsycU5PFTEI/AAAAAAAAAAU/3MB4hKM0UDA/s1600-h/vtex_thumb.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 200px; height: 151px;" src="http://3.bp.blogspot.com/_JSWhIz13rAo/SsycU5PFTEI/AAAAAAAAAAU/3MB4hKM0UDA/s200/vtex_thumb.png" alt="" id="BLOGGER_PHOTO_ID_5389854736831040578" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I’m Charles-Fredrik Hollemeersch and am currently working as a researcher at &lt;a href="http://multimedialab.elis.ugent.be/gametech/"&gt;Multimedia Lab&lt;/a&gt;. Our contribution to GPU pro shows how virtual texturing can be accelerated using CUDA by offloading many tasks to the GPU. Virtual texturing is a promising technique to improve the visual quality of real-time rendering applications such as simulations and games. By selectively loading parts of the texture dataset, virtual texturing allows for higher resolution textures than possible with traditional techniques. However, this technique also adds a significant overhead to the renderer. First, there is the task of determining the working set of the current frame. Secondly, there is the need to upload and convert the streamed data.&lt;br /&gt;&lt;br /&gt;Luckily, these tasks lend themselves well to data-parallel execution on a GPU. In our chapter we will show how all these tasks can efficiently be executed on the GPU though a combination of CUDA and OpenGL based steps.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/68005766611026061-4288561834787666591?l=gpupro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gpupro.blogspot.com/feeds/4288561834787666591/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://gpupro.blogspot.com/2009/10/virtual-texturing-using-cuda.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/4288561834787666591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/4288561834787666591'/><link rel='alternate' type='text/html' href='http://gpupro.blogspot.com/2009/10/virtual-texturing-using-cuda.html' title='Virtual Texturing using CUDA'/><author><name>Charles Hollemeersch</name><uri>http://www.blogger.com/profile/17481552903059715489</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_JSWhIz13rAo/SsycU5PFTEI/AAAAAAAAAAU/3MB4hKM0UDA/s72-c/vtex_thumb.png' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-68005766611026061.post-3261893838737373569</id><published>2009-10-04T07:02:00.000-07:00</published><updated>2009-10-04T07:28:20.307-07:00</updated><title type='text'>Volume Decals</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_gRtPT5yd1ro/SsisulGIhLI/AAAAAAAAAAw/GESRUgrB2Wg/s1600-h/VolumeDecals.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 200px; height: 150px;" src="http://1.bp.blogspot.com/_gRtPT5yd1ro/SsisulGIhLI/AAAAAAAAAAw/GESRUgrB2Wg/s200/VolumeDecals.jpg" alt="" id="BLOGGER_PHOTO_ID_5388746870380594354" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;My name is Emil Persson (known on the web as &lt;a href="http://www.humus.name"&gt;Humus&lt;/a&gt;) and one of the articles I'm contributing is called &lt;span style="font-style: italic;"&gt;Volume Decals&lt;/span&gt;. It's a technique for rendering seamless decals properly wrapped around arbitrary geometry. This solves many of the common issues in traditional decal implementations, such as z-fighting, misalignment across geometric edges, non-trivial clipping, decals partly hanging in the air etc.&lt;br /&gt;&lt;br /&gt;The idea is to render decals as convex volumes and use the screen position and depth buffer to generate the texture coordinates to look up in a volume decal texture. The articles covers all the dirty implementation details as well as variations and expansions of the technique. Does a "blast shadow map" sound cool? Read all about it in the article. :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/68005766611026061-3261893838737373569?l=gpupro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gpupro.blogspot.com/feeds/3261893838737373569/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://gpupro.blogspot.com/2009/10/volume-decals.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/3261893838737373569'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/3261893838737373569'/><link rel='alternate' type='text/html' href='http://gpupro.blogspot.com/2009/10/volume-decals.html' title='Volume Decals'/><author><name>Humus</name><uri>http://www.blogger.com/profile/17961459500805203998</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_gRtPT5yd1ro/Sr-BY8oDWmI/AAAAAAAAAAM/KliraLXb4U0/S220/Humus2crop.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_gRtPT5yd1ro/SsisulGIhLI/AAAAAAAAAAw/GESRUgrB2Wg/s72-c/VolumeDecals.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-68005766611026061.post-1163081866089728362</id><published>2009-09-20T17:16:00.000-07:00</published><updated>2009-09-20T17:18:40.137-07:00</updated><title type='text'>GPU Pro - Advanced Rendering Techniques</title><content type='html'>The book looks fantastic! There will be more than 40 articles in full-color in the book. I already have several favourite articles. I will cover some of them in the next couple of months.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/68005766611026061-1163081866089728362?l=gpupro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gpupro.blogspot.com/feeds/1163081866089728362/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://gpupro.blogspot.com/2009/09/gpu-pro-advanced-rendering-techniques.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/1163081866089728362'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/68005766611026061/posts/default/1163081866089728362'/><link rel='alternate' type='text/html' href='http://gpupro.blogspot.com/2009/09/gpu-pro-advanced-rendering-techniques.html' title='GPU Pro - Advanced Rendering Techniques'/><author><name>Wolfgang Engel</name><uri>http://www.blogger.com/profile/11031097395025597662</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_2YU3pmPHKN4/S33Rp8uu1TI/AAAAAAAAAd0/uE4Hw49vwCs/S220/n579488995_8879.jpg'/></author><thr:total>1</thr:total></entry></feed>
