Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Вниз

Как реализовать графику на 2D движке   Найти похожие ветки 

 
homm ©   (2007-06-02 18:26) [40]

> а у меня почему-то проигрывает на 150 фпс...

«Этого не может быть, потому что этого не может быть» ©
Очень интересный результат. :) Я бы понял, если бы 8-й жифорс сравновали, там что-то говорили о переводе логики из режима работы с плавающей точкой в целочисленый, ито это для шейдеров, а так вообще не понятно.
Может кто еще попробует и скажет, какой вариант выдает сколько фэпээсов?

ЗЫ XProger, может что-нить в фоне работает, забыл отключить? У меня даже винамп с диспетчером задачь напару сотню попугаев съедают.


 
Vga ©   (2007-06-02 19:29) [41]

У меня test[homm] тоже проигрывает test[XProger] на полсотни кадров.
А на G80, AFAIK, основан на скалярных (а не векторных, как раньше) процессорах с плавающей точкой. R600 - на суперскалярных с плавающей точкой, но тоже не векторных.


 
XProger ©   (2007-06-02 19:50) [42]

homm, я сравнивал наши демки по очереди... твоя вроде не запускает вторичных процессов? )


 
Vga ©   (2007-06-02 20:29) [43]

Хех, я тоже переписал демку :) ~1800FPS
http://vgacich.narod.ru/test.7z


 
Vga ©   (2007-06-02 20:32) [44]

Мдя. А мож даже и 1900


 
homm ©   (2007-06-02 20:48) [45]

> Vga ©

Может тогда так? :)
procedure Render;
const
 W = 640 div 8;
 H = 480 div 8;
 D = 1/8;
var
 i: Integer;
 X, Y: Integer;
begin
 for i:=0 to 4799 do
 begin
   TCB[4*i].X:=Random(8)*D;
   TCB[4*i].Y:=Random(8)*D;
   TCB[4*i+1].X:=TCB[4*i].X+D;
   TCB[4*i+1].Y:=TCB[4*i].Y;
   TCB[4*i+2].X:=TCB[4*i].X+D;
   TCB[4*i+2].Y:=TCB[4*i].Y+D;
   TCB[4*i+3].X:=TCB[4*i].X;
   TCB[4*i+3].Y:=TCB[4*i].Y+D;
 end;
 glTexCoordPointer(2, GL_FLOAT, 0, @TCB[0]);
 glEnableClientState(GL_VERTEX_ARRAY);
 glEnableClientState(GL_TEXTURE_COORD_ARRAY);
 glDrawArrays(GL_QUADS, 0, 19200);
 glDisableClientState(GL_VERTEX_ARRAY);
 glDisableClientState(GL_TEXTURE_COORD_ARRAY);
end;


 
Vga ©   (2007-06-02 20:49) [46]

Кстати да :D


 
homm ©   (2007-06-02 20:50) [47]

У меня как раз 1900 и вышло, а без этого исправления писовался ккой-то бред и было не более 1300.


 
Vga ©   (2007-06-02 20:54) [48]

Тото картинка странная. И ФПС теперь 2100


 
homm ©   (2007-06-02 20:56) [49]

> Тото картинка странная. И ФПС теперь 2100

Ну вот, а автор той темы, с которой все и началось хотел все-то 30 :D


 
Vga ©   (2007-06-02 21:07) [50]

Залил с фиксом homm"а, http://vgacich.narod.ru/test_fix.7z


 
homm ©   (2007-06-02 21:13) [51]

Ну и победные для моей системы 2 килогерца, если заменить
glVertexPointer(2, GL_FLOAT, 0, @VB[0]);
на
glVertexPointer(2, GL_SHORT, 0, @VB[0]);

Ура! :)

Спасибо, друзья, узнал сегодня много интересного, все-же грфика не основное мое занятие :)


 
Vga ©   (2007-06-02 21:28) [52]

А с GLint? По идее, в 32бит системе должно быть быстрее, но требуется больше данных гонять по шине


 
Vga ©   (2007-06-02 21:31) [53]

И кстати, у тебя что за система? Видяха, ее шина, проц?


 
homm ©   (2007-06-02 21:38) [54]

> А с GLint?

Посредине между GL_FLOAT и GL_SHORT.


> В отрисовке здесь работает GPU, так что я спокойно могу
> крутить циклы до 100000 сложений в рендере и FPS даже не
> просядет )

Ну 100000 это конечно ты загнул, а вот 10000 да, работает практически без ущерба для основной сцены :)


 
homm ©   (2007-06-02 21:40) [55]

Sempron2800+ (разогнан с 1600 до 1760) память ДДР-2 около 600 что-то. PCI-E GF-7600GT.


 
homm ©   (2007-06-02 21:40) [56]

> память ДДР-2 около 600

это частота :)


 
Vga ©   (2007-06-02 21:41) [57]

Гм. Видимо влияет пропускная способность шин памяти и возможно карты. И проц видимо быстрее работает с целочисленной математикой.


 
homm ©   (2007-06-02 23:00) [58]

http://opengl.gamedev.ru/articles/?id=124
Лучше положения вершин, нормали, текс. координаты и др. атрибуты хранить в 16-битных целых (GL_SHORT) - это не даёт perfomance penalty начиная с Radeon 9200 и GF4Ti, зато существенно экономит память (при этом такие числа обладают гораздо большей точностью, чем half float) и снижает время загрузки геометрии (как с жёсткого диска в оперативную память, так и в буферы в видеопамяти).


 
Vga ©   (2007-06-02 23:46) [59]

Гм. Статью я читал, однако это благополучно забыл :) Но вообще-то, я имел в виду CPU


 
gray_falcon ©   (2007-06-03 00:00) [60]


> Ну вот, а автор той темы, с которой все и началось хотел
> все-то 30 :D


Ладно, считайте что уговорили, BitBlt, как говорится, хорошо, а OGL лучше. Тогда никто не покажет простой пример применения этой библиотеки (или DX) наподобие "загрузил бмп-вывел на экран и все". Желательно если хоть с какимито комментариями. А то с этими экзаменами времени изучать справочники нету.
заранее благодарен :}


 
homm ©   (2007-06-03 00:05) [61]

> > Ну вот, а автор той темы, с которой все и началось хотел все-то 30 :D
> Ладно, считайте что уговорили, BitBlt, как говорится, хорошо, а OGL лучше.

Имлся ввиду другой автор(вроде бы) другой ветки :) Не могу я ее найти что-то :) А вообше, бери за основу как раз ХПрогеровскую демку, движек вполне хорош для маленьких проектов. Тока код движка наверное для D7 был написан, в D5 мне много чего править пришлось )


 
Vga ©   (2007-06-03 01:25) [62]

Пишет XProger вообще-то уже в D10 (если не 11) и планирует обломать более старые дельфи совсем, методом использования новых фич.
Для 2D там AFAIK непосредственно ничего нету, кроме общих инструментов и установки ортографической проекции. В этом плане лучше движок DGLE, хотя он довольно таки кривоват...
А вообще, AFAIK, Asphyre (экс PowerDraw) - вполне таки хороший двухмерный движок.
Если есть API для дельфи, то я слышал, что еще хорош PopCap Framework.

Ну а в качестве примера вполне сойдут исходники соответствующих функций из DGLE (http://dron.mirgames.ru)


 
Sapersky   (2007-06-04 14:41) [63]

За мерянием некими девайсами (которое, каюсь, я же и спровоцировал :)) никто не вспомнил про

http://www.igdc.ru/

Имеется множество игр с исходниками, и на аппаратных, и на софтверных движках. Аппаратных, впрочем, больше, из софтверных могу вспомнить космосим (или это называлось "скроллер", точно не помню) antonn"а и арканоид Imp"а.
+ готовые движки. Помнится, Darthman выкладывал простенький 2D-движок на OGL - DL-FX2, кажется, он назывался.


 
имя   (2007-06-17 15:33) [64]

Удалено модератором


 
имя   (2007-06-17 15:33) [65]

Удалено модератором


 
имя   (2007-06-17 15:33) [66]

Удалено модератором


 
имя   (2007-06-20 23:17) [67]

Удалено модератором


 
имя   (2007-07-25 06:51) [68]

Удалено модератором



Страницы: 1 2 вся ветка

Форум: "Игры";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.58 MB
Время: 0.067 c
15-1265147861
Kerk
2010-02-03 00:57
2010.08.27
Флешеры поможите


15-1264368629
Юрий
2010-01-25 00:30
2010.08.27
С днем рождения ! 25 января 2010 понедельник


3-1242650536
kyn66
2009-05-18 16:42
2010.08.27
Полосатый TDBGridEh


15-1266096606
Юрий
2010-02-14 00:30
2010.08.27
С днем рождения ! 14 февраля 2010 воскресенье


2-1271142511
Ostrik
2010-04-13 11:08
2010.08.27
Delphi bd





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский