hallo
ich habe versucht eine beschleunigte Bewegung zu erstellen.
in Physik habe ich imemr gut aufgepasst und in Flash mit ActionScript hat das auch ganz gut funktioniert.
Nun habe ich e sin XNA Gamestudio versucht.
Mein Problem: mit konstanter Geschwindigkeit klappt alles, aber sobald ich eine konstante Beschleunigung mit reinrechne, bewegt sich das Objekt sehr alngsam und Geschwindigkeit ist trotzdem noch konstant.
Wenn mir jemand erklären könnte, wo mein Fehler liegt, wäre ich froh.
ich habe versucht eine beschleunigte Bewegung zu erstellen.
in Physik habe ich imemr gut aufgepasst und in Flash mit ActionScript hat das auch ganz gut funktioniert.
Nun habe ich e sin XNA Gamestudio versucht.
Mein Problem: mit konstanter Geschwindigkeit klappt alles, aber sobald ich eine konstante Beschleunigung mit reinrechne, bewegt sich das Objekt sehr alngsam und Geschwindigkeit ist trotzdem noch konstant.
Wenn mir jemand erklären könnte, wo mein Fehler liegt, wäre ich froh.
PHP:
public class Game1 : Microsoft.Xna.Framework.Game
{
GraphicsDeviceManager graphics;
SpriteBatch spriteBatch;
Texture2D strand;
Texture2D ball;
Vector2 ballposition = Vector2.Zero;
Vector2 ballgeschw = new Vector2(50.0f, 250.0f);
Vector2 ballbeschl = new Vector2(0, 20f);
}
void UpdateSprite(GameTime gameTime)
{
float t = (float)gameTime.ElapsedGameTime.TotalSeconds;
ballgeschw += ballbeschl * t;
ballposition += ballgeschw * t; ;
int MaxX = graphics.GraphicsDevice.Viewport.Width - ball.Width;
int MinX = 0;
int MaxY = graphics.GraphicsDevice.Viewport.Height - ball.Height;
int MinY = 0;
// Kollisionsabfrage
if (ballposition.X > MaxX)
{
ballgeschw.X *= -1;
ballposition.X = MaxX;
}
else if (ballposition.X < MinX)
{
ballgeschw.X *= -1;
ballposition.X = MinX;
}
if (ballposition.Y > MaxY)
{
ballgeschw.Y *= -1;
ballposition.Y = MaxY;
}
else if (ballposition.Y < MinY)
{
ballgeschw.Y *= -1;
ballposition.Y = MinY;
}
}