Non-photorealistic rendering

Slides:



Advertisements
Similar presentations
2.02A History of Animation 2.02 Develop Computer Animations.
Advertisements

Why is photorealism the aim? People paint! What is NPR? NPR issues NonPhotorealistic Rendering.
1GR2-00 GR2 Advanced Computer Graphics AGR Lecture 17 Radiosity - Conclusion Non-PhotoRealistic Rendering.
POST-PROCESSING SET09115 Intro Graphics Programming.
Non-photorealistic Rendering.  a longtime goal of graphics research has been to render a scene that is indistinguishable from a photograph of the scene.
Non-Photo Realistic Rendering Jian Huang CS594 Fall 2003 This set of slides are modified from the NPR Course during SIGGRAPH’2003.
Three-Dimensional Computer Animation Erli Ling. Introduction Animation Animation all moving imagery involves a sequence of still images played back quickly.
Rasterization and Ray Tracing in Real-Time Applications (Games) Andrew Graff.
17.1 Si31_2001 SI31 Advanced Computer Graphics AGR Lecture 17 Radiosity - Conclusion Non-PhotoRealistic Rendering.
Non-Photorealistic Rendering or More-Interesting Rendering (in a more positive sense) Presented by Adam Smith for CMPS160.
GLSL I Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts Director, Arts Technology Center University of New Mexico.
Computer-Generated Pen-and-Ink Illustration Georges Winkenbach and David H. Salesin University of Washington SIGGRAPH 1994.
Shading Languages By Markus Kummerer. Markus Kummerer 2 / 19 State of the Art Shading.
Non-Photorealistic Rendering Mario Costa Sousa Department of Computer Science University of Calgary Mario Costa Sousa Department of Computer Science University.
Animation Theory.
Non-Photorealistic Rendering - This is the attempt to make a realistic scene or object look as if it were hand drawn.
Week 14 - Wednesday.  What did we talk about last time?  Collision handling  Collision detection  Collision determination  Collision response  BSPs.
Post-rendering Cel Shading & Bloom Effect
V Obtained from a summer workshop in Guildford County July, 2014
MULTIMEDIA TECHNOLOGY SMM 3001 MEDIA - GRAPHICS. In this chapter how the computer creates, stores, and displays graphic images how the computer creates,
Animation.
Motion picture A film, also called a movie or motion picture, is a series of still images on a strip of plastic which, when run through a projector and.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
OpenGL Shading Language (Advanced Computer Graphics) Ernest Tatum.
FiiNaL ExAm by: cHUcKiiE. What is Computer Graphics? Computer graphics is a sub-field of computer science and is concerned with digitally synthesizing.
Lecture by: Martin Deschamps CSE 4431
1 Computer Graphics Week2 –Creating a Picture. Steps for creating a picture Creating a model Perform necessary transformation Lighting and rendering the.
COMPUTER GRAPHICS CSCI 375. What do I need to know?  Familiarity with  Trigonometry  Analytic geometry  Linear algebra  Data structures  OOP.
Advanced Computer Graphics Advanced Shaders CO2409 Computer Graphics Week 16.
GRAPHICS PIPELINE & SHADERS SET09115 Intro to Graphics Programming.
Non-Photorealistic Rendering Motivation: Much of the graphical imagery created is not photographic in nature Particularly in some domains: –Art –Animation.
3D animation is rendered clip of animated 3D objects in a 3D environment. An example: Examples of movies released in 3D are Toy Story, Cars, Shrek, Wall-E,
Week 10:Rendering 1. In the last lecture we saw how to model objects and represent them as wireframe models. Wire frame models depict the outer hull of.
Non-Photorealistic Rendering: Toon Shading David Luebke University of Virginia.
Chapter 6 Value and Texture. Goals Differentiate between the use of value and texture in illustrative art Get a handle on the various attributes of strokes.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Leonardo da Vinci: Light & Shadow Vocabulary. 1. Center : The middle point of anything. It is the same distance from the opposite. 2. Center of Interest.
“ Animation Through the Ages” Camelia McCallion. Main tasks What is computer animation? Hand drawn (cel) Flick books Animated cartoon Animation process.
Cel shading By jared brock.
A Very Brief Overview of Non-Photorealistic Rendering Conrad Albrecht-Buehler Graduate Thesis Seminar September 24, 2001.
What are shaders? In the field of computer graphics, a shader is a computer program that runs on the graphics processing unit(GPU) and is used to do shading.
Nonphotorealistic rendering Computational Photography, Bill Freeman Fredo Durand May 9, 2006 Drawing from: NPR Siggraph 1999 course, Green et al.
Painterly Rendering for Animation Introduction speaks of focus and detail –Small brush strokes focus and provide detail –Large strokes are abstract and.
Animation! The Horse in Motion (1878) by Eadweard Muybridge.
CDS 301 Fall, 2008 From Graphics to Visualization Chap. 2 Sep. 3, 2009 Jie Zhang Copyright ©
The NPR Assignment Everything is online off course web page List of papers: –Choose one –First to me gets the paper –Some pairings of tightly related.
DRAWING & PAINTING TECHNIQUES & STYLES. CROSS HATCHING Common with pen artists Show value with lines Quantity, thickness and spacing of the lines will.
3D Animation 1. Introduction Dr. Ashraf Y. Maghari Information Technology Islamic University of Gaza Ref. Book: The Art of Maya.
Introduction to Computer Graphics
Three-Dimensional Computer Animation
Shaders, part 2 alexandri zavodny.
Week 14 - Wednesday CS361.
Chapter 4:- Animation Eyad Alshareef Eyad Alshareef.
Scientific Visualization V106.04
Non-Photorealistic Rendering
Aspects of Game Rendering
A Look Into Photorealistic and Non-Photorealistic Rendering
Chapter 10 Computer Graphics
“Animation Through the Ages”
Non-Photorealistic Rendering
3D Graphics Rendering PPT By Ricardo Veguilla.
Stylized Environmental Rendering
Art Content by: Pam Mason Template Design by: Mark Geary
Interactive Computer Graphics
Guilford County SciVis V106.04
GLSL I Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts Director, Arts Technology Center University of New Mexico.
Introduction to Computer Graphics with WebGL
Cel Shading Jason McCollum.
ICG 2018 Fall Homework1 Guidance
Animation Techniques.
Presentation transcript:

Non-photorealistic rendering Marko Täht

Topics Rendering Photorealism Non-photorealistic rendering

Rendering Rendering is the process of generating an image from a 2D or 3D model by means of computer programs. Multiple models are collectively called a scene file. Scene file contains: geometry, viewpoint, texture, lighting and shading. Data in scene files is passed to rendering program to be processed and output as digital image or raster graphics. Rendering image from scene file is called graphics pipeline along rendering device.

Graphics pipeline Graphics pipeline or rendering pipeline refers to sequence of steps in order to make 2D raster representation of a 3D scene. https://en.wikipedia.org/wiki/Graphics_pipeline#Stages_of_the_graphics_pipeline

Photorealism

Photorealism is a genre of art that encompasses painting, drawing and other graphic media, in which an artist studies a photograph and then attempts to reproduce the image as realistically as possible in another medium. https://www.youtube.com/watch?v=NxXwfT3LeyE

Clay-render Final picture

“If photorealism is the holy grail of CG, then a photorealistic face Face made in blender “If photorealism is the holy grail of CG, then a photorealistic face must be the holy, HOLY grail.” http://www.blenderguru.com/articles/24-photorealistic-blender-renders/

Non-photorealistic rendering Non-photorealistic rendering (NPR) is an area of computer graphics that focuses on enabling a wide variety of expressive styles for digital art. It is inspired by artistic styles. In movies and video games NPR has appeared in form of “Toon shading”. Modern use of this is cel-shaded animation.

Paint brush

Technical drawings Photorealistic images not reasonable Give better overview Exploded view

Exploded view

Leonardo da Vinci Reciprocating motion machine

Wireframe Only edges are drawn Used in making models Visualizes the structure of object Simple and fast to calculate Often used when high- framerate is needed

Pen and ink Strokes - wavy lines of varying thickness Texture - collection of strokes Tone - lines of equal weight and spacing Outlines – Boundary line of the structure to separate it from background http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.116.7335&rep=rep1&type=pdf

Watercolor Suspension of pigment particles in water, binder and surfactant Each stroke needs fluid simulation Paper affects fluid flow http://grail.cs.washington.edu/projects/watercolor/paper_tiny.pdf

http://grail.cs.washington.edu/projects/watercolor/paper_tiny.pdf

Toon shading Also known as cel-shading Designed to make models look flat by using less shading color The name comes from cels (short for celluloid), the clear sheets of acetate, which are painted on for use in traditional 2D animation. Spongebob Squarepants season 4-8

Sobel filter Creates image emphasizing on edges. It is a discrete differentiation operator, computing an approximation of the gradient of the image intensity function. Operator is based on convolving the image with a small, separable, and integer-valued filter in the horizontal and vertical directions and is therefore relatively inexpensive in terms of computations. https://en.wikipedia.org/wiki/Sobel_operator

Why not in real life

Games that use cel-shader https://www.youtube.com/watch?v=tWVLDq661H Q

Borderlands

Antichamber

The Simpsons Game

Creating cel-shader Vertex shader: uniform vec3 lightDir; //Defined in world space varying float intensity; void main() { intensity = dot(lightDir, gl_Normal); gl_Position = ftransform(); }

Fragment shader: Sets the fragment color based on intensity varying float intensity; void main() { vec4 color; if (intensity > 0.95) color = vec4(1.0, 0.5, 0.5, 1.0); else if (intensity > 0.5) color = vec4(0.6, 0.3, 0.3, 1.0); else if (intensity > 0.25) color = vec4(0.4, 0.2, 0.2, 1.0); else color = vec4(0.2, 0.1, 0.1, 1.0); gl_FragColor = color; }

Result