[英]How to make natural lighting in ARKit?
我希望在ARKit项目中添加的项目的灯光类似于真实对象。 请说明如何实现? 谢谢
您可以通过从lightingModel
参数之一进行选择来将照明添加到SCNMaterial,例如:
要将其中之一添加到SCNMaterial中,您需要做的是:
material.lightingModel = .constant
您还可以通过使用SCNView的以下变量使对象看起来更逼真:
var autoenablesDefaultLighting: Bool { get set }
autoEnablesDefaultLighting
只是一个Boolean
值,它确定SceneKit是否自动向场景添加灯光。
默认情况下,将其设置为false表示:
SceneKit用于渲染场景的唯一光源是场景图中包含的光源。
另一方面,将其设置为true:
渲染不包含光源或仅包含环境光的场景时,SceneKit会自动添加和放置全向光源。
要将此设置应用到SCNView
,您需要做的就是使用以下命令:
augmentedRealityScene.autoenablesDefaultLighting = true
除了这些建议之外,您还可以创建不同类型的灯光以添加到场景中,例如:
func createDirectionalLight(){
let spotLight = SCNNode()
spotLight.light = SCNLight()
spotLight.scale = SCNVector3(1,1,1)
spotLight.light?.intensity = 1000
spotLight.castsShadow = true
spotLight.position = SCNVector3Zero
spotLight.light?.type = SCNLight.LightType.directional
spotLight.light?.color = UIColor.white
}
希望这可以帮助...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.