游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1869|回复: 2

为什么我画的不是star?!!!

[复制链接]

7

主题

17

帖子

17

积分

新手上路

Rank: 1

积分
17
发表于 2004-10-9 16:44:00 | 显示全部楼层 |阅读模式
#include <windows.h> // Standard windows include
#include <gl\gl.h> // OpenGL library
#include <gl\glut.h> // glut library
#include <math.h>
#define GL_PI 3.1415f

void SetupRC( void )
{
        // paint black
        glClearColor(0.0f, 0.0f, 0.0f, 1.0f);

        glColor3f( 1.0f, 1.0f, 1.0f );

}


void  RenderScene(void)
{
// Set background clearing color to blue

        glClear(GL_COLOR_BUFFER_BIT );

        GLboolean bEdgeFlag = TRUE;
        // Begin the stop sign shape,


        glPolygonMode(GL_FRONT_AND_BACK,GL_LINE);
        // use a standard polygon for simplicity
        // Begin the triangles
        glBegin(GL_TRIANGLES);
           glEdgeFlag(bEdgeFlag);

           glVertex2f(-20.0f, 0.0f);

           glEdgeFlag(TRUE);

           glVertex2f(20.0f, 0.0f);

           glVertex2f(0.0f, 40.0f);

           glVertex2f(-20.0f,0.0f);

           glVertex2f(-60.0f,-20.0f);

           glEdgeFlag(bEdgeFlag);

           glVertex2f(-20.0f,-40.0f);

           glEdgeFlag(TRUE);

           glVertex2f(-20.0f,-40.0f);

           glVertex2f(0.0f, -80.0f);

           glEdgeFlag(bEdgeFlag);

           glVertex2f(20.0f, -40.0f);

           glEdgeFlag(TRUE);

           glVertex2f(20.0f, -40.0f);

           glVertex2f(60.0f, -20.0f);

           glEdgeFlag(bEdgeFlag);

           glVertex2f(20.0f, 0.0f);

           glEdgeFlag(TRUE);

           // Center square as two triangles

           glEdgeFlag(bEdgeFlag);

           glVertex2f(-20.0f, 0.0f);

           glVertex2f(-20.0f,-40.0f);

           glVertex2f(20.0f, 0.0f);

           glVertex2f(-20.0f,-40.0f);

           glVertex2f(20.0f, -40.0f);

           glVertex2f(20.0f, 0.0f);

           glEdgeFlag(TRUE);

           // Done drawing Triangles

        glEnd();
       
       
        // Flush drawing commands
        glFlush();
}

// Main body of program
void main(void)
{
//  window setup and initialization
        glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
       
        glutCreateWindow("points example ");
       

        glMatrixMode(GL_PROJECTION);
    glLoadIdentity();
    gluPerspective(40,1,1,1000);

    glMatrixMode(GL_MODELVIEW);
    glLoadIdentity();
    gluLookAt(0,100,100, 0,0,0,0,1,0);

        glutDisplayFunc( RenderScene );

// Set function to call when window is resized

        SetupRC();

// Start main loop
        glutMainLoop();
} [em7]

21

主题

170

帖子

170

积分

注册会员

Rank: 2

积分
170
QQ
发表于 2004-10-9 21:10:00 | 显示全部楼层

Re:为什么我画的不是star?!!!

你最好先理解一些OPENGL的机制,
上次我随便写的那个PROJ和MODELVIEW矩阵你一个数字都没改.

139

主题

2005

帖子

2057

积分

金牌会员

Rank: 6Rank: 6

积分
2057
QQ
发表于 2004-10-9 21:12:00 | 显示全部楼层

Re:为什么我画的不是star?!!!

什么问题什么问题?
发出图来……
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-12-22 17:45

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表