- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
想知道如何让篮球落入网中并做出嗖嗖的 Action 吗?球上已经存在重力,但由于其形状,它不会完全落入网中。我需要以某种方式使网变得灵活,以允许球(球体)从篮筐顶部进入时穿过。球仅在向下的 1/3 处停止。我正在 Xcode 上试验 iOS ARKit (SceneKit)。谢谢!
球的代码。
let ball = SCNSphere(radius: 0.15)
let material = SCNMaterial()
material.diffuse.contents = UIImage(named: "basketballSkin.png")
ball.materials = [material]
let ballNode = SCNNode(geometry: ball)
ballNode.position = cameraPosition
let physicsShape = SCNPhysicsShape(node: ballNode, options: nil)
let physicsBody = SCNPhysicsBody(type: .dynamic, shape: physicsShape)
ballNode.physicsBody = physicsBody
let forceVector:Float = 6
ballNode.physicsBody?.applyForce(SCNVector3(x: cameraOrientation.x * forceVector,y: cameraOrientation.y * forceVector ,z: cameraOrientation.z * forceVector), asImpulse: true)
sceneView.scene.rootNode.addChildNode(ballNode)
网络代码,除了背板节点之外。
func addBackboard(){
guard let backboardScene = SCNScene(named: "art.scnassets/hoop.scn") else{
return
}
guard let backboardNode = backboardScene.rootNode.childNode(withName: "backboard", recursively: false) else{
return
}
backboardNode.position = SCNVector3(x: 0,y: 0.5,z: -3)
let physicsShape = SCNPhysicsShape(node : backboardNode, options: [SCNPhysicsShape.Option.type: SCNPhysicsShape.ShapeType.concavePolyhedron])
let physicsBody = SCNPhysicsBody(type: .static, shape: physicsShape)
backboardNode.physicsBody = physicsBody
sceneView.scene.rootNode.addChildNode(backboardNode)
currentNode = backboardNode
-路德
最佳答案
两种解决方案值得尝试。一个非常酷的方法是使用 Particle System 创建网络。 ,这不是经典的网络,您可以放置更具创意、复杂和生动的东西,例如。球网可能会因风而移动,然后因击球而改变
其他解决方案可能是创建一系列节点,代表球在球通过槽时网所遭受的不同变化,该序列应该在球接触网内的某个透明节点时开始。
好看,这是一个很好的挑战
关于ios - 让球落入网(子节点)并做出嗖嗖的 Action ? (PhysicsBody/ARKit),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51066528/
我创建了一个库项目,然后构建它,获取 .aar 并解压缩它。获取包含库的 classes.jar 文件,并将其添加到另一个项目中。该项目识别我的文件,我可以从中调用方法和函数。我的问题是我尝试从我的库
这不是现实世界的问题,我只是想了解如何创建 promise 。 我需要了解如何为不返回任何内容的函数做出 promise ,例如 setTimeout。 假设我有: function async(ca
我是 Promise 的新手。我写了两个例子: 第一个是: new RSVP.Promise(function (resolve, reject) { setTimeout(function
我有一个 nodejs (express) 作为服务器端,一个 angular 6 作为客户端。在服务器中我有中间件功能,可以进行 session 检查。如果 session 无效或不存在,我想向客户
我有一个 nodejs (express) 作为服务器端,一个 angular 6 作为客户端。在服务器中我有中间件功能,可以进行 session 检查。如果 session 无效或不存在,我想向客户
我有四个 I/O 操作:A、B、C 和 D。它们中的每一个都应该使用 vertx.executeBlocking 来执行。我应该有以下行为: //PSEUDOCODE waitForExecuteBl
我是一名优秀的程序员,十分优秀!