0

テクスチャリングせずに基本的なワイヤーフレームの球体を描画するためのコードを提出してください。たくさんの例を見つけましたが、法線、テクスチャ、頂点のような 3 種類のバッファを使用しています。GL_TRIANGLE_FAN または GL_TRIANGLE_STRIP を使用し、頂点とフラグメント シェーダーのみを使用して球を描画する簡単で包括的な方法はありますか。

ありがとうございました!

4

1 に答える 1

0
void DrawSphere(GLdouble radius, int longitudeSubdiv, int latitudeSubdiv)
{
// issue corresponding GL command
    //glPolygonMode(GL_BACK,GL_FILL);

    //gluSphere(m_quadrObj,radius,longitudeSubdiv,latitudeSubdiv);
    float color1[3] = {1.0,0.0,0.0};
    float shininess = 64.0f;
    float specularColor[] = {1.0, 1.0f, 1.0f, 1.0f};
    glMaterialf(GL_FRONT_AND_BACK, GL_SHININESS, shininess); // range 0 ~ 128
    glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, specularColor);

    glPushMatrix();
    glTranslatef(1,1,1);// *
    glColor3fv(color1);

    gluSphere(m_quadrObj,radius,longitudeSubdiv,latitudeSubdiv);

    glPopMatrix();
    //glColor3fv(color2);

}
于 2014-06-08T06:14:01.063 に答える