我正在使用此代码为我的2d塔防游戏创建缩放矩阵:
float screenscalex;
float screenscaley;
Matrix SpriteScale;
screenscalex = (float)_graphics.GraphicsDevice.Viewport.Width / 1366f;
screenscaley = (float)_graphics.GraphicsDevice.Viewport.Height / 768f;
SpriteScale = Matrix.CreateScale(screenscalex, screenscaley, 1);
然而,它表示在初始化screenscalex的地方,它是一个空引用。有谁知道我做错了什么?我尝试使用GraphicsAdapter来获取屏幕的宽度,但它不起作用。另外,我还没有将视口设置为任何东西。最后,将代码移动到Initialize()只会让游戏崩溃
答案 0 :(得分:1)
你必须在base.Initialize()下面这样做,这是在...初始化的地方。