<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>rendering | Zoel Shi</title><link>https://zoel.me/tag/rendering/</link><atom:link href="https://zoel.me/tag/rendering/index.xml" rel="self" type="application/rss+xml"/><description>rendering</description><generator>Source Themes Academic (https://sourcethemes.com/academic/)</generator><language>en-us</language><copyright>Zhengyuan Shi © 2019-2022</copyright><lastBuildDate>Tue, 16 Jun 2020 14:37:56 +0800</lastBuildDate><image><url>https://zoel.me/images/icon_huc5e51ec4f637a11235b1951bce8536fb_37065_512x512_fill_lanczos_center_2.png</url><title>rendering</title><link>https://zoel.me/tag/rendering/</link></image><item><title>Cartoon Water Rendering</title><link>https://zoel.me/project/cartoon-water-rendering/</link><pubDate>Tue, 16 Jun 2020 14:37:56 +0800</pubDate><guid>https://zoel.me/project/cartoon-water-rendering/</guid><description>&lt;p>The project is an implementation of modified &lt;strong>Cartoon Water Rendering with Foam and Surface Smoothing[1]&lt;/strong> using OpenGL. And the physical simulation of liquid is based on &lt;strong>Position Based Fluids[2]&lt;/strong> written in CUDA.&lt;/p>
&lt;h2 id="technical-introduce">Technical Introduce&lt;/h2>
&lt;p>&lt;a href="https://zhuanlan.zhihu.com/p/165653176">https://zhuanlan.zhihu.com/p/165653176&lt;/a>&lt;/p>
&lt;h2 id="dependencies">Dependencies&lt;/h2>
&lt;ul>
&lt;li>CUDA 10.2&lt;/li>
&lt;li>Visual Studio 2017&lt;/li>
&lt;li>GPU and driver support OpenGL 4.6&lt;/li>
&lt;/ul>
&lt;h2 id="run-the-demo">Run the Demo&lt;/h2>
&lt;p>keyboard shortcut&lt;/p>
&lt;ol>
&lt;li>&lt;code>spacebar&lt;/code>, Run the demo or Stop at some frame.&lt;/li>
&lt;li>&lt;code>m&lt;/code>, Sweep the box boundary or Stop the moving boundary.&lt;/li>
&lt;li>And you can use mouse to adjust the camera&amp;rsquo;s position or direction.&lt;/li>
&lt;/ol>
&lt;h2 id="features">Features&lt;/h2>
&lt;ul>
&lt;li>Imcompressible fluids simulation based on PBD[2].&lt;/li>
&lt;li>Screen space surface reconstruction based on point splatting[3].&lt;/li>
&lt;li>Cartoon water rendering[1].&lt;/li>
&lt;li>GPU particle neighbor searching using Hash table[5].&lt;/li>
&lt;/ul>
&lt;h2 id="gallery">Gallery&lt;/h2>
&lt;p>&lt;img src="img/sweep0.png" alt="">
&lt;img src="img/sweep2.png" alt="">
&lt;img src="img/sweep3.png" alt="">&lt;/p>
&lt;h2 id="references">References&lt;/h2>
&lt;p>[1] L.D.S.R. Neto, A.L. Apolinário, Cartoon Water Rendering with Foam and Surface Smoothing, Brazilian Symp. Games Digit. Entertain. SBGAMES. 2014-December (2014) 230–239. &lt;a href="https://doi.org/10.1109/SBGAMES.2014.25">https://doi.org/10.1109/SBGAMES.2014.25&lt;/a>.&lt;br>
[2] M. Macklin, M. Müller, Position based fluids, ACM Trans. Graph. 32 (2013) 1–5. &lt;a href="https://doi.org/10.1145/2461912.2461984">https://doi.org/10.1145/2461912.2461984&lt;/a>.&lt;br>
[3] W.J. Van Der Laan, S. Green, M. Sainz, Screen space fluid rendering with curvature flow, Proc. I3D 2009 2009 ACM SIGGRAPH Symp. Interact. 3D Graph. Games. 1 (2009) 91–98. &lt;a href="https://doi.org/10.1145/1507149.1507164">https://doi.org/10.1145/1507149.1507164&lt;/a>.&lt;br>
[4] D. Wolff, OpenGL 4.0 Shading Language Cookbook. Packt Publishing, Jul. 2011.&lt;br>
[5] S. Green, “Particle Simulation using CUDA,” cse.uaa.alaska.edu, no. September, pp. 1–12, 2013.&lt;br>
[6] OpenGL Projection Matrix &lt;a href="http://www.songho.ca/opengl/gl_projectionmatrix.html">http://www.songho.ca/opengl/gl_projectionmatrix.html&lt;/a>&lt;/p></description></item></channel></rss>