Ну получается, что так, да. Разработчик, который делал эту платформу не всё сделал видимо.
Я задачу поставил вчера, как заметил это, на днях посмотрю что там нужно и доделаю.
Вообще говоря DirectX11 - это скорее тестовая платформа, пример для реализации.
Altren, понятно. Спасибо за пояснения. Будем ждать апдейтов тогда 8-)
Так, всмысле не всё сделал? Я там не доделал только чтение текстуры, всё останое работает. Всё никак руки не дойдут дописать чтение текстур...
В утилитах для отображения рабочей области использовалась кастомная отрисовка. Вот там про Dx11 ни слова.
Я сейчас залил исправление, теперь по идее редакторы должны успешно всё отображать.
А на поддержку Linux уже забили, или у меня руки кривые? А то сейчас под Linux (Ubuntu 11.10 x64) все это работает очень условно.
Собрать без огра нельзя (Попытка сборки с -DMYGUI_RENDERSYSTEM=3 дает ошибку: MyGUI_3.2.0/Common/Base/OpenGL/BaseManager.cpp:9:21: фатальная ошибка: windows.h: Нет такого файла или каталога)
При включении огра не работают SkinEditor и LayoutEditor (вешается вся система при попытки открыть файл (открыть файл и нажимаем на ..) (ну не вся система, но XServer не отвечает и приходится убивать нафиг SkinEditor и LayoutEditor))
Ну поддержки OpenGL платформы под линукс и не было никогда, только Ogre. На поддержку линукса не забивали, у нас билдсервер под линуксом MyGUI собирает.
Насчет зависания - можно поконкретнее? Хотелось бы знать при вызове какого метода зависает.
Получил лог и инфу от gdb: http://blog.nsws.ru/wp-upload/SkinEditor-err.tar.bz2
В момент когда все повисло (мыша не двигается вообще, окна не переключаются - полный фриз) кинул приложению SIGABRT
А поддержку OpenGL под Linux даже в планах нет?
Почему-то не срабатывает логика обработки ".." для перехода вверх, а вместо этого эти ".." открываются как файл.
Надо в OpenSaveFileDialog::notifyListSelectAccept (Common/Tools/OpenSaveFileDialog.cpp) поставить брейкпоинт или добавить логирование, чтобы понять, чему равны info.folder и info.name.
Я локально пробовал - всё отрабатывает корректно, воспроизвести не удается.
Messenger
> А поддержку OpenGL под Linux даже в планах нет?
По идее это не очень сложно, но мы занимаемся разработкой непосредственно GUI и утилит для него, а платформы обычно пишут те, кому они нужны и если кто-то делится, то мы включаем их в наш репозиторий.
Баг совсем не там где вы думали. Дело в том что функция readdir не всегда определяет является ли файл каталогом (на ряде файловых систем будет всегда говориться что это файл)
Для корректной работы лучше использовать stat. Например такой патч решает проблему (сделан относительно trunk):
Index: Common/FileSystemInfo/FileSystemInfo.h
===================================================================
--- Common/FileSystemInfo/FileSystemInfo.h (revision 4412)
+++ Common/FileSystemInfo/FileSystemInfo.h (working copy)
@@ -14,11 +14,16 @@
#else
#include <unistd.h>
#include <dirent.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
#endif
#include <string>
#include <vector>
+#include <stdio.h>
+
namespace common
{
@@ -107,8 +112,14 @@
while ((dp = readdir (dir)) != NULL)
{
- if (!isReservedDir (MyGUI::UString(dp->d_name).asWStr_c_str()))
- _result.push_back(FileInfo(MyGUI::UString(dp->d_name).asWStr(), (dp->d_type == DT_DIR)));
+ if (!isReservedDir (MyGUI::UString(dp->d_name).asWStr_c_str()))
+ {
+ struct stat fInfo;
+ char path[NAME_MAX];
+ snprintf(path, NAME_MAX, "%s/%s", MyGUI::UString(_folder).asUTF8_c_str(), dp->d_name);
+ if(stat(path, &fInfo) == -1)perror("stat");
+ _result.push_back(FileInfo(MyGUI::UString(dp->d_name).asWStr(), (S_ISDIR(fInfo.st_mode))));
+ }
}
closedir(dir); А у вас случаем нет простого tutorial для того чтобы начать юзать? Сейчас выбираю между cegui и mygui, у mygui вроде с тулзами получше, но на вашем сайте как-то очень не густо в плане туториалов. API Reference это конечно хорошо, а вот туториал гораздо лучше.
ЗЫ: Еще и ссылка на ру-вики дохлая)
>>Messenger
ру вики это вики огровского комьюнити, он не доступен и его вики тожа
мы делаем упор на демки, которые не только показывают возможности но и являются примером использования гуя
Спасибо за патч. Потестировал, все хорошо, накатил.
Добавлен документ (рус) по созданию скина с нуля используя редакторы.
лежит в свн trunk\Docs\Papers\Skin creation\ExampleWindowSkin creation\Skining MyGUI.doc
Зашибись! Спасибо огромное! 8-)
Очень ждем отзывов и вопросов по документу.
Тема в архиве.