Lloyd丶 2015-01-13 03:43 采纳率: 50%
浏览 2058

64位系统运行nehe opengl

我按照网上下载的nehe sdk进行配置以后,运行以后不出现opengl的窗口。
但使用网上另外一段opengl代码就运行成功了,不知道是不是因为64位系统的问题,用的是systemwow64文件夹存放dll。

  • 写回答

2条回答 默认 最新

  • Lloyd丶 2015-01-13 03:46
    关注

    #include "opengl.h"
    #include "view.h"
    using namespace NeHe;
    // the view class
    static View view;

    static GLfloat rtri; // Angle For The Triangle

    static GLfloat rquad; // Angle For The Quad

    void DrawScene(OpenGL *gl,ControlData *cont)
    {

    view.Reset();

    view.Translate(-1.5f,0.0f,-6.0f); // Move Left 1.5 Units And Into The Screen 6.0

    view.Rotate(rtri,0.0f,1.0f,0.0f); // Rotate The Triangle On The Y axis

    glBegin(GL_TRIANGLES);        // Start Drawing A Triangle   
    glColor3f(1.0f,0.0f,0.0f);      // Red    
    glVertex3f( 0.0f, 1.0f, 0.0f);     // Top Of Triangle (Front)  
    glColor3f(0.0f,1.0f,0.0f);      // Green   
    glVertex3f(-1.0f,-1.0f, 1.0f);     // Left Of Triangle (Front)  
    glColor3f(0.0f,0.0f,1.0f);      // Blue   
    glVertex3f( 1.0f,-1.0f, 1.0f);     // Right Of Triangle (Front) 
    glColor3f(1.0f,0.0f,0.0f);      // Red  
    glVertex3f( 0.0f, 1.0f, 0.0f);     // Top Of Triangle (Right)  
    glColor3f(0.0f,0.0f,1.0f);      // Blue   
    glVertex3f( 1.0f,-1.0f, 1.0f);     // Left Of Triangle (Right) 
    glColor3f(0.0f,1.0f,0.0f);      // Green  
    glVertex3f( 1.0f,-1.0f, -1.0f);     // Right Of Triangle (Right) 
    glColor3f(1.0f,0.0f,0.0f);      // Red   
    glVertex3f( 0.0f, 1.0f, 0.0f);     // Top Of Triangle (Back) 
    glColor3f(0.0f,1.0f,0.0f);      // Green  
    glVertex3f( 1.0f,-1.0f, -1.0f);     // Left Of Triangle (Back) 
    glColor3f(0.0f,0.0f,1.0f);      // Blue  
    glVertex3f(-1.0f,-1.0f, -1.0f);     // Right Of Triangle (Back) 
    glColor3f(1.0f,0.0f,0.0f);      // Red  
    glVertex3f( 0.0f, 1.0f, 0.0f);     // Top Of Triangle (Left) 
    glColor3f(0.0f,0.0f,1.0f);      // Blue   
    glVertex3f(-1.0f,-1.0f,-1.0f);          // Left Of Triangle (Left)
    glColor3f(0.0f, 1.0f, 0.0f);      // Green     
    glVertex3f(-1.0f,-1.0f, 1.0f);      // Right Of Triangle (Left) 
    glEnd();                      // Done Drawing The Pyramid 
    
    view.Reset();          // Reset The Current Modelview Matrix  
    view.Translate(1.5f,0.0f,-7.0f);     // Move Right 1.5 Units And Into The Screen 7.0
    view.Rotate(rquad,1.0f,1.0f,1.0f);          // Rotate The Quad On The X axis  
    glBegin(GL_QUADS);       // Draw A Quad  
    glColor3f(0.0f,1.0f,0.0f);      // Set The Color To Blue 
    glVertex3f( 1.0f, 1.0f,-1.0f);     // Top Right Of The Quad (Top) 
    glVertex3f(-1.0f, 1.0f,-1.0f);     // Top Left Of The Quad (Top)
    glVertex3f(-1.0f, 1.0f, 1.0f);     // Bottom Left Of The Quad (Top) 
    glVertex3f( 1.0f, 1.0f, 1.0f);     // Bottom Right Of The Quad (Top)
    glColor3f(1.0f,0.5f,0.0f);      // Set The Color To Orange  
    glVertex3f( 1.0f,-1.0f, 1.0f);     // Top Right Of The Quad (Bottom)
    glVertex3f(-1.0f,-1.0f, 1.0f);     // Top Left Of The Quad (Bottom)
    glVertex3f(-1.0f,-1.0f,-1.0f);     // Bottom Left Of The Quad (Bottom) 
    glVertex3f( 1.0f,-1.0f,-1.0f);     // Bottom Right Of The Quad (Bottom)  
    glColor3f(1.0f,0.0f,0.0f);      // Set The Color To Red 
    glVertex3f( 1.0f, 1.0f, 1.0f);     // Top Right Of The Quad (Front)
    glVertex3f(-1.0f, 1.0f, 1.0f);     // Top Left Of The Quad (Front)  
    glVertex3f(-1.0f,-1.0f, 1.0f);     // Bottom Left Of The Quad (Front)   
    glVertex3f( 1.0f,-1.0f, 1.0f);     // Bottom Right Of The Quad (Front) 
    glColor3f(1.0f,1.0f,0.0f);      // Set The Color To Yellow 
    glVertex3f( 1.0f,-1.0f,-1.0f);     // Top Right Of The Quad (Back) 
    glVertex3f(-1.0f,-1.0f,-1.0f);     // Top Left Of The Quad (Back) 
    glVertex3f(-1.0f, 1.0f,-1.0f);     // Bottom Left Of The Quad (Back)
    glVertex3f( 1.0f, 1.0f,-1.0f);     // Bottom Right Of The Quad (Back) 
    glColor3f(0.0f,0.0f,1.0f);      // Set The Color To Blue  
    glVertex3f(-1.0f, 1.0f, 1.0f);     // Top Right Of The Quad (Left)
    glVertex3f(-1.0f, 1.0f,-1.0f);     // Top Left Of The Quad (Left) 
    glVertex3f(-1.0f,-1.0f,-1.0f);     // Bottom Left Of The Quad (Left)
    glVertex3f(-1.0f,-1.0f, 1.0f);     // Bottom Right Of The Quad (Left) 
    glColor3f(1.0f,0.0f,1.0f);      // Set The Color To Violet  
    glVertex3f( 1.0f, 1.0f,-1.0f);     // Top Right Of The Quad (Right) 
    glVertex3f( 1.0f, 1.0f, 1.0f);     // Top Left Of The Quad (Right)
    glVertex3f( 1.0f,-1.0f, 1.0f);     // Bottom Left Of The Quad (Right) 
    glVertex3f( 1.0f,-1.0f,-1.0f);      // Bottom Right Of The Quad (Right)
    glEnd();                  // Done Drawing The Quad   
    
    rtri+=0.2f;        // Increase The Rotation Variable For The Triangle ( NEW ) 
    rquad-=0.15f;              // Decrease The Rotation Variable For The Quad ( NEW ) 
    

    }
    这是网上给的nehe opengl代码,运行不能显示窗口。

    评论

报告相同问题?

悬赏问题

  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 再不同版本的系统上,TCP传输速度不一致
  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程