标签: physics

如何在AS3中为弧中的显示对象设置动画?

这是一个仅限闪存AS3项目的游戏.

玩家用枪控制角色.通过点击屏幕,枪可以将弧形导弹发射到点击的点.

什么是计算导弹每个框架的x和y坐标的最佳方法?

math flash physics actionscript-3

1
推荐指数
1
解决办法
1361
查看次数

愤怒的小鸟物理冲击/碰撞

如何像愤怒的小鸟一样制造运动撞击/碰撞.当物体击中盒子和木头时,它们的相互作用和动画的流动将到达正确的位置.我需要从头学习如何构建它.我需要物理和概念的基础

示例图片:

示例图片

到目前为止,我认为到目前为止.受到影响,我会申请

  1. 恢复原则

    物体1速度= e(球速度)

  2. 我将采取球的方向并使对象1旋转90%对着球.

    如果球--->方向.对象1的最终结果将是90度.所以它会成为

    | ____ | 它会变成这个.

  3. 到目前为止看来没错.但我不确定如何与物体2相互作用.我是否重复步骤2.然后我将速度和方向传递给物体2.所以它会再次旋转90度?

这是我到目前为止收集的内容.任何暗示我正朝着正确方向前进的建议都会很好.

对于碰撞部分.我打算用AABB.和旋转AABB.

physics game-physics physics-engine

1
推荐指数
1
解决办法
844
查看次数

考虑加速度的插值

我真的不知道我想做的是否被认为是插值,但我会尽力解释。

现在,当我想及时从一个点移动A到另一个点B(为简单起见,仅考虑 1 个坐标空间)时,T我使用线性插值公式计算位置:

P(t) = A + (B-A) * (t / T), T != 0
Run Code Online (Sandbox Code Playgroud)

这在大多数情况下都可以正常工作,但我想像这样考虑加速和制动:

  • x%一次会是从vi一个速度到另一个v速度的加速
  • 下次y%将是v匀速
  • 最后z%一次将减速以达到vf速度t = T

在考虑加速和制动时P(t),我如何计算, ?t[0, T]

math physics

1
推荐指数
1
解决办法
3068
查看次数

iOS短信泡沫物理在工作

在iPhone上,在标准消息传递应用程序中,如果你用两根手指按住它,即使它看起来已经达到屏幕边缘限制,文字气泡也会继续上升.

什么允许这种情况发生?

我将如何复制,以便我的代码不那么"固定",只是完全停止在它应该的变量?

另外,我们在Android和iOS中看到的"弹性"文本物理是否有名称?

messaging physics ios

1
推荐指数
1
解决办法
127
查看次数

如何使用动态物理体以恒定速度移动精灵

直到最近我才在每次更新时更改我的精灵的x坐标,我很高兴.但是昨天当我处于debugDraw模式时,我发现在某些速度之后,物理体不会与精灵正确对齐,如下所示: 在此输入图像描述 后来我被告知,(通过cocos2d论坛中的Birkemose)将物理体从A移动到B的首选方法是对它施加冲动.但我不知道如何以这种方式实现恒速.这是我用来移动它而不应用任何冲动的代码:

-(void)update:(CCTime)delta{
    rollingHero.position=ccp(rollingHero.position.x+scrollSpeed*delta,    
                         rollingHero.position.y);
    physicsNode.position=ccp(physicsNode.position.x-scrollSpeed*delta,
                         physicsNode.position.y);
}
Run Code Online (Sandbox Code Playgroud)

因此,为了创造一种移动的感觉,我以相同的滚动速度滚动物理节点和英雄在相反的方向.我尝试了许多应用冲动的不同变体,但我从未让它以恒定速度移动.速度加快,英雄脱离屏幕.如果有人发布示例代码,我将非常感激.

physics position cocos2d-iphone spritebuilder

1
推荐指数
1
解决办法
1291
查看次数

在JavaScript中跳跃代码

我是11岁的编程新手,我正在使用JavaScript为学校的游戏制作一个简单的平台游戏。

现在,我正在研究使角色跳跃的代码。它比角色上下移动更复杂,因为我希望动作流畅且看起来逼真。当角色跳跃时,它会快速离开地面,然后随着它的升高而减慢速度;到达某个点时,它将开始缓慢下落。它会在跌落时加速(可能通过使用某种类型的加速度变量),然后撞到地面并完全停止。

我希望角色能够在空中左右移动,如果握住了键,则跳一次,然后当角色撞到地面(如果仍然握住键)时,它又跳一次。(游戏中角色应该能够跳得很高)

我已经尝试过这样做,但是发生了一些搞笑的错误。

这是我的代码(很破):

    //movement (x)
    var maxSpeed = 12.5; 
    var xForce = 0;
    var kingXPos = 0;

    //movement (y)
    var yForce = 0;
    var kingYPos = 202;

    //LV design
    var floorHeight = 150;

var draw = function() {

//background and basics
    background(255, 0, 0);
    image(getImage("creatures/Winston"), kingXPos, kingYPos, 50, 50);

//level features (only the floor right now)
    fill(0, 0, 0);
    rect(0, 250, 400, floorHeight);

//right movement
        if (keyIsPressed && keyCode === RIGHT) {
    kingXPos = kingXPos + xForce;
    xForce …
Run Code Online (Sandbox Code Playgroud)

javascript physics

1
推荐指数
1
解决办法
1640
查看次数

Unity - 激活“是触发器”使东西掉入物体

我正在关注本教程:https : //www.mvcode.com/lessons/roll-a-ball-obstacle-course

最后我们创建了敌人(立方体),它们的移动效果非常好。但是一旦我激活“是触发器”,它们就会穿过位面落入虚空。我错过了什么?

我试图将它们拉到地板上方,以便在底部和敌人之间留出一些空间,但它们一直从地板上掉下来,并且只有当我启用“触发”时。

提前致谢,阿库玛

physics unity-game-engine

1
推荐指数
2
解决办法
1万
查看次数

真实模拟地板上的球体旋转

我正在尝试模拟一个在地板上滚动的球体。对于模拟,我使用的是 Flash AS3 的旧版 Papervision3D 库,但这实际上并不重要,这是一个纯粹的几何问题。

假设我有一个 Sphere3D 对象,我可以为其设置rotationX、rotationY 和rotationZ 属性,如何计算该球体在地板上滚动的每个轴的旋转?

例如,我们假设球体处于静止状态。现在它向右滚动 1 米。如果我从顶部看这个球体 - 我想将它绕 Z 轴旋转 90 度。然后球体应该沿着地板“向下”滚动,所以我想围绕 X 轴旋转它,但这个问题是,与此同时,当我沿着 Z 轴旋转球体时,X 轴会自行旋转。

我该如何解决这个问题?

谢谢

3d geometry physics

1
推荐指数
1
解决办法
1085
查看次数

需要帮助破译Projectile Motion的公式

我需要实现一点AI来弄清楚如何用射弹运动击中目标.

我在维基百科发现了这个:

点击坐标所需的角度

这看起来就像我需要的东西,特别是因为我有一个额外的问题从零高度发射射弹.但是,我的数学技能并不是很好,所以对我来说这一切看起来都是完全无稽之谈,我不知道如何将其中任何一个转换为代码.

如果有人可以把它分解成我能用基本操作符(+ - *%)和函数(sin,cos,sqrt等)理解的东西,我真的很感激.

physics artificial-intelligence game-physics

0
推荐指数
1
解决办法
1773
查看次数

带有Physics的快速而肮脏的平台游戏在移动平台时出错

好吧,所以我正在尝试制作一个快速而肮脏的平台引擎,我在碰撞检测和移动平台方面遇到了一些问题.一方面,"玩家"似乎在移动平台上稍微反弹,当他击中右侧时,错误也会发生.我将上传一个jnlp演示,以便您可以尝试查找更多错误并查看发生了什么,但这里是源代码:

import java.awt.Rectangle;
import java.util.Vector;

import org.newdawn.slick.AppGameContainer;
import org.newdawn.slick.BasicGame;
import org.newdawn.slick.Color;
import org.newdawn.slick.GameContainer;
import org.newdawn.slick.Graphics;
import org.newdawn.slick.Input;
import org.newdawn.slick.SlickException;


public class Platformer extends BasicGame{

 boolean keys[];
 int ALL_KEYS = 0xFF;
 Player player;
 Vector<Vector<Thing> > things;
 int level = 0;

 public Platformer() {
  super("You've met with a terrible fate, haven't you?");
 }

 public void init(GameContainer gc) throws SlickException {
  keys = new boolean[ALL_KEYS];
  for(int i = 0; i < ALL_KEYS; i++){
   keys[i] = false;
  }

  player = new Player();
  things = …
Run Code Online (Sandbox Code Playgroud)

java physics collision-detection

0
推荐指数
1
解决办法
427
查看次数