Иконка ресурса

GExt - The GUI extension 1.4

Нет прав для скачивания
178
4
44
Quarter добавил(а) новый ресурс:

GuiLib - Проектируйте GUI на порядок проще

Давно уже была мысль сделать что-то подобное. Во многих проектах приходится делать одно и то же - так почему бы не обобщить GUI-компоненты под единым API, подумал я... И сделал.

GuiLib - это движок для создания полноценных внутриигровых интерфейсов(уровня самостоятельных программ). Он предоставляет API и основные его реализации. Больше никакого GL-кода в интерфейсах. ООПшно и сердито.

P.S. Проект GuiLib находится в стадии альфы(в основном работает, но не без багов). Кроме всего прочего, у...

Узнать больше об этом ресурсе...
 
Quarter обновил(а) ресурс GuiLib новой записью:

1.2.0-FINAL

GuiLib доведён до рабочего состояния. Теперь обрезка всех компонентов работает правильно, более того, её вообще можно выключить. Как и отображение самого компонента. Исправлен давний баг, связанный с фреймбуферами, когда не отображалось содержимое контейнера, который добавлен в другой контейнер. В основной API введено много вспомогательных функций, весь API, кроме адаптеров, полностью задокументирован.
  • Расширен основной API
  • Из графического конвейера убраны фреймбуферы...

Узнать больше об этом обновлении...
 
Не думаешь вынести стили в отдельный файл? К примеру, можно было бы подгружать какой-нибудь style.css и применять ко всем компонентам, а если захотел какой-то изменить, то достаточно подредактировать нужный блок в style.css
 
Не думаешь вынести стили в отдельный файл? К примеру, можно было бы подгружать какой-нибудь style.css и применять ко всем компонентам, а если захотел какой-то изменить, то достаточно подредактировать нужный блок в style.css
Ты про описание StyleMap не кодом, а файлом?
 
Я думал об этом, и да, это есть в планах. Но пока не первоочередная задача. Там нужно придумать какой-то весёлый XML-формат(как по мне, он тут подойдёт лучше) для описания этих правил сборки компонентов по текстуре. А мне пока что влом :)
 
XML в данном случаи вообще не подойдёт. Можешь глянуть .dae формат моделей, то ещё извращение. Сами файлы стилей должны быть облегчёнными по максимуму
 
XML в данном случаи вообще не подойдёт. Можешь глянуть .dae формат моделей, то ещё извращение. Сами файлы стилей должны быть облегчёнными по максимуму
Ладно. Ближе к делу будем смотреть, что я там брякнул. По итогу в StyleMap всё равно дофига и больше маппингов, а ведь есть ещё правила их компоновки... Действительно, придётся искать что-то вроде CSS или JSON, чтобы писать было меньше.
 
Еще будет круто сделать дата-генераторы как в forge: чтобы можно было описать стиль кодом и либа сгенерила css/json-представление
 
Нафиг json, лучше css внедрить

На счёт улучшения твоей либы, попробуй это всё дело переписать на новый лад, тогда портировать мод будет в разы проще и быстрей + станет более гибкой либа. Под "новый лад" имею ввиду framebuffer + shaders + vao + vbo и т.д. т.п. А так в основном это лишь обёртки получаются, который практически ничем не отличаются от майновских компонентов гуи
 
На счёт улучшения твоей либы, попробуй это всё дело переписать на новый лад, тогда портировать мод будет в разы проще и быстрей + станет более гибкой либа. Под "новый лад" имею ввиду framebuffer + shaders + vao + vbo и т.д. т.п. А так в основном это лишь обёртки получаются, который практически ничем не отличаются от майновских компонентов гуи
Фреймбуферы я убрал, ибо много было траблов с ними. Да и непонятно, зачем тут они, зачем vbo, когда полигонов на GUI меньше, чем на средней модели в любом моде? Да и кошерно, когда ты используешь только OpenGL 1.1. Неудобно, когда из-за того, что человек выключил VBO в настройках, у него падают интерфейсы.
Что ты там собрался портировать? Там хоть сколько-то времени займёт только GraphicsHelper... А портирование за пределами адаптеров вообще не нужно.
Обёртки обёртками, вот только во-первых почти ничего из моих компонентов в майне нет(по крайней мере на 1.12.2), во-вторых, в том, что есть, намного меньше параметров кастомизации. И да, те компоненты абсолютно не предназначены для работы хоть в какой-то системе. Возможно, моя кнопка в какой-то степени и повторяет GuiButton, но там уж точно нельзя задать действие лямбдой :)
P.S. Это я не считаю себя самым крутым, просто, честно говоря, вообще не понимаю, ЗАЧЕМ
 
Неудобно, когда из-за того, что человек выключил VBO в настройках, у него падают интерфейсы
После этой фразы не захотелось отвечать, но всё же отвечу. Если делать по уму, а не через заднее отверстие, то толку явно будет больше чем от майновской системы. На счёт VBO, его нельзя вырубить через настройку в игре;)

Что ты там собрался портировать?
У твоей системы лишь минус в том, что она зависит от майна, от его фреймбуффера, тесселятора и т.д. и т.п. Если напишешь свой пайплайн, то максимум, что у тебя будет меняться в коде мода: главный класс, открытие гуихи. Всё остальное у тебя уже будет сделано(хотя может ребинд фреймбуффера майновского нужен будет)

во-первых почти ничего из моих компонентов в майне нет(по крайней мере на 1.12.2)
Компонентов то кот наплакал :/

во-вторых, в том, что есть, намного меньше параметров кастомизации
Унаследоваться от ванильного класса, добавить больше вариантов кастомизации

но там уж точно нельзя задать действие лямбдой
Всего лишь пару правок сделать...
 
После этой фразы не захотелось отвечать, но всё же отвечу. Если делать по уму, а не через заднее отверстие, то толку явно будет больше чем от майновской системы. На счёт VBO, его нельзя вырубить через настройку в игре;)
Ой, я имел в виду FBO. Да, я как всегда перепутал.

У твоей системы лишь минус в том, что она зависит от майна, от его фреймбуффера, тесселятора и т.д. и т.п. Если напишешь свой пайплайн, то максимум, что у тебя будет меняться в коде мода: главный класс, открытие гуихи. Всё остальное у тебя уже будет сделано(хотя может ребинд фреймбуффера майновского нужен будет)
Повторюсь, фреймбуферов там больше нет. Забыли. Тесселятор - это уже реализация адаптеров. Я вообще не вижу смысла делать отдельный пайплайн, хотя в теории можно поставить это низкоприоритетной таской. У меня не было мысли избавляться от адаптеров в принципе, кажется, ты это имеешь в виду. Мне кажется логичным дать пользователю включить использование своего пайплайна в либу. А он у него должен быть, так как библиотека ориентирована на игры.
Компонентов то кот наплакал :/
И всё же сильно больше, чем есть в ванили. Как говорится, предлагай варианты.
 
Ой, я имел в виду FBO. Да, я как всегда перепутал.
И его тоже)))

Я вообще не вижу смысла делать отдельный пайплайн
Сделай кнопку с закруглёнными углами. Выведи текст, примерно 100 надписей(советую замерить фпс до вывода и после, удивишься). Попробуй заскейлить текст, получилось?)) До 12 пикселей получится?))) Градиентный текст? Размытие фона у гуи?(без доп. модов и использования майновских шейдеров). Думаю пока хватит😌

Как говорится, предлагай варианты.
Держи)) Список правда неполный, но это лично то, что у меня используется))
1599427493195.png
Ещё можно добавить: drag'n'drop area, музыкальный плеер(да, это тоже компонент, но в реалиях майна не особо нужен), radio/checkbox группы, file attach, tree, spoiler и так ещё до бесконечности можно
 
И его тоже)))


Сделай кнопку с закруглёнными углами. Выведи текст, примерно 100 надписей(советую замерить фпс до вывода и после, удивишься). Попробуй заскейлить текст, получилось?)) До 12 пикселей получится?))) Градиентный текст? Размытие фона у гуи?(без доп. модов и использования майновских шейдеров). Думаю пока хватит😌


Держи)) Список правда неполный, но это лично то, что у меня используется))
Посмотреть вложение 9953
Ещё можно добавить: drag'n'drop area, музыкальный плеер(да, это тоже компонент, но в реалиях майна не особо нужен), radio/checkbox группы, file attach, tree, spoiler и так ещё до бесконечности можно
Ну блин, такие высоты я брать не собирался))) Даже близко не стояло... Окей, спасибо за пинок :)
 
Да как ты отключишь то, что относится к OpenGL?))) Ты отключишь лишь то, что находится в самих классах майна. А твой независимый фреймбуффер никакой майн не вырубит
 
Да как ты отключишь то, что относится к OpenGL?))) Ты отключишь лишь то, что находится в самих классах майна. А твой независимый фреймбуффер никакой майн не вырубит
Так а я его имел в виду) Понял уже, что ты за нативку, всё, опути
 
Назад
Сверху