在SceneKit中使用PBRLightingModel时如何将金属度设置为浮点值?

时间:2017-01-13 08:55:21

标签: scenekit

在Xcode 8中, SceneKit Editor 允许您在使用 SCNLightingModelPhysicallyBased 时为metalness属性设置浮点值。选项包括Metallic,Dielectric,Float Value或图像。选择Metallic将金属度设置为1.选择Dielectric将其设置为0。

Metalness Scene Kit Editor

金属度设置为1(在 SceneKit Editor 中允许)的程序化等效项是什么? metalness是一个只读属性。那么,我唯一的选择是将someMaterial.metalness.contents设置为金属度地图图像吗?

1 个答案:

答案 0 :(得分:6)

某些素材属性(例如metalnessroughness)会为NSNumber接受contents

// Objective-C
material.roughness.contents = @0.5;
// Swift
material.roughness.contents = NSNumber(value: 0.5)

看起来在线文档尚未发现,但SCNMaterialProperty的标题文档包含此信息。