Inigo Quilez:计算机图形、数学、着色器、分形、Demoscene 相关文章
Inigo Quilez :: articles ::
请访问我的主页,那里有关于计算机图形学的视频教程和其他资源;此页面仅包含书面教程。 这些教程是我在业余时间编写的,希望您喜欢,尽管它们可能包含错误或不精确之处。 如果您喜欢并愿意,可以通过 Patreon 或 PayPal 支持这项工作。 最后,您找到的所有代码片段都采用 MIT license,因此您可以轻松地重用它们。
实用函数索引
Remapping functions 3D SDFs 2D SDFs 2D SDFs and gradients 2D SDFs in L∞-norm Ray-Surface intersection functions Sphere functions Box functions Smoothstep functions Trigonometric functions Filterable procedurals
Procedural noises
FBM Gradient noise derivatives Value noise derivatives Domain warping Voronoise Smooth voronoi Voronoi edges
Raytracing
Path-tracing in one hour Sphere soft shadow Oldschhol raytracing Simple gpu raytracing Tracing in tiles SSE for CPU tracers My first raytracer
Pointclouds and Splatting
Voxels
Voxel lines and occlusion Simple voxel
Compression
Genetic algorithm Mesh compression Wavelet compression 3D models storage
Size coding
Making (procedural) graphics in 4 kilobytes Behind Elevated Simple color palettes Compact storage of floats Minimal spline code Minimal frustum culling Compiling small Textures inside gm.dls Opening a file in 4kb Living Characters in 4 kilobytes Techniques for 64k demos
SDFs & Raymarching
Raymarching SDFs Smooth minimum for SDFs Domain Repetition Soft Shadows Numerical normals for SDFs Smooth Rounded Boxes Interior SDFs Xor operator for SDFs SDF Bounding Volumes Binary-search raycasting for SDFs FBM detail in SDFs Ellipsoid SDF Approximating the distance to implicits Menger fractal Raymarching terrains Depth buffer with raymarching Intro to SDF raymarching (2008)
Texturing and filtering
The Math of Premultiplied Alpha Biplanar mapping Texture repetition Filtering procedural textures Band-limiting procedural textures Ray differentials and textures Analytic checkers pattern filtering Improved analytic checkers pattern filtering Improved bilinear filtering Improved hardware interpolation Cylinder seams
Lighting
Outdoors lighting Better fog Multires ambient occlusion Directional derivative Screen space ambient occlusion Per vertex AO Simple global ilumination
Renderer/Engine
GPU Conditionals(new) Avoiding trigonometry III(new) Avoiding trigonometry II Avoiding trigonometry I Timing in Ticks Fixing frustum culling Rational rendering and floating bar C++ encapsulation(new) Hacking the Ray-Triangle intersector Stereo rendering Basic VR Gamma correct blurring
Simple oldschool effects
2D dynamic clouds Simple water Plane deformations Feedback effect Voronoi effect The Game of Life Rendering a cube in QBasic
Useful maths
Simple IK without trigonometry Sphere ambient occlusion Box ambient occlusion Sphere density Sphere visibility Sphere projection Inverse bilinear interpolation Distance to triangle Bezier bounding box Disk/cylinder bounding box Distance to an ellipse Working with ellipses Normal/areas for polygons Area of a triangle Computing mesh normals Patched sphere Fourier series Smoothstep integral Reflect and Clip FM synthesis Thinking with quaternions Fast trisect() in GLSL Inverse smoothstep Float and random
Fractals & complex dynamics
Continuous iteration count The M1 bulb of the Mandelbrot set The M2 bulb in the Mandelbrot set Area of M1 in the Mandelbrot set The symmetry of the Mandelbrot set Introduction to the Mandelbrot set
Rendering fractals
Computing the SDF of fractals Mandelbulb fractal 3D Julia set fractals 3D orbit traps Procedural orbit traps Bitmaps orbit traps Geometric orbit traps Budhabrot fractals Popcorn images IFS fractals Lyapunov fractals Icon images
Recreational math
The maximum of 3 numbers(new) Prof. Jame Grime's Dice Optimizing squares Ekain's numbers
inigo quilez - 自 1994 年以来学习计算机图形学