iOS   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了IOS 8精灵套件与顶部和底部碰撞而不是两侧碰撞?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
做了这是一个简单的效果,一个球弹跳的屏幕它只适用于顶部和底部边缘idk为什么,此外,当我在initwithsize方法中的iOS 7精灵工具包模板中尝试此代码时,它的工作原理
一个bug还是什么?
    //

@H_502_10@

@H_502_10@

#import "GameScene.h"

@implementation GameScene



-(void)didMoveToView:(SKView *)view {
    self.BACkgroundColor = [SKColor whiteColor];
    SKSpriteNode *ball =[SKSpriteNode spriteNodeWithImagenamed:@"ball"];
    ball.position =CGPointMake(self.frame.size.width/2,self.frame.size.height/2);
    ball.physicsBody = [SKPhysicsBody bodyWithCircLeofRadius:ball.frame.size.width/2];
    self.physicsBody = [SKPhysicsBody bodyWithEdgeLoopFromRect:self.frame];
    self.physicsWorld.gravity = CGVectorMake(0,0);
    CGVector impulse =     CGVectorMake(20,20);
    [self addChild:ball];

    [ball.physicsBody applyImpulse:  impulse];

    ball.physicsBody.restitution = 1;
    ball.physicsBody.friction = 0;
    ball.physicsBody.linearDamping = 0;




  /* 
   SKSpriteNode *wall =[SKSpriteNode spriteNodeWithImagenamed:@"wall"];

   SKSpriteNode *bar =[SKSpriteNode spriteNodeWithImagenamed:@"bar"];

   wall.position= CGPointMake(self.frame.size.width/2,103);
    bar.position = CGPointMake(self.frame.size.width/2,(wall.frame.size.height));
    [self addChild:wall];
    [self addChild:bar];


    */

}


-(void)update:(CFTimeInterval)currentTime {
    /* Called before each frame is rendered */
}

@end

解决方法

>你没有设置非常重要的锚节点将它设置为CGPointMake(0.5,0.5)
>重力矢量应设置为(0,-9.8),但是(0,0)也要改变它.

@H_502_10@

你必须为球和你的直接设置锚(0.5,0.5),无论它是什么(自己),你需要将物理体设置为你分配的大小的一半.@H_502_10@

通过将锚固定到身体的中心(0.5,您告诉物理引擎通过将中心视为原点来设置物理主体,在这种情况下,您需要设置一半的边长度和你拥有的球设置好极了.@H_502_10@

但是ios7如何工作我真的很惊讶,它不应该,但我希望在这些修正之后都能工作.@H_502_10@

大佬总结

以上是大佬教程为你收集整理的IOS 8精灵套件与顶部和底部碰撞而不是两侧碰撞?全部内容,希望文章能够帮你解决IOS 8精灵套件与顶部和底部碰撞而不是两侧碰撞?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。