Войти
ПроектыФорумУтилиты

Зацени редактор интерфейса!

Страницы: 1 2 3 Следующая »
#0
11:17, 6 июня 2008

Зацени редактор интерфейса! Смотри сайт http://mzconcept.com

Его можно использовать для создания пользовательского интерфейса игр!

dsgn | Зацени редактор интерфейса!

Ну как???


#1
11:44, 6 июня 2008

Это дельфи? Формочек натаскал и готово))))

#2
11:53, 6 июня 2008

Ну типа того, тока ещё будет и под OpenGL/DirectX работать...
Ну то есть, чтоб в играх работало...

#3
11:59, 6 июня 2008

Извиняюсь, а лет вам сколько?

#4
12:08, 6 июня 2008

Это имеет отношение к проекту? :)
Или ты предлагаешь руку и сердце! :))))))))))))))))))

#5
12:13, 6 июня 2008

.:Jolids:.
Я, конечно, не уместно пошутил... Если серьёзно, есть желание написать небольшой редактор такой для создания интерфейса, ну и, естественно, ищу единомышленников... А может кто и в игрухе потом своей применит!!!

#6
12:27, 6 июня 2008

Да удачи... с мего интерфейсом, только вот не совсем понятно как это всё дело работает!

#7
12:35, 6 июня 2008

mzconcept
Расскажи про свой интерфейс.
Какой метод обработки событий от контролов используешь: колбэки, id, etc...?
Легко ли его интегрировать в игру например на HGE (какую часть при этом надо определить/переписать)?

#8
12:50, 6 июня 2008

Идея следующая: есть свой класс CWnd, от него порождён CCanvas, от которого в свою очередь - CGDI, COpenGL, CDirectX
рисование линий, кружочков, картинок и т.д... реализовано для классов CGDI, COpenGL, CDirectX естественно по своему (в основном счас работает только CGDI)
и кнопочки рисуются с помощью RoundRect-ов...

вот пример из кода калькулятора с редактируемыми кнопочками:

    gdi = new CGDI((NWndStyle)(wsOverlapped | wsSysMenu | wsMinimizeBox));
    gdi->Create();
    
    dsgn = new CDesigner(NULL);
    dsgn->StickTo(gdi);
    dsgn->Key_OnDown.Set(App1, stMyKeyDown);

    pan = new CPanel(dsgn);
    pan->PanelFace->SetState(1);
    pan->Set(10, 10, 175, 30, true);

    txt = new CText(pan);
    txt->Set(7, 7, 170, 30, true);
    txt->Str = "0";

    btn = new CButton(dsgn);
    btn->Text->Str = "1";
    btn->Mouse_OnClick.Set(this, stBtnClick);
    btn->Set(10, 155, 40, 30, true);

А вот такой немного ужасный обработчик событий, так как нету в вижуале указателя на функцию класса (только на статическую)
можно использовать библиотеку boost, но решил отказаться от неё...

void CApp1::stBtnClick(CObject *Owner, CObject *Sender)
{
    ((CApp1*)Owner)->BtnClick(Sender);
}
void CApp1::BtnClick(CObject *Sender)
{
    CButton *btn = (CButton*)Sender;

     ...

}

Нужно рисование битмапами? Пожалуйста!!! Есть класс CPic - картинка с координатами, а ней CBitmap - обычный битмар, но или скин...

Вообще, библиотека построена так... есть класс CControl, а от него в конечном итоге порождены все визуальные классы... Каждый контрол может содержать в себе подконтролы...

Каждый контрол может отрисовываться с помощью функции Paint или собираться из подконтроллов...

Для всяких панелек, кнопочек, баров, боксов и т.д., то есть классов порождённых от CPanel можно менять внешний вид, задавая CPanelFace, какой-то разработанный фейс, то есть расположил элементы, а изменить их внешний вид можно потом...

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

#9
12:57, 6 июня 2008

Библиотека отлажена? На нажатия, перетаскивания и т.д. адекватно реагирует?:)

#10
13:12, 6 июня 2008

Vitorio
Пока нет... ) Но всё впереди...

#11
13:16, 6 июня 2008

mzconcept
>Пока нет... ) Но всё впереди...
Ну тогда ждем:)

#12
14:35, 6 июня 2008

mzconcept
бе. Что должно заставить меня использовать именно ваше решение? Чем оно лучше Qt, wxWidgets или (для DX) AntTweakBar, CEGUI?

#13
16:06, 6 июня 2008

evirus
Почему сразу бе?

>Чем оно лучше Qt, wxWidgets или (для DX) AntTweakBar, CEGUI?

Это будет такое решение, с помощью которого можно будет писать и под Win32 и под OpenGL/DirectX и под Эксплоурер... то есть один и тот же проект будет работать везде и не надо будет изучать других...

Ну и потом, мне нравиться сама затея, может ещё кому она будет по душе?
Ведь не все занимаются именно разработкой игр? Кому-то интересно разрабатывать инструменты, с помощью которых кто-то, возможно, будет разрабатывать игры или другие программы...

Кстати, кто-нибудь может перечислить, какие недостатки существуют в Qt, wxWidgets, AntTweakBar, CEGUI?

#14
17:15, 6 июня 2008

mzconcept
Qt - лицензия денег стоит для коммерческого применения :)
wxWidgets - принципы, доступный функционал
AntTweakBar - call back'и, доступный функционал
CEGUI - не смотрел толком, т.к. "за час не разберешься"

В общем, всегда хочется, чтобы было:

  • много возможностей и доступная документация
  • решения были очевидными (понятными)
  • был исходный код
  • возможность расширения без модификации существующего
  • бесплатно =)
  • Страницы: 1 2 3 Следующая »
    ПроектыФорумУтилиты

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