Changeset View
Changeset View
Standalone View
Standalone View
intern/cycles/kernel/kernel_types.h
| Show First 20 Lines • Show All 340 Lines • ▼ Show 20 Lines | enum PathRayFlag { | ||||
| PATH_RAY_CURVE = (1 << 11), /* visibility flag to define curve segments */ | PATH_RAY_CURVE = (1 << 11), /* visibility flag to define curve segments */ | ||||
| PATH_RAY_VOLUME_SCATTER = (1 << 12), /* volume scattering */ | PATH_RAY_VOLUME_SCATTER = (1 << 12), /* volume scattering */ | ||||
| /* Special flag to tag unaligned BVH nodes. */ | /* Special flag to tag unaligned BVH nodes. */ | ||||
| PATH_RAY_NODE_UNALIGNED = (1 << 13), | PATH_RAY_NODE_UNALIGNED = (1 << 13), | ||||
| PATH_RAY_ALL_VISIBILITY = ((1 << 14)-1), | PATH_RAY_ALL_VISIBILITY = ((1 << 14)-1), | ||||
| PATH_RAY_MIS_SKIP = (1 << 15), | PATH_RAY_MIS_SKIP = (1 << 15), | ||||
| PATH_RAY_DIFFUSE_ANCESTOR = (1 << 16), | PATH_RAY_DIFFUSE_ANCESTOR = (1 << 16), | ||||
| PATH_RAY_SINGLE_PASS_DONE = (1 << 17), | PATH_RAY_SINGLE_PASS_DONE = (1 << 17), | ||||
| PATH_RAY_SHADOW_CATCHER = (1 << 18), | PATH_RAY_SHADOW_CATCHER = (1 << 18), | ||||
| PATH_RAY_STORE_SHADOW_INFO = (1 << 19), | PATH_RAY_STORE_SHADOW_INFO = (1 << 19), | ||||
| PATH_RAY_TRANSPARENT_BACKGROUND = (1 << 20), | |||||
| }; | }; | ||||
| /* Closure Label */ | /* Closure Label */ | ||||
| typedef enum ClosureLabel { | typedef enum ClosureLabel { | ||||
| LABEL_NONE = 0, | LABEL_NONE = 0, | ||||
| LABEL_TRANSMIT = 1, | LABEL_TRANSMIT = 1, | ||||
| LABEL_REFLECT = 2, | LABEL_REFLECT = 2, | ||||
| LABEL_DIFFUSE = 4, | LABEL_DIFFUSE = 4, | ||||
| LABEL_GLOSSY = 8, | LABEL_GLOSSY = 8, | ||||
| LABEL_SINGULAR = 16, | LABEL_SINGULAR = 16, | ||||
| LABEL_TRANSPARENT = 32, | LABEL_TRANSPARENT = 32, | ||||
| LABEL_VOLUME_SCATTER = 64, | LABEL_VOLUME_SCATTER = 64, | ||||
| LABEL_TRANSMIT_TRANSPARENT = 128, | |||||
| } ClosureLabel; | } ClosureLabel; | ||||
| /* Render Passes */ | /* Render Passes */ | ||||
| #define PASS_NAME_JOIN(a, b) a ## _ ## b | #define PASS_NAME_JOIN(a, b) a ## _ ## b | ||||
| #define PASSMASK(pass) (1 << ((PASS_NAME_JOIN(PASS, pass)) % 32)) | #define PASSMASK(pass) (1 << ((PASS_NAME_JOIN(PASS, pass)) % 32)) | ||||
| #define PASSMASK_COMPONENT(comp) (PASSMASK(PASS_NAME_JOIN(comp, DIRECT)) | \ | #define PASSMASK_COMPONENT(comp) (PASSMASK(PASS_NAME_JOIN(comp, DIRECT)) | \ | ||||
| ▲ Show 20 Lines • Show All 879 Lines • ▼ Show 20 Lines | |||||
| } KernelFilm; | } KernelFilm; | ||||
| static_assert_align(KernelFilm, 16); | static_assert_align(KernelFilm, 16); | ||||
| typedef struct KernelBackground { | typedef struct KernelBackground { | ||||
| /* only shader index */ | /* only shader index */ | ||||
| int surface_shader; | int surface_shader; | ||||
| int volume_shader; | int volume_shader; | ||||
| int transparent; | int transparent; | ||||
| int pad; | float transparent_roughness_squared_threshold; | ||||
| /* ambient occlusion */ | /* ambient occlusion */ | ||||
| float ao_factor; | float ao_factor; | ||||
| float ao_distance; | float ao_distance; | ||||
| float ao_bounces_factor; | float ao_bounces_factor; | ||||
| float ao_pad; | float ao_pad; | ||||
| } KernelBackground; | } KernelBackground; | ||||
| static_assert_align(KernelBackground, 16); | static_assert_align(KernelBackground, 16); | ||||
| ▲ Show 20 Lines • Show All 248 Lines • Show Last 20 Lines | |||||