光照函数

使用材质作为光源来投射光照。

Windows
MacOS
Linux

lighting_overview_banner_001.png

本质上而言,光照函数(Light Functions) 就是一种材质,可用于过滤光照的强度。

但需要注意的是,你无法使用光照函数来修改光照颜色,只有"光照颜色"设置可以修改。此外,静态光照无法使用光照函数,因为这个功能只适用于未应用光照贴图的光源(例如静态光源和可移动光源)。

下图中,材质使用了Panner和ScalarParameter节点来移动纹理并生成闪烁效果。

点击查看大图。

创建光照函数

你可以将材质的材质域设置成"光照函数(Light Function)"属性,以此创建一个光照函数。

MAT_LightFunction.png

应用光照函数

你可以使用 细节 面板中的 光照函数材质(Light Function Material) 设置,将光照函数应用到光源上。

AddLightFunction.png

已知问题和常见提问

下文介绍了在正向渲染中使用光照函数时,已知的一些问题。

  • 光照函数只有在启用投射阴影时才能工作: 出现这种情况是因为 FScene::AssignAvailableShadowMapChannelForLight 只为阴影投射光源分配了一个阴影贴图通道。光照函数需要渲染进阴影贴图,才能传递给正向渲染中的基础通道。

  • 光照函数只有在存在一个阴影投射对象时才能工作: 出现这种情况是因为 FDeferredShadingSceneRenderer::RenderForwardShadowProjections 会跳过光源,除非 VisibleLightInfo.ShadowsToProject.Num() > 0

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback