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

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

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.01.2010, 12:15   #41
ds.Dante
Старожил
 
Аватар для ds.Dante
 
Регистрация: 06.08.2009
Сообщений: 2,992
По умолчанию

Как именно мерцает? Всё время у меня проблемы с OpenGL на других компах.

А исходники всё равно выложу. :) Всё-таки сабж.

Кстати, Андрей, выложи бинарник своей программы.

Последний раз редактировалось ds.Dante; 19.01.2010 в 15:18.
ds.Dante вне форума Ответить с цитированием
Старый 19.01.2010, 14:38   #42
Вадим Буренков
Участник клуба
 
Аватар для Вадим Буренков
 
Регистрация: 06.03.2009
Сообщений: 1,346
По умолчанию

Цитата:
Как именно мерцает? Всё время у меня проблемы с OpenGL на других компах.
У меня никаких мерцаний нет, все работает хорошо.
Вадим Буренков вне форума Ответить с цитированием
Старый 19.01.2010, 14:55   #43
Вадим Буренков
Участник клуба
 
Аватар для Вадим Буренков
 
Регистрация: 06.03.2009
Сообщений: 1,346
По умолчанию

Андрей 93, я собрал приложение, оно запускается но экран в твоем приложении мерцает так, что рпзглядеть картинку почти невозможно. Скорее всего дело в неправильно настроенном GL. По поводу скорости: физика требует высокой скорости выполнения. Таймер TTimer не подходит так как имеет интервал 55мс и физика обрабатывается медленно. Конечно можно увеличить скорость обработки физики в самом движке, но упадет качество, формы начнет проваливаться друг в друга. Это решается увеличением кол-ва итераций обработки, за что мы поплатимся скоростью работы - все будет тормозить из-за непомерной нагрузки. Эти таймеры не позволяют определить задержки выполения кода для регулировки скорости физики и не подходят. Сейчас наилучшим способом будет взять что-либо готовое и не мучатся. Чем тебе не нравится Omega в моей демке? В ней используются высокоточные таймеры и скорость работы намного выше.
Вадим Буренков вне форума Ответить с цитированием
Старый 20.01.2010, 05:58   #44
Андрей 93
Люблю жизнь
Форумчанин
 
Аватар для Андрей 93
 
Регистрация: 01.12.2009
Сообщений: 193
По умолчанию

А омега умеет накладывать текстуры? Мне бы руководство. Про OGl в инете много справочников, учебников и т. д (инфы много, поэтому и выбрал его). А про моё приложение не знаю. У меня не мерцает, но рисование каждого кадра идёт очень медленно: линия за линией. Каждый кадр рисуется где-то за 8-10 сек.

Бинарник завтра выложу. У меня дома напряг с инетом, а проект именно дома, приходится каждый раз на флэшку кидать.
Не стыдно не уметь, стыдно не учиться.

Последний раз редактировалось Андрей 93; 20.01.2010 в 06:01.
Андрей 93 вне форума Ответить с цитированием
Старый 20.01.2010, 14:41   #45
Вадим Буренков
Участник клуба
 
Аватар для Вадим Буренков
 
Регистрация: 06.03.2009
Сообщений: 1,346
По умолчанию

Цитата:
А омега умеет накладывать текстуры? Мне бы руководство.
Во первых омега построена на DX/OGL (в зависомости от DLL), и в ней, как и в любом нормальном движке можно писать код на чистом DX/OGL. Двиг просо избавляет от лишней мороки с инициализацией контекста, загрузкой текстур NONPOT (no point of two - не кратные степени двойки). Я раньше на омеге писал игру, и немного почтитав про OGL добавил в движок текстурирование полигонов (см скриншот). К тому же двиг украинский, и все вопросы можно задать его создателю.
Руководство тоже есть (на русском), скачай SDK отсюда.
Я ничего не навязываю и не рекламирую, просто с такими знаниями лучше пока попользоваться чем-либо чужим, а потом набравшись опыта и поняв как это работает писать свое.
Изображения
Тип файла: jpg Tex.JPG (84.0 Кб, 172 просмотров)
Вадим Буренков вне форума Ответить с цитированием
Старый 22.01.2010, 06:17   #46
Андрей 93
Люблю жизнь
Форумчанин
 
Аватар для Андрей 93
 
Регистрация: 01.12.2009
Сообщений: 193
По умолчанию

Спасибо. Мне стоит почаще заходить на сайт isadateam, там много полезного. Копилка моих знаний выросла благодаря Вам!
Не стыдно не уметь, стыдно не учиться.
Андрей 93 вне форума Ответить с цитированием
Старый 23.01.2010, 08:34   #47
Андрей 93
Люблю жизнь
Форумчанин
 
Аватар для Андрей 93
 
Регистрация: 01.12.2009
Сообщений: 193
По умолчанию

добавил в движок текстурирование полигонов
а как?
Не стыдно не уметь, стыдно не учиться.
Андрей 93 вне форума Ответить с цитированием
Старый 23.01.2010, 16:35   #48
Вадим Буренков
Участник клуба
 
Аватар для Вадим Буренков
 
Регистрация: 06.03.2009
Сообщений: 1,346
По умолчанию

Цитата:
а как?
Почитал про OGL и добавил.
Сейчас написал демку которая показывает как пользоваться (чтоб активировать демо надо нажать 4).
Она представляет из себя измененную демо 1, только в ней 11 затекстурированных кубиков.
Текстурирование происходит через написанный мной модуль G2D_POLYGONES.
При инициализации загружаем текстуру:
Код:
if Tex=nil then Tex:=Tex_LoadFromFile('stone.jpg',-1,TEX_DEFAULT_2D);
добавляем кубики сохраняя на них указатели в памяти:
Код:
shapes: array [0..10] of pShape;
В процедуре отрисовки я показал 2 способа использования. Первый - отрисовка с указанием координат вершин и текстурных координат вручную через PolyDrawCashe:
Код:
PC.MaxPoints:=5; //5 вершин
//устанавливаем длинну дин. массивов
SetLength(PC.Point,PC.MaxPoints);
SetLength(PC.TexPoint,PC.MaxPoints);
//заносим вершинные координаты
PC.Point[0]:=cpv(400,100);
PC.Point[1]:=cpv(400,200);
PC.Point[2]:=cpv(450,250);
PC.Point[3]:=cpv(500,200);
PC.Point[4]:=cpv(500,100);
//текстурные координаты
PC.TexPoint[0]:=cpv(400,100);
PC.TexPoint[1]:=cpv(400,200);
PC.TexPoint[2]:=cpv(450,250);
PC.TexPoint[3]:=cpv(500,200);
PC.TexPoint[4]:=cpv(500,100);
//указатель на текстуру которой рисуем полигон
PC.Texture:=Tex;
//теперь рисуем по данным
DrawTexPoly(PC);
Но для рисования объектов chipmunk я написал функцию которая сама находит все вершины, в нее лишь передаем pShape указатель и текстуру:
Код:
for i:=0 to 10 do DrawTexPoly(CasheForPhysPoly(shapes[i],Tex));
Вложения
Тип файла: rar demo.rar (277.2 Кб, 34 просмотров)
Вадим Буренков вне форума Ответить с цитированием
Старый 25.01.2010, 10:06   #49
Андрей 93
Люблю жизнь
Форумчанин
 
Аватар для Андрей 93
 
Регистрация: 01.12.2009
Сообщений: 193
По умолчанию

А чтобы затектурировать окружность надо использовать изображение с альфа-каналом?
Не стыдно не уметь, стыдно не учиться.
Андрей 93 вне форума Ответить с цитированием
Старый 25.01.2010, 14:23   #50
Вадим Буренков
Участник клуба
 
Аватар для Вадим Буренков
 
Регистрация: 06.03.2009
Сообщений: 1,346
По умолчанию

У меня текстурирование используется для отрисовки уровня, все остальное рисуется через простые спрайты.
Вадим Буренков вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Физика в 2D играх Вадим Буренков Gamedev - cоздание игр: Unity, OpenGL, DirectX 32 02.11.2010 22:00
Искуственый интелект в играх VintProg Gamedev - cоздание игр: Unity, OpenGL, DirectX 26 01.08.2009 23:09
Сюжет в 2D играх ZotaC Свободное общение 8 05.07.2009 15:42
Физика программы. Манжосов Денис :) Gamedev - cоздание игр: Unity, OpenGL, DirectX 1 09.05.2008 18:14
Анимация в играх frai Gamedev - cоздание игр: Unity, OpenGL, DirectX 4 25.11.2007 14:28