私のコードは正常にコンパイルされているようですが、実行しようとすると非常にハングします。
私は、Riemers XNA チュートリアルhereに従っています。
私は C# にはかなり精通していますが、決して専門家ではありません。これまでのところ、これを機能させるのに問題はありませんでした。エラーや例外がスローされることもありません...ハングアップするだけです。私は彼の関連フォーラムを読んだことがあります。ユーザーは、通常はタイプミスやコード エラーに関連する他の問題について話し合っていましたが、そこにはこのようなものは何もありません...誰もが正常に実行できるようです.
おそらく何か間違ったことはありますか?一番下のネストされた for ループは、私には少し扱いが難しいように思えます。screenWidth と screenHeight は 500 と 500 です。
ところで: これは LoadContent オーバーライド メソッドから実行されるため、私の知る限り一度だけ実行する必要があります。
private void GenerateTerrainContour()
{
terrainContour = new int[screenWidth];
for (int x = 0; x < screenWidth; x++)
terrainContour[x] = screenHeight / 2;
}
private void CreateForeground()
{
Color[] foregroundColors = new Color[screenWidth * screenHeight];
for (int x = 0; x < screenWidth; x++)
{
for (int y = 0; y < screenHeight; y++)
{
if (y > terrainContour[x])
foregroundColors[x + y * screenWidth] = Color.Green;
else
foregroundColors[x + y * screenWidth] = Color.Transparent;
fgTexture = new Texture2D(device, screenWidth, screenHeight, false, SurfaceFormat.Color);
fgTexture.SetData(foregroundColors);
}
}
}