Перейти к содержимому

Донат
На хостинг
ISK за переводы
до 75kk за 1000зн.
Хроники EVE
Сборник
Новичкам
Полезная информация
Фотография

СarbonUI и eve online: incursion 1.6


  • Авторизуйтесь для ответа в теме
259 ответов в теме

#1
Chegevarich

Chegevarich

    Clone Grade Iota

  • Tech III Pilots
  • PipPipPipPipPip
  • 1551 сообщений
570
  • EVE Ingame:iChegevarich
  • Client:Eng

*
Одобрено
сообществом!

Этот пост будет дополняться по мере поступления информации о патче.
В данный момент добавлены возможные баги. способы их лечения, неизлечимые баги и список изменений, которые будут введены при патче 1 июня.
Добавлены патч нотисы фикс-патча от 3 июня.


Карбон и eve online: incursion 1.6
reported by CCP Snorlax | 2011.05.30 17:28:47
Оригинал
В этом патчнотисе мы раскажем вам о карбоне в еве онлайн. Вы не заметите больших изменений, т.к. мы вносим изменения в исходный код, а не в UI. Этот шаг стал возможен для нас в виду изменений, к которым мы готовились весь прошлый год. Этот проект является сильным перелопачиванием кода о котором вы сможете прочитать ниже, что позволит ввести новое в еве UI. Мы благодарим вас за то, что вы спокойно отнесетесь к тому, что ничего нового вы не увидите, и мы будем так же тщательно следить за обычными каналами.

Почему CarbonUI?

UI в EVE значительно устарел к текущему времени, поэтому нам требуется перелопатить код и посадить его на новые средства рендеринга. Старый UI рендерил используя fixed-function рендеринга в Direct3D - основной в D3D7 подход. D3D9 так же поддерживает этот подход, но это может сыграть злую шутку с производительностью, и ограничивает вас возможностями этого набора функций - никаких модных шейдеров, например.

Мы планировали тюнинг UI долгое время по ряду причин :
  • улучшенное юзабилити
  • улучшенный внешний вид
  • улучшенная производительность

Текущий UI фреймворк провёл нас в этом плане - за многие годы он значительно оброс функциями и разработка на нём стала много сложнее, к тому же встретились многие тупики на пути к призводительности (отсыл к девблогам BFF команды вестимо. Прим. переводчика.). Недостаточно внимания было уделено разработке самого фреймворка, в виду добавления новых возможностей в него в спешке.

Мы рассмотерли несколько путей по апгрейду фреймворка UI, но в конце концов мы поняли, что EVE UI код стал слишком велик для рассматрения варианта переписать UI с учетом новых парадигм. Мы решили применить подход, требующий минимальное количество доработок текущего UI.

Итак, CarbonUI - это эволюция структуры текущего пользовательского интерфейса и его фреймворка, с совершенно новой системой рендеринга. Мы старались изменить настолько мало, насколько это вообще возможно в верхнем уровне UI, так что UI программеры, работающие в Python не увидят больших изменений - и что более важно, это ~200K строк UI кода, который продолжает работать. Как говорится, было много кода требующего модифицирования для работы с новыми слоями рендеринга или просто нам нужен был рефакторинг(радуйтесь, лаги фиксят, код рефакторят, всё будет хорошо. Прим. переводчика). Результатом стало то, что немногие файлы UI остались нетронутыми в той или иной степени..

Некоторые ключевые особенности:
  • Сцены UI могут быть реализованы в различных контекстах:
  • Объекты UI могут быть отрендерены в текстуры для создания 3D объектов.
  • UI станет поддерживать 3D, что позволит произвести взаимодействие UI в 3D сценах.
Изображение
Изображение
Изображение
Девовские скрины показывают как теперь возможно переностить 2D сцены в 3D объекты.

  • UI так же позволяет рендерить набор примитивных 2D сцен в труЪ крутую 3D сцену, позволяющую прорисовать всё это с созданием эфекта глубины и перспективы.
Изображение
Work in progress UI в Captain’s Quarters как раз эта история, построеная при помощи CarbonUI.

  • 2D рендеринг как 2D наложение
  • Весь Python код и объекты UI могут быть использованы в различных контекстах - сцены могут быть перемещены из одного контекста в другой на лету(человек, который ловит всё на лету, должен быть готов к тому, что однажды кто то поймает на лету его. Прим. переводчика)!
  • Производительность стала лучше чем была на старом UI!
  • Текстуры автоматически помещаются в атлас текстур, наподобие гербария, позволяя добиться куда более эффективного рендеринга без дополнительной работы со стороны дизайнеров интерфейса.
  • Клиппинг сделан в пиксельных шейдерах
  • У башенного крана колёса деревянные и квадратные. Интересно, до этой строки кто нибудь дочитал?) Шутка переводчика.
  • Трансформации происходят в вершинных шейдерах
  • Пиксельные шейдеры осуществляют преумножение альфы, так что и непрозрачные материалы, и материалы с альфа- и аддитивной композицией обрабатываются в одном режиме композиции D3D.
  • В результате запросов на отрисовку стало менее 10, а раньше это было более 100 запросов.
  • Выравнивание польностью отделено от рендеринга
  • Выравнивание теперь полностью выполнено на Python - что является более легким в обслуживании
  • Оптимизация рендеринга больше не приводит к риску потери выравнивания
  • Рендеринг теперь полностью происходит при помощи пиксельных шейдеров, что открывает нам возможности делать всякую крутоту на них!
  • Теперь все простейшие интерфейсы полностью поддерживаются все основные эффекты, такие как тень, свечение, размытие.
Изображение
Изображение
Это то, как наши программисты тестировали новые средства анимации карбона в UI =_=
  • Новые библиотеки полностью написаны на Питоне, что позволит делать более легкий и динамичный UI.

Выравнивание

Что мы имеем ввиду под выравниванием? Это то как элементы UI расположены на экране, грубо говоря координаты по оси X и Y, но программист UI не должен размещать изх по этим координатам. Для примера, если она хочет разместить кнопку внизу экрана, то кнопка получает CENTERBOTTOM выравнивание(ЦЦП изобрело CSS, с блекджэком и... дреками? прим. Переводчика). Если окно изменяется - то координаты пересчитываются, так, что бы кнопка осталась по центру внизу экрана(изобрели css2 - инфа 100%).

Перемещение этой функции из Си++ в Питон - было не однозначным решением. Это конечно быстрее отрабатывается в Си++, но мы много усилий положили на улучшение производительности в Питоне. С другой стороны это было ДО, что означало, что внесение изменений будет сопряжено с некоторыми трудностями.
Это было связано с 2 причинами:
  • Рендеринг и выравнивание - это переплетенные воедино темы, изменение одного влекло за собой риск потери работоспособности другого
  • Цикл тестирования разработки на Питоне значительно короче цикла тестирования разработки на Си++

Вместо того, что бы оптимизировать код на Питоне - мы решили уменьши объем работы, что позволило бы привести к тем же результатам. Выравнивание делалось каждый кадр при обновлении иерархии UI, это было заменено на кэширование результатов и вызов выравнивания при при любых изменениях их свойств.

Имея четкое разделение в выравнивании мы получили более простой способ оптимизировать каждую часть этого пазла.

Почему мне должно быть не всё равно?

Когда мы запускали игру 8 лет наза UI выглядел круто по сравнению с другими играми. Времена меняются, а вот наш пользовательский интерфейс не очень. Хотя такие проекты как карборUI трудно даются - мы всегда должны делать что то такое, что позволяет выйти за рамки, использовать всё, что дают современные технологии. Даже если игроки не увидят сейчас очевидной разницы, когда мы запустим карбонUI на транке, то мы можем вам пообещать, что наши программеры теперь говорят о много большем типа так - "Ага, без проблем" когда им ставят очередную, немного сумасшедшую идею в задачи. В конечном счёте в результате внедрения CarbonUI наша любимая маленькая игра про космос станет много круче.

Что будет с производительностью?

Мы расскажем подробнее о разнице в производительности с CarbonUI в скором девблоге!
 
upd :
EVE Online: Incursion 1.6 планируется к установке в увеличеный ДТ во вторник 31 мая. ДТ начнется в 10:00 UTC (14 по МСК) и будет завершен в 16:00 UTC (20 по МСК).
Incursion 1.6 представляет новый CarbonUI framework, открывающий дорогу к новому улучшеному пользовательскому нтерфейсу EVE Online.
CarbonUI это эволюция текущего UI framework, с совенренно новой моделью рендеренга слоев, постовляющей кучу нативных эффектов для элементов UI рендеринга элементов UI в 3D сцены.

Дополнительный патч для исправления косяков с флит файндером будет доступен после установки инкурсиона 1.6.

Оригинал
 
upd : Патч уже установлен и повлек за собой некоторые проблемы.
О методе их решения можно почитать тут (англ.)
спойлерЛибо прочитать мой перевод.
EVE Online: Incursion 1.6 был установлен. Описание сего апдейта есть в девблоге товарища CCP Snorlax (см. первый пост. Прим. переводчика). Пожалуйста - прочитайте патч нотис для того, что бы у вас было представление о патче.

...

Известный проблемы:

  • Известна проблема о т3 шипах, которые летают задом наперед. Очистка кэша поможет им начать летать правильно
  • Если у Вас возникли проблемы с отображение лого некоторых альянсов - очистка кэша вновь поможет Вам.
  • Не возможно сделать центровку на пробку. Проблема известна и будет исправлена завтра.
  • Планетарные ресурсы отображаются как 0. Эта проблема может быть решена очисткой кэша.
  • Anti-Aliasing вызывает "призрак" окна после перетаскивания. Может быть пофиксено путем отключения антиалиасинга.
  • Курсок исчезает - может быть решено путем перехода в режим окна.
  • Варп на луну не приведет к варпу на грид поса.
  • Капа отображается в слое под окном фитинга.
  • Ваш корабль начнет разворачиваться на 180 градусов при установке максимальной скорости.
  • Брекеты забыли как играть в прятки и будут работать корректно после андока или пропрыга, после чего скроются.
  • Вкладка lockdown в корп. ассетах может заставить окно висеть неопределенное количество времени. Возможно пофиксить нажатием на иконку информации в окне и потом сменить вкладку перед закрытием окна.
  • Некоторые строения в планетарке отображаются не корректно или не отображаются вообще,
  • Капаситор получает эфект "lens flare" , который там не должен быть.
  • Маркет ордера не будут отображаться на некоторых машинах.
  • Брекеты сейчас ошибочно отображаются для ракет в полете.


 
upd 2 : новая порция проблем стала известна. О них можно прочитать на офф форуме (англ.)
спойлерИли прочитать мой перевод
  • Хоткеи сейчас работают не корректно. Вам следует вначале нажать хоткей, а потом выбрать объект к которому следует применить действие.
  • Окошко ассетов забывает о выбраной вкладке после пропрыга или дока.
  • Количество итемов на иконке слишком прозрачно.
  • При одновременной работе 2х клиентов на некоторых машинах активный клиент мог вылететь при джампе или просто при активации клиента. Для того что бы нам окончательно выяснить природу сего косяка мы просим сталкнувшихся выслать нам файло логов с вашей машины и dxdiag. Более подробно о подаче репортов можно почитать тут.

 
upd 3 : что будет исправлено в патче от 1 июня. Об этом можно прочитать на офф форуме (англ.)
спойлерИли прочитать мой перевод
  • При клике на пробку - экран теперь центруется
  • Установка скорости на максимум приводит к повороту корыта на 180 градусов. Больше этого не повторится.
  • Брекеты для ракет в полете перестанут портить всем жизнь.
  • Варп на луну теперь будет приводить вас на корректный спот. Это туда, где заанчерены ваши структуры.
  • Букмарки были неправильно расположены в солар систем мапе. Они были должным образом наказаны и теперь они вернулись на свои места.
  • Букмарки оказались в неправильном месте и на них невозможно было заапрочиться.

 
upd 4: Патч 3 июня
Оригинал
Фиксы клиента
  • Капа будет правильно отображаться
  • Таймер сессии больше не будет истерично мигать (я думал это фича. Прим. переводчика)
  • Комбат шорткаты теперь будут работать корректно. Нажал на объект - вызвал шорткат.
  • Фикс окна рассылки.
  • Исчезнувшие кнопки работы с джамп клонами будут востановлены.
  • Кол-во бабла требуемое для репайра чего либо будет отображаться в окне репайра.
  • Текущая вкладка ассетов будет сохранена в случае смены шипа.
  • Количество не выполненых контрактов будет отображаться корректно.
  • Игроки больше не будут терять бай и селл ордера в окне маркета.
  • Дисплей капаситора вернулся на свое законное место

Фиксы со стороны сервера
  • Планетарные реусурсы и экстраткотры будут возвращать прежние объемы, никаких больше опытных подгонов.
  • Пожалуйста, убедитесь что Вы установили сей патч, иначе работа с ПИ будет затруднительна.

ДТ будет увеличен до 12 по UTC (16 по МСК)

Сообщение отредактировал Chegevarich: 03 June 2011 - 16:41

  • 58

#2
Edgardus

Edgardus

    gaybond pilot

  • Tech III Pilots
  • PipPipPipPipPip
  • 2017 сообщений
308
  • EVE Ingame:sold
  • Ally:GE
  • Channel:noobian club
  • Client:Eng
First one
нифига не понял но надеюсь лагов будет меньше :rolleyes:

Сообщение отредактировал Edgardus: 31 May 2011 - 0:49

  • 0

Eve account - $15 US a month, dreadnaught - 2 Billion ISK, hiring a mercenary Dust group to assault a planet- $5 million ISK now, $50 million when the job is done.
Bombarding the Dust team from orbit and laughing like the machiavellian and sociopathic dickhead spreedsheet have made you, then recording the console tards emo tears and posting them on youtube? Priceless

 


#3
Мейер

Мейер

    Форумный бредогенератор

  • Tech III Pilots
  • PipPipPipPipPip
  • 2731 сообщений
1388
  • EVE Ingame:Dives Armenicus
  • Corp:NPC
  • Ally:Amarr empire
  • Channel:off
  • Client:Eng

  • Производительность стала лучше чем была на старом UI!

Мы расскажем подробнее о разнице в производительности с CarbonUI в скором девблоге!


Одобрямс. Чегеварычу очередной респект.
  • 0

... loading ...


#4
reiser

reiser

    Clone Grade Zeta

  • Tech III Pilots
  • PipPipPip
  • 368 сообщений
33
Я таки надеюсь что когда-нибудь сплэш-брекеты перестанут быть самым тормозом в 3D-сцене.
  • 0

#5
MacTepok

MacTepok

    Clone Grade Beta

  • Tech III Pilots
  • Pip
  • 74 сообщений
0
  • Client:Рус
"У башенного крана колёса деревянные и квадратные. Интересно, до этой строки кто нибудь дочитал?)"

не такая скучная стена текста оказалась )
  • 0

#6
JesDarkJewel

JesDarkJewel

    Clone Grade Eta

  • Tech III Pilots
  • PipPipPipPip
  • 952 сообщений
52
  • EVE Ingame:JesDarkJewel
  • Corp:Tungus Revolt
  • Channel:Tungus
  • Client:Рус
может примечания переводчика выносить отдельно в конец поста.
а вставлять всякие
"У башенного крана колёса деревянные и квадратные. Интересно, до этой строки кто нибудь дочитал?)" которых в оригинале найти не удалось без отметок не хорошо. но все равно плюс.
  • 1
Один аккаунт - залог долгой и интересной игры.
Ева - игра про взаимоотношения людей.
Он тоже скоро научится летать -> Изображение

#7
JiRomE

JiRomE

    Clone Grade Zeta

  • Tech III Pilots
  • PipPipPip
  • 360 сообщений
46
  • Corp:Federal Defence Unit
  • Client:Рус
Не смейте вводить третьи шейдеры! Я не хочу пересаживаться с нетбука обратно на десктоп.
И да - будь прокляты монокли, плекс уже по 450 продают =)
все сказал =)
  • 1

Пилот, послужи Федерации! Солдатом или мишенью - все равно...
Изображение
Learning, learning and more learning! © Lenin


#8
mypuk

mypuk

    Clone Grade Kappa

  • Tech III Pilots
  • PipPipPipPipPip
  • 2589 сообщений
417
  • EVE Ingame:Kuroi hagane
  • Corp:SOERI
  • Ally:RA
  • Client:Eng
за башенный кран держи плюсик :lol:
  • 0

#9
CHoh

CHoh

    EVE Offline

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPip
  • 14027 сообщений
2311
норм. Интересно, что у них на очереди на рефакторинг.
  • 0

#10
Xozzer

Xozzer

    Newbie

  • Tech II Pilots
  • 18 сообщений
1
  • EVE Ingame:Xozzer
  • Corp:R.EX.
  • Ally:DoG
  • Client:Eng
Что-то я дату патча просмотрел...
  • 0

#11
LapaM

LapaM

    #define TRUE FALSE

  • Tech III Pilots
  • PipPipPipPip
  • 1136 сообщений
69
  • EVE Ingame:LapaM
  • Corp:-
  • Ally:-
  • Channel:efs
  • Client:Eng
Он сегодня
  • 0
переубеждать тролля в том, что жираф на самом деле существует, если он не верит фоткам и видео - неразумно, потому что единственным нормальным методом будет анальное изнасилование жирафом этого тролля. С другой стороны, совершенно очевидно, что временные- и трудозатраты на то, чтобы возбудить жирафа, чрезмерны для цели переубеждения упертого дебила. Хотя жирафу будет приятно. возможно. (с) Clancy

#12
January

January

    Clone Grade Mu

  • Tech III Pilots
  • PipPipPipPipPipPipPip
  • 7376 сообщений
330
Из девблога напрашивается очевидный вывод - Carbon UI полностью подходит для игры в Еву в 3D режиме, и брэкеты теперь можно привязать к глубине сцены, а не как сейчас - банальный оверлей поверх картинки, который с 3D не подружить в принципе.
  • 1

#13
Malanior

Malanior

    Не будите во мне отголоски прошлого!

  • Tech III Pilots
  • PipPipPipPip
  • 721 сообщений
32
  • EVE Ingame:Offgame
  • EVE Alt:Ctrl
  • Corp:oration
  • Ally:луя
  • Channel:Кинохит
  • Client:Рус
Видео карбона с теста не у кого нет?
  • 1
Ученые из университета в Лидсе экспериментально доказали, что 5% людей могут беспрепятственно управлять остальными 95% благодаря стадному инстинкту. Опыты показали, что 95% людей не задумываются над предложенным выбором, если видят, что остальные поступают также.

#14
справедливость

справедливость

    Clone Grade Alpha

  • Tech III Pilots
  • Pip
  • 56 сообщений
11
  • EVE Ingame:Секретно
  • EVE Alt:нет
  • Corp:npc
  • Channel:rassian
  • Client:Рус
Не понятнааа, но мурашки по коже
  • 0

#15
Real_D

Real_D

    Clone Grade Kappa

  • Tech III Pilots
  • PipPipPipPipPip
  • 2657 сообщений
228
  • EVE Ingame:RealDa
  • Corp:Perkone
  • Ally:Caldari State
  • Client:Рус

Из девблога напрашивается очевидный вывод - Carbon UI полностью подходит для игры в Еву в 3D режиме, и брэкеты теперь можно привязать к глубине сцены, а не как сейчас - банальный оверлей поверх картинки, который с 3D не подружить в принципе.

Вот это может существенно уменьшить лаги от включенных брекетов при большом скоплении эти самых брекетов. Посмотрим...
  • 0

#16
Chegevarich

Chegevarich

    Clone Grade Iota

  • Tech III Pilots
  • PipPipPipPipPip
  • 1551 сообщений
570
  • EVE Ingame:iChegevarich
  • Client:Eng

"У башенного крана колёса деревянные и квадратные. Интересно, до этой строки кто нибудь дочитал?)"

не такая скучная стена текста оказалась )

У меня просто глаза уже слипались от усталости :) Мне показалось, что я переводил девблог целую вечность, и почему то показалось что и читать его будет так же долго :)

может примечания переводчика выносить отдельно в конец поста.
а вставлять всякие
"У башенного крана колёса деревянные и квадратные. Интересно, до этой строки кто нибудь дочитал?)" которых в оригинале найти не удалось без отметок не хорошо. но все равно плюс.

Оставьте прим. переводчика в покое :) Просто глупо будет потом себя цитировать и коментить.
На счет крана - да, пометил, что это от меня и в оригинале такого нет. Спасибо за то, что указал на этот момент.

Видео карбона с теста не у кого нет?

Много уже есть :)

Полистай эту тему с этой страницы, там много скринов :)

Сообщение отредактировал Chegevarich: 31 May 2011 - 10:19

  • 0

#17
Lorginir

Lorginir

    ©aldari

  • Tech III Pilots
  • PipPipPipPip
  • 1058 сообщений
235
  • EVE Ingame:Lorginir
  • Corp:T-800
  • Channel:не играю
  • Client:Eng
честно ниасилил, надеюсь будет не сильно хуже.
  • 0

#18
Slotos

Slotos

    Clone Grade Kappa

  • Tech III Pilots
  • PipPipPipPipPip
  • 2135 сообщений
349
  • EVE Ingame:Slotos
  • Corp:Unemployed
  • Client:Eng
Спойлер


Кстати, не дочитал )
Благодаря девблогам инфинити рассказ о новом уи на фанфесте позволил оценить крутотень.
  • 0
It's very hard to imagine
All the crazy things
That things really are like
© Richard Phillips Feynman

#19
Chegevarich

Chegevarich

    Clone Grade Iota

  • Tech III Pilots
  • PipPipPipPipPip
  • 1551 сообщений
570
  • EVE Ingame:iChegevarich
  • Client:Eng

честно ниасилил, надеюсь будет не сильно хуже.

Если коротко:
  • теперь разработка интерфейсов будет идти быстрее
  • интерфейс будет легче по производительности
  • интерфейс будет красивее, в виду возможности переноса в 3Д
  • все это будет юзать больше возможностей современных железок

  • 0

#20
miragus

miragus

    Clone Grade Delta

  • Tech III Pilots
  • PipPip
  • 207 сообщений
4
  • Corp:Butthurt Delivery
  • Ally:-
  • Channel:local
  • Client:Рус
надеюсь лагать не будет.. <_<
  • 0




0 посетителей читают тему

0 members, 0 guests, 0 anonymous users