Blender  V2.93
Functions
osl_shader.cpp File Reference
#include <OSL/oslexec.h>
#include "kernel/kernel_compat_cpu.h"
#include "kernel/kernel_montecarlo.h"
#include "kernel/kernel_types.h"
#include "kernel/split/kernel_split_data_types.h"
#include "kernel/kernel_globals.h"
#include "kernel/geom/geom_object.h"
#include "kernel/osl/osl_closures.h"
#include "kernel/osl/osl_globals.h"
#include "kernel/osl/osl_services.h"
#include "kernel/osl/osl_shader.h"
#include "util/util_foreach.h"
#include "render/attribute.h"

Go to the source code of this file.

Functions

static void shaderdata_to_shaderglobals (KernelGlobals *kg, ShaderData *sd, PathState *state, int path_flag, OSLThreadData *tdata)
 
static void flatten_surface_closure_tree (ShaderData *sd, int path_flag, const OSL::ClosureColor *closure, float3 weight=make_float3(1.0f, 1.0f, 1.0f))
 
static void flatten_background_closure_tree (ShaderData *sd, const OSL::ClosureColor *closure, float3 weight=make_float3(1.0f, 1.0f, 1.0f))
 
static void flatten_volume_closure_tree (ShaderData *sd, const OSL::ClosureColor *closure, float3 weight=make_float3(1.0f, 1.0f, 1.0f))
 

Function Documentation

◆ flatten_background_closure_tree()

static void flatten_background_closure_tree ( ShaderData sd,
const OSL::ClosureColor *  closure,
float3  weight = make_float3(1.0f, 1.0f, 1.0f) 
)
static

Definition at line 243 of file osl_shader.cpp.

References add(), mul(), MUL, CClosurePrimitive::setup(), and TO_FLOAT3.

◆ flatten_surface_closure_tree()

static void flatten_surface_closure_tree ( ShaderData sd,
int  path_flag,
const OSL::ClosureColor *  closure,
float3  weight = make_float3(1.0f, 1.0f, 1.0f) 
)
static

Definition at line 139 of file osl_shader.cpp.

References add(), mul(), MUL, CClosurePrimitive::setup(), and TO_FLOAT3.

◆ flatten_volume_closure_tree()

static void flatten_volume_closure_tree ( ShaderData sd,
const OSL::ClosureColor *  closure,
float3  weight = make_float3(1.0f, 1.0f, 1.0f) 
)
static

Definition at line 301 of file osl_shader.cpp.

References add(), mul(), MUL, CClosurePrimitive::setup(), and TO_FLOAT3.

◆ shaderdata_to_shaderglobals()

static void shaderdata_to_shaderglobals ( KernelGlobals *  kg,
ShaderData sd,
PathState state,
int  path_flag,
OSLThreadData *  tdata 
)
static

Definition at line 90 of file osl_shader.cpp.

References kg, NULL, SD_BACKFACING, state, and TO_VEC3.