Пятница, 19 Апреля 2024, 04:22

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Программирование » C/C++ » OpenGL и C++ (Как подключить?)
OpenGL и C++
alexteenДата: Понедельник, 29 Августа 2011, 14:12 | Сообщение # 1
частый гость
Сейчас нет на сайте
Здравствуйте! Начил знакомиться с OpenGL и C++. Для разработки выбрал Eclipse и MinGW. Простые прогаммы(консольные) написать могу. Решил идти дальше и учить OpenGL, но тутпоявилась проблема: не могу его подключиться. Как это правильно сделать? В интернете находил решения проблемы, но мне они не помогают.


05142Дата: Понедельник, 29 Августа 2011, 14:57 | Сообщение # 2
постоянный участник
Сейчас нет на сайте
#include <GL/gl.h>
#pragma comment(lib, "opengl.lib")


mecinvader
alexteenДата: Понедельник, 29 Августа 2011, 16:01 | Сообщение # 3
частый гость
Сейчас нет на сайте
Code
#include <GL/gl.h>
#pragma comment(lib, "opengl.lib")

int main()
{
   return 0;
}

При компиляции пишет такую ошибку:
Code
**** Build of configuration Debug for project kvadr_uravn ****
**** Internal Builder is used for build               ****
g++ -O0 -g3 -Wall -c -fmessage-length=0 -o main.o ..\main.cpp
..\main.cpp:2:0: warning: ignoring #pragma comment   
g++ -o kvadr_uravn.exe main.o -lGL -lGLU -lglut
c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: cannot find -lGL
c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: cannot find -lGLU
c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: cannot find -lglut
collect2: ld returned 1 exit status
Build error occurred, build is stopped
Time consumed: 278  ms.  

Что надо ещё устанавливать или настраивать?





Сообщение отредактировал alexteen - Понедельник, 29 Августа 2011, 16:01
KornivalДата: Понедельник, 29 Августа 2011, 16:06 | Сообщение # 4
The Witcher
Сейчас нет на сайте
Quote (alexteen)
#pragma comment(lib, "opengl.lib")

в gcc это директива не работает, попробуй подключить opengl.lib через свойства проекта.
alexteenДата: Понедельник, 29 Августа 2011, 16:10 | Сообщение # 5
частый гость
Сейчас нет на сайте
Kornival, как это сделать? На c++ раньше ничего не писал, начал изучать его недавно.


KornivalДата: Понедельник, 29 Августа 2011, 16:17 | Сообщение # 6
The Witcher
Сейчас нет на сайте
Как это сделать зависит от IDE,с Eclipse я никогда не юзал и поэтому не могу подсказать.

Сообщение отредактировал Kornival - Понедельник, 29 Августа 2011, 16:18
alexteenДата: Понедельник, 29 Августа 2011, 16:18 | Сообщение # 7
частый гость
Сейчас нет на сайте
Kornival, а в чём ты писал? И как там сделать?


KornivalДата: Понедельник, 29 Августа 2011, 16:21 | Сообщение # 8
The Witcher
Сейчас нет на сайте
В кодблокс. Там надо открыть вкладку Project->Build Options->Linker Settings нажать кнопку Add и выбрать нужную библиотеку smile
alexteenДата: Вторник, 30 Августа 2011, 17:05 | Сообщение # 9
частый гость
Сейчас нет на сайте
Kornival, не знаешь, почему когда я создаю форму она зависает?


05142Дата: Вторник, 30 Августа 2011, 17:13 | Сообщение # 10
постоянный участник
Сейчас нет на сайте
alexteen, наверно ты неправильно обрабатываешь сообщения. кинь код основного цикла и windproc (если пишешь под WINdows)

mecinvader
alexteenДата: Вторник, 30 Августа 2011, 17:45 | Сообщение # 11
частый гость
Сейчас нет на сайте
Code
#include "SDL.h"
#include "SDL_opengl.h"
#include <iostream>

int main(int argc, char *args[]){

  SDL_Init(SDL_INIT_EVERYTHING);

  SDL_GL_SetAttribute( SDL_GL_RED_SIZE, 8 );
  SDL_GL_SetAttribute( SDL_GL_GREEN_SIZE, 8 );
  SDL_GL_SetAttribute( SDL_GL_BLUE_SIZE, 8 );
  SDL_GL_SetAttribute( SDL_GL_ALPHA_SIZE, 8 );
  SDL_GL_SetAttribute( SDL_GL_BUFFER_SIZE, 128 );
  SDL_GL_SetAttribute( SDL_GL_DEPTH_SIZE, 128 );
  SDL_GL_SetAttribute( SDL_GL_DOUBLEBUFFER, 128 );

  SDL_WM_SetCaption( "My First Game On C++", NULL );

  SDL_SetVideoMode(600,400,32, SDL_OPENGL);

  glClearColor(1,1,1,1);
  glViewport(0,0,600,400);

  glShadeModel( GL_SMOOTH );

  glMatrixMode(GL_PROJECTION);
  glLoadIdentity();

  glDisable(GL_DEPTH_TEST);
  std::cin.get();
  SDL_Delay(5000);

  SDL_Quit();

  return 0;
}

Писал в Code::Blocks по этому уроку. Там всё нормально.



Форум игроделов » Программирование » C/C++ » OpenGL и C++ (Как подключить?)
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг