Changeset View
Changeset View
Standalone View
Standalone View
source/blender/draw/engines/eevee/eevee_volumes.c
| Show First 20 Lines • Show All 372 Lines • ▼ Show 20 Lines | if ((effects->enabled_effects & EFFECT_VOLUMETRIC) != 0) { | ||||
| * integrated (accumulated) along the view-rays. The result is stored | * integrated (accumulated) along the view-rays. The result is stored | ||||
| * for every cell in another texture. | * for every cell in another texture. | ||||
| * | * | ||||
| * - Full-screen Resolve : From the previous stage, we get two | * - Full-screen Resolve : From the previous stage, we get two | ||||
| * 3D textures that contains integrated scattered light and extinction | * 3D textures that contains integrated scattered light and extinction | ||||
| * for "every" positions in the frustum. We only need to sample | * for "every" positions in the frustum. We only need to sample | ||||
| * them and blend the scene color with those factors. This also | * them and blend the scene color with those factors. This also | ||||
| * work for alpha blended materials. | * work for alpha blended materials. | ||||
| **/ | */ | ||||
| /* World pass is not additive as it also clear the buffer. */ | /* World pass is not additive as it also clear the buffer. */ | ||||
| psl->volumetric_world_ps = DRW_pass_create("Volumetric World", DRW_STATE_WRITE_COLOR); | psl->volumetric_world_ps = DRW_pass_create("Volumetric World", DRW_STATE_WRITE_COLOR); | ||||
| /* World Volumetric */ | /* World Volumetric */ | ||||
| struct World *wo = scene->world; | struct World *wo = scene->world; | ||||
| if (wo != NULL && wo->use_nodes && wo->nodetree) { | if (wo != NULL && wo->use_nodes && wo->nodetree) { | ||||
| struct GPUMaterial *mat = EEVEE_material_world_volume_get(scene, wo); | struct GPUMaterial *mat = EEVEE_material_world_volume_get(scene, wo); | ||||
| ▲ Show 20 Lines • Show All 237 Lines • Show Last 20 Lines | |||||