- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个节点 (nodeCollection),它有一个 SCNNode 作为子节点,它是这样创建的:
let boxGeo = SCNBox(width: 1, height: 1, length: 1, chamferRadius: 0.0)
let node = SCNNode(geometry: boxGeo)
node.physicsBody = SCNPhysicsBody.staticBody()
我也像这样创建 redbox 节点:
let redBox = SCNNode()
redBox.geometry = SCNBox(width: 0.5, height: 0.5, length: 0.5, chamferRadius: 0.1)
redBox.geometry?.firstMaterial?.diffuse.contents = UIColor.redColor()
redBox.position = SCNVector3Make(0, 1, -2)
redBox.physicsBody = SCNPhysicsBody.dynamicBody()
然后我运行下面的代码让节点旋转
let rotateAction = SCNAction.rotateByAngle(CGFloat(M_PI_2), aroundAxis: SCNVector3Make(0, 0, 1), duration: 0.15)
rotateAction.timingMode = .EaseInEaseOut
nodeCollection.runAction(rotateAction)
然后我将 nodeCollection 和 redBox 作为子节点添加到 SCNScene
但是正如您所看到的,当我在 nodeCollection 上执行旋转时,redBox 的物理特性不成立。 当红色盒子落在场景中并停止并停留在蓝色盒子上时,物理原理起作用
我怎样才能解决这个问题,以便当蓝色框旋转时,它不会直接穿过红色框
最佳答案
尝试将蓝框的 physicsBody 类型更改为kinematic
,静态物体不应该移动。
关于ios - SCNAction.rotate 剪辑通过其他节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39233831/
我对 Swift 和 IOS 开发还很陌生,所以这可能是一个简单的问题,但我很难在互联网上找到答案。 我试图通过在其中一个节点上运行 SCNAction 来为静态 DAE 模型制作动画。然而,在 SC
我看到的是SceneKit中的崩溃,这是我在iOS 13.1.2之前没有看到的。 我已将问题追查到以下功能,无法完全推测出导致问题的原因。 如果我注释掉在节点上运行操作的行,一切就很好。 我可以在场景
编辑 我比较了在 iPhone(6+、9.3 (13E5200d))(我的默认设置)和 iOS 模拟器(6+ 9.3 (13E5200d))上运行的结果。模拟器按预期工作。为什么两者之间存在差异? 我
我想放下一个物体,然后将它移回顶部,让它再次落下。第一部分工作正常,但随后节点似乎失去了重力并且不再下落。看起来它的物理 body 停留在地板上并且没有被 SCNActions 移动。解决方案是什么?
即使用户一直触摸激活操作的对象,我如何才能只执行一次操作直到完成?示例:一个按钮在按下时使一个盒子落下 'SCNVector3(0, -1, 0)'。如何让按钮在操作完成之前不再执行操作,即使用户正在
我的 SCNAction 不工作,即使编译器到达那里。这是我创建 SCNAction 的代码: println("log 1") //to check the program gets there l
我有一个节点 (nodeCollection),它有一个 SCNNode 作为子节点,它是这样创建的: let boxGeo = SCNBox(width: 1, height: 1, length:
如何为 SCNAction 结束时编写完成处理程序?或者可能只是在操作结束时收到通知。有什么方法可以知道 Action 何时结束?我最后的办法是使用自定义 delay(delay: Double, c
嘿,我正在尝试弄清楚如何以淡出持续时间结束 scnActions moveto 动作。基本上我有一辆车,汽车移动到现场,但一旦 Action 完成就突然停下来。我希望尝试让汽车更平稳地停下来。但我
NodeA 有一个 SCNAction 运行,持续时间为 10 秒。假设 4 秒过去了。如何获得正在进行的 SCNAction 的剩余持续时间(在本例中为 6 秒)? 我计划使用剩余的持续时间来动态创
我们将崩溃的原因确定为在我们的游戏中使用 SCNAction.playAudio 的声明。如果在我们的游戏中调用了任何 playAudio 语句,则 SCNScene/SCNView 的取消初始化稍后
我正在尝试在场景中移动 SCNNode,并限制为 GKGridGraph。沿着吃 bean 人的思路思考,但在 3D 中。 我有一个 ControlComponent 来处理我的 SCNNode 的移
我正在寻找解决我的问题的方法:我已经使用 Xcode 中的 Action 编辑器将动画定义为 SCNAction。现在我想用 slider 来控制它。因此,基本上操纵 slider 会显示动画中的特定
我在我的 3D 世界中有两个 SCNNodes A 和 B。 A 由用户移动,而 B 具有使其从左向右移动的 Action 。这是对 B 的操作: let moveDirection: Float =
嘿,我有一个球,可以通过施加力来移动。我想让它做的基本上是在它通过空气到达目的地时,重力作用在它身上的因果效应。基本上,当“移动到” Action 正在播放时,重力不会产生影响,所以它不会慢慢落到地面
我有一个聚光灯,用下面的代码创建,在我所有的节点上转换阴影: spotLight.type = SCNLightTypeSpot spotLight.spotInnerAngle = 50.0
我有一个场景,其中有一个应该永远运行旋转 Action 的盒子: dps 是可以由用户更改的属性。 override func viewDidAppear() { super.view
如何在没有 key 的情况下暂停或停止 .runActionForever() 调用的 SCNAction?我看到了使用 node.removeActionForKey("action") 的选项,但
我创建了一个玩家可以在其中移动的 SceneKit 3D 迷宫世界。跳跃等一些 Action 涉及上下移动相机,同时在几秒钟的时间内改变观察方向。在此期间,我想忽略用户的点击和滑动,这些点击和滑动通常
我有一个有约束的节点;更具体地说,它有一个 SCNLookAtConstraint : let constraint = SCNLookAtConstraint(target: scene.r
我是一名优秀的程序员,十分优秀!