Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.02.2011, 12:25   #1
alexblg
Новичок
Джуниор
 
Регистрация: 10.02.2011
Сообщений: 3
По умолчанию С++ и OpenGl-растяжение

Здравствуйте, собственно проблема такая:
написал программу на С++ с подключением OpenGL-там правильные геометрические фигуры выводятся.
Все ок, только один косячок-на моем компе все смотрится ровно, а на других-вытягивается то вширь, то по высоте, а нужно чтобы везде одинаково!!! Реально ли это?
alexblg вне форума Ответить с цитированием
Старый 10.02.2011, 13:45   #2
NiCola999
Не
Участник клуба
 
Регистрация: 29.10.2009
Сообщений: 1,456
По умолчанию

в функции, которая перерисовывает окно (обычно reshape) нужно обновлять значения высоты и ширины экрана
Код:
void reshape(int width, int height)
{   
    // W, H - глобальные переменные (ширина, высота окна)
    W = width;
    H = height;
    glViewport(0, 0, width, height);
    glMatrixMode(GL_PROJECTION);
    glLoadIdentity(); 
    gluPerspective(80.0f, (GLfloat)W/(GLfloat)H, 1.0f, 20.0f);  
    gluLookAt(0, 2, 5, 0, 0, 0, 0, 1, 0);    
    glMatrixMode(GL_MODELVIEW);
    glLoadIdentity() ;
}

Последний раз редактировалось NiCola999; 10.02.2011 в 13:47.
NiCola999 вне форума Ответить с цитированием
Старый 10.02.2011, 14:04   #3
alexblg
Новичок
Джуниор
 
Регистрация: 10.02.2011
Сообщений: 3
По умолчанию

так и делал!!! у меня на компе разрешение 1680х1050, меняю на другое-тянет. пробовал вручную 1024х768 задать-на моем разрешении нормально, меняю-тянет!!!
alexblg вне форума Ответить с цитированием
Старый 10.02.2011, 14:08   #4
NiCola999
Не
Участник клуба
 
Регистрация: 29.10.2009
Сообщений: 1,456
По умолчанию

выложите отдельным архивом весь код
NiCola999 вне форума Ответить с цитированием
Старый 10.02.2011, 14:15   #5
alexblg
Новичок
Джуниор
 
Регистрация: 10.02.2011
Сообщений: 3
По умолчанию

а где и как задавать глобальные переменные W и H???
alexblg вне форума Ответить с цитированием
Старый 10.02.2011, 14:29   #6
NiCola999
Не
Участник клуба
 
Регистрация: 29.10.2009
Сообщений: 1,456
По умолчанию

хм... в начале программы, только они не должны быть константными
NiCola999 вне форума Ответить с цитированием
Старый 10.02.2011, 15:12   #7
Obey-Kun
Линуксоид
Участник клуба
 
Аватар для Obey-Kun
 
Регистрация: 31.07.2009
Сообщений: 1,403
По умолчанию

ну или в классе, который представляет собой окно
Я схожу с ума или это глючит реальность?
Jabber ID: obey@obey.su
Obey-Kun вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как происходит вращение, растяжение объекта? Dmitry72 Мультимедиа в Delphi 3 05.11.2009 17:38
растяжение массива. только исправить Ananim-Pbl6ak Паскаль, Turbo Pascal, PascalABC.NET 7 16.06.2009 08:23
растяжение массива.исправить код Flomic Паскаль, Turbo Pascal, PascalABC.NET 1 04.06.2009 16:46
Растяжение одномерного массива Dimon.ru Паскаль, Turbo Pascal, PascalABC.NET 0 03.06.2009 19:58