ARKIT - 3d文本 - 最先进的

问题描述 投票:1回答:1

请求是能够从键盘渲染arkit测试输入。

到目前为止,我已经使用了SCNText,它是简单的2D文本的3d渲染。我对该结果不满意,因为文本显然是X / Y平面中2D文本的3D空间中的投影。同样应用像“霓虹灯”这样的效果是无效的。目前唯一突然出现的是:

a-为每个char创建一个表示字符的.DAE对象b-导入.DAE并用字符映射它们

这种方法非常耗时,甚至不知道可能的并发症。同时考虑到不同的语言,它将涉及进一步的工作以适应不同的语言。

问题:

1-是否有人熟悉并已实施? 2-是否有更好的解决方案来解决这个问题? 3-有没有办法为单个字符构建.DAE?

谢谢。

arkit
1个回答
0
投票

您可以设置SCNText的extrusiondepth参数,使其看起来更“3D”:

Apple:例如,如果其extrusionDepth属性为1.0,则几何体沿z轴从-0.5延伸到0.5。挤出深度为零会产生平坦的单侧形状 - 几何体仅限于z坐标为0.0的平面,并且只能从其正面看到,除非其材质的isDoubleSided属性为true。

你也可以使用NSAttributedString来增加一些额外的“效果”。

最后你说你希望SCNText基于键盘输入动态显示?

创建一个TextField并将其添加到您的视图中,例如:

    let textField =  UITextField(frame: self.view.bounds)
    self.view.addSubview(textField)
    textField.backgroundColor = .clear
    textField.becomeFirstResponder()
    textField.addTarget(self, action: #selector(textFieldDidChange(_:)), for: .editingChanged)

回应输入:

 @objc func textFieldDidChange(_ textField: UITextField) {

  //Set The SCNText Here

   displayLabel.string = textField.text

}
© www.soinside.com 2019 - 2024. All rights reserved.