Clarisse 5.0 SP8 SDK  5.0.5.8.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Classes | Public Types | Static Public Member Functions | List of all members
ShaderAovHelpers Class Reference

Classes

class  Layer
 

Public Types

enum  {
  RASTERIZE_AOV_MOTION_VECTOR = 0,
  RASTERIZE_AOV_CAMERA_NORMAL,
  RASTERIZE_AOV_CAMERA_POSITION,
  RASTERIZE_AOV_DEPTH,
  RASTERIZE_AOV_ALBEDO,
  RASTERIZE_AOV_WORLD_NORMAL,
  RASTERIZE_AOV_COUNT
}
 
enum  {
  RASTERIZE_AOV_FLAG_MOTION_VECTOR = 1,
  RASTERIZE_AOV_FLAG_CAMERA_NORMAL = 1 << 1,
  RASTERIZE_AOV_FLAG_CAMERA_POSITION = 1 << 2,
  RASTERIZE_AOV_FLAG_DEPTH = 1 << 3,
  RASTERIZE_AOV_FLAG_ALBEDO = 1 << 4,
  RASTERIZE_AOV_FLAG_WORLD_NORMAL = 1 << 5,
  RASTERIZE_AOV_FLAG_ALL
}
 

Static Public Member Functions

static void register_rasterize_aovs (OfChannelManager &channel_manager)
 register_rasterize_aovs Register the rasterize aovs into the channel manager.
 
static bool get_rasterize_layers (const OfChannelManager &channel_manager, const CtxShader &shader_ctx, unsigned int &active_layers_mask, CoreVector< Layer > &layers)
 get_rasterize_aovs set the mask for active aovs in the current channel manager and init the layers, return true if there is actif rasterize aovs
 
static void store_rasterize_aovs (const CtxEval &eval_ctx, CtxShader &shader_ctx, const CtxRaytrace &ray_ctx, const unsigned int &ray_index, const GeometryIntersection &intersection, const unsigned int &aov_flags, const CoreVector< Layer > &layers, float *aov_values)
 store_rasterize_aovs compute and store the rasterize aov if needed
 
static void get_rasterize_aov_list (const OfObject &object, CoreVector< short > &aov_list)
 get_rasterize_aov_list Set the aov list used by the rasterize aov
 

Member Function Documentation

void ShaderAovHelpers::store_rasterize_aovs ( const CtxEval eval_ctx,
CtxShader shader_ctx,
const CtxRaytrace ray_ctx,
const unsigned int &  ray_index,
const GeometryIntersection intersection,
const unsigned int &  aov_flags,
const CoreVector< Layer > &  layers,
float *  aov_values 
)
static

store_rasterize_aovs compute and store the rasterize aov if needed

Parameters
aov_flagstell which aovs need to be computed
layersallow to write the aovs
aov_valuesis the local array of aovs where the aov will be written