Geometry 来自Scenekit基本体的几何体

Geometry 来自Scenekit基本体的几何体,geometry,vertices,scenekit,Geometry,Vertices,Scenekit,我正在成功地从SceneKit原语中提取矢量数据,非常符合这里的问题/答案: 但这似乎并不适用于SceneKit生成的所有几何体。我可以提取标准长方体、球体等,但倒角或更复杂的几何体(例如,来自SCNText)等特殊功能似乎并不包含在标准SceneKit几何体中。另外:普通SCNBox和SCNSphere仅具有一种几何分辨率,不考虑提供的参数(例如,不同于1.0的尺寸) 有人成功地从SCNText中提取了几何体吗 谢谢 Felix这些基本体的基础几何数据在渲染时或刷新事务时延迟更新 如果要确保

我正在成功地从SceneKit原语中提取矢量数据,非常符合这里的问题/答案:

但这似乎并不适用于SceneKit生成的所有几何体。我可以提取标准长方体、球体等,但倒角或更复杂的几何体(例如,来自SCNText)等特殊功能似乎并不包含在标准SceneKit几何体中。另外:普通SCNBox和SCNSphere仅具有一种几何分辨率,不考虑提供的参数(例如,不同于1.0的尺寸)

有人成功地从SCNText中提取了几何体吗

谢谢


Felix

这些基本体的基础几何数据在渲染时或刷新事务时延迟更新

如果要确保从原语中获取的数据与配置的最新参数匹配,则需要在
SCNTransaction
中创建和配置它们,并在调用
[SCNTransaction commit]
后访问几何体数据,或者可以调用
[SCNTransaction flush]
获取数据之前


这应该适用于每个原语,包括
SCNText

谢谢-这就是解决方案。在读取顶点之前,我尝试将基本体添加到场景中,但SceneKit显然在稍后仍然生成了实际的几何体。以下内容现在可以使用了:
scngometry*geom=[SCNBox-boxWithWidth:1.0 high:2.0 length:3.0 chamferRadius:0.2];self.scnnode.geometry=geom;[交易开始];[self.scene.rootNode addChildNode:self.scnnode];[SCNTransaction提交]您是否尝试过:SCNGeometrySourceSemanticTexcoord?