草庐IT

scenekit

全部标签

iOS SceneKit NEON 发光

一直在研究Scenekit上的照明,虽然我现在可以应用照明节点来照亮某些东西,但我正在寻找一种从对象内部照明的方法。举个例子,想象一下NEON或将光转换到其他物体上的灯泡。有什么想法可以实现吗?非常感谢。 最佳答案 正如@DavidRönnqvist在评论中暗示的那样,有多种方法可以使物体看起来发光。您可以一起或单独执行这些操作—您可能需要调整组合它们的方式以获得您想要的效果。对于发光的对象,您可能不希望场景中的其他光源产生阴影。使用emissionMaterial的channel,为对象提供覆盖其他光源阴影的颜色或纹理。(如果您使

ios - Xcode 任何 3D 引擎持续缓慢的内存增加

编辑:我想也许它只是SceneKit但后来我为OpenGL和Metal创建了一个新的Xcode项目,这两个引擎都有与SceneKit相同的问题,内存缓慢增加。有人可以告诉我这是怎么回事吗?正常吗?为什么?我最近开始使用场景工具包,每次我使用SCNAction.repeatForever为任何节点设置动画或使用渲染循环更新旋转或位置时,调试session中显示的内存会缓慢逐渐增加。这甚至发生在apple提供的基础项目中,它像喷气式飞机一样简单旋转,但内存每5-10秒持续增加约.1mb。我让它运行了半个多小时,它一直在增加。我也试过停止动画并且内存没有被释放。我尝试使用多个设备并打开scn

ios - 如何从框架包中加载场景文件 .scn

我有一个场景文件,Tube.scn保存在一个框架中:“BuildPhrases/CopyBundleResources”[截图][1]我正在尝试使用以下方法在框架内加载文件:NSString*filename=@"Tube";NSString*path=[[NSBundlebundleForClass:[selfclass]]pathForResource:filenameofType:@"scn"];NSError*error;self.scene=[SCNScenesceneWithURL:[NSURLURLWithString:path]options:nilerror:&err

ios - 旋转 SCNNode.pivot 后 SceneKit projectPoint 不正确

我想从SCNNode检索屏幕坐标,这样我就可以在SpriteKit叠加层中使用这些坐标。该节点是一个子节点。当我旋转父节点的枢轴projectPoint时返回乱码结果。场景:classScenekitScene:SCNScene{overrideinit(){super.init()letnodeCamera=SCNNode()nodeCamera.camera=SCNCamera()rootNode.addChildNode(nodeCamera)letgeoPyramid=SCNPyramid(width:0.2,height:0.5,length:0.2)letnodeCente

ios - 以编程方式创建 sceneKit 文件(快速)

我想知道是否可以在我的IOS应用程序中以编程方式制作scn文件。或者其他原因,因为我只想在itunes共享中检索创建的对象。提前致谢 最佳答案 是的。SCNScene符合NSSecureCoding协议(protocol)。添加所有节点,然后像在任何其他对象上一样使用NSKeyedArchiver。 关于ios-以编程方式创建sceneKit文件(快速),我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com

ios - 在 SceneKit 中绘制平面

我在场景中创建了一个SCNPlane。我将SCNPlane的漫反射内容设置为图像。现在我需要在飞机上显示其他细节(例如飞机的名称,以及其他简单的绘图,如箭头)。这似乎是一项简单的任务,但我找不到任何相关信息。我应该创建其他几何图形并将它们附加到平面上吗?如果是这样,我如何在不发生z-fighting的情况下做到这一点? 最佳答案 SceneKit中的Material非常灵活。当您将某些东西分配给diffuse或ambient属性时,您正在分配一个SCNMaterialProperty.从Apples文档中,您可以分配:Animage

ios - 在 ARKit session 中左右移动对象

如何在ARKit场景中左右移动对象而不改变其Y轴,如果它在空中那么它不会改变它并且只是在屏幕中左右移动? 最佳答案 这将是一个非常笼统的例子,如果你把你的问题说得更详细或者举例说明你正在尝试做什么,我可以得到更具体的例子。假设您希望对象仅在其x轴上移动,并且您有一个名为selectedObject的SCNNode类型的对象,您可以这样做selectedObject.position=SCNVector3Make(value,selectedObject.position.y,selectedObject.position.z)在这种

ios - Scene Kit节点不旋转

我试图通过场景工具包节点旋转,但它没有旋转。我想让它绕y轴旋转。它是一个球体。letnode=SCNNode()node.geometry=SCNSphere(radius:1)node.geometry?.firstMaterial?.diffuse.contents=UIImage(named:"diffuse.png")node.geometry?.firstMaterial?.specular.contents=UIImage(named:"specular.png")node.geometry?.firstMaterial?.emission.contents=UIImage

ios - 如何在 iOS SceneKit 中使用具有不同场景图的 DAE 文件

我有一个.dae文件,想在SceneKit中使用该模型。问题是.dae文件中有不同的场景图:在我的ViewController.swift中我有这段代码:letscene=SCNScene(named:"art.scnassets/Edward_Kenway.dae")!self.baumNode=scene.rootNode.childNode(withName:"???",recursively:true)我必须在childNodewithName中使用什么?如果我选择第一个场景图(EdwardKenwayNecklace)并将几何体的名称(EdwardKenwayNecklace

ios - 如何在 SceneKit 的 sceneView 中正确地为阴影添加定向光?

我正在学习ARKit。我在增强现实场景中放置虚拟对象并在这些问题上苦苦挣扎!Iamusingthisdemoprojectfromgithub1-如何在SceneKit的SceneView中为所有(单独的)节点仅添加一个定向光并随相机位置移动定向光?这样我添加的阴影也可以随着光线的方向移动。如果我翻译对象阴影正常工作。但是如果我现在旋转物体,阴影不应该在计划中移动。它们在移动,因为光在固定位置。2-只有在我只在平面上添加一个对象的情况下,阴影才会看起来不错。但是,如果我添加两个或更多对象,则会在SceneView中添加更多定向灯。现在每个物体都有不止一个阴影。我希望它只限制一个影子。我