Welcome to mirror list, hosted at ThFree Co, Russian Federation.

kernel_shader_raytrace.cu « optix « device « kernel « cycles « intern - git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 41e6224f6da557e2126eb73d860faca9c94ff4fd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/* SPDX-License-Identifier: Apache-2.0
 * Copyright 2021-2022 Blender Foundation. */

/* Copy of the regular kernels with additional shader ray-tracing kernel that takes
 * much longer to compiler. This is only loaded when needed by the scene. */

#include "kernel/device/optix/kernel.cu"

#include "kernel/integrator/shade_surface.h"

extern "C" __global__ void __raygen__kernel_optix_integrator_shade_surface_raytrace()
{
  const int global_index = optixGetLaunchIndex().x;
  const int path_index = (kernel_params.path_index_array) ? kernel_params.path_index_array[global_index] :
                                                       global_index;
  integrator_shade_surface_raytrace(nullptr, path_index, kernel_params.render_buffer);
}

extern "C" __global__ void __raygen__kernel_optix_integrator_shade_surface_mnee()
{
  const int global_index = optixGetLaunchIndex().x;
  const int path_index = (kernel_params.path_index_array) ? kernel_params.path_index_array[global_index] :
                                                       global_index;
  integrator_shade_surface_mnee(nullptr, path_index, kernel_params.render_buffer);
}