菜鸟教程小白 发表于 2022-12-13 05:16:31

ios - 如何使自由落体的 Sprite 节点坐在另一个水平移动的 Sprite 身上


                                            <p><p>如何让一个自由落体的 Sprite 节点坐在另一个水平移动的 Sprite 体上?</p>

<p>现在两个物体发生碰撞。但水平运动体偏离其路径,自由落体撞击水平体后下降。如何修复 Sprite 节点的这种变化设置。</p>

<p>我已经为正确发生碰撞提供了给定的碰撞和类别位掩码。</p>

<hr/>

<p>自由落体属性:</p>

<ul>
<li>affectedbygravity = YES 动态 = YES 允许旋转 = NO
使用精确碰撞检测 = YES 恢复 = 1 摩擦 = 1.0
角度阻尼 = 0.0 线性阻尼 = 0.0</li>
</ul>

<hr/>

<p>水平运动体属性</p>

<p>动态 = 是
受重力影响 = 否
摩擦力 = 1.0</p>

<p>在这个 body 上执行一个振荡 Action 。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>调整质量有助于不偏转移动的物体。例如试试这段代码,</p>

<pre><code>SKSpriteNode *fallNode = [ initWithColor: size:CGSizeMake(25, 25)];
fallNode.physicsBody = ;
fallNode.position = CGPointMake(100, 400);
fallNode.physicsBody.mass = 1;
fallNode.physicsBody.allowsRotation = NO;
fallNode.physicsBody.restitution = 0.0;
fallNode.physicsBody.friction = 1.0;
;

SKSpriteNode *moveNode = [ initWithColor: size:CGSizeMake(25, 25)];

moveNode.physicsBody = ;
moveNode.position = CGPointMake(50, 100);
moveNode.physicsBody.mass = 100000;
moveNode.physicsBody.affectedByGravity = false;
moveNode.physicsBody.friction = 1.0;
moveNode.physicsBody.velocity = CGVectorMake(90, 0);

;
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 如何使自由落体的 Sprite 节点坐在另一个水平移动的 Sprite 身上,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/28364791/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/28364791/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 如何使自由落体的 Sprite 节点坐在另一个水平移动的 Sprite 身上