A curated list of awesome computer graphics resources. Inspired by awesome-... stuff.
Scan Converting Lines
- Line Drawing Algorithm - Wikipedia
- How to draw ugly lines really fast - Beyond textbook Bresenham
- Xiaolin Wu's line algorithm - Xiaolin Wu's line algorithm was presented in the article "An Efficient Antialiasing Technique" in the July 1991 issue of Computer Graphics
- Bresenham - Bresenham rasterisation functions by Alois Zingl
Scan Converting Ellipses
- Fast Parametric Ellipse Algorithm - A Fast Parametric Ellipse Algorithm, Jerry R. Van Aken
- conic-draw - Pitteways algorithm for drawing conic curves, Jerry R. Van Aken
- Ellipse Projection - A unit circle inscribed in the unit square projects to an ellipse inscribed in the quadrilateral.
Rational Bézier, Cubic Bézier curves, Rational cubic Bézier
- Pomax Bezier - A free, online book for when you really need to know how to do Bézier things.
- From Bézier to Bernstein - From Bézier to polynomials defined by Bernstein.
- Parallel curves of cubic Béziers
- An Interactive Introduction - An Interactive Introduction to Fourier Transforms
- Bezier Curves on Hacker News - Discussion about alternatives to Bezier curves.
- Anti-aliasing Wikipedia - Spatial anti-aliasing EN
- Antialiasing Wikipedia DE - Antialiasing DE
- Blend2d Blend2D is a high performance 2D vector graphics engine written in C++ and released under the Zlib license.
- Skia Skia is an open source 2D graphics library which provides common APIs that work across a variety of hardware and software platforms.
- Anti-Grain Geometry AGG High Fidelity 2D Graphics
- libart Libart is a library for high-performance 2D graphics. It is currently being used as the antialiased rendering engine for the Gnome Canvas.
- geometry-central.net Applied 3D geometry in C++, with a focus on surface meshes.
- FastUIDraw FastUIDraw is a library that provides a higher performance Canvas interface. It is designed so that it always draws using a GPU.
JPEG is a commonly used method of lossy compression for digital images
- JPEG XL - The JPEG XL Image Coding System (ISO/IEC 18181)
- JPEG XL image format reference implementation - JPEG XL image format reference implementation.
- NanoJPEG - NanoJPEG: a compact JPEG decoder.
PNG is a raster-graphics file format that supports lossless data compression.
- Dithering Eleven Algorithms - Eleven Algorithms and Source Code
- Chrilly's MonaLena - Classical Dithering Algorithms, C Library.
- Otsu's method - Automatic image thresholding, Otsu's method
- Halftoning and Dithering - Halftoning and Dithering.
- Modern-Digital-Halftoning - Modern Digital Halftoning By Daniel L. Lau, Gonzalo R. Arce
- Blue- and Green-NoiseHalftoning Models - Blue- and Green-NoiseHalftoning Models
- Druckraster - Druckraster/Halftone
- Links on the art and algorithm of dithering - Links on the art and algorithm of dithering
- Ditherpunk - Ditherpunk The article I wish I had about monochrome image dithering
- Dithering for quantization and sampling in video games - Blog post series about various uses of dithering for quantization and sampling.
- a dither - a dither algorithm; small, spatially stable, based on magic numbers and arithmetic
- Dithering in computer graphics - Dithering in computer graphics
- Dither Machine - Dither Machine
- Image Processing On Line - IPOL is a research journal of image processing and image analysis
- Diffusion based image generative models - Diffusion based image generative models
- Image Super-Resolution via Iterative Refinement - Image Super-Resolution via Iterative Refinement
- Image Unshredding - Image unshredding.
- Perfectly Secure Steganography - Perfectly Secure Steganography Using Minimum Entropy Coupling
- ThumbHash A very compact representation of an image placeholder.
- Introduction To Fourier Transforms - Introduction To Fourier Transforms For Image Processing
- Mipmaps - Mipmap; pre-calculated, optimized sequences of images
- OpenCV Open Source Computer Vision Library
- SOD An Embedded Computer Vision & Machine Learning Library
- Perlin noise - Perlin noise
- Tiny Taytracer - Tiny Raytracer
- Awsome OpenGL A curated list of awesome OpenGL libraries, debuggers and resources.
- Learn OpenGL - Online book for learning OpenGL
- WEBGL Water - WebGL Water Demo
- Graphics Gems - Official on-line repo for the code from the Graphics Gems.
- Graphics Gems Github - Official on-line repo for the code from the Graphics Gems.
- Scratch A Pixel - Foundations of 3D Rendering.
- Computer Graphics Techniques - The Journal of Computer Graphics Techniques peer-reviewed, open access, and free to all.
- Grafica Obscura - A compilation of technical notes, pictures and essays.
- ACM - ACM Digital Library has opened more than 117,500 articles published between 1951 and the end of 2000, during the first 50 years of its publishing program.
- Physical Based Rendering Course Physical Based Rendering
- Computer Graphics & Vison Lab, Tsing Hua University - Publications
- cantorsparadise - https://www.cantorsparadise.com/
- euler-math-toolbox - http://euler-math-toolbox.de/
- walkingrandomly - https://walkingrandomly.com/
- mathpuzzle links - https://www.mathpuzzle.com/Links.html
- Brian Hayes - Brian Hayes, American scientist, columnist and author.
- Brian Hayes, American Scientist - Brian Hayes, American Scientist.
- Hyperbolic Geometry - Hyperbolic Geometry
- Digital Image Processing - Rafael C. Gonzalez, Richard E. Woods - Digital Image Processing
- Computer Graphics: Principles and Practice - Computer Graphics: Principles and Practice, 3rd Edition
- Digital Halftoning - Digital Halftoning by Robert Ulichney
- Compressed Image File Formats Compressed Image File Formats (JPEG, PNG, GIF, XBM, BMP) by John Miano
- Michael Fogleman - Michael Fogleman
- Alex Tardif - Alex Tardif