3 0 2 4 OBJECTIVES: To grasp the fundamental knowledge of implementing Computer Graphics in 2D ∙ To get familiar with 3D Graphics To learn the process of implementation of Computer Graphics through Vulkan API To get familiarity with basic to advanced rendering techniques To acquaint oneself with common data structures and procedural graphics UNIT I UNIT I 2D GRAPHICS PROCESSING 9 Display devices, Computer Graphics APIs, 2D output Primitives, attributes of output primitives, 2D Transformations, Viewing – Clipping. UNIT II UNIT II 3D GRAPHICS PIPELINE 9 3D Primitives, 3D Object representations - Mesh Modeling, parametric curves and surfaces, coordinate systems, Viewing, 3D Transformations, 3D Viewing pipeline, Projections – Parallel, Perspective, Clipping in 3D UNIT III UNIT III VULKAN GRAPHICS API 9 Drawing Primitives, validation layers, resource management, Physical devices and queue families, logical devices and queues, Graphics pipeline, Input assembler, vertex shader, Tesselation, Geometry shader, Rasterization, Fragment shader, color blending. Vertex buffers, uniform buffers, Texture mapping, Depth buffering, Command buffer. UNIT IV UNIT IV RENDERING and GPU 9 Lighting and Shading, Visible Surface Detection, Applying Textures, The Graphics Rendering Pipeline, Ray Tracing, Ray Tracing Graphics Hardware (GPU), Global Illumination and path tracing, Radiosity, Sampling and filtering, physically based rendering, shadows, Environment mapping, Bump mapping, mipmaps, volume rendering, isosurfaces and marching Cubes, Rasterization UNIT V UNIT V DATA STRUCTURES AND PROCEDURAL GRAPHICS 9 Data Structures for Graphics – Triangle Mesh, Scene Graph, Spatial Data Structures, BSP Trees, Octrees Fractals, Particle Systems, point cloud, procedural textures, grammar-based models, Constructive Solid Geometry TOTAL: 45 PERIODS OUTCOMES: On Successful completion of the course, Students will be able to CO1:Implement 2D transformations and algorithms for generating primitives and attributes CO2:Solve problems in 3D transformations and viewing CO3:Implement and Render graphics using open source Vulkan API CO4:Implement rendering techniques and Use GPU based rendering CO5:Experiment with different procedural graphics and common data TEXT BOOKS: 1. Donald D. Hearn, M. Pauline Baker, Warren Carithers, “Computer Graphics with OpenGL”, Pearson Education, Fourth Edition, 2011. (UNIT-I, II)
2. Steve Marschner, Peter Shirley, “Fundamentals of Computer Graphics”, 5 th Edition, CRC
Press/ Taylor and Francis Group, 2021. (UNIT-IV, V) REFERENCES: 1. Edward Angel, Dave Shreiner,” Interactive Computer Graphics. A Top-Down Approach with WebGL”, 7 th Edition, 2015. (UNIT- IV, V) 2. OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 4.5 with SPIR V, 9 th Edition, Addison Wesley, 2016. 3. Graham Sellers, John Kessenich, “Vulkan Programming Guide”, 1 st Edition, Addison Wesley, 2016. (UNIT-III) 4. Francis S Hill Jr., Stephen M Kelley, ”Computer Graphics Using OpenGL”, PHI Learning, Third Edition, 2009. 5. John F. Hughes, Andries van Dam, Morgan McGuire, David F. Sklar, James D. Foley, Steven K. Feiner, Kurt Akeley, “ Computer Graphics Principles and Practice”, Third Edition, Addison Wesley, 2013. 6. Samanta Guha, “Computer Graphics Through OpenGL: From Theory to Experiments”, Third Edition, Chapman and Hall / CRC Press, 2021. 7. Jung Hyun Han, “3D Graphics for Game Programming”, Delmar Cengage Learning, 2011.