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

Вниз

Логическая струкура игрового движка   Найти похожие ветки 

 
K.o.Z   (2003-08-20 19:24) [0]

Хотет бы узнать вае мнение, а то я уже голову сломал, но так оптимального ничего не придумал.....
Расчитывайте на OpenGL


 
cyborg   (2003-08-20 21:07) [1]

В смысле?
//Расчитывайте на OpenGL
Это ты предлагаешь? :)

Три блока выполняются в цикле:
1) Обработка нажатий клавишь.
2) Обработка объектов.
3) Рендерер.

В обработке объектов делаешь:
Движение, анимацию, проверки на:столкновения, жизни, нажатые клавиши для игрока и интерфейса,добавление и убирание объектов, звуки.


 
cyborg   (2003-08-20 21:09) [2]

Третий пункт можно сделать отдельно, в другом потоке или таймере. Чтобы у тебя был "крутой" FPS.


 
Ev_genus   (2003-08-21 00:10) [3]

>cyborg
крутой фпс :) ага, и половина кадров одинаковая.


 
cyborg   (2003-08-21 13:32) [4]

Зато их много :).


 
K.o.Z   (2003-08-22 19:26) [5]

2 cyborg © (20.08.03 21:07) [1]
>> Три блока выполняются в цикле:
как оранизовать этот цикл, тобишь где он должен происходить?

как часто обновлять экран? сейчас я это делаю постоянно - при отсутствии сообщений от системы...

пишу полность на Win API + OpenGL


 
Ev_genus   (2003-08-23 01:53) [6]

2 K.o.Z
а можна я скажу?
>> как оранизовать этот цикл, тобишь где он должен происходить?
забиваеш на сообщения и просто в теле основной программы делаеш вечный цикл. И управления через директинпут.

>>как часто обновлять экран? сейчас я это делаю постоянно - при отсутствии сообщений от системы...
постоянно - после каждого рендеринга кадра


 
cyborg   (2003-08-23 10:51) [7]


Program SuperPuperGame;
Uses ...
Var
...
Quit : Boolean = false;

Procedure ProcessKeys; //Нажатие клавишь
begin
end;
Procedure ProcessObject; //Обработка объектов
begin
end;
Procedure Render; //Вывод на экран
begin
end;

BEGIN
...
Repeat
ProcessKeys;
ProcessObject;
Render;
Sleep(Time); //Или другая функция
Until Quit;
...
END;


 
K.o.Z   (2003-08-25 15:02) [8]

ну в принципе я так и делаю...
а как мне узнать кол-во fps?


 
Всеволод Соловьёв   (2003-08-26 14:32) [9]

гммм... после каждой отрисовки заноси в счетчик (q) значение GetTickCount. А перед отрисовкой fps:=ChastotaProca/(GetTickCount - q).


 
K .o.Z   (2003-08-27 20:01) [10]

а что же делать в OpenGL???


 
K .o.Z   (2003-08-27 20:02) [11]

пардон, не туда написал...



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

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

Наверх





Память: 0.46 MB
Время: 0.011 c
14-43897
Кот Бегемот
2004-02-17 09:27
2004.03.14
Смотрел KILL BILL


1-43613
Lexa
2004-03-02 00:07
2004.03.14
Интерполяция


3-43260
MadGhost
2004-02-13 08:29
2004.03.14
DBGrid как узнать выделена ли строка?


14-43845
Knight
2004-02-21 10:56
2004.03.14
У The Bat а есть нормальные версии или они все такие глючные?


3-43248
sveta
2004-02-13 07:55
2004.03.14
QuickRep выдает ошибку!





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский