PMG

Форумы по созданию игр
Текущее время: 23 апр 2024 13:35

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения: Создание окна OGL для Form
СообщениеДобавлено: 06 мар 2009 01:59 
Не в сети
Новичок

Зарегистрирован: 06 мар 2009 01:49
Сообщения: 4
Подскажите пожалуйста...
Пользую C++Builder6
Есть программка в ней ведутся расчеты, сделана через Application, т.е. есть форма, нужно некоторые данные визуализировать...
По урокам NeHe сделал примерно что нужно, осталось передавать туда данные из основной программы, но вот тут появилась проблемка... Не могу заставить основную программу прорисовывать окно для OGL
Подскажите как подключить допустим 2-й урок - ну как самый маленький)) к Application.
Надеюсь получилось объяснить.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание окна OGL для Form
СообщениеДобавлено: 06 мар 2009 21:52 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
>Не могу заставить основную программу прорисовывать окно для OGL

А посылать сообщения WM_PAINT не пробывал?

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание окна OGL для Form
СообщениеДобавлено: 07 мар 2009 17:51 
Не в сети
Новичок

Зарегистрирован: 06 мар 2009 01:49
Сообщения: 4
MagicWolf, извини а можно поподробнее, я просто с OGL мало знаком, и разберусь с ним наверно не очень скоро. А сделать надо))
Попробовал просто вставить WM_PAINT, почитал справку, честно не очень много понял.
Допустим я создаю новое приложение:
Код:
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

Подключаю второй урок
Код:
#include <lesson2.cpp>

И хочу что бы при создании формы создавалось еще и окно OGL как по умолчанию в уроках NeHe размером 600*800 где нить сбоку)))
Подскажи пожалуйста, что нужно написать что бы оно появилось, и скорее всего надо еще что то подключать в Unit1, и возможно в lesson2.cpp.
Заранее большое спасибо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание окна OGL для Form
СообщениеДобавлено: 11 мар 2009 14:55 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Мне трудно сказать как это сделать в Builder, но можно зайти на сайт NeHe там есть исходники первого урока для Builder. А так смысл манипуляций прост: надо иметь окно, получить в нем графический контекст и в нем уже инийиализировать OGL.

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание окна OGL для Form
СообщениеДобавлено: 11 мар 2009 18:05 
Не в сети
Новичок

Зарегистрирован: 06 мар 2009 01:49
Сообщения: 4
Проблема в том что везде указывается как создавать окно OGL из консольного приложения.
Допустим есть что то похожее на уроки NeHe OpenGL по шагам, но там тоже изначально создается проект Win32 Console.
Попробовал сделать на основе примеров из Билдера (там есть 2шт), но тогда получается что непонятно, что и для чего, хотя получилось что то более менее похожее на правду, но уверен что некоторое операции делаю по 2 раза, или они вообще не нужны.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание окна OGL для Form
СообщениеДобавлено: 15 мар 2009 17:30 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Исходники для Builder с сайта Nehe смотрел?

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание окна OGL для Form
СообщениеДобавлено: 15 мар 2009 23:08 
Не в сети
Новичок

Зарегистрирован: 06 мар 2009 01:49
Сообщения: 4
Да, да смотрел... НА самом деле плохо владею терминологией, но как мне сказал один из знакомых - проблема в том, что примеры NeHe написаны на чистом WinAPI используя язык C++(мог неправильно понять что он мне сказал). Но для примеров NeHe создаются приложения Win32 Console - т.е. по сути не используется Builder как таковой. ДУмаю и на VisialStudio они с тем же успехом запустятся. Проблема то именно в том что бы заставить создавать окно из Builder-a.
Просто столкнулся с тем, что создать то окно получилось, кое как... Подключил графику - простые тела рисуются, а вот текстура вроде и должна накладываться по идее (делал из уроков NeHe и в консольном приложении работает) а вот в Buildere выдает ошибку. Вот теперь мучаюсь - довольно редко делают приложения с OGL и одновременно форму, да и книжек не найду:( Есть отдельно, как делать формы, есть, как делать OGL, но как совместить - не могу найти :(


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание окна OGL для Form
СообщениеДобавлено: 16 мар 2009 22:01 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Aleksus писал(а):
Да, да смотрел...

Вот это???
http://nehe.gamedev.net/data/lessons/bc ... 1_bcb6.zip
http://pmg.org.ru/nehe/ogl_builder01.htm

Можно посмотреть:
БХВ - OpenGL. Графика в проектах Delphi, 2000.djvu

Aleksus писал(а):
НА самом деле плохо владею терминологией, но как мне сказал один из знакомых - проблема в том, что примеры NeHe написаны на чистом WinAPI используя язык C++(мог неправильно понять что он мне сказал). Но для примеров NeHe создаются приложения Win32 Console - т.е. по сути не используется Builder как таковой. ДУмаю и на VisialStudio они с тем же успехом запустятся. Проблема то именно в том что бы заставить создавать окно из Builder-a.


Да, правильно. Но посмотри внимательно, для того чтобы инициализировать OGL, надо использовать wgl и контекст рисования:
hDC=GetDC(hWnd)
PixelFormat=ChoosePixelFormat(hDC,&pfd)
SetPixelFormat(hDC,PixelFormat,&pfd)
hRC=wglCreateContext(hDC)

Т.е. из hDC получаем hRC!!! В принципе это все что нужно от Builder. Теперь только надо выводить на hDC средствами OGL, а не Builder, а обработку сообщений делать из Builder.

Aleksus писал(а):
Просто столкнулся с тем, что создать то окно получилось, кое как... Подключил графику - простые тела рисуются, а вот текстура вроде и должна накладываться по идее (делал из уроков NeHe и в консольном приложении работает) а вот в Buildere выдает ошибку.


А в чем проблема. Может просто не может найти текстуру? Это уже ни какого отношения к Builder не имеет.

Aleksus писал(а):
Вот теперь мучаюсь - довольно редко делают приложения с OGL и одновременно форму, да и книжек не найду:( Есть отдельно, как делать формы, есть, как делать OGL, но как совместить - не могу найти :(


Формы и OGL не совместимы, если нет такого особого компонента.

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 30


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB