gpt4 book ai didi

ios - 让球落入网(子节点)并做出嗖嗖的 Action ? (PhysicsBody/ARKit)

转载 作者:行者123 更新时间:2023-11-30 11:23:10 28 4
gpt4 key购买 nike

想知道如何让篮球落入网中并做出嗖嗖的 Action 吗?球上已经存在重力,但由于其形状,它不会完全落入网中。我需要以某种方式使网变得灵活,以允许球(球体)从篮筐顶部进入时穿过。球仅在向下的 1/3 处停止。我正在 Xcode 上试验 iOS ARKit (SceneKit)。谢谢!

Screenshot Photo

  1. 球的代码。

    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/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com