【问题标题】:RealityKit – How to edit or add a Lighting?RealityKit – 如何编辑或添加照明?
【发布时间】:2020-05-01 23:14:18
【问题描述】:

我正在尝试在我的 RealityKit AR 场景中添加照明。而且我在 Reality Composer 中找不到 Lighting 选项。如果有办法添加Directional Light 或编辑它,请告诉我。我已经尝试过 Apple 文档,但不明白如何添加它们。

【问题讨论】:

  • 你可以在stackoverflow中添加你的图像而不是使用外部服务。如果您的图片被删除,那么对于以后遇到类似问题的人来说,这个问题将毫无意义。
  • 好的,我试试看
  • 不允许我添加图片。
  • 因为我没有足够的积分。它说在帖子中添加图像需要 10 分

标签: swift augmented-reality arkit realitykit reality-composer


【解决方案1】:

目前您无法在 Reality Composer 中执行此操作,您需要使用 RealityKit。因此,您需要创建一个继承自Entity 类并符合HasPointLight 协议的自定义类。在 macOS 项目中运行此代码以了解 PointLight 设置的工作原理:

import AppKit
import RealityKit

class Lighting: Entity, HasPointLight {
    
    required init() {
        super.init()
        
        self.light = PointLightComponent(color: .red,
                                     intensity: 100000,
                             attenuationRadius: 20)
    }
}

class GameViewController: NSViewController {
    
    @IBOutlet var arView: ARView!
    
    override func awakeFromNib() {
        
        arView.environment.background = .color(.black)
        
        let pointLight = Lighting().light
        let boxAnchor = try! Experience.loadBox()
        
        boxAnchor.components.set(pointLight)
        arView.scene.anchors.append(boxAnchor)
        
        boxAnchor.steelBox!.scale = [9,9,9]
        boxAnchor.steelBox!.position.z = -0.5
    }
}

您可以使用相同的方式将定向光添加到场景中。但请记住:定向光的位置并不重要,但方向重要!默认情况下,它朝向北方 (-Z)。

class Lighting: Entity, HasDirectionalLight {
    
    required init() {
        super.init()
        
        self.light = DirectionalLightComponent(color: .red,
                                           intensity: 100000,
                                    isRealWorldProxy: true)
    }
}

也可以阅读我的 STORY 关于 Medium 上的灯。

【讨论】:

  • 好的,我试试
  • 谢谢哥们。照明工作。但是阴影还是太暗了。实际上我希望阴影变暗。有办法吗?
  • Saad,请发表另一个问题(并在此处给我一个链接)。我会尽力回答。
  • 我在这里问了这个问题:stackoverflow.com/questions/59782819/…
猜你喜欢
  • 2015-08-17
  • 2021-11-09
  • 1970-01-01
  • 2012-02-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多