using System;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.Graphics;
namespace proj
{
public class game : Microsoft.Xna.Framework.Game
{
GraphicsDeviceManager graphics;
public static SpriteBatch sprite_batch;
public static Texture2D texture;
public game()
{
graphics = new GraphicsDeviceManager(this);
}
protected override void Initialize()
{
graphics.PreferredBackBufferWidth = 300;
graphics.PreferredBackBufferHeight = 300;
graphics.ApplyChanges();
Content.RootDirectory = "Content";
sprite_batch = new SpriteBatch(GraphicsDevice);
texture = Content.Load<Texture2D>("a"); // 1 x 1, white
base.Initialize();
}
protected override void Update(GameTime game_time)
{
base.Update(game_time);
}
protected override void Draw(GameTime gameTime)
{
GraphicsDevice.Clear(Color.Black);
sprite_batch.Begin();
if (gameTime.IsRunningSlowly)
{
sprite_batch.Draw(texture,
new Rectangle(50, 50, 200, 200), Color.OrangeRed);
}
sprite_batch.End();
base.Draw(gameTime);
}
}
}
Для меня оранжевый квадрат виден почти все время, однако почти ничего не происходит.
60 Ничего не обновляется и 60 ничего не рисует, делая 120 почти пустых вызовов функций, которые должны произойти, иу них есть целая секунда, чтобы программа не работала медленно, но gameTime.IsRunningSlowly
возвращает True
почти все время.
Я уверен, что мой компьютер достаточно быстр для работыэто лучше, что происходит?Мне нужно иметь возможность использовать gameTime.IsRunningSlowly, я не могу, если он не работает должным образом.