Похожую тему создавал уже но она была нещадно погребена новыми поэтому вопрос остался.
Возниикла проблема с наложением текстуры в слудующем коде.
-------------------------------- main.cpp ----------------------------------------------
#include "bmp.h"
#include  "GL/glut.h"
#include  "GL/gl.h"
#include  "GL/glu.h"
GLdouble angel = 0.0;
GLdouble angel_pos = 50.0;
GLdouble k = 5;
int n = 0;
tagBITMAPFILEHEADER bmpFileHeader;
tagBITMAPINFOHEADER bmpInfoHeader;
int file_bmp,nCol,nRow;
tagRGBQUAD* flat;
void readFile(void)
{
    file_bmp = open ("/home/alexandr/Documents/Coding/C++/MyProjects/sphere/32b.bmp", O_RDONLY);
    read (file_bmp, &bmpFileHeader, 14);
    read (file_bmp, &bmpInfoHeader, 40);
    nCol = bmpInfoHeader.biWidth;
    nRow = bmpInfoHeader.biHeight;
    n = nCol * nRow;
    
    for (int y = bmpInfoHeader.biHeight; y > 0; y--)
    {
      for (int x = 0; x < bmpInfoHeader.biWidth; x++)
      {
        read (file_bmp, &flat[n].r, 1);
        read (file_bmp, &flat[n].g,1);
        read (file_bmp, &flat[n].b,1);
        read (file_bmp, &flat[n].a,1);
        n++;
      }
    }
}
void setTexture(GLuint name)
{
  glBindTexture(GL_TEXTURE_2D,name);
  glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_NEAREST);
  glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_NEAREST);
  glTexImage2D(GL_TEXTURE_2D,0,GL_RGB,nCol,nRow,0,GL_RGB,GL_UNSIGNED_BYTE,flat);
}  
void Init (void)
{
  glEnable(GL_TEXTURE_2D);
  glEnable(GL_DEPTH_TEST);
  glEnable(GL_ALPHA_TEST);
  glEnable(GL_BLEND);
  glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
}
void resize(int width,int height)
{
   glClearColor(0.0,0.0,0.0,0.0);
   glViewport(0,0,width,height);
   glMatrixMode( GL_PROJECTION );
   glLoadIdentity();
   glOrtho(-12,12, -12,12, -20,20);
   gluLookAt( 3,1,1, 0,0,0, 0,1,0 );
   glMatrixMode( GL_MODELVIEW );
}
void display(void)
{
  glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );   //Function of clear window
  /////    Plase code here   //////
  GLuint* num;
  
  glPushMatrix();
  glGenTextures(1,num);
  setTexture (num[0]);
  glBegin(GL_POLYGON);
  glTexCoord2f(0,2*k);
  glVertex3d(-1*k,0*k,1*k);
  glTexCoord2f(0,2*k);
  glVertex3d(1*k,0*k,1*k);
  glTexCoord2f(0,2*k);
  glVertex3d(1*k,0*k,-1*k);
  glTexCoord2f(0,2*k);
  glVertex3d(-1*k,0*k,-1*k);
  glEnd();
  glPopMatrix();
  ///////////////////////////////////////////
  glFlush();
  glutSwapBuffers();
}
void timer(int value)
{
  glutPostRedisplay();  //Reshape function
  glutTimerFunc(10, timer, 0);  //Create loop of timers
  angel ++;
}
int main(int argc, char *argv[])
{
  glutInit(&argc, argv);
  glutInitWindowSize(900, 900);   //Position and
  glutInitWindowPosition(0, 0);     // size of window
  glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE );   //Mode of MainWindow
  glutCreateWindow(" Created by Cyclon (_cyclon_@mtu.ru) ");   //Create window with Caption
  Init();   //Initalization function
  glutReshapeFunc(resize);  //Function for reshape
  glutDisplayFunc(display);   //Function for resize
  glutTimerFunc(25, timer, 0);  //Timer with 25ms interval
  glutMainLoop(); //Just run main loop
  return 0;
}
-------------------------------------------------------------------------------- --------------
--------------------------------bmp.h------------------------------------------- -----------
#include <fcntl.h>
#include <unistd.h>
#include <iostream.h>
#pragma pack(push,1)	
typedef unsigned long DWORD;    
typedef unsigned short WORD;         
typedef signed long LONG;
typedef unsigned int UINT;
typedef struct tagBITMAPFILEHEADER
{
        WORD bfType;                // 'BM' = 4D42h
        DWORD bfSize;
        UINT bfReserved1;
        UINT bfReserved2;
        DWORD bfOffBits;
};
typedef struct tagBITMAPINFOHEADER
{
        DWORD biSize;
        LONG biWidth;
        LONG biHeight;
        WORD biPlanes;
        WORD biBitCount;
        DWORD biCompression;
        DWORD biSizeImage;
        LONG biXPelsPerMeter;
        LONG biYPelsPerMeter;
        DWORD biClrUsed;
        DWORD biClrImportant;
};
-------------------------------------------------------------------------------- --------------
Пожалуйсто покажите где может быть ошибка и почему текстура не накладывается, или же кинте ссылкой н пример реально работающего примера делающего тоже самое и таким же способом, т.е. прямым чтением из файла, но имеющего небольшой размер (в строчках, чтобы было проще разобраться).

    
      Ответ на:
      
          комментарий
        от anonymous 
  
    
      Ответ на:
      
          комментарий
        от anonymous 
  
    
      Ответ на:
      
          комментарий
        от cyclon 
  
    
      Ответ на:
      
          комментарий
        от cyclon 
  
    
      Ответ на:
      
          комментарий
        от anonymous 
  
    
      Ответ на:
      
          комментарий
        от cyclon 
  
    
      Ответ на:
      
          комментарий
        от anonymous 
  
    
      Ответ на:
      
          комментарий
        от cyclon 
  
    
      Ответ на:
      
          комментарий
        от anonymous 
  
    
      Ответ на:
      
          комментарий
        от cyclon 
  
    
      Ответ на:
      
          комментарий
        от anonymous 
  
    
      Ответ на:
      
          комментарий
        от cyclon 
  
    
      Ответ на:
      
          комментарий
        от anonymous 
  
    
      Ответ на:
      
          Re
        от cyclon 
  
    
      Ответ на:
      
          комментарий
        от anonymous 
  
    
      Ответ на:
      
          Re
        от cyclon 
  
    
      Ответ на:
      
          комментарий
        от anonymous 
  
    
      Ответ на:
      
          комментарий
        от cyclon 
  
    
        Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
      
Похожие темы
- Форум Почему не накладывается текстура? (2003)
- Форум Segmentation fault при чтении файла. (2003)
- Форум Как работать с BMP разной битности. (2003)
- Форум Тормоизт текстурированный куб в OpenGL. (2003)
- Форум Запись структуры в файл (2014)
- Форум Построение бинарного дерева (2005)
- Форум Можно ли подружить glubuild2dmipmaps и qt? (2022)
- Форум Изменение цвета пикселей в простой программе по копированию bmp файла (2016)
- Форум Помощь в gluLookAt (2013)
- Форум [X11]Не могу понять, где по-нормальному объявлена структура Display (2011)