自分で作成していないシェーダーを使用してXNAに照明システムを実装してきましたが、問題が発生しました。ゲームのサイズが2の累乗である場合、システムは完全に機能します(現在は1024x512で実行されています)。GraphicsDevice.DrawUserPrimitives(PrimitiveType.TriangleStrip, Vertices, 0, 2);
。_
インターネットの検索では、最も一般的な解決策は、GraphicsDevice.SamplerStates[0] = SamplerState.LinearClamp
上の行の真上に行を配置することです。私はこれを試しましたが、効果はありませんでした。実際、解決策を教えようとしたGraphicsDevice.SamplerStates[0]
とき、その行を設定する前はnullであるように見えたので、アクティブなサンプラー状態として選択することで、この問題も解決できる可能性があると思いました。また、その方法もわかりません。
それ以外の場合は、私が見つけた他の情報に基づいて、シェーダー内からTextureAddressModeを設定する必要があると思います。その方法についてはこのページに誘導されましたが、まだ困惑していることを告白します。これまでHLSLを使用したことがなく、このページの情報の使用方法がわかりません。
提供する必要のある情報が他にあれば、喜んで提供します。最初に質問をしたところ、ここで現在の情報にたどり着きました。