繁体   English   中英

如何在ARKit中制作自然光?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM