IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

DirectX Discussion :

[C#] Colorer une sphère


Sujet :

DirectX

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Février 2003
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2003
    Messages : 43
    Points : 57
    Points
    57
    Par défaut [C#] Colorer une sphère
    Bonjour à tous,

    je débute en DirectX, et en C# par la même occasion.
    J'essaye de transposer un code en C++ en C#, qui doit colorer une sphère en bleue, mais ça ne marche pas :

    Code C++
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
     
    LPD3DXMESH pTempEarthMesh = NULL;
     
        D3DXCreateSphere(g_pd3dDevice, 1.0f, 10, 10, &pTempEarthMesh, NULL);
     
    LPDIRECT3DVERTEXBUFFER9 pTempVertexBuffer;
     
        pTempEarthMesh->CloneMeshFVF( 0, D3DFVF_MY_VERTEX, g_pd3dDevice, &g_pEarthMesh );
     
        if( SUCCEEDED( g_pEarthMesh->GetVertexBuffer( &pTempVertexBuffer ) ) )
        {
            int nNumVerts = g_pEarthMesh->GetNumVertices();
            Vertex *pVertices = NULL;
     
            pTempVertexBuffer->Lock( 0, 0, (void**)&pVertices, 0 );
            {
                for( int i = 0; i < nNumVerts; ++i )
                    pVertices[i].diffuse = D3DCOLOR_COLORVALUE( 0.0, 0.0, 1.0, 1.0 );
            }
            pTempVertexBuffer->Unlock();
     
            pTempVertexBuffer->Release();
        }
    Code C#
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
     
    Mesh pTempEarthMesh = null;
    pTempEarthMesh = Mesh.Sphere(device, 1.0f, 20, 20);
     
    g_pEarthMesh =  pTempEarthMesh.Clone(pTempEarthMesh.Options.Value, pTempEarthMesh.VertexFormat |
    					VertexFormats.Normal, device);
    				if ((pTempVertexBuffer = g_pEarthMesh.VertexBuffer) != null)
    				{
     
    					int nNumVerts = g_pEarthMesh.NumberVertices;
    					CustomVertex.PositionColored[] Vertex;
     
    					Vertex = (CustomVertex.PositionColored[]) pTempVertexBuffer.Lock(0, typeof(CustomVertex.PositionColored), LockFlags.None, nNumVerts);
     
    					for (int i = 0; i < nNumVerts; i++)
    						Vertex[i].Color = new ColorValue(0, 0, 255, 255).ToArgb();
     
    					pTempVertexBuffer.Unlock();
    				}
    Mais le seul effet que ça à, c'est d'allonger ma sphère, elle est toute déformée ...

    Comment pourrais je faire pour afficher une sphère en bleue ?

    Merci d'avance

    Seb

  2. #2
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Février 2003
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2003
    Messages : 43
    Points : 57
    Points
    57
    Par défaut
    Cest bon j'ai réussi,
    il fallait mettre VertexFormats.Diffuse | VertexFormats.Position à la place de pTempEarthMesh.VertexFormat | VertexFormats.Normal

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Créer une sphère texturée
    Par isa21493 dans le forum OpenGL
    Réponses: 2
    Dernier message: 09/01/2006, 16h41
  2. Afficher une sphère
    Par KeN1985 dans le forum OpenGL
    Réponses: 5
    Dernier message: 02/01/2006, 14h27
  3. probleme de texture sur une sphère
    Par sebpp dans le forum OpenGL
    Réponses: 2
    Dernier message: 12/04/2005, 19h46
  4. [JTable] comment colorer une case
    Par cladsam dans le forum Composants
    Réponses: 12
    Dernier message: 20/01/2005, 08h14
  5. Texture sur d'une sphère
    Par Yellowmat dans le forum OpenGL
    Réponses: 1
    Dernier message: 16/12/2004, 10h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo