Вот и созрел я до первого показа своего интерфейса для приложений реализованных на базе XNA. Как говорится лучше один раз увидеть …, так не буду Вас задерживать:
Рекомендую смотреть в HD режиме.
Данное видео не показывает всех элементов и возможностей. Опубликовал по многочисленным заявкам. За продолжением следите в следующих сериях.
Идея архитектуры, данного интерфейса, базируется на архитектуре предложенной в WPF. Но ядро и элементы написаны с нуля и оптимизированы под 3d. Так же данная библиотека работает и на Windows Phone 7.
Список уже реализованных элементов выглядит следующим образом:
- Button
- Canvas
- CheckBox
- CheckElement
- ConsoleOutput
- DataGrid
- Expander
- Image
- ListSelector
- Menu
- ProgressBar
- ScrollBar
- ScrollDiagram2d
- ScrollView
- Slider
- StackPanel
- Switch
- TabControl
- Table
- TextBlock
- TextBox
В этот список попали не характерные для WPF элементы, что было продиктовано первоочередной необходимостью реализации отображения функционала 3d движка.
В представленном видео все элементы и формы выводятся с простым базовым стилем. Под базовым стилем подразумевается (если есть) прямоугольная рамка и (если есть) прямоугольник фона. Стиль любого элемента достаточно просто меняется наследованием от него нового нового класса. Я пока не стал перегружать рабочую версию интерфейса надуманным стилем и растровой графикой, бесполезная трата времени на то что в последствии не пригодится.
перенос разговора с xnadev.ru:
ОтветитьУдалитьgregsparrow
09.10.2010
классно!
VAB
09.10.2010
зачет! серьезная работа сделана!
gregsparrow
09.10.2010
ну ничего себе!!а ты можешь рассказать от чего отталкиваться чтоб сваять такую же красоту?
general
09.10.2010
думал много) и добился минимального расхождения с WPF в описании формы. как то само получалось. 2 года по тихоньку работал над темой. это 5я редакция.
gregsparrow
09.10.2010
просто смотрел как сделано в WPF ?
general
09.10.2010
как там сделано мне не подошло. я отталкивался от функциональности иерархии и позиционирования. взял только идею.
gregsparrow
09.10.2010
а биндинг есть?
general
09.10.2010
в точности как в wpf пока нет. для 3d это коварная тема. я пока управляю частотой обновления форм.
gregsparrow
09.10.2010
а форма и все остальное рисуться как вертекс? не как спрайт?
продолжаем:
ОтветитьУдалитьформа представляет собой спрайт. для форм существует отдельный менеджер, который управляет обновлением и т.д.
форма обновляется после обновления содержимого одного из ее элементов.
при обновлении формы перерисовываются и видимые элементы (например ScrollView обрезает по своей границе список видимых элементов). как часто обновляется форма, так же часто и рендерятся элементы
Это все есть в версиях для xna 3.1 и xna 4.0?
ОтветитьУдалить--
Phantom
только 4.0, мне стоило некоторых сил перейти на эту версию и добиться совместимости с телефоном. о нижних версиях пока не думал, мне не нужно, а интересных предложений не было)
ОтветитьУдалитьа эта библиотека вообще когда-то в свет появиться, или это закрытая разработка?
ОтветитьУдалитьдо этого момента я работал над самим проектом,
ОтветитьУдалитьа не над бизнес планом.
нужно изучить спрос, рыночный вес,
условия сотрудничества, компромиссы.
т.е. подготовиться.
ну что еще могу сказать? наконец-то..)))
ОтветитьУдалитьвот и высказался невольный свидетель моего творческого процесса)
ОтветитьУдалитьА темы для WP7 поддерживаются? То есть при смене темы в телефоне, меняется оформление контролов?
ОтветитьУдалитьчто то мне говорит, что Вы далеки от темы. На пример: когда на PC Вы меняете темы рабочего стола в играх что либо меняется?)
ОтветитьУдалитьНет, я от темы не далек. Просто подумал, что вы хотите использовать эти наработки не только для игр.
ОтветитьУдалитьСейчас разрабатываем один проект для WP7. В проекте много графики (2D) и контролов. От XNA отказались как раз из-за отсутствия стандартных контролов.
тогда так - реализация данного функционала полностью ложиться на плечи пользователя. и под все интересующие темы нужно создавать собственные наборы стилей.
ОтветитьУдалитьа где можно взять исходный код??
ОтветитьУдалитьисходный код, хм ... дай подумать ... наверное будет уместна рекомендация - закатать губу обратно))) (сорь не удержался)
ОтветитьУдалить