Graphical Glitch Xna GraphicsTutorial - Отладка - PullRequest
0 голосов
/ 05 мая 2011

Моя местность получает странные цвета, такие как:

http://tinypic.com/view.php?pic=307w421&s=7

Кто-нибудь знает, что здесь происходит не так? В какой области моего кода (концептуально) я должен искать, чтобы отладить это?

Обновление:

Это из учебника из моей школы, основанного на: http://www.riemers.net/eng/Tutorials/XNA/Csharp/Series1/Starting_a_project.php

Мы использовали шейдер BasicEffect и создали различные части движка, такие как: камера, рельеф трехмерных вершин, полученный из карты высот, базовое освещение, базовые мягкие нормали и буферы для оптимизации.

VertexPositionColorNormal Struct:

public struct VertexPositionColorNormal : IVertexType
{
    #region Field
    public Vector3 Position, Normal;
    public Color Color;

    #endregion

    #region Constructor

    public VertexPositionColorNormal(Vector3 position, Color color, Vector3 normal)
    {
        Position = position;
        Color = color;
        Normal = normal; 
    }

    #endregion

    #region properties

    public static VertexElement[] VertexElements =
    {
        new VertexElement(0, VertexElementFormat.Vector3, VertexElementUsage.Position, 0),
        new VertexElement(sizeof(float) * 3, VertexElementFormat.Color, VertexElementUsage.Color, 0),
        new VertexElement(sizeof(float)*3+4,VertexElementFormat.Vector3, VertexElementUsage.Normal,0),
    };

    public readonly static VertexDeclaration VertexDeclaration = new VertexDeclaration(VertexElements);

    VertexDeclaration IVertexType.VertexDeclaration
    {
        get { return VertexDeclaration; }
    }

    #endregion

1 Ответ

1 голос
/ 06 мая 2011

Попробуйте удалить , в конце этой строки:

new VertexElement(sizeof(float)*3+4,VertexElementFormat.Vector3, VertexElementUsage.Normal,0),

Я также заметил, что вы добавили constructor в свой код, но это не так.t на сайте Riemer.

Кроме того, вам может быть проще разместить свой код где-нибудь в виде zip-файла, чтобы мы могли посмотреть таким образом.

...