Multipass Struct Reference

#include <c4d_shader.h>

详细描述

These values have to be filled by custom illumination models:

Public Attributes

VPBitmap **  bmp
Int32 ind
Float result
Int32   cnt
Int32   cmp
向量 **  diffuse
Int32   diffuse_cnt
向量 **  specular
Int32   specular_cnt
向量 **  shadow
Int32   shadow_cnt
RayLight **  light
Int32   light_cnt
Float **  ochannel
Int32 ochannelid
Int32   ochannel_cnt
向量 vp_ambient
向量 vp_diffuse
向量 vp_specular
向量 vp_shadow
向量 vp_reflection
向量 vp_transparency
向量 vp_radiosity
向量 vp_caustics
向量 vp_illumination
向量 vp_mat_color
向量 vp_mat_luminance
向量 vp_mat_transparency
向量 vp_mat_reflection
向量 vp_mat_environment
向量 vp_mat_specularcolor
向量 vp_atmosphere
Float vp_depth
Float vp_mat_specular
Float vp_mat_diffusion
Float vp_atmosphere_mul
向量 vp_ambientocclusion
向量 vp_mat_uv
向量 vp_mat_normal
向量 vp_motionvector
向量 **  rchannel
向量 **  schannel
Int32   rchannel_cnt
Int32   schannel_cnt
向量 vp_direct_diffuse
向量 vp_indirect_diffuse
向量 vp_direct_specular
向量 vp_indirect_specular
向量 vp_reflectance_albedo
向量 vp_magicBulletLooks
向量 **  aov_channel
Int32 aov_channel_id
Int32   aov_channel_cnt

Member Data Documentation

◆  bmp

VPBitmap** bmp

Internal . An array of @ref cnt VPBitmaps.

◆  ind

Int32 * ind

The index into the components for all layers.
范例:

◆  result

Float * result

The result of all components.

◆  cnt

Int32 cnt

The number of layers, for instance 1 for the main RGB layer.

◆  cmp

Int32 cmp

The number of components.

◆  diffuse

向量 ** diffuse

The diffuse components.

◆  diffuse_cnt

Int32 diffuse_cnt

The number of diffuse components.

◆  specular

向量 ** specular

The specular components.

◆  specular_cnt

Int32 specular_cnt

The number of specular components.

◆  shadow

向量 ** shadow

The shadow components.

◆  shadow_cnt

Int32 shadow_cnt

The number of shadow components.

◆  light

RayLight ** light

The array of the lights that create special light buffers. For example, if you render out a diffuse/specular pass for each light source all those lights will be listed here.

◆  light_cnt

Int32 light_cnt

The number of lights.

◆  ochannel

Float ** ochannel

The object buffers, filled by Cinema 4D . An array of ochannel_cnt Float pointers.
Each Float* directly points to the value of the object buffer.

◆  ochannelid

Int32 * ochannelid

The channel ID of the object buffer.

◆  ochannel_cnt

Int32 ochannel_cnt

The number of object buffers.

◆  vp_ambient

向量 * vp_ambient

The attenuated ambient from all lights plus self illuminating part for the current pixel.

◆  vp_diffuse

向量 * vp_diffuse

The diffuse illumination for the current pixel.

◆  vp_specular

向量 * vp_specular

The specular illumination for the current pixel.

◆  vp_shadow

向量 * vp_shadow

The shadow component for the current pixel.

◆  vp_reflection

向量 * vp_reflection

The reflection component for the current pixel.

◆  vp_transparency

向量 * vp_transparency

The resulting transparency for the current pixel.

◆  vp_radiosity

向量 * vp_radiosity

Currently a custom model cannot access radiosity/caustics so it do not need to be filled.

◆  vp_caustics

向量 * vp_caustics

Currently a custom model cannot access radiosity/caustics so it do not need to be filled.

◆  vp_illumination

向量 * vp_illumination

The diffuse and ambient components of the light.

◆  vp_mat_color

向量 * vp_mat_color

The diffuse illumination attenuation.

◆  vp_mat_luminance

向量 * vp_mat_luminance

Self illuminating part (luminance channel in the Cinema 4D material).

◆  vp_mat_transparency

向量 * vp_mat_transparency

The material transparency attenuation.

◆  vp_mat_reflection

向量 * vp_mat_reflection

The reflection attenuation (reflection channel in the Cinema 4D material).

◆  vp_mat_environment

向量 * vp_mat_environment

The material environment attenuation.

◆  vp_mat_specularcolor

向量 * vp_mat_specularcolor

The material specular color attenuation.

◆  vp_atmosphere

向量 * vp_atmosphere

The atmosphere component (fog and volumetric effects).

◆  vp_depth

Float * vp_depth

The depth value for the current pixel.

◆  vp_mat_specular

Float * vp_mat_specular

The material specular attenuation.

◆  vp_mat_diffusion

Float * vp_mat_diffusion

The material diffusion attenuation.

◆  vp_atmosphere_mul

Float * vp_atmosphere_mul

The atmosphere multiplier.

◆  vp_ambientocclusion

向量 * vp_ambientocclusion

The ambient occlusion.

◆  vp_mat_uv

向量 * vp_mat_uv

The UV layer.

◆  vp_mat_normal

向量 * vp_mat_normal

The normal layer.

◆  vp_motionvector

向量 * vp_motionvector

The motion vector.

◆  rchannel

向量 ** rchannel

The reflection buffer.

由于
R16

◆  schannel

向量 ** schannel

The specular buffer.

由于
R16

◆  rchannel_cnt

Int32 rchannel_cnt

The number of reflections in rchannel .

由于
R16

◆  schannel_cnt

Int32 schannel_cnt

The number of specular values in schannel .

由于
R16

◆  vp_direct_diffuse

向量 * vp_direct_diffuse

Direct diffuse from Reflectance Channel.

由于
R20

◆  vp_indirect_diffuse

向量 * vp_indirect_diffuse

Indirect diffuse from Reflectance Channel.

由于
R20

◆  vp_direct_specular

向量 * vp_direct_specular

Direct specular from Reflectance Channel.

由于
R20

◆  vp_indirect_specular

向量 * vp_indirect_specular

Indirect specular from Reflectance Channel.

由于
R20

◆  vp_reflectance_albedo

向量 * vp_reflectance_albedo

Reflectance Channel Diffuse Albedo.

由于
R21

◆  vp_magicBulletLooks

向量 * vp_magicBulletLooks

Channel without Magic Bullet Looks effect.

由于
R23

◆  aov_channel

向量 ** aov_channel

The object buffers, filled by Cinema 4D . An array of aov_channel_cnt Vector pointers.

由于
R21 Each Vector* directly points to the value of the object buffer.
R21

◆  aov_channel_id

Int32 * aov_channel_id

The channel ID of the AOV.

由于
R21

◆  aov_channel_cnt

Int32 aov_channel_cnt

The number of AOVs.

由于
R21
Multipass::cmp
Int32 cmp
The number of components.
定义: c4d_shader.h:797
CAMORPH_DATA_FLAGS::R
@ R
HPB rotation morphing.
Multipass::result
Float * result
The result of all components.
定义: c4d_shader.h:795
Multipass::ind
Int32 * ind
定义: c4d_shader.h:777
Multipass::cnt
Int32 cnt
The number of layers, for instance 1 for the main RGB layer.
定义: c4d_shader.h:796