Computer Graphics from Scratch: A Programmer's Introduction to 3D Rendering

Computer Graphics from Scratch: A Programmer's Introduction to 3D Rendering

作者: Gambetta Gabriel
出版社: No Starch Press
出版在: 2021-05-13
ISBN-13: 9781718500761
ISBN-10: 1718500769
裝訂格式: Quality Paper - also called trade paper
總頁數: 248 頁





內容描述


Computer Graphics from Scratch demystifies the algorithms used in modern graphics software and guides beginners through building photorealistic 3D renders. Computer graphics are at work everywhere today, adding eye-popping details to video games, hyper-realistic CGI to major blockbusters, and life-like imagery to computer-animated films. This beginners book will introduce you to a core slice of this ever-expanding field, 3D rendering, with a focus on two popular algorithmic methods: raytracing and rasterization. Written to be easily understood by high-school students but rigorous enough for professional engineers, you'll build each of these surprisingly simple algorithms into complete, fully functional renderers as you build your knowledge base. The first half covers raytracing, which simulates rays of light as they bounce off of objects in a scene; the second half breaks down rasterization, the real-time process for converting 3D graphics into a screen-compatible array of 2D pixels. Every chapter gives you something visually new and exciting to add to your works-in-progress, from creating reflections and shadows that make objects look more realistic, to rendering a scene from any directional point of view. You'll learn how to: - Represent objects in a scene, and use perspective projection to draw them in - Compute the illumination for light sources (point, directional, and ambient) - Render mirror-like reflections on surfaces, and cast shadows for depth - Use clipping algorithms to render a scene from any camera position - Implement flat shading, Gouraud shading, and Phong shading algorithms - Paint" textures that fake surface details and turn shapes into everyday objects The book uses informal pseudocode throughout the text, so you can write your renderers in any language. In addition, the author provides links to live working versions of his algorithms.


作者介紹


Gabriel Gambetta started coding games around the age of 5 on a ZX Spectrum. After studying Computer Science and working at a respectable local company in his native Uruguay, he started a game development company and ran it for 10 years while teaching Computer Graphics at his alma mater. More recently, Gambetta has been working at Google Zürich, where he's been since 2011 except for a stint as an early engineer in the London-based multiplayer game tech unicorn Improbable.




相關書籍

Mastering Transformers: Build state-of-the-art models from scratch with advanced natural language processing techniques

作者 Yıldırım Savaş Asgari-Chenaghlu Meysam

2021-05-13

CPLD 數位電路設計-使用 MAX + PlusⅡ 入門篇, 4/e (含乙級數位電子術科解析)(附範例系統光碟)

作者 廖裕評 陸瑞強

2021-05-13

Ontologies for Bioinformatics (Hardcover)

作者 Kenneth Baclawski Tianhua Niu

2021-05-13