Terrariaのエラーについて
提供:Terraria Japan Wiki
ハイライトされているコメントがこの版で作成されました。
近日プレイしようとすると起動後しばらくしてエラーを吐いて止まってしまいます。 エラーの全文は
System.ArgumentException: 値が有効な範囲にありません。
場所 Microsoft.Xna.Framework.Graphics.VertexBuffer.CopyData[T](Int32 offsetInBytes, T[] data, Int32 startIndex, Int32 elementCount, Int32 vertexStride, UInt32 options, Boolean isSetting) 場所 Microsoft.Xna.Framework.Graphics.SpriteBatch.PlatformRenderBatch(Texture2D texture, SpriteInfo[] sprites, Int32 offset, Int32 count) 場所 Microsoft.Xna.Framework.Graphics.SpriteBatch.RenderBatch(Texture2D texture, SpriteInfo[] sprites, Int32 offset, Int32 count) 場所 Microsoft.Xna.Framework.Graphics.SpriteBatch.Flush() 場所 Microsoft.Xna.Framework.Graphics.SpriteBatch.End() 場所 Terraria.Main.DrawMenu() 場所 Terraria.Main.Draw(GameTime gameTime) 場所 Microsoft.Xna.Framework.Game.DrawFrame() 場所 Microsoft.Xna.Framework.Game.Tick() 場所 Microsoft.Xna.Framework.Game.HostIdle(Object sender, EventArgs e) 場所 Microsoft.Xna.Framework.GameHost.OnIdle() 場所 Microsoft.Xna.Framework.WindowsGameHost.RunOneFrame() 場所 Microsoft.Xna.Framework.WindowsGameHost.ApplicationIdle(Object sender, EventArgs e) 場所 System.Windows.Forms.Application.ThreadContext.System.Windows.Forms.UnsafeNativeMethods.IMsoComponent.FDoIdle(Int32 grfidlef) 場所 System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData) 場所 System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context) 場所 System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context) 場所 System.Windows.Forms.Application.Run(Form mainForm) 場所 Microsoft.Xna.Framework.WindowsGameHost.Run() 場所 Microsoft.Xna.Framework.Game.RunGame(Boolean useBlockingRun) 場所 Terraria.Program.Main(String[] args)
というものです。 Xna.Framework 4.0、NET Frameworkはインスコ済みで、要求スペックは越しています。 ちなみに、使用OSはWin8のCPです。 解決策を知っている方、返答お願いいたします。
すみません、ドライブをアンインスコしてみた所、正常に戻りました。ご迷惑をおかけしました。
一応正常になったそうですが…
通常XNAのランタイムが壊れている場合に出るエラーですが、メモリーエラーに不具合がある場合も表示される可能性があります。 XNAランタイムの修復セットアップで大概治りますが、治らない場合割と深刻です。 例えば ・パソコンのメモリーが逝ってる ・グラフィックカードのメモリーが逝ってる なんとなく前者のような気がします。
コンピュータでメモリに関する問題が発生しているかどうかを知る方法 http://windows.microsoft.com/ja-JP/windows-vista/How-do-I-know-if-my-computer-has-a-memory-problem Microsoftの方で自動検出すると言っていますが…あまりあてにならないので…
パソコンのメモリが壊れていないかメモリテストを行うフリーソフト「MemScope」 - GIGAZINE http://gigazine.net/news/20070221_memscope/ こちらを試すことをお勧めいたします。 最近自作したパソコン等であれば、他の作業でも同じような不調・不具合がでないかベンチマーク向け疎ソフトを長時間回して異常がないか確認してみてはどうでしょうか? メモリーエラーがでても刺すスロットを変更したり、挿し直すだけで不調が解消する場合もありますが、エラーが出ているようであれば保証期間中に交換しましょう。
再発時の参考まで。