DOI QR코드

DOI QR Code

A Shader Technique that applies Noise Texture to Vertex Movement and Surface Texture Mapping of Polygon Mesh

폴리곤 메시의 정점 이동과 표면 텍스처 매핑에 노이즈 텍스처를 적용하는 쉐이더 기법

  • Hong, Minseok (Global School of Media, Soongsil University) ;
  • Park, Jinho (Global School of Media, Soongsil University)
  • 홍민석 (숭실대학교 미디어학부) ;
  • 박진호 (숭실대학교 미디어학부)
  • Received : 2021.01.04
  • Accepted : 2021.03.31
  • Published : 2021.04.20

Abstract

Particle and noise are effectively used to implement unspecific VFX like an explosion, magic. Particle can create freely but, The more usage, the higher CPU/GPU usage. This paper using polygon mesh that is hard to change but consumes fixed resources to overcome the demerit of particle and reduce CPU/GPU usage. Also, using shader, apply noise texture that is suitable unspecific pattern to vertex and surface texture mapping of polygon mesh for implement VFX in unity. As a result of experiment, shader applied sphere polygon mesh show 2~4ms CPU, 1~2ms GPU usage in profiler. Also It has been shown that shader can be used to implement unspecific VFX.

폭발, 마법 등 불특정한 시각효과를 구현하는데 파티클과 노이즈가 효과적으로 사용된다. 파티클은 자유롭게 제작할 수 있지만, 많이 사용될수록 CPU/GPU 사용률이 높아진다. 본 논문에서는 이러한 단점을 극복하기 위해 변경이 어렵지만, 정해진 자원을 소모하는 폴리곤 메시를 활용해 CPU/GPU 사용률을 줄인다. 그리고 쉐이더를 활용해 폴리곤 메시의 정점과 표면 텍스처 매핑에 불특정한 패턴을 가진 노이즈 텍스처를 적용하여 시각효과를 구현한다. 실험결과, 프로파일러에서 쉐이더를 적용한 구체 폴리곤 메시가 2~4ms CPU, 1~2m_s GPU 사용률을 보였고 쉐이더를 활용해 불특정한 시각효과를 구현할 수 있음을 보였다.

Keywords

References

  1. Cem Yuksel, Donald Henry House and John Christopher Keyser, "Wave particles", SIGGRAPH '07: ACM SIGGRAPH 2007 papers, 99-es, 2007.
  2. Alfred Russell Kent Fuller, Hari Krishnan, Karim Magdi Mahrous, Bernd Hamann and Kenneth I Joy, "Real-time procedural volumetric fire", I3D '07: Proceedings of the 2007 symposium on Interactive 3D graphics and games, 175-180, 2007.
  3. Mario Botsch, Mark Pauly, Lief Kobbelt, Pierre Alliez, Bruno Levy, Stephan Bischoff, Christian Rossl, "Geometric modeling based on polygonal meshes Video files associated with this course are available from the citation page", SIGGRAPH '07: ACM SIGGRAPH 2007 courses, 1-es, 2007.
  4. Michael McCool, Stefanus Du Toit, Tiberiu Popa, Bryan Chan and Kevin Moule, "Shader algebra", SIGGRAPH '04: ACM SIGGRAPH 2004 Papers, 787-795, 2004.
  5. "Noise Based Effects based on Unity 2", ArtStation, accessed November 17, 2020, https://gaph.artstation.com/projects/nY88y1
  6. "Texture Mapping", The University of Texas at Austin, accessed November 28, 2020, https://www.cs.utexas.edu/-fussell/courses/cs354-fall2015/lectures/lecture11.pdf
  7. Ajay Kumar Boyat and Brijendra Kumar Joshi, "A Review Paper: Noise Models in Digital Image Processing", Signal & Image Processing: An International Journal (SIPIJ) Vol.6, No.2, 63-75, 2015. https://doi.org/10.5121/sipij.2015.6206
  8. Ken Perlin, "An Image Synthesizer", ACM Siggraph Computer Graphics, 19(3), 287-296, 1985. https://doi.org/10.1145/325165.325247
  9. "Welcome to Unity" Unity Technologies, accessed September 10, 2020, https://unity.com/our-company
  10. "Noise-Texture-Particles", UnityList, last accessed September 21, 2020 ,https://unitylist.com/p/kbc/Noise-Texture-Particles
  11. "Perlin Noise", Ronja's Shader Tutorials, last modified September 15, 2018, accessed September 23, 2020, https://www.ronja-tutorials.com/2018/09/15/perlin-noise.html#2d-perlin-noise
  12. Zineng Tang, "Adaptive Aesthetic Photo Filter by Deep Learning", ICVARS '19: Proceedings of the 2019 3rd International Conference on Virtual and Augmented Reality Simulations, 67-72, 2019.
  13. "Animating UV Coordinates", Unreal Engine 4 Documentation, accessed February 17, 2021 https://docs.unrealengine.com/en-US/RenderingAndGraphics/Materials/HowTo/AnimatingUVCoords/index.html
  14. Jong-Hyun Kim, "Sprite Animation Based Fire Effects Using Spark Textures and Artificial Buoyancy Field", vol. 23, no. 10, Korean Society of Computer Information, 95-101, 2018.
  15. Michael McCool, Stefanus Du Toit, Tiberiu Popa, Byan Chan and Kevin Moule, "Shader Algebra", SIGGRAPH '04: ACM SIGGRAPH 2004 Papers, 787-795, 2004.
  16. "Physically-Based Shading at Disney", Walt Disney Animation Studios, 2012, accessed September 11, 2020, https://pdfs.semanticscholar.org/3f4b/29a0cc51f1ba8baaf99ac008f3acf18d04df.pdf
  17. "Writing vertex and fragment shaders", Unity Documentation, accessed September 12, 2020, https://docs.unity3d.com/Manual/SL-ShaderPrograms.html
  18. "tex2Dlod", Nvidia Developer Zone, accessed September 13, 2020, https://developer.download.nvidia.com/cg/tex2Dlod.html
  19. "Built-in shader variables", Unity Documentation, accessed September 13, 2020, https://docs.unity3d.com/kr/530/Manual/SL-UnityShaderVariables.html
  20. "tex2D", Nvidia Developer Zone, accessed September 17, 2020, https://developer.download.nvidia.com/cg/tex2D.html
  21. "Post-Processing" Unity Documentation, accessed November 19, 2020, https://docs.unity3d.com/Manual/PostProcessingOverview.html
  22. "Getting started with the Profiler window", Unity Documentation, accessed September 17, 2020, https://docs.unity3d.com/2018.4/Documentation/Manual/ProfilerWindow.html
  23. "100 Special Skills Effects Pack", Unity Asset Store, accessed October 7, 2020, https://assetstore.unity.com/packages/slug/171146
  24. "Noise Based Effects based on Unity", ArtStation, accessed November 17, 2020, https://gaph.artstation.com/projects/J9nnZa