Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
NikSmash
2 / 2 / 0
Регистрация: 01.05.2015
Сообщений: 21
1

Visual Studio не читает операторы, что начинаются на "glu" ("gluBuild2DMipmaps", "gluPerspective")

07.06.2015, 14:20. Просмотров 1449. Ответов 6
Метки нет (Все метки)

Данный код должен выводить на экран кубик который должен вращаться, но возникла проблема. Для выполнения этого кода я подключи библиотеку SFML. Все работало корректно, но когда я прописал "gluBuild2DMipmaps" и "gluPerspective", VS их не воспринимал. Отчетливо видно что VS не находит только те операторы которые начинаются с "glu". Прошу помочь мне с данной проблемой. Код ниже


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
#include <SFML/Graphics.hpp>
#include <SFML/OpenGL.hpp>
#pragma comment(lib, "glu32.lib")
using namespace sf;
 
int main()
{
    RenderWindow window(VideoMode(800, 600), "SFML OpenGL");
    Texture t;
    t.loadFromFile("resources/background.jpg");
    Sprite background(t);
 
    GLuint texture = 0;
    {
        Image image;
        image.loadFromFile("resources/texture.jpg");
 
        glGenTextures(1, &texture);
        glBindTexture(GL_TEXTURE_2D, texture);
        gluBuild2DMipmaps(GL_TEXTURE_2D, GL_RGBA, image.getSize().x, image.getSize().y, GL_RGBA, GL_UNSIGNED_BYTE, image.getPixelsPtr());
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);
    }
 
    glEnable(GL_DEPTH_TEST);
    glDepthMask(GL_TRUE);
    glClearDepth(1.f);
    glMatrixMode(GL_PROJECTION);
    glLoadIdentity();
    gluPerspective(90.f, 1.f, 1.f, 500.f);
    glEnable(GL_TEXTURE_2D);
 
    Clock clock;
 
    while (window.isOpen())
    {
        Event event;
        while (window.pollEvent(event));
        {
            if (event.type == Event::Closed)
                window.close();
        }
 
        float time = clock.getElapsedTime().asSeconds() * 100;
        float size = 20.f;
 
        // Drow the background
        window.pushGLStates();
        window.draw(background);
        window.popGLStates();
 
        // Clear the depth buffer
        glClear(GL_DEPTH_BUFFER_BIT);
 
        // Apply some transformations (смещаем кубик на 100 единиц)
        glMatrixMode(GL_MODELVIEW);
        glLoadIdentity();
        glTranslatef(0, 0, -100);
        glRotatef(time, 50, 50, 0);
 
        // Draw a cube
        glBindTexture(GL_TEXTURE_2D, texture);
        glBegin(GL_QUADS);
            // Back
            glTexCoord2f(0, 0); glVertex3f(-size, -size, -size);
            glTexCoord2f(1, 0); glVertex3f( size, -size, -size);
            glTexCoord2f(1, 1); glVertex3f( size,  size, -size);
            glTexCoord2f(0, 1); glVertex3f(-size,  size, -size);
 
            // Front
            glTexCoord2f(0, 0); glVertex3f( size, -size,  size);
            glTexCoord2f(1, 0); glVertex3f(-size, -size,  size);
            glTexCoord2f(1, 1); glVertex3f(-size,  size,  size);
            glTexCoord2f(0, 1); glVertex3f( size,  size,  size);
 
            // Left
            glTexCoord2f(0, 0); glVertex3f(-size, -size,  size);
            glTexCoord2f(1, 0); glVertex3f(-size, -size, -size);
            glTexCoord2f(1, 1); glVertex3f(-size,  size, -size);
            glTexCoord2f(0, 1); glVertex3f(-size,  size,  size);
 
            // Right
            glTexCoord2f(0, 0); glVertex3f( size, -size, -size);
            glTexCoord2f(1, 0); glVertex3f( size, -size,  size);
            glTexCoord2f(1, 1); glVertex3f( size,  size,  size);
            glTexCoord2f(0, 1); glVertex3f( size,  size, -size);
 
 
            // Bottom
            glTexCoord2f(0, 0); glVertex3f(-size, -size,  size);
            glTexCoord2f(1, 0); glVertex3f( size, -size,  size);
            glTexCoord2f(1, 1); glVertex3f( size, -size, -size);
            glTexCoord2f(0, 1); glVertex3f(-size, -size, -size);
 
            // Top
            glTexCoord2f(0, 0); glVertex3f(-size,  size, -size);
            glTexCoord2f(1, 0); glVertex3f( size,  size, -size);
            glTexCoord2f(1, 1); glVertex3f( size,  size,  size);
            glTexCoord2f(0, 1); glVertex3f(-size,  size,  size);
 
        glEnd();
 
        // Display all
        window.display();
    }
 
    glDeleteTextures(1, &texture);
 
    return 0;
}

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.06.2015, 14:20
Ответы с готовыми решениями:

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно"
В зависимости от времени года &quot;весна&quot;, &quot;лето&quot;, &quot;осень&quot;, &quot;зима&quot; определить...

Зачем перегружать операторы "++", "<<", ">>" и что они дают?
Здравствуйте. Я хотел спросить зачем перегружать оператор &quot;++&quot;, &quot;&lt;&lt;&quot;, &quot;&gt;&gt;&quot; и...

Для каждой строки найти слова, которые не имеют ни одного из букв: "l", "k", "r", "s" i "j"
Задано символьные строки. Строка состоит из нескольких слов (наборов символов),...

Реализовать классы "Воин", "Пехотинец", "Винтовка", "Матрос", "Кортик" (наследование)
Разработать программу с использованием наследования классов, реализующую...

Создать абстрактный класс "Издание" и производные классы "Книга", "Статья", "Электронный ресурс"
1. Создать абстрактный класс Издание с методами, позволяющими вывести на экран...

6
Perfilov
264 / 164 / 56
Регистрация: 25.02.2015
Сообщений: 435
07.06.2015, 14:27 2
какие у вас ошибки то?
ошибки компиляции типа не знаю что такое gluXXX - тогда нет нужного инклудника ну или с макросами что-то не то.
если ошибки линковки - студия не видин нужных библиотек (lib файлов)
0
lss
930 / 859 / 355
Регистрация: 10.10.2012
Сообщений: 2,705
07.06.2015, 15:12 3
opengl32.lib подключена?

Добавлено через 5 минут
У меня, это код (в 10-й студии), без ошибок компилируется.
Дополнительные зависимости:
sfml-graphics-d.lib
sfml-window-d.lib
sfml-main-d.lib
sfml-system-d.lib
sfml-audio-d.lib
gdi32.lib
opengl32.lib
glu32.lib
winmm.lib
0
NikSmash
2 / 2 / 0
Регистрация: 01.05.2015
Сообщений: 21
07.06.2015, 15:37  [ТС] 4
1>------ Построение начато: проект: Rotating Cube, Конфигурация: Debug Win32 ------
1> main.cpp
1>c:\users\nikita\desktop\visual projects\c++ projects\rotating cube\rotating cube\main.cpp(20): error C3861: gluBuild2DMipmaps: идентификатор не найден
1>c:\users\nikita\desktop\visual projects\c++ projects\rotating cube\rotating cube\main.cpp(30): error C3861: gluPerspective: идентификатор не найден
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========

Добавлено через 13 минут
Я в папку debug закинул файлы sfml-graphics-2.dll, sfml-system-2.dll, sfml-window-2.dll. Пометил путь к include и в компоновщике к lib. В input (в дополнительных зависимостях) указал
"sfml-graphics.lib"
"sfml-window.lib"
"sfml-system.lib"
"sfml-audio.lib"
"opengl32.lib"
"glu32.lib"
0
lss
930 / 859 / 355
Регистрация: 10.10.2012
Сообщений: 2,705
07.06.2015, 16:15 5
Цитата Сообщение от NikSmash Посмотреть сообщение
"sfml-graphics.lib"
"sfml-window.lib"
"sfml-system.lib"
"sfml-audio.lib"
Почему без d, раз debug собираешь?

Добавлено через 1 минуту
SFML какая?

Добавлено через 3 минуты
В glu.h (в Microsoft SDKs) вот такое есть?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
...
int APIENTRY gluBuild2DMipmaps (
    GLenum      target, 
    GLint       components, 
    GLint       width, 
    GLint       height, 
    GLenum      format, 
    GLenum      type, 
    const void  *data);
...
void APIENTRY gluPerspective (
    GLdouble fovy, 
    GLdouble aspect, 
    GLdouble zNear, 
    GLdouble zFar);
0
NikSmash
2 / 2 / 0
Регистрация: 01.05.2015
Сообщений: 21
07.06.2015, 17:07  [ТС] 6
glu.h отсутствует
0
lss
930 / 859 / 355
Регистрация: 10.10.2012
Сообщений: 2,705
08.06.2015, 14:22 7
Цитата Сообщение от NikSmash Посмотреть сообщение
glu.h отсутствует
Где отсутствует? В Microsoft SDKs?

Добавлено через 21 час 8 минут
И, что?
0
08.06.2015, 14:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.06.2015, 14:22

Создать класс "Книга" с полями "название книги", "количество страниц", "год издания"
Создать класс Книга поля: название книги,количество страниц,год издания...

Создать класс "Вентилятор" содержащий в себе классы: "Двигатель", "Контроллер", "Пульт управления"
Помогите с кодом написания задачи, не понимаю как написать классы в классе. ...

Определить тип данных "Запись", имеющий поля "Фамилия", "Пол", "Зарплата"
определить тип данных запись имеющий поля фамилия пол зарплата. определить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru