Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • CreatiCode
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

CreatiCode Scratch Forum

  1. CreatiCode Forum
  2. 知识库
  3. 二维积木
  4. 二维物理的运动和旋转速度

二维物理的运动和旋转速度

Scheduled Pinned Locked Moved 二维积木
1 Posts 1 Posters 832 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • CreatiCodeI Offline
    CreatiCodeI Offline
    CreatiCode
    wrote on last edited by admin
    #1

    介绍

    将角色被添加到物理世界后,物理引擎将负责控制它的行为。如果你要让它移动或转动,你需要对其施加一些外力,然后让物理引擎计算角色对这个力应有什么样的反应。

    但是,你也可以根据需要直接设置角色的移动和旋转速度。如果您想精确设置物体的速度,这个方法通常会更方便。这就像对物理引擎这样讲:“我知道你正在为我处理这个角色,但我现在需要这个角色以正好每秒 30 个单位的速度向右移动,所以请立即实现它!”。

     
     

    设置 X 和 Y 速度

    你可以使用以下 2 个积木直接设置角色在 X 和 Y 方向上的速度:

    a2301377-6657-4d50-9c11-e635cbd297f1-image.png

     
    X 速度是角色每秒向右移动多少个单位。如果它小于 0,则角色将向左移动。例如,舞台的宽度是 480,那么如果一个角色的 X 速度是 100,那么它从舞台的左边缘移动到右边缘需要 4.8 秒。

    Y 速度是角色向上移动的速度。如果 Y 速度小于 0,则角色会向下移动。

    请注意,要设置角色的速度,它必须被配置为“动态的”或“可设置速度的”。换句话说,“固定的”角色将忽略这两个积木。

    此外,设置角色的 X 速度不会影响其 Y 速度。这对于平台游戏很有用:你可以设置 X 速度以使角色向左或向右移动,但使用物理引擎来模拟重力对其 Y 速度的影响。

     
     

    速度在设置后可能会改变

    对于“动态的”角色,它的速度可能会在你设置后由于其他力或碰撞而改变。

    例如,我们可以将圆圈的 Y 速度设置为200,让它往上走,但它稍后就会因为重力的原因被拉下来,变成负的 Y 速度。

    sc.gif

     
    要使角色始终保持你指定的速度,你需要不断的重新设置该速度,或者改用“可设置速度的”角色类型。

     
     

    同时设置速度的大小和方向

    有时你只想让一个物体朝某个特定的方向移动。你可以使用以下积木直接指定速度和方向,而无须分别设置 X 和 Y 速度:

    19c45466-5679-4059-8203-3e825085109f-image.png
     
    速度值仍然是角色每秒行进的距离。方向值在0到360之间,与“指向方向”积木中的方向意义相同。例如,如果方向为 90 度,则角色将向右移动。

     
     

    旋转速度

    除了设置移动速度外,你还可以使用以下积木让角色围绕其自身的中心旋转:

    57030c16-5e90-453c-a85f-a92480645a49-image.png

     
    输入值是角色每秒旋转的度数。例如,如果将其设置为 180,则角色将在 2 秒内转一整圈。

    如果这个值为正,角色将顺时针旋转;如果为负值,角色将逆时针旋转。

     
     

    指向速度方向

    如果你需要让角色面向它移动的方向,你可以使用以下积木:

    3f654d87-29e5-455b-b881-b7ce875e8914-image.png
     
    例如,对于驾驶汽车的自上而下的游戏,在设置汽车的 X 和 Y 速度后,你可以使用此积木设置其朝向。

    1 Reply Last reply
    0

    Hello! It looks like you're interested in this conversation, but you don't have an account yet.

    Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

    With your input, this post could be even better 💗

    Register Login
    Reply
    • Reply as topic
    Log in to reply
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes


    • Login

    • Don't have an account? Register

    • Login or register to search.
    • First post
      Last post
    0
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • CreatiCode