-
首页
-
C4D R23.110 C++ SDK
VideoPostData Class Reference
#include <c4d_videopostdata.h>
详细描述
A data class for creating video post plugins.
In a video post hook it is possible to do just everything, not just the image processing that the name implies.
It is possible to prepare information for shaders, modify image buffers, initialize hardware, output an image to an image recorder etc.
使用
RegisterVideoPostPlugin()
to register a video post plugin.
公共成员函数
|
virtual
Bool
|
Draw
(
BaseVideoPost
*node,
BaseDraw
*bd,
BaseDrawHelp
*bh)
|
virtual void
|
AllocateBuffers
(
BaseVideoPost
*node,
渲染
*render,
BaseDocument
*doc)
|
virtual
VIDEOPOSTINFO
|
GetRenderInfo
(
BaseVideoPost
*node)
|
virtual void
|
CalcVolumetric
(
BaseVideoPost
*node,
VolumeData
*vd)
|
virtual void
|
CalcShadow
(
BaseVideoPost
*node,
VolumeData
*vd)
|
virtual
Bool
|
GlDrawDummy
(
BaseVideoPost
*node,
BaseDraw
*bd, GlFrameBuffer *fbuf,
Int32
colortex,
Int32
depthtex,
UInt32
flags)
|
virtual
UInt32
|
GetGlInfoDummy
(
BaseVideoPost
*node,
BaseDocument
*doc,
BaseDraw
*bd)
|
virtual
Bool
|
RenderEngineCheck
(
BaseVideoPost
*node,
Int32
id)
|
virtual void
|
SetDiffuseWeight
(
BaseVideoPost
*node,
Int32
cpu_index,
Float
weight)
|
virtual
Bool
|
GetMotionInfo
(
BaseVideoPost
*node,
MotionInfo
&info)
|
|
NodeData
()
|
GeListNode
*
|
Get
(void) const
|
virtual
Bool
|
消息
(
GeListNode
*node,
Int32
type, void *data)
|
virtual void
|
GetBubbleHelp
(
GeListNode
*node,
maxon::String
&str)
|
virtual
BaseDocument
*
|
GetDocument
(
GeListNode
*node)
|
virtual
Int32
|
GetBranchInfo
(
GeListNode
*node,
BranchInfo
*info,
Int32
max,
GETBRANCHINFO
flags)
|
virtual
Bool
|
IsInstanceOf
(const
GeListNode
*node,
Int32
type) const
|
virtual
Bool
|
IsDocumentRelated
(const
GeListNode
*node,
Bool
&docrelated) const
|
virtual
Bool
|
Init
(
GeListNode
*node)
|
virtual void
|
Free
(
GeListNode
*node)
|
virtual
Bool
|
读取
(
GeListNode
*node,
HyperFile
*hf,
Int32
level)
|
virtual
Bool
|
Write
(
GeListNode
*node,
HyperFile
*hf)
|
virtual
Bool
|
CopyTo
(
NodeData
*dest,
GeListNode
*snode,
GeListNode
*dnode,
COPYFLAGS
flags,
AliasTrans
*trn)
|
virtual
Bool
|
GetDDescription
(
GeListNode
*node,
描述
*description,
DESCFLAGS_DESC
&flags)
|
virtual
Bool
|
GetDParameter
(
GeListNode
*node, const
DescID
&id,
GeData
&t_data,
DESCFLAGS_GET
&flags)
|
virtual
Bool
|
SetDParameter
(
GeListNode
*node, const
DescID
&id, const
GeData
&t_data,
DESCFLAGS_SET
&flags)
|
virtual
Bool
|
GetDEnabling
(
GeListNode
*node, const
DescID
&id, const
GeData
&t_data,
DESCFLAGS_ENABLE
flags, const
BaseContainer
*itemdesc)
|
virtual
Bool
|
TranslateDescID
(
GeListNode
*node, const
DescID
&id,
DescID
&res_id,
C4DAtom
*&res_at)
|
|
BaseData
()
|
virtual
|
~BaseData
(void)
|
void
|
Destructor
(void)
|
Physical
|
virtual
向量
|
ComputeDiffuseGI
(
BaseVideoPost
*node,
VolumeData
*vd,
Float
receive_strength)
|
virtual
向量
|
ComputeDiffuseCaustic
(
BaseVideoPost
*node,
VolumeData
*vd,
Float
sampleradius,
Int32
accuracy)
|
virtual
向量
|
ComputeVolumeCaustic
(
BaseVideoPost
*node, const
Vector64
&p,
Int32
cpu_index)
|
virtual void
|
CreateRay
(
Ray
*dst,
Float
x,
Float
y)
|
virtual void
|
CreateExtendedRay
(
Ray
*dst,
Float
x,
Float
y,
Float
lensx,
Float
lensy,
Float
time)
|
Stereo
|
virtual
Int32
|
StereoGetCameraCountEditor
(
BaseVideoPost
*node,
BaseDocument
*doc,
BaseDraw
*bd)
|
virtual
Int32
|
StereoGetCameraCountRenderer
(
BaseVideoPost
*node,
BaseDocument
*doc,
RenderData
*rd)
|
virtual
Bool
|
StereoGetCameraInfo
(
BaseVideoPost
*node,
BaseDocument
*doc,
BaseDraw
*bd,
RenderData
*rd,
Int32
index,
StereoCameraInfo
&info)
|
virtual
Int32
|
StereoGetSceneHookID
(
BaseVideoPost
*node)
|
virtual
Bool
|
StereoMergeImages
(
BaseVideoPost
*node,
BaseBitmap
*dest, const
BaseBitmap
*const *source,
Int32
cnt, const
BaseContainer
&settings,
COLORSPACETRANSFORMATION
transform)
|
Team Render/NET
|
virtual
Bool
|
NetFrameInit
(
BaseVideoPost
*node,
BaseDocument
*doc,
RenderJob
*job,
Int32
assignedClients, const
NetRenderData
*renderData,
MultipassBitmap
*frameBmp,
BaseThread
*bt,
Int32
&realdepth)
|
virtual void
|
NetFrameFree
(
BaseVideoPost
*node)
|
virtual
Bool
|
NetFrameMessage
(
BaseVideoPost
*node, const
C4DUuid
&remoteUuid, const
NetRenderBuffer
&data,
NetRenderBuffer
*result)
|
virtual
Bool
|
NetCreateBuffer
(
BaseVideoPost
*node,
VideoPostStruct
*vps,
Int32
x,
Int32
y,
Int32
sizex,
Int32
sizey,
Int32
&id,
Int32
&subid)
|
成员函数文档编制
◆
Draw()
Not used!
◆
AllocateBuffers()
Called to request additional buffers to process.
One buffer is always there:
VPBUFFER_RGBA
, it is the RGB image.
Either the user (on the
Multipass
tab) or a video post plugin now can request more buffers (like
VPBUFFER_DIFFUSE
, which is the Diffuse
Multipass
layer) with any color resolution (
8
bit,
16
bit or
32
bit for each channel).
例如:
render->AllocateBuffer(
VPBUFFER_ALPHA
, 0, 32,
false
);
-
参数
-
[in]
|
node
|
The
BaseVideoPost
connected with the
VideoPostData
instance. Equal to
static_cast
<
BaseVideoPost
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed video post.
|
[in,out]
|
render
|
The
渲染
class to use to allocate additional buffers. The caller owns the pointed render.
|
[in]
|
doc
|
The active document. The caller owns the pointed document.
|
◆
GetRenderInfo()
Called to get information about the video post.
-
参数
-
-
返回
-
The video post information:
VIDEOPOSTINFO
◆
Execute()
Called for all video post entry and exit points:
VIDEOPOSTCALL
The calling sequence is:
VIDEOPOSTCALL::FRAMESEQUENCE
-
open
==
true
- Series of images starts. -
<Sequence>
VIDEOPOSTCALL::FRAME
-
open
==
true
- Image render starts. -
<Frame>
VIDEOPOSTCALL::SUBFRAME
-
open
==
true
- Sub-frame starts. -
<Sub-frame>
VIDEOPOSTCALL::RENDER
-
open
==
true
- Render precalculation.
VolumeData
not yet completely accessible.
VIDEOPOSTCALL::INNER
-
open
==
true
- Render precalculation.
ExecuteLine()
/
ExecutePixel()
During rendering.
VIDEOPOSTCALL::INNER
-
open
==
false
- Immediately after rendering.
VIDEOPOSTCALL::RENDER
-
open
==
false
- Immediately after shader cleanup.
VolumeData
no longer accessible!
VIDEOPOSTCALL::SUBFRAME
-
open
==
false
- Sub-frame rendering done. -
</Sub-frame>
VIDEOPOSTCALL::FRAME
-
open
==
false
- Frame rendering done. -
</Frame>
VIDEOPOSTCALL::FRAMESEQUENCE
-
open
==
false
- Complete rendering process finished. -
</Sequence>
The order of calls is guaranteed, and every opening call is matched by a corresponding closing call.
VIDEOPOSTCALL::RENDER
is opened immediately before shader initialization, and
VIDEOPOSTCALL::INNER
immediately before rendering.
Multiple sub-frames are rendered if scene motion blur or field rendering is used. In this case the number of subframes/fields is available in
VideoPostStruct::subframe_cnt
and
VideoPostStruct::field_cnt
.
Most of the times only the
VIDEOPOSTCALL::RENDER
and
VIDEOPOSTCALL::INNER
calls are of interest. In this case
Execute
would look like this:
RENDERRESULT
MyVideoPost::Execute(
BaseVideoPost
*node,
VideoPostStruct
*vps)
{
if
(vps->
vp
!=
VIDEOPOSTCALL::RENDER
)
return
RENDERRESULT::OK
;
// Do something...
return
result;
}
-
参数
-
[in]
|
node
|
The
BaseVideoPost
connected with the
VideoPostData
instance. Equal to
static_cast
<
BaseVideoPost
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed video post.
|
[in]
|
vps
|
The video post information. The caller owns the pointed video post struct.
|
-
返回
-
The render result:
RENDERRESULT
◆
ExecuteLine()
Called after each rendered line.
-
参数
-
[in]
|
node
|
The
BaseVideoPost
connected with the
VideoPostData
instance. Equal to
static_cast
<
BaseVideoPost
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed video post.
|
[in]
|
pp
|
The pixel buffer. The caller owns the pointed buffer.
|
◆
ExecutePixel()
Called for every sub-fragment (sub-pixel) that is rendered.
-
参数
-
[in]
|
node
|
The
BaseVideoPost
connected with the
VideoPostData
instance. Equal to
static_cast
<
BaseVideoPost
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed video post.
|
[in]
|
pp
|
The pixel buffer. The caller owns the pointed buffer.
|
[in]
|
x
|
The main pixel X position.
|
[in]
|
subx
|
The sub-pixel X position. (
0
<=
subx
<=
15
)
|
[in]
|
suby
|
The sub-pixel Y position. (
0
<=
suby
<=
15
)
|
◆
CalcVolumetric()
Called to calculate volumetric information.
Set
vd
->
col
and
vd
->
trans
.
若
VIDEOPOSTINFO::CALCVOLUMETRIC
is not set then
CalcVolumetric
is not needed. If this flag is set then
CalcVolumetric
is required.
Called for spans;
vd
->
ray
->
p
to
vd
->
p
where
vd
->
ray
->
p
is the entry point and
vd
->
p
is the exit point.
-
警告
-
No OS calls are allowed during this function. Doing so could cause a crash, since it can be called in a multi-processor context.
-
参数
-
[in]
|
node
|
The
BaseVideoPost
connected with the
VideoPostData
instance. Equal to
static_cast
<
BaseVideoPost
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed video post.
|
[in,out]
|
vd
|
The volume data to use and modify. The caller owns the pointed volume data.
|
◆
CalcShadow()
Called to calculate shadow information.
若
VIDEOPOSTINFO::CALCSHADOW
is not set then
CalcShadow
is not needed. If this flag is set then
CalcShadow
is required.
-
警告
-
No OS calls are allowed during this function. Doing so could cause a crash, since it can be called in a multi-processor context.
-
参数
-
[in]
|
node
|
The
BaseVideoPost
connected with the
VideoPostData
instance. Equal to
static_cast
<
BaseVideoPost
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed video post.
|
[in,out]
|
vd
|
The volume data to use and modify. The caller owns the pointed volume data.
|
◆
GlDrawDummy()
To ensure SDK compatibility
Private
.
◆
GetGlInfoDummy()
To ensure SDK compatibility
Private
.
◆
ComputeDiffuseGI()
Called to calculate global illumination information.
若
VIDEOPOSTINFO::GLOBALILLUMINATION
is not set then
ComputeDiffuseGI
is not needed. If this flag is set then
ComputeDiffuseGI
is required.
-
警告
-
No OS calls are allowed during this function. Doing so could cause a crash, since it can be called in a multi-processor context.
-
参数
-
[in]
|
node
|
The
BaseVideoPost
connected with the
VideoPostData
instance. Equal to
static_cast
<
BaseVideoPost
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed video post.
|
[in,out]
|
vd
|
The volume data to use and modify. The caller owns the pointed volume data.
|
[in]
|
receive_strength
|
The receive GI strength of the rendered materials.
|
-
返回
-
The global illumination component.
◆
ComputeDiffuseCaustic()
Called to calculate surface caustics information.
若
VIDEOPOSTINFO::CAUSTICS
is not set then
ComputeDiffuseCaustic
is not needed. If this flag is set then
ComputeDiffuseCaustic
is required.
-
警告
-
No OS calls are allowed during this function. Doing so could cause a crash, since it can be called in a multi-processor context.
-
参数
-
[in]
|
node
|
The
BaseVideoPost
connected with the
VideoPostData
instance. Equal to
static_cast
<
BaseVideoPost
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed video post.
|
[in,out]
|
vd
|
The volume data to use and modify. The caller owns the pointed volume data.
|
[in]
|
sampleradius
|
The caustics sample radius of the rendered materials.
|
[in]
|
accuracy
|
The caustics sample count of the rendered material.
|
-
返回
-
The surface caustics component.
◆
ComputeVolumeCaustic()
Called to calculate volume caustics information.
若
VIDEOPOSTINFO::CAUSTICS
is not set then
ComputeDiffuseCaustic
is not needed. If this flag is set then
ComputeDiffuseCaustic
is required.
-
警告
-
No OS calls are allowed during this function. Doing so could cause a crash, since it can be called in a multi-processor context.
-
参数
-
[in]
|
node
|
The
BaseVideoPost
connected with the
VideoPostData
instance. Equal to
static_cast
<
BaseVideoPost
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed video post.
|
[in]
|
p
|
The rendered point for volume caustics.
|
[in]
|
cpu_index
|
The index of the current running thread (
0
to cpu_cnt-
1
), so that the volume caustics calculation get this information passed.
|
-
返回
-
The volume caustics component.
◆
CreateRay()
Called to let the video post create its own rays for the pixel at (
x
,
y
).
-
注意
-
VIDEOPOSTINFO::CUSTOMLENS
needs to be returned by
GetRenderInfo
to use this feature.
-
参数
-
[in,out]
|
dst
|
The custom ray. Change the ray's parameters.
|
[in]
|
x
|
The X coordinate of the pixel.
|
[in]
|
y
|
The Y coordinate of the pixel.
|
◆
CreateExtendedRay()
Called to let the video post create its own extended ray for the pixel at (
x
,
y
).
Improved version of
CreateRay
giving additional information for motion blur and DOF that some custom lens plugins might want to use to correctly compute these effects.
-
注意
-
VIDEOPOSTINFO::CUSTOMLENS
needs to be returned by
GetRenderInfo()
to use this feature.
-
参数
-
[in,out]
|
dst
|
The custom ray. Change the ray's parameters.
|
[in]
|
x
|
The X coordinate of the pixel.
|
[in]
|
y
|
The Y coordinate of the pixel.
|
[in]
|
lensx
|
The lens X. (Value is in the range
0.0
to
1.0
.)
|
[in]
|
lensy
|
The lens Y. (Value is in the range
0.0
to
1.0
.)
|
[in]
|
time
|
The time. (Value is in the range
0.0
to
1.0
.)
|
◆
StereoGetCameraCountEditor()
Called to return the number of stereoscopic editor cameras.
-
参数
-
[in]
|
node
|
The
BaseVideoPost
connected with the
VideoPostData
instance. Equal to
static_cast
<
BaseVideoPost
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed video post.
|
[in]
|
doc
|
The active document. The caller owns the pointed document.
|
[in]
|
bd
|
The active editor view. The caller owns the pointed view.
|
-
返回
-
The number of stereoscopic cameras.
◆
StereoGetCameraCountRenderer()
Called to return the number of stereoscopic cameras used for rendering.
-
参数
-
[in]
|
node
|
The
BaseVideoPost
connected with the
VideoPostData
instance. Equal to
static_cast
<
BaseVideoPost
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed video post.
|
[in]
|
doc
|
The active document. The caller owns the pointed document.
|
[in]
|
rd
|
The current render settings. The caller owns the pointed render data.
|
-
返回
-
The number of stereoscopic cameras.
◆
StereoGetCameraInfo()
Called to fill the information structure for each stereoscopic camera.
-
参数
-
[in]
|
node
|
The
BaseVideoPost
connected with the
VideoPostData
instance. Equal to
static_cast
<
BaseVideoPost
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed video post.
|
[in]
|
doc
|
The active document. The caller owns the pointed document.
|
[in]
|
bd
|
The active editor view. The caller owns the pointed view.
|
[in]
|
rd
|
The current render settings. The caller owns the pointed render data.
|
[in]
|
index
|
The index of the stereoscopic camera:
0
<=
index
<
StereoGetCameraCountRenderer()
|
[out]
|
info
|
Fill with the stereoscopic camera information.
|
-
返回
-
true
if successful, otherwise
false
.
◆
StereoGetSceneHookID()
Called to return a scene hook ID to store mouse coordinates used for drawing.
-
参数
-
-
返回
-
The plugin ID of the scene hook.
◆
StereoMergeImages()
Called to merge the stereo images for rendering.
settings
contains the stereoscopic render settings.
-
参数
-
[in]
|
node
|
The
BaseVideoPost
connected with the
VideoPostData
instance. Equal to
static_cast
<
BaseVideoPost
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed video post.
|
[out]
|
dest
|
The destination bitmap to fill with the merged stereoscopic image.
|
[in]
|
source
|
The array of stereoscopic images.
|
[in]
|
cnt
|
The number of stereoscopic images in
source
.
|
[in]
|
settings
|
The stereoscopic render settings container.
|
[in]
|
transform
|
The color space transformation:
COLORSPACETRANSFORMATION
|
-
返回
-
true
if successful, otherwise
false
.
◆
RenderEngineCheck()
Called to enable video post effects only for certain render engines or to allow only certain render settings tabs, e.g. if the video post is a render engine itself.
For example to disable the video post effect for the Cineman renderer:
Bool
MyEffect::RenderEngineCheck(
BaseVideoPost
*node,
Int32
id
)
{
// The following render engines are not supported by this effect
if
(
id
==
RDATA_RENDERENGINE_CINEMAN
)
return
false
;
return
true
;
}
Here is how to disable some render settings tabs for a render engine plugin:
Bool
MyRenderer::RenderEngineCheck(
BaseVideoPost
*node,
Int32
id
)
{
switch
(
id
)
{
case
RENDERSETTING_STATICTAB_MULTIPASS
:
case
RENDERSETTING_STATICTAB_ANTIALIASING
:
case
RENDERSETTING_STATICTAB_OPTIONS
:
case
RENDERSETTING_STATICTAB_STEREO
:
return
false
;
}
return
true
;
}
-
参数
-
-
返回
-
true
to enable the render engine or render settings tab passed to
id
,
false
to disable it.
◆
SetDiffuseWeight()
Called to send the current ray weight. The call is made right before each
ComputeDiffuseGI()
.
Each ray has now a weight associated with it, basically how important the ray is. All primary rays start with a weight of
1.0
and as they get "split" their weight is reduced.
For example computing GI within blurry reflections would use much lower weight, assuming each blurry reflection uses
8
samples then the weight would be
1/8
so the GI would only use now
1/8
of the original rays.
-
注意
-
If the video post computes its own GI it should store and use that weight to improve/reduce the quality/time of the GI calculation.
-
参数
-
[in]
|
node
|
The
BaseVideoPost
connected with the
VideoPostData
instance. Equal to
static_cast
<
BaseVideoPost
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed video post.
|
[in]
|
cpu_index
|
The index of the current running thread (
0
to cpu_cnt-
1
). The thread index is important as each thread might use different
weight
.
|
[in]
|
weight
|
The current ray weight.
|
◆
NetFrameInit()
Called to setup all the data for a NET frame.
-
注意
-
These methods are run on the server. The client does not receive any special calls and does not have any hookups but the NET context parameter is simply not
nullptr
.
-
参数
-
[in]
|
node
|
The
BaseVideoPost
connected with the
VideoPostData
instance. Equal to
static_cast
<
BaseVideoPost
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed video post.
|
[in]
|
doc
|
The active document. The caller owns the pointed document.
|
[in]
|
job
|
The render job. The caller owns the pointed render job.
|
[in]
|
assignedClients
|
The initial client count at the moment the frame is about to be rendered.
|
[in]
|
renderData
|
The NET render data. The caller owns the pointed render data.
|
[in]
|
frameBmp
|
The multipass bitmap where the resulting images are expected to be stored (important if the image is to be shown in the
图片查看器
).
|
[in]
|
bt
|
The render thread. The caller owns the pointed thread.
|
[out]
|
realdepth
|
Assign the real image depth.
|
-
返回
-
true
if successful, otherwise
false
.
◆
NetFrameFree()
Called to clean up after rendering the NET frame has been done.
-
注意
-
These methods are run on the server. The client does not receive any special calls and does not have any hookups but the NET context parameter is simply not
nullptr
.
-
参数
-
◆
NetFrameMessage()
Called to send NET frame messages.
-
注意
-
These methods are run on the server. The client does not receive any special calls and does not have any hookups but the NET context parameter is simply not
nullptr
.
-
参数
-
[in]
|
node
|
The
BaseVideoPost
connected with the
VideoPostData
instance. Equal to
static_cast
<
BaseVideoPost
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed video post.
|
[in]
|
remoteUuid
|
The client uuid.
|
[in]
|
data
|
The data the client sends to the server.
|
[in]
|
result
|
An optional return value if the client is expecting a result.
|
-
返回
-
true
if successful, otherwise
false
.
◆
NetCreateBuffer()
Called to to create specialized buffers e.g. for Normal and Position passes.
-
注意
-
These methods are run on the server. The client does not receive any special calls and does not have any hookups but the NET context parameter is simply not
nullptr
. If the video post has the flag
VIDEOPOSTINFO::NETCREATEBUFFER
set
NetCreateBuffer
will be called by the server.
The plugin should then update the multipass buffer, and return the buffer
id
and
subid
.
-
参数
-
[in]
|
node
|
The
BaseVideoPost
connected with the
VideoPostData
instance. Equal to
static_cast
<
BaseVideoPost
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed video post.
|
[in]
|
vps
|
The video post information. The caller owns the pointed video post struct.
|
[in]
|
x
|
The X position in the buffer that needs to be filled.
|
[in]
|
y
|
The Y position in the buffer that needs to be filled.
|
[in]
|
sizex
|
The width in the buffer that needs to be filled.
|
[in]
|
sizey
|
The height in the buffer that needs to be filled.
|
[in]
|
id
|
Assign the buffer ID.
|
[in]
|
subid
|
Assign the buffer sub-ID.
|
-
返回
-
true
if successful, otherwise
false
.
◆
GetMotionInfo()
Called to return the motion blur information.
-
由于
-
R17.032
-
参数
-
[in]
|
node
|
The
BaseVideoPost
connected with the
VideoPostData
instance. Equal to
static_cast
<
BaseVideoPost
*>
Get()
. Provided for speed and convenience.
Cinema 4D
owns the pointed video post.
|
[in]
|
info
|
The motion blur information.
|
-
返回
-
true
if successful, otherwise
false
.
#define RENDERSETTING_STATICTAB_STEREO
Render settings Stereoscopic tab.
定义:
ge_prepass.h:5448
#define RENDERSETTING_STATICTAB_OPTIONS
Render settings Options tab.
定义:
ge_prepass.h:5447
RENDERRESULT
定义:
ge_prepass.h:409
@ RENDER
Called before the rendering process starts and before shaders are initialized.
@ OK
Function was successful.
VIDEOPOSTCALL vp
the VideoPost call: VIDEOPOSTCALL
定义:
c4d_videopostdata.h:85
#define VPBUFFER_ALPHA
Alpha multipass channel (for SDK request only).
定义:
c4d_videopostdata.h:152
@ RDATA_RENDERENGINE_CINEMAN
定义:
drendersettings.h:43
maxon::Int32 Int32
定义:
ge_sys_math.h:58
#define RENDERSETTING_STATICTAB_ANTIALIASING
Render settings Anti-Aliasing tab.
定义:
ge_prepass.h:5446
#define RENDERSETTING_STATICTAB_MULTIPASS
Render settings Multi-Pass tab.
定义:
ge_prepass.h:5445
maxon::Bool Bool
定义:
ge_sys_math.h:53