Redshift The Irradiance Point Cloud GI Engine辐射点云GI

计划你大爷计j 发表于 2022-7-25 15:48 | 显示全部楼层 |阅读模式
How It Works工做原理
When multiple GI bounces are needed, each ray has to bounce a few times around until it reaches a light. Because the ray bouncing happens randomly finding lighting, in some ways, is left to chance. Using more rays improves these chances, which is why increasing the ray counts always produces cleaner results.

The Irradiance Point Cloud attempts to improve the situation by computing a coarse GI approximation on random points around the scene. In some ways it’s similar to the Irradiance Cache except:
Irradiance Point Cloud通过一种在随机点四周粗略的GI近似来提供渲染质量,它的过程与Irradiance Cache很近似,除了以下不同:

It creates points in places that might not be visible to the camera. This necessary because multiple GI ray bounces will very often land on out-of-camera-frustum locations.

The points don’t care too much about creases and detail. This is done to conserve memory and improve computation time.

Redshift The Irradiance Point Cloud GI Engine辐射点云GI-1.jpg

The figures below show how the Irradiance Point Cloud works
下面这幅图展示Irradiance Point Cloud是怎样工做的:

During the irradiance point cloud computation pass, rays are shot from the camera, create points on intersections and are bounced around. That creates a ‘blanket’ of points around the scene. A coarse GI solution is incrementally computed on each of these points.
在Irradiance Point Cloud计算过程中,射线从相机射出,遇到物体外表后构成点,并向四周反弹,之后构成一层覆盖场景的点。通过对这些点递进式计算,能够得到一个初略的GI计算成果。

Redshift The Irradiance Point Cloud GI Engine辐射点云GI-2.jpg

During Irradiance Caching or Brute-Force primary GI, these points are used to compute a smoother GI result. Here, the lighting of an irradiance cache point (shown in white) is computed using the irradiance point cloud.
当使用Irradiance Cache或者Brute Force做为Primary GI时,通过这些信息点,能渲染得到一个更为平滑的成果。下图Irradiance Cache点(白色点)就是使用Irradiance Point Cloud(辐射点云信息)来计算的。

Redshift The Irradiance Point Cloud GI Engine辐射点云GI-3.jpg
Looking at the second figure, if we didn’t have the point cloud enabled, the irradiance cache point (white point) would have to shoot the rays shown as dashed arrows and then bounce those rays off the wall. Finding lighting this way would be hard. Using the irradiance point cloud, instead, each of these dashed array rays gets back lighting that is of higher quality.
看第二张图,假如我们不使用点云,Irradiance Cache点(白色点)就必须再发射射线(虚线箭头所示)到四周场景,再从墙壁上反弹这些射线。以这种方式寻找光源计算很大。借助于Irradiance Point Cloud(辐射点云),得到的光源信息质量更高。

Even though each one of these points contains a coarse lighting solution (meaning it can be fairly noisy), that is often not a big issue with secondary GI lighting. The same applies to the Photon Map when it’s used as a secondary GI engine: it might be a bit splotchy, but the final result can still be clean.
虽然每个信息点搜罗的信息只是粗略近似,但用做Second GI还是足够了。同样当Secondary GI选择Photo Mapping时,也是类似的条件,虽然有斑块,但最终呈现出来的成果照旧会是干净的。

Later in this document there are pictures that shown the kind of visual benefit you can expect from the Irradiance Point Cloud.
下面展示的是使用Irradiance Point Cloud的几个特点。

Helps make Brute-Force and Irradiance Caching faster and cleaner 协助Brute Force 和Irradiance Cache渲染更快更干净。
Certain very difficult lighting scenarios can only be rendered with this technique! (i.e. they would take an extremely long time with purely brute force techniques)能够灯光对照度挺大的场景(假如用Brute Force渲染会花费大量的时间。)

Requires some storage (but, typically, not much) 占用存储空间(但不会很多)
There are a few settings to tweak so a bit of experimentation is required.需要调节一些参数。
Only provides a benefit when multiple bounces are needed, if the scene contains lots of lights or when the lighting conditions are difficult只要在多重反弹和极端的灯光配置中才浮现出优势。不然,用Brute Force能到达同样的效果,且不需要额外的预测计算进程和存储开销。


Mode/Filename 形式 文件名
When “Mode” is set to “Rebuild (don’t save)”, Redshift will compute a new irradiance point cloud from scratch (for each frame) but will not save it to disk. The frame will be rendered to completion.
当形式设置为Rebuild (don’t save) (重建 不保留)时,Redshift会计算新的Irradiance Point Cloud但不会存储到硬盘。这一帧将被完好渲染出来。

When “Mode” is set to “Rebuild (prepass only)”, Redshift will compute a new irradiance point cloud from scratch (for each frame) and will save it to the user-specified file. The final rendering pass will be skipped.
当形式设置为Rebuild(Prepass only)(重建 估计算)时,Redshift会计算新的Irradiance Point Cloud而且存储到硬盘。最终渲染过程会被跳过。

When “Mode” is set to “Rebuild”, Redshift will compute a new irradiance point cloud from scratch (for each frame) and will save it to the user-specified file. The frame will be rendered to completion.
当形式设置为Rebuild(重建)时,Redshift会计算新的Irradiance Point Cloud而且存储到用户指定文件内。这一帧将被完全渲染出来。

When “Mode” is set to “Load”, the computation stage is skipped and the data is loaded from the user-specified file. The frame will be rendered to completion.

Number of frames to blend交融帧数
The “Number of frames to blend” parameter is only enabled when the “Mode” is set to “Load”. It allows averaging the results of multiple irradiance point cloud files (one for each frame) together in order to improve any flickering effects that might be present because of insufficient quality settings and/or difficult lighting situations. Please refer tothis sectionbelow for more information on how to use the “Rebuild (prepass)” and “Load” modes. Since this mode has to do with loading and blending multiple frames before rendering, it’s only available for the “Load” mode and is grayed out for the “Rebuild” modes.
Number of frame to blend参数仅当形式为Load时起做用。它使得渲染器在渲染时先计算多个帧的点云信息的均匀值,再操做均匀值来制止由于渲染质量开得不到高和灯光条件很苛刻所构成的闪烁。使用Rebuild(Prepass)和Load形式的调节方案详见下面的内容。由于该形式具有渲染之前做加载和缓存的混合工做。所以仅适用于加载形式。在重建形式下,显示为灰色不成用。

Irradiance Point Cloud data is view-dependant which means that it has to be re-generated when either the camera or any objects move. It also has to be regenerated if lights change (position or intensity) and if materials are adjusted.
Irradiance Point Cloud信息是随着视角变革和变革的。无论是物体挪动还是视角运动,都需要从头计算。同样改变灯光强度和位置以及改变材质,也一样需要从头计算。

Show Calculation显示计算过程
Due to the way the irradiance point cloud works, it can be very hard to directly visualize it, unfortunately. So what this option does is show the color results of the rays shot from the camera. For this reason, it looks like progressive rendering.
Irradiance Point Cloud的计算特点意味着它无法被直不雅观的不雅察看。这一选项能给用户反响一些来自摄像机射线生成的色彩黑点效果,功能上有些类似于渐进式渲染。

The overhead of this option can be significant on some very simple scenes so disabling “Show Calculation” can make the computation a bit faster.

Screen Radius显示尺度
Like mentioned above, the Irradiance Point Cloud algorithm stores points around the scene. It can’t storea point for each ray that was shot from the camera because doing so would generate an extremely large number of points for high-resolution images. Instead, it uses a screen-space metric to space out these points. So the “Screen Radius” parameter refers to pixels.
像上面所提到的,Irradiance Point Cloud 算法存储场景中信息点,假如渲染分辨率很高,那它不会存储所有从相机发出射线产生的信息点,那样数据量会过大。取而代之,Irradiance Point Cloud使用Scene-Space Metric(显示空间单元)来隔开这些点,因而Scene Radius 参数实际上单元是像素。

This parameter affects two things:这个参数影响两点:
1、The used videocardmemory. Setting “Screen Radius” to larger values means that fewer points will be created and, therefore, less videocard memory will be used.
被使用的显卡显存。设置更大的Screen Radius意味着产生更少的点,以及更少的显存占用。

2、How often the results can be used by the primary GI engines. If the points are very far apart (because of a large screen radius), then the primary GI engines (Irradiance Cache, Brute-Force) will not use them as often (and depending on the “Retrace Threshold” parameter). So this can effect the performance of these two primary GI engines. Therefore, lower screen radius values can translate into better rendering performance.
成果能被Primary GI引擎操做多少。假如信息点之间的间隔很大Screen Radius参数控制,则PrimaryGI引擎(Irradiance Cache,Brute Force)会减少调用它们的次数(也受Retrace Threshold参数的影响)。因而这一参数会影响上面两种 PrimaryGi引擎的效率。 也就是说Screen Radius越小,意味着更快的渲染速度。

Often times a setting of 8 or 16 will work fine. If you scene is of a high resolution (2K or larger) you can try larger values such as 32 or 64.

If your videocard has enough VRAM (2GB or more), we strongly suggest using relatively low screen radius values, such as 8 for the performance reason explained above.
假如显卡显存足够(2G以上)我们强烈建议使用较低的Screen Radius好比说8,来提升渲染速度。

Samples Per Pixel单个像素采样
This parameter controls the quality of each point. In some ways, this works like “Num Rays” for Brute-Force or the Irradiance Cache, i.e. larger values produce smoother results. Scenes that are fairly well-lit (large light sources or several of them covering most surfaces) can use values such as 8 or 16. Harder lighting scenarios (small bright light sources or lighting coming through small openings) will need higher settings such as 32 or 64.
这个参数控制每个信息点的质量。类似于Brute Force或者Irradiance Cache中的Num Rays,数值越大,成果越平滑。假如场景光源条件比较好(大型光源或者多个光源覆盖大部门区域)能够用8或者16。假如光源条件苛刻(小光源或者小窗口照射)则需要32或者64

The “Screen Radius” can also play a role in the final point quality. If you increase “Screen Radius” there are fewer points so each point will receive more rays and, hence, be smoother.
Screen Radius也在一定程度上影响最终像素点的质量。Screen Radius越大,产生的信息点越少,像素点就要依赖更多的采样射线,因而渲染明成果也更平滑。

Filter Size过滤尺寸
As shown in the figures near the top of this document, the Irradiance Point Cloud is used by Brute-Force or the Irradiance Cache. When rays shot by Brute-Force or an Irradiance Cache point hit a surface, the closest Irradiaince Point Cloud points are found and used. The “Filter Size” controls how many of these “closest points” the algorithm should use.
如文档最前面的图所示,Irradiance Point Cloud是用来辅助Brute Force或者 Irradiance Cache的。当使用Brute Force或者Irradiance Cache算法发射的采样射线触及物体外表时,最近处的Irradiance Point Cloud信息点会被使用。Filter Size决定算法将使用多少最近处的Irradiance Point Cloud信息点。

Larger numbers will smooth out the points but will take longer to render. The default 2 value should work for most cases. We generally recommend smoothing out the Irradiance Point Cloud using more “Samples Per Pixel” instead of increasing “Filter Size”.
数值越大,成果就越平滑。但渲染时间会加长。默认为2适用于绝大大都场景。要使成果平滑,通常建议优化增加Sample Per Pixel,而不是调整这个参数。

Retrace Threshold光线追踪阈值
The Irradiance Point Cloud is constructed without too much care about scene detail (creases, corners, etc). This is done to conserve memory. Not doing so would mean creating a very large number of points around corners – like the Irradiance Cache has to do.
Irradiance Point Cloud其实不负责处置场景中的细节,用它只能为了节省内存。因为假如不使用,在场景中的那些拐角处就会产生太多的信息点。这与Irradiance Cache的行为很类似。

For this reason, using the Irradiance Point Cloud as a secondary GI engine can sometimes create splotchy artifacts near corners or cause light leaks. The “Retrace Threshold” parameter prevents Brute-Force or Irradiance Cache from using points in these places. The larger the “Retrace Threshold” is, the more these points will not be used around corners and creases.
由于这个原因,用Irradiance Point Cloud为做Secondary GI引擎,有时会在拐角处呈现斑块或者发生漏光。Retrace Threshold参数会在这些区域抑制Brute Force或者 Irradiance Cache使用点信息计算。值越大意味着拐角和褶皱处有更多信息点被关掉掉。

When using Irradiance Cache as the primary GI engine, values such as 1 or 2 as usually sufficient.
当使用Irradiance Cache做为Primary GI引擎时,用1或者2足以。

When using Brute-Force as the primary GI engine, values such as 2 or 3 are usually sufficient. Brute-Force is a more accurate technique than Irradiance Cache so any artifacts would be more visible. This is why this value has to be higher for Brute-Force than the Irradiance Cache.
当Brute Force做为Primary GI引擎时,能够用2或者3。Brute Force比Irradiance Cache更准确,因而更便利产生明显的噪点。这就是Brute Force 比Irradiance Cache 需要更大的Retrace Threshold的原因。

How To Use怎样使用
Using the Irradiance Point Cloud is very easy. All you have to do is select it as a secondary GI engine and (typically) only tweak “Screen Radius” and “Samples Per Pixel”.
使用Irradiance Point Cloud很便利。只需要将它用于Secondary GI引擎,然后只需要调节Screen Radius和Sample Per Pixel。

First, we demonstrate the benefits of the Irradiance Point Cloud.
首先,我们来看使用Irradiance Point Cloud的优势。

Both of the scenes shown below were rendered with the primary GI engine set to Brute-Force. “Num Rays” was set to a high number: 4000. There is 1 GI bounce in these scenes.
下面的两个场景我们设置Primary GI 为Brute Force。Num Ray=4000。一次GI反弹。

The first image used Brute-Force for the secondary GI engine while the second image used Irradiance Point Cloud for the secondary GI engine. The second image was rendered approximately twice as fast and is cleaner, too!
Irradiance Point Cloud做为Secondary GI引擎,第二张图渲染时间是第一张图的一半,但和第一张图一样干净。

Using Brute-Force as the secondary GI engine. Even with 4000 rays, there is noise everywhere.
使用Brute-Force做为Secondary GI引擎。4000采样射线,照旧四处是噪点。

Redshift The Irradiance Point Cloud GI Engine辐射点云GI-4.jpg

Using the Irradiance Point Cloud as the secondary GI engine. The results are much cleaner and the frame was completed in nearly half the time.
使用Irradiance Point Cloud做为Secondary GI引擎。这个成果更干净,渲染节省一半的时间。

Redshift The Irradiance Point Cloud GI Engine辐射点云GI-5.jpg
We will now demonstrate the effect of the Irradiance Point Cloud parameters.
然后再看看Irradiance Point Cloud参数做用。

The image below is using “Screen radius” of 4, “Samples per pixel” 8, “Filter Size” 3 and “Retrace Threshold 0”. We intentionally made the retrace threshold 0 to demonstrate the splotchy effects near corners. These artifacts exist because the Irradiance Point Cloud was created with a fairly low number of samples per pixel (8), so the points are noisy. The recommended way to fix this issue is to use a larger retrace threshold. For Brute-Force values such as 3 or 4 work fine. For Irradiance Caching, you can use values like 1 or 2. Of course, there  might be scenes that might not exhibit such issues – for these scenes you can lower the retrace threshold.
下图Screen Radius=4,Samples Per Pixel=8,Filter Size=3,而Retrace Threshold=0。当我们设置Retrace Threshold=0时,会看到角落中有很多黑点污迹。这种污迹的存在是因为点云初始Samples Per Pixel很低(8),以致于信息点是充满噪点的。我们定见处置方式是增加Retrace Threshold。假如使用Brute-Force做为Primary GI引擎的话,Retrace Threshold=3或者4。假如使用Irradiance Cache做为Primary GI引擎的话,Retrace Threshold=1或者2。当然,有些场景底子没有噪点问题。那么能够再降低retrace threshold。

Increasing “Retrace Threshold” means that the primary GI engine will not use the points near corners so, instead, it will have to shoot rays. Shooting rays is slower than simply using points, so increasing “Retrace Threshold” can make the rendering a bit slower during the Irradiance Cache computation stage (if Irradiance Cache is selected as the primary GI engine) or during final rendering (if Brute-Force is selected as the primary GI engine).
增加Retrace Threshold意味着Primary GI引擎在拐角处将不使用信息点,而使用更多的射线采样。射线采样花费的时间要比简单的使用信息点要长,因而,增加Retrace Threshold会导致Irradiance Cache计算过程时间加长(假如Primary GI用是的Irradiance Cache)或者导致最终渲染时间变长(假如Primary GI引擎是Brute-Force)

Retrace Threshold set to 0. With 8 samples per pixel, the points are noisy so artifacts appear near corners
Retrace Threshold=0 Samples Per Pixel=8,信息点充满噪点,因而在角落附近呈现噪点。 

Redshift The Irradiance Point Cloud GI Engine辐射点云GI-6.jpg

Now the samples per pixel was raised to 64 which make the Irradiance Point Cloud computation stage longer, but the corner artifacts were improved. There are still some, though.
如今Samples per Pixel=64,Irradiance Point Cloud时间更长,角落附近的噪点有改善,但黑点还是存在。

Redshift The Irradiance Point Cloud GI Engine辐射点云GI-7.jpg

Using 8 samples per pixel but a retrace threshold of 3. The Irradiance Point Cloud computation was fast (because of the low “Samples per pixel”) and doesn’t have issues. The final rendering was a bit slower, though.
Samples Per Pixel=8,但Retrace Threshold=3。Irradiance Point Cloud非常快(由于Samples Per Pixel很低)最终渲染速度虽然慢一点,但噪点没有了。

The corner artifacts will typically be as large as “Screen Radius”. This means that reducing “Screen Radius” will shrink the artifacts. Smaller artifacts also mean faster rendering times because “Retrace Threshold” will not have to work as hard.
拐角处的色斑通常与Screen Radius设定一样大。也就是Screen Radius会缩小色斑。色斑小也意味着渲染更快。因为Retrace Threshold参数应该相应放松一些。

Because the Irradiance Cache can also generate corner artifacts (if its “Num Rays” is low or “Adaptive Error Threshold” is too high) it can sometimes be a bit confusing understanding which GI engine is responsible for these artifacts. There is a fairly simple rule of thumb: if you set your “Retrace Threshold” properly (i.e. 1 or 2 for the Irradiance Cache) and you are seeing corner artifacts then it’s most likely that it’s the Irradiance Cache itself that is responsible – and not the Irradiance Point Cloud.
由于Irradiance Cache也会在拐角产生色斑(假如Num Rays数值很小或者Adaptive Error Threshold设置很大)。这一点可能有点难以理解。有一些很简单的规则经历:假如正确设置了Retrace Threshold(好比1或者2,用于Irradiance Cache),假设在拐角处有色斑,那么大多条件是因为Irradiance Cache自己的设置构成的,这些噪点与Irradiance Point Cloud设置无关。

The pictures below use the Irradiance Cache as the primary GI engine. “Retrace Threshold” was set to 1.
下两张图Primary GI引擎是Irradiance Cache,Retrace Threshold设置为1。

Using Irradiance Cache as the primary GI engine. “Num Rays” set to 1000 and “Adaptive Threshold” set to 0.001. The corners exhibit artifacts because of the low “Num Rays”
使用Irradiance Cache做为 Primary GI引擎。Num Rays设置为1000,Adaptive Threshold设置为0.001。拐角处呈现了斑块。这是因为Num Rays数太低构成的。

Redshift The Irradiance Point Cloud GI Engine辐射点云GI-9.jpg

The Irradiance Cache “Num Rays” was raised to 4000 and the artifacts are now gone.
将Num Rays进步到4000斑块消失了。

Redshift The Irradiance Point Cloud GI Engine辐射点云GI-10.jpg

How to use “Rebuild (prepass)” and “Load” modes to improve/eliminate flickering artifacts

怎样使用Rebuild (prepass)和Load形式减少斑块污迹和人工效果

Irradiance point cloud prepass/load modes are mostly useful when combining it with brute-force GI. If you are using the irradiance cache for your primary GI engine, then you should use the irradiance cache’s own prepass/load modes. While it would be possible to do multiple passes (create irradiance point cloud files with prepass, then set them to load/blend and then create the irradiance cache files, etc), this would be too elaborate and, in most cases, will provide minimal benefits.
在与Brute-Force GI引擎结合使用时,Irradiance Point Cloud的Prepass/Load形式非常有用。假如使用Irradiance Cache做为 Primary GI,则应该用Irradiance Cache本人的Prepass/Load形式。虽然能够将其细分为多个阶段(首先用Prepass生成Irradiance Point Cloud信息文件,再将这些文件Load/blend,然后再生成Irradiance Cache文件等等),但这样有些细化过度了。大都条件,这种细化其实不能带来多少真正的优化。

When combining the irradiance point cloud with brute-force GI, slight flickering artifacts might appear during animations. These artifacts are quite rare and mostly happen if the lighting conditions are very hard and not enough “Samples per pixel” have been used.
当使用Brute-Force GI与Irradiance Point Cloud辅助的时候,动画序列可能会有闪动。这种条件只要在灯光条件极为苛刻,且Sample Per Pixel设置不到多的时候呈现。

1、If you encounter any such artifacts, you can try the following procedure:假如你遇到这种条件,能够采纳下方案:

First, select “Rebuild (prepass)” and select an appropriate filename – or use the default filename.

2、Render your animation. During rendering, one irradiance point cloud file for each frame will be generated but the final rendering pass will be skipped.
渲染序列。此时每帧Irradiance Point Cloud文件会被计算生成,最终渲染序列不会产生。

3、Then, select the “Load” mode and adjust the “number of frames to blend” parameter. Render your animation. For each frame, Redshift will now load a number of ‘neighboring frame’ irradiance point cloud files, blend them together and use the blended result to render the final frame. Because of this inter-frame blending, any temporal artifacts (flickering) will be reduced or even eliminated.
然后选择Load形式,并调节Number Of Frames To blend参数,然后渲染序列。Redshift会在每一帧时读取相领帧的Irradiance Point Cloud信息,并将它们混合在一起,用混合后的成果做为最终的渲染输出。最终所有闪烁问题会被抑制或者消除。

The “number of frames to blend” parameter controls how many ‘neighboring’ irradiance point cloud files will be loaded and blended together. For example, a setting of 2 means “load the previous two and next two frames”. So, for this example, the algorithm will blend 4 neighboring frames plus the current frame, i.e. 5 frames together. A setting of 1 means “load the previous and next frames”, so 3 frames will be blended together.
Number of frames to blend用于控制有多少相领的帧混合进来。2意味着之前2帧和之后的2帧都考虑进来。在这个例子中,相邻的4帧和当前帧一共5帧被混合在一起。假如设为1,则暗示前后两帧加当前帧,共3帧混合。

Larger numbers of blended frames means less flickering. However, blending too many frames together can create a light ‘ghosting’ or ‘lagging’ effect in scenes with fast moving objects or lights. If your irradiance point cloud settings are properly adjusted, a setting between 2 and 4 should be sufficient to improve artifacts to the point of either being completely eliminated or barely visible.
数值越大,渲染成果闪烁缺少。混合太多帧的话会产生拖尾,只要设置Irradiance Point Cloud正确,2-4的值就能包管没有闪烁问题。

Irradiance point cloud files can be large so be sure to select a folder/drive that has enough free space.
Irradiance Point Cloud 文件很大,需要确保指定位置有足够的空间。

Memory Considerations内存打点
If you are rendering very high-resolution images and “Screen Radius” is low, you might get an error regarding the points not fitting in the allotted GPU memory space. The message will read like this:
假如渲染分辨率很高Screen Radius又很小,可能会渲染呈现错误,陈述没有足够的GPU显存空间。

Irradiance point cloud doesn't fit in VRAM. Frame aborted. Please either increase the 'Screen Radius' parameter or the irradiance point cloud memory budget in the memory options
Irradiance Point Cloud无法载入显存。忽略当前渲染。请增加Screen Radius参数或者在Memory Option中进步Irradiance Point Cloud显存配额。

Like the message suggests, you have two options:遇到种条件,有两个处置法子:
1、Increase “Screen Radius”. This should drastically reduce the memory requirements and, for high resolution images, will not affect image quality.
增大Screen Radius,这能极大程度节省显存消耗。

2、Increase the Irradiance Point Cloud memory in the options. If your GPU has enough memory, you can try increasing the 64MB to something like 80MB or 120MB
增加Irradiance Point Cloud显存设置。只要GPU有足够的显存可用,能够增加这个值到64MB、80MB以至120MB。
寒郁轩良 发表于 2022-7-25 15:49 | 显示全部楼层
“Screen Radius越大,信息点之间的距离就越大,主引擎就会减少调用它们的次数"为什么调用次数越少反而计算速度越慢?
您需要登录后才可以回帖 登录 | 立即注册



菜鸟C4D推荐上一条 /9 下一条


( 浙ICP备13033195号-2 )Copyright 2013-2022;菜鸟C4DPowered by Discuz! 技术支持:菜鸟C4D