ПрограммированиеФорум2D графика и изометрия

вопрос по HGE

Страницы: 1 2 364 65 Следующая »
#0
23:30, 25 авг 2006

там есть 6 туториал по работе с меню.
собственно говоря я его и взял, только изменил конструктор с

hgeGUIMenuItem::hgeGUIMenuItem(int _id, hgeFont *_fnt, HEFFECT _snd, float _x, float _y, float _delay, char *_title)
{
  ...
}

на

hgeGUIMenuItem::hgeGUIMenuItem(int _id, HEFFECT _snd, HTEXTURE _tex, float _x, float _y)
{
    id=_id;
    eff = _snd;
    x = _x;
    y = _y;
    ActiveButton = new hgeSprite(_tex, 0, 0, 33, 29);
    rect.Set(_x, _y, _x+32, _y+29);
}

перед

hgi->System_Start()

написал

Gui->AddCtrl(new hgeGUIMenuItem(1,hge->Effect_Load("Sound\\click.wav"),hge->Texture_Load("Gui\\right_push_menu_main.png"),520,109));
Gui->AddCtrl(new hgeGUIMenuItem(2,hge->Effect_Load("Sound\\click.wav"),hge->Texture_Load("Gui\\right_push_menu_main.png"),719,247));
      

у меня на фоне нарисовано уже сразу всё меню с кнопками, т.е. что бы мне подсветить кнопку надо просто поверху вывести это подсвеченную кнопку, а потом убрать и снова будет defaul-ое меню. Но я хочу сделать что бы при нажатии на одну из кнопок (1 или 2)
не отпуская левую кнопку мыши загружалась точней отображалась эта текстура right_push_menu_main.png, а когда отпустил кнопку снова стало прежнее меню. Как это сделать, а то я запутался в методах hgeGUI. в обработчике MouseLButton я пишу

if(bDown)
  {
    ActiveButton->Render(x,y);
    hge->Effect_Play(eff);
  }

с одной стороны вроде и праивльно, оно выводит но только один раз за одну итерацию цикла, нажал (даже не отпуская ) сработал этот код один раз, кнопка отобразилась и быстро исчезла что только успел след на экране увидить. Ну как её задержать на экране до тех пор пока не отпущу левую кнопку мыши? Пробывал писать в Методе Render() следующее

ActiveButton->Render(x,y);

тогда выводится сразу две кнопки и без изменения остаются там висеть.

#1
4:38, 26 авг 2006

проверь почту

#2
12:10, 26 авг 2006

Upiter
ответил....
надеюсь это то что мне нужно

#3
20:21, 26 авг 2006

Еще вопросики по HGE))

Недавно вот решил игруху написать.. В C++ Builder работаю достаточно давно, но игрухи раньше никогда не писал.. Для начала решил попробовать HGE... В целом все понятно, прикольный движок, понравился, но вот возникла пара вопросов..

1) Есть ли в HGE ограничение по FPS?.. У меня графа в игрухе в принципе простая, но движок постоянно использует все 100%CPU.. То есть выдает максимально возможное FPS.. Неплохо было бы как-нить ограничить этот "беспредел"))))

2) Можно ли как-нить в HGE рисовать сглаженые линии(antialiased)? Или для этого надо писать свой фильтр? И есть ли вообще движки, позволяющие сразу же (без создания отдельных сглаживающих фильтров) рисовать такие линии?..

3) Что такое HGE::Gfx_StartBatch и HGE::Gfx_FinishBatch и с чем их едят?))

В описании есть такая строчка:

This may be used for tasks like sofisticated geometry or texture effects or complex precalculated objects rendering

Но в примерах я ничего про эти ф-ции не нашел.. Расскажите о них по подробнее и как их использовать.

4) Насколько я понял, HGE при инициализации всегда создает свое отдельное окно и запихнуть картинку, создаваемую движком, на свою форму(родную, билдеровскую) никак нельзя? Так ли это или есть какие-нить способы встроить получившеееся изображение в свою форму?

Заранее спасибо всем ответившим)))

#4
20:34, 26 авг 2006

В билдере с hge не работал но вообще надо поставить эту строку

hge->System_SetState(HGE_FPS, 150); 

что бы ограничить FPS - но лучше этим не заниматься.
2. в этом движке я такого не видел(может потому что не искал), на счёт других не знаю
3. не работал с этим
4. Я думаю что если тебе удаться подключить hge при обычном проекте, файл new aplication то может что нибудь и выйдет, но в описании написано что надо создавть консольное приложение, наверно врядли....

А почему билдер а не визуал?

#5
20:53, 26 авг 2006

1) Спасибо, буду читьать доку внимательнее))) А почему лучше этим не заниматься?(интересно просто..)
2) Лан, эт я так.. Сам напишу, не проблема..
3) Ясн.. Мож все-таки кто-нить знает что это? Мож пригодится)))
4) Хм.. Вообще я без проблем подключал hge оконному приложению... Но после System_Initiate() автоматически создается новое окно, в котором и рисуется вся hge-картинка...
Что ты имел ввиду под "подключить hge при обычном проекте"? Собственно, я и подключаю hde при обычном проекте(файл->new aplication)...

Почему билдер? Ну так уж сложилось.. Как то давным давно начал писать на билдере... А вообще не вижу особых причин переходить на визуал. Я работаю с оконными приложениями, а всякие кнопочки-таблички, имхо, удобнее реализованы в билдере.. Ну куча еще разных мелочей, к которым я уже привык)))...

#6
20:59, 26 авг 2006

я думал ты полноценную игру делаешь на весь экран, а если оконное приложение с кнопками тогда всё норма....

>Собственно, я и подключаю hge при обычном проекте(файл->new aplication)...
да? ну тогда ладно.... :)

#7
21:22, 26 авг 2006

По поводу фулл скрина я еще думаю... Если не получится встроить изображение в свою форму, то скорее всего буду делать полноэкранную версию...))

#8
22:31, 26 авг 2006

_Core_
>1) Есть ли в HGE ограничение по FPS?.. У меня графа в игрухе в принципе

да, модный кекс написал как. В HGE надо ограничить фпс если будешь использовать частицы. А вообще для движка (для движения и анимации) я сторонник не ограничивать фпс а регулировать все этор дело по времени, чтобы чем быстрее машина, тем плавнее движение, анимация, чем медленее, тем более резкие изменения.

>4) Насколько я понял, HGE при инициализации всегда создает свое отдельное окно
>и запихнуть картинку, создаваемую движком, на свою форму(родную, билдеровскую)
>никак нельзя? Так ли это или есть какие-нить способы встроить получившеееся
>изображение в свою форму?
>Заранее спасибо всем ответившим)))

это точно можно сделать, мы делали в одной тулзе.

#9
0:19, 27 авг 2006

2Jaibo

И как это сделать?(я про встраивание HGE-изображения в форму..) Буду очччень признателен!!)))...

#10
0:30, 27 авг 2006

Сам разобрался.. )) Все оказалось элементарно)))

Еще раз всем спасибо)))

#11
13:00, 27 авг 2006

deluSion
>Не нужно фпс ограничивать, нужно всего лишь при создания системы частиц указать
>фпс тот, что был в редакторе, например:

а я думал и там и там надо проставлять лимит, сколько с хге работал и не знал :), попробую, спасибо.

#12
16:23, 27 авг 2006

deluSion
не надо изобретать колесо - что за привычка :)
Ведь будет намного лучше подключиться к группе разработчиков и добавить в HGE то, чего вам так не хватало :)
Удачи

#13
17:22, 27 авг 2006

deluSion

Где можно скачать?

#14
18:21, 27 авг 2006

deluSion
а не расскажешь в кратце что там нового, есть смысл мне его скачивать или ограничиться существующей версией..

и расскажи чего тебе так сильно не хватает?

Страницы: 1 2 364 65 Следующая »
ПрограммированиеФорум2D графика и изометрия

Тема в архиве.