blender/intern/cycles/kernel/svm
Mai Lavelle c96ae81160 Cycles microdisplacement: ngons and attributes for subdivision meshes
This adds support for ngons and attributes on subdivision meshes. Ngons are
needed for proper attribute interpolation as well as correct Catmull-Clark
subdivision. Several changes are made to achieve this:

- new primitive `SubdFace` added to `Mesh`
- 3 more textures are used to store info on patches from subd meshes
- Blender export uses loop interface instead of tessface for subd meshes
- `Attribute` class is updated with a simplified way to pass primitive counts
  around and to support ngons.
- extra points for ngons are generated for O(1) attribute interpolation
- curves are temporally disabled on subd meshes to avoid various bugs with
  implementation
- old unneeded code is removed from `subd/`
- various fixes and improvements

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D2108
2016-07-29 03:36:30 -04:00
..
svm_attribute.h Cycles microdisplacement: ngons and attributes for subdivision meshes 2016-07-29 03:36:30 -04:00
svm_blackbody.h Cycles: Use curve approximation for blackbody instead of lookup table 2015-05-05 06:11:54 +00:00
svm_brick.h Fix T46030: Strange behavior of Cycles Brick Texture 2015-09-18 17:32:17 +05:00
svm_brightness.h Cycles: add constant folding for more color operation nodes. 2016-06-19 20:17:28 +02:00
svm_camera.h Cycles: OpenCL kernel split 2015-05-09 19:52:40 +05:00
svm_checker.h Fix T48139: Checker texture strange behavior in cycles 2016-04-15 15:30:30 +02:00
svm_closure.h Cycles: Add multi-scattering, energy-conserving GGX as an option to the Glossy, Anisotropic and Glass BSDFs 2016-06-23 22:57:26 +02:00
svm_color_util.h Cycles: add constant folding for more color operation nodes. 2016-06-19 20:17:28 +02:00
svm_convert.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_displace.h Cycles: OpenCL kernel split 2015-05-09 19:52:40 +05:00
svm_fresnel.h Cycles: OpenCL kernel split 2015-05-09 19:52:40 +05:00
svm_gamma.h Cycles: Constant fold for the Gamma Node. 2015-12-22 13:53:13 +01:00
svm_geometry.h Cycles: OpenCL kernel split 2015-05-09 19:52:40 +05:00
svm_gradient.h Cycles: Use native saturate function for CUDA 2015-04-28 00:38:32 +05:00
svm_hsv.h Code cleanup: simplify SVM stack assignment. 2016-05-05 21:43:46 +02:00
svm_image.h Cycles microdisplacement: ngons and attributes for subdivision meshes 2016-07-29 03:36:30 -04:00
svm_invert.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_light_path.h Fix T47461: Different results on CPU and GPU when using Branched Path Tracing 2016-02-18 01:23:38 +01:00
svm_magic.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_mapping.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_math_util.h Cycles: Constant fold for the Gamma Node. 2015-12-22 13:53:13 +01:00
svm_math.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_mix.h Cycles: add constant folding for more color operation nodes. 2016-06-19 20:17:28 +02:00
svm_musgrave.h Cleanup: Remove unused Noise Basis texture code. 2015-05-28 01:07:37 +02:00
svm_noise.h Cycles: Cleanup, indent nested preprocessor directives 2016-03-25 13:55:42 +01:00
svm_noisetex.h Cleanup: Remove unused Noise Basis texture code. 2015-05-28 01:07:37 +02:00
svm_normal.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_ramp.h Fix Cycles RGB and Vector Curves node Fac handling. 2016-06-19 20:17:27 +02:00
svm_sepcomb_hsv.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_sepcomb_vector.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_sky.h Revert "Cycles: Remove the Preetham Sky model." 2016-04-05 12:25:54 +02:00
svm_tex_coord.h Cycles: Fix OpenCL compilation after the recent numerical fixes 2016-07-17 19:24:53 +02:00
svm_texture.h Cleanup: Remove unused Noise Basis texture code. 2015-05-28 01:07:37 +02:00
svm_types.h Cycles: Add multi-scattering, energy-conserving GGX as an option to the Glossy, Anisotropic and Glass BSDFs 2016-06-23 22:57:26 +02:00
svm_value.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_vector_transform.h Cycles: OpenCL kernel split 2015-05-09 19:52:40 +05:00
svm_voronoi.h Cleanup: Remove unused Voronoi texture code. 2015-05-28 00:36:33 +02:00
svm_voxel.h Cycles: Add support for bindless textures. 2016-05-19 13:14:37 +02:00
svm_wave.h Cycles: Add Saw option to the wave texture 2016-01-01 23:25:37 +01:00
svm_wavelength.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_wireframe.h Cycles: OpenCL kernel split 2015-05-09 19:52:40 +05:00
svm.h Cycles: add constant folding for more color operation nodes. 2016-06-19 20:17:28 +02:00