Текущий архив: 2004.03.14;
Скачать: CL | DM;
ВнизЛогическая струкура игрового движка Найти похожие ветки
← →
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;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.013 c