触摸移动方法中物理主体大小不随 SKSpriteNode 大小变化而变化

2024-01-09

我正在尝试创建一个弹簧启动器,当触摸在场景上移动时,弹簧将盘绕触摸向下拖动的量,然后在触摸结束方法上启动弹簧上方的项目。为此,我将触摸移动方法中 SKSpriteNode 的大小和位置更改为 -

launcher.position               =   CGPointMake(frame.size.width*0.97, launcher.position.y-1)
launcher.size                   =   CGSizeMake(frame.size.width*0.05, launcher.frame.size.height-2)

But the Physics body of SKSpriteNode not changing it comes like this - enter image description here

请帮忙..如果 SKSpriteNode 的物理主体发生变化,那么它在设备上会滞后太多..

let springTexture    =   SKTexture(imageNamed: "spring-wire")
launcher.physicsBody = SKPhysicsBody(texture: springTexture, size: launcher.size)
launcher.physicsBody?.dynamic = false

创建一次后有什么方法可以改变物理体的大小吗?


我通过更改 SKSpriteNode 的 yScale 而不是在 TouchMoved 方法中更改其大小来修复它

launcher.yScale =   launcher.yScale-0.008
launcher.position  =   CGPointMake(frame.size.width*0.97, launcher.size.height/2)

我不知道这是否是正确的方法,但是这个 SKSpriteNode 的物理主体会相应改变。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

触摸移动方法中物理主体大小不随 SKSpriteNode 大小变化而变化 的相关文章

随机推荐

  • 在 Java 中复制数据的更快方法?

    我接到一项从服务器复制数据的任务 我在用BufferedInputStream和输出流来复制数据 我正在逐字节地进行 尽管它正在运行 但复制数据需要很长时间 因为其中一些数据有 100 MB 所以它肯定不会工作 任何人都可以建议我使用逐字节
  • 在 xsd 中定义 xml,其中属性决定可能的内容

    如何在 xsd 中定义这样的东西
  • vim中ctrl-v粘贴时如何输入^M

    我的vim使用ctrl v是粘贴快捷方式 这与需要ctrl v作为快捷方式前缀的命令冲突 例如 M need ctrl v ctrl m 我可以在 vim 命令行中执行此操作 并且无需初始化即可在 vim 中执行此操作 但该符号不会从 vi
  • SQL JOIN 查找没有特定值的匹配记录的记录

    我正在尝试加快几年前为雇主的购买授权应用程序编写的一些代码的速度 基本上我有一个慢子查询 我想用 JOIN 替换它 如果它更快 当主管登录应用程序时 他会看到他尚未授权或拒绝的购买请求列表 该列表是通过以下查询生成的 SELECT FROM
  • numpy 唯一且不排序[重复]

    这个问题在这里已经有答案了 如何使用 numpy unique 而不对结果进行排序 而只是按照它们在序列中出现的顺序进行排序 像这样的东西吗 a 4 2 1 3 1 2 3 4 np unique a 4 2 1 3 而不是 np uniq
  • 使用 OpenCV 查找灰度图像中的局部最大值

    有谁知道如何找到灰度中的局部最大值IPL DEPTH 8U使用 OpenCV 进行图像处理 HarrisCorner 提到了类似的东西 但我实际上对角落不感兴趣 谢谢 如果像素等于 局部 邻域中的最大值 则该像素被视为局部最大值 下面的函数
  • 为什么 ANTLR4 不匹配单词“of”和标点符号“,”?

    我有一个Hello g4带有语法定义的语法文件 definition wordsWithPunctuation words WORD wordsWithPunctuation word word punctuation word word
  • Android M 奇怪的共享首选项问题

    在我运行 Android M 开发者预览版 2 的 Nexus 5 上 卸载 重新安装应用程序时 设备正在检索我很久以前存储的共享首选项 例如布尔值isFirstLaunch 清除这些的唯一方法是从设备设置中手动执行此操作 Android
  • Python 2.7,将utf8字符串转换为ascii

    我正在使用 python 2 7 12 我有一个包含 unicode 文字的字符串 它不是 Unicode 类型 我想将其转换为文本 这个例子解释了我想要做什么 gt gt gt s x00u x00s x00e x00r x00n x00
  • Express res.render 不渲染页面

    我正在尝试从我的主站点获取输入 提交输入后 页面应重定向到 view 看起来它成功重定向到 view 因为console log 正在被触发 但是res render不管用 如果我手动去 view它正在渲染页面 这是我的代码app js f
  • 出现解析错误:语法错误,意外的 T_NEW [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我有两个类
  • 在同一个程序中使用 scanf 和 fgets 吗?

    我需要做类似以下的事情 int main void char a b cstring printf please enter something scanf c c a b prinf thanks now some more fgets
  • swift 未转义的控制字符

    我正在尝试从服务器获取 json 并将其反序列化 但我尝试使用未转义的控制字符进行探测 我的代码如下 let urlFinal http 000 0000 000 000 8080 let jsonUrl urlFinal let sess
  • Nuxt 忽略的系统环境变量

    我的 Nuxt 项目使用系统环境变量来设置客户端 ID 秘密 URL 等 一个例子是我的nuxt config js我使用以下公式设置了几个属性 something process env SOMETHING something for d
  • 在另一个应用程序中使用应用程序服务

    我有一个包含服务的 Android 应用程序 现在我想在另一个应用程序中访问该服务 我怎样才能做到这一点 我通过网络找到了这个应用程序 请在下面找到代码片段 1 gt public class LocalWordService extend
  • 如何在 Netbeans 中自动缩进?

    In eclipse you can click Ctrl I at any line and it ll automatically indent the line or group of lines according to the i
  • Play 框架 2.2.1 HTTPs 连接尝试失败

    我正在尝试在开发模式下在 HTTPs 上运行 play 框架 2 2 1 应用程序 我使用以下命令 Development Play ssltest JAVA OPTS Dhttps port 9443 play run 我得到了以下内容
  • Panda 中的“如果未传入 io 的缓冲区或路径,则必须显式设置引擎”

    运行以下 Python Panda 代码时 xl pd ExcelFile dataFileUrl sheets xl sheet names data xl parse sheets 0 colheaders list data 我收到值
  • C++ DWORD 的 C# 等效项是什么?

    经过搜索 我听说 UInt32 是 C DWORD 的 C 等效项 我通过执行算术测试结果 DWORD 1 0x2C C UInt32 1 0x2C C 它们产生完全不同的结果 有人可以告诉我 C 中 DWORD 的正确匹配吗 你的例子正在
  • 触摸移动方法中物理主体大小不随 SKSpriteNode 大小变化而变化

    我正在尝试创建一个弹簧启动器 当触摸在场景上移动时 弹簧将盘绕触摸向下拖动的量 然后在触摸结束方法上启动弹簧上方的项目 为此 我将触摸移动方法中 SKSpriteNode 的大小和位置更改为 launcher position CGPoin