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

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

Возвращение шлейфов двигателей.


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

#1
Loardriver

Loardriver

    Clone Grade Kappa

  • Tech III Pilots
  • PipPipPipPipPip
  • 2688 сообщений
741
  • EVE Ingame:Loardriver
  • DUST Ingame:LrDr
  • Channel:Сручат
  • Client:Eng

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

http://www.eveonline...blog&nbid=3217'>Оригинал

Я помню шлейфы в EVE. Давным-давно они действительно у нас были. В моей памяти они были прикольными. И красивыми. И так я установил Empyrean Age снова и поиграл немного на одном из наших серверов на "Классическом клиенте", конечно. (Везука, они могут поиграть еще в eve когда она была еще торт -прим. пер.) И тогда я понял, что старые шлейфы были на самом деле очень классные, но не то, что я назвал бы шикарными.
Взгляните, помните их?

Изображение
Кликабельно.

Изображение
Кликабельно.

Так прошлым летом, когда в офисе было тихо (Ага, значит все-таки в потолок плевали, а не лаги фиксили,... так и запишем - прим. пер.), а у меня было свободное время я опять задумался над шлейфами: почему их убрали в Apocrypha (Что значит почему? - Сами-же сказали, что они вызывают утечку памяти, Вы там между собой совсем что-ли не общаетесь? - прим. пер.) ... и самое главное: как их заставить выглядеть лучше и реднерится быстрее.

Мой первоначальный план был вулканический пепел сделать их за лето. Я был слишком оптимистичен. Позже выяснилось, что совсем вообще детско-наивно оптимистичен...


Сплайны в помощь!

С самого начала это было довольно ясно, что мы должны использовать сплайны для новых шлейфов. Они дают вам приятные плавные изгибы и позиционируются лишь по паре контрольных точек и нормалей. И их математика достаточно проста, чтобы быть реализованной в вершинных шейдерах, так что нет необходимости обновлять VertexBuffer каждый отдельный кадр для каждого корабля в сцене. Кстати, по такому-же принципу работали и старые шлейфы. (Ну да, ну да, старые грабли лучше нового трактора. Уже знаешь куда прийдется удар - прим. пер.)

Посмотрите сами, как просты кубические сплайны Эрмита:
Изображение (o_O ???! - прим. пер.)


Теперь я знал, как создать плавную кривую, но конечно не так, как это происходит при правильном геометрическом искривлении. Плоскостной след? Звездоподобный? Или цепочки частиц? Если честно, я понятия не имел, и я думаю, не я один (Ага, точно между собой не общаются - прим. пер.). Вот некоторые из наиболее перспективно выглядящих результатов:

Изображение
Кликабельно.

Изображение
Кликабельно. (это то, что Звездноподобно, ... я-бы сказал звездато, точнее звиздец (star-shaped в оригинале) - прим. пер.)

Как вы можете видеть: не очень красиво. Определенно они работают быстрее, чем старые, и еще быстрее, чем старые вызывают желания отключить их в меню настроек.


Трассировка лучей

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

Математике для пересечения луча с бесконечным цилиндром:

Изображение

Теперь нам нужно, поделить этот бесконечный цилиндр на конечный при втором условии: направление отрисовки должно перекрываться и ограничиваться кораблем.

Изображение
(Все просто, это математика – К.О. –прим. пер.)

В итоге нам удалось получить точку входа и выхода наблюдаемую в конечном цилиндре, в результате чего этот луч и есть шлейф. На основании этого легко выводятся некоторые световые значения:
Изображение
Трассивровка лучей в конечном цилиндре. Кликабельно.

Изображение
Формирование шлейфа конечными цилиндрами. Кликабельно.

Остальное просто: закрыть пробелы, применить немного выцветания/затухания и пусть художественный руководитель поиграет с размером, длиной и цветом:
http://cdn1.eveonlin...54/3217/10.jpg'>Изображение
Смотрится приятно и звездато. Кликабельно.


Не обращайте внимание на сервер

Теперь я знал, как сделать шлейфы, но я все равно должен был выяснить, где фактическое положение всех точек сплайна, т.к. контроль будет поступать из них.

(Кстати, уже давно не лето ...) - Спасибо, Кеп – прим. пер.

Одна из причин, почему старые шлейфы иногда получались перепутанными и накладывающимися в том, что они полагались на точную позицию корабля диктуемую сервером. Все MMO игроки знают, что это может привести к какому-то странному поведению движения корабля, особенно в ситуации когда вы ловите лаг. (Все помнят десинки, да? Кто не помнит – кыш из темы, дайте отцам понастальгировать, они еще помнят, когда eve была торт– прим. пер.) Таким образом, для позиционирования шлейфов я должен был игнорировать абсолютные положения корабля, вместо того, чтобы полагаться на быстрый и безошибочный отклик, движение должно быть интерполировано в клиенте (например, скорость которую вы видите в HUD никогда резко не изменится). Если вдруг ваш корабль поймает десинк (Вы-же говорили, что победили их?-Да научите вы их уже разговаривать друг с другом – прим. пер ) и будет перепозиционирован, шлейфы просто «прыгнут» вместе с кораблем. Вы даже этого не заметите. (Прямо как при лагогенераторе – вас уже убили, а вы и не заметили – прим. пер.)
И наконец: точки контроля сплайнов проявляются лишь при позиционном смещении вашего корабля. Таким образом, чем быстрее корабль – тем длинее шлейф. (На капах я уже проверил – тетановоды будут страдать – не видать им своих шлейфов – прим. пер)
Все это собралось как раз вовремя, чтоб быть выпущенным в Crucible, так что я очень надеюсь, что вы будете наслаждаться новым шлейфами. Я знаю что делал, потому что теперь они так же хороши, какими я их помнил.

Изображение
Хвостатый волк. Кликабельно.

Изображение
Православные шлейфы православны после православной пуньки. Кликабельно.


Дальнейшее совершенствование

Конечно, всегда есть что-то большее. Некоторая анимация, поглощение света, преломление и т.д. и т.п. Мне хотелось бы тратить больше времени на шлейфы, так что если вам они вам понравились, я мог-бы получить больше времени для реализации всех идей.
Обсуждение ( Я так понимаю тут все желающие могут отписаться в пользу того, чтоб CCP Mankiller`a не перекидывали на другие задачи, а позволили ему доработать шлейфы до высшей степени звездатости – прим. пер.)

Сообщение отредактировал Loardriver: 25 November 2011 - 23:57

  • 31

В этой жизни можно всё, было-бы желание.


#2
Tesseya

Tesseya

    Clone Grade Lambda

  • Tech III Pilots
  • PipPipPipPipPipPip
  • 5003 сообщений
1778
  • EVE Ingame:Tesseya
  • Corp:VWD
  • Ally:HARDDR0P
  • Client:Eng
при просмотре формул я взял револьвер, зарядил 1 патрон, крутанул барабан и выстрелил себе в висок.
  • 5
Неулыбчивые русские не начинают войн. Их начинают жизнерадостные европейцы. Неулыбчивые русские войны заканчивают. Как правило, в европейских столицах. И тогда русские на некоторое время становятся самым улыбчивым народом. Ненадолго. Потому, что Война всегда рядом...

#3
Sera Onzo

Sera Onzo

    Clone Grade Lambda

  • Tech III Pilots
  • PipPipPipPipPipPip
  • 4764 сообщений
1924
  • EVE Ingame:Sera Onzo
  • Corp:NPC
  • Ally:Caldari State
  • Client:Eng
У переводчика какое-то недержание примечаний?
  • 9

#4
СтарыйПепелац

СтарыйПепелац

    Clone Grade Ksi

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPip
  • 12436 сообщений
2911
  • Client:Eng
Хммм... очень странное решение они нашли. Я бы решал проблему несколько по другому.

П.С. беру свои слова обратно, они это именно так и решили, просто я поспешил вставить свои пять копеек, не дочитав до конца.

Сообщение отредактировал СтарыйПепелац: 26 November 2011 - 0:22

  • 0

#5
Loardriver

Loardriver

    Clone Grade Kappa

  • Tech III Pilots
  • PipPipPipPipPip
  • 2688 сообщений
741
  • EVE Ingame:Loardriver
  • DUST Ingame:LrDr
  • Channel:Сручат
  • Client:Eng
Sera Onzo, да, а что? Вы успели застать шлейфы, их исчезновение, борьбу с десинком и мем про обкат нового сервака на фоне извержения йойлефигликуйкитела?))
  • 0

В этой жизни можно всё, было-бы желание.


#6
veelzevul

veelzevul

    повелитель мухъ

  • EVE-RU Team
  • 10616 сообщений
1124
  • EVE Ingame:veelzevul
  • EVE Alt:Makanaka
  • Corp:I.N.
  • Ally:-C.B-
  • Channel:eve_ii
  • Client:Eng

Хммм... очень странное решение они нашли. Я бы решал проблему несколько по другому.


Думаешь переписать движок? Я только за.


Кстати, начинание хорошо тем, что дает основу для дальнейшего совершенствования. И не только шлейфов. Тут еще можно трассер от тех же гибридов сделать или след летящей ракеты и т.д.


  • 0

[ 2010.06.19 14:31:50 ] TuXyWHuK > Атас детишки, педобир в локале!

 

#7
EvilAngel

EvilAngel

    Котейко

  • Tech III Pilots
  • PipPipPipPip
  • 921 сообщений
-16
  • EVE Ingame:Mr Tsero
  • Corp:NPC
  • Ally:Caldari
  • Channel:1.0
  • Client:Рус

У переводчика какое-то недержание примечаний?

а так читать интереснее а не сухой текст :)
  • 2

#8
mumixam

mumixam

    Clone Grade Lambda

  • Tech III Pilots
  • PipPipPipPipPipPip
  • 4016 сообщений
2529
  • EVE Ingame:KC1005
  • Client:Рус

Думаешь переписать движок? Я только за.


Кстати, начинание хорошо тем, что дает основу для дальнейшего совершенствования. И не только шлейфов. Тут еще можно трассер от тех же гибридов сделать или след летящей ракеты и т.д.

или испражнения жидкостей тела из только что насильно вылупившегося яйца ... :mp_gy:
  • 1

по независящим от меня причинам вышел из ЕВЫ на некоторое время /конец октября.12/
вернулся в еву в ноябре 21 , но в ECHOES )


#9
DireSnake

DireSnake

    Clone Grade Ksi

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPip
  • 13299 сообщений
4169
  • EVE Ingame:DireSnake
  • Corp:Percone
  • Client:Eng
лаги помню, хоть по детству не участвовал. хвосты смутно помню - но не обращал внимания. так что лично для меня - это ново. и красиво. даже да - звездато красиво )
  • 0

#10
DIMFIRE

DIMFIRE

    Кавайчег

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPipPip
  • 28363 сообщений
2206
  • EVE Ingame:DIMFIRE Dimiana DlMFlRE
  • Client:Eng

Думаешь переписать движок? Я только за.


Кстати, начинание хорошо тем, что дает основу для дальнейшего совершенствования. И не только шлейфов. Тут еще можно трассер от тех же гибридов сделать или след летящей ракеты и т.д.

Ракеты да. А вот при чем тут рельсы(бластеры вопрос спорный)-чем они трассировать то будут?
  • 0

#11
Korvin

Korvin

    продолжаю наблюдение

  • Tech III Pilots
  • PipPipPipPipPipPipPip
  • 7066 сообщений
2605
  • EVE Ingame:Korvin
  • DUST Ingame:RIP
  • EVE Alt:Alpha Korvin
  • Corp:Shadow Kingdom
  • Ally:Best Alliance
  • Client:Eng
Примечания переводчика доставляют больше девблога :)
  • 4

#12
mumixam

mumixam

    Clone Grade Lambda

  • Tech III Pilots
  • PipPipPipPipPipPip
  • 4016 сообщений
2529
  • EVE Ingame:KC1005
  • Client:Рус

Примечания переводчика доставляют больше девблога :)

уже давно так, а хочется вообще их незамечать за отличным девблогом )
  • 0

по независящим от меня причинам вышел из ЕВЫ на некоторое время /конец октября.12/
вернулся в еву в ноябре 21 , но в ECHOES )


#13
Loardriver

Loardriver

    Clone Grade Kappa

  • Tech III Pilots
  • PipPipPipPipPip
  • 2688 сообщений
741
  • EVE Ingame:Loardriver
  • DUST Ingame:LrDr
  • Channel:Сручат
  • Client:Eng
Надеюсь дядьке все-же еще дадут поработать над шейфами, т.к. все-таки есть несколько моментов, которые надо доделать.
  • 0

В этой жизни можно всё, было-бы желание.


#14
EVEPlayer

EVEPlayer

    Clone Grade Zeta

  • Tech III Pilots
  • PipPipPip
  • 421 сообщений
108
  • Client:Eng

Хммм... очень странное решение они нашли. Я бы решал проблему несколько по другому.

П.С. беру свои слова обратно, они это именно так и решили, просто я поспешил вставить свои пять копеек, не дочитав до конца.

Вы про их метод визуализации или построения? В любом случае поделитесь логикой выбора, а то мне их решения не кажутся логичными.
  • 0
Как зарабатывают на форумах. Как будто про раздел Оффтопик снято, правда?

#15
Aurum_Gallente

Aurum_Gallente

    Clone Grade Ksi

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPip
  • 11134 сообщений
1567
  • EVE Ingame:Aurum Gallente
  • Client:Eng
этому деву зарплату надо выдавать плексами. При чем, раз в 2 месяца 1 штуку. Я не понимаю, как на это ушло всё лето у дипломированного(?) специалиста. По хорошему, это за неделю плевания в потолок работы можно сделать. Когда читал, у меня было ощущение, что это делал совершенно новый человек в ццп, который слабо разбирается в своей работе и боится спросить у соседа по стулу что-то.

С одной стороны я дико рад, что шлейфы вернули и , возможно, даже дронам. Но с другой стороны до выхода круцибли совсем мало времени, а контент патча ой какой непростой, успеют ли они реализовать шлейфы пряморуко? Времени на тест этой фичи очень мало, и на то, как она будет дружить с остальными обновлениями тоже. Как бы не повторилась история с "ой, а процессоры без SSE2 тепер ьне работают" и "предупреждаем ,что патч, который вышел вчера не идет без 2 шейдеров" (времена классик клиента), только в этот раз клиент мб будет кушать исключительно 4 ядра и не будет запускаться на хрюше. :ninja:
  • -9
я всегда знаю, как надо лучше

#16
Snark

Snark

    Clone Grade Lambda

  • Tech III Pilots
  • PipPipPipPipPipPip
  • 5393 сообщений
1522
Во-первых с чего ты взял, что он только этим занимался, во-вторых не понятен сарказм по поводу SSE.
  • 0

#17
Gueld

Gueld

    Clone Grade Beta

  • Tech III Pilots
  • Pip
  • 86 сообщений
-38
  • EVE Ingame:Gueld
  • Corp:Gueld F&E GmbH
  • Client:Eng
Все такие мегапрограммеры, как комменты почитаешь. Как в код заглянешь - смотреть страшно, что делают. Автору - в следующий раз, когда возникнет желание вставить примечание - вставь его себе ректально. Это перевод девблога. Всем интересно, что нам ведает разработчик и мало кому интересно, что по этому поводу думает задрот. По теме - смотрится красиво. Скоро помимо кручения кораблика в доке появится еще одна развлекуха - художественное рисование шлейфами :)

Сообщение отредактировал Gueld: 26 November 2011 - 2:51

  • -3

#18
Aurum_Gallente

Aurum_Gallente

    Clone Grade Ksi

  • Tech III Pilots
  • PipPipPipPipPipPipPipPipPip
  • 11134 сообщений
1567
  • EVE Ingame:Aurum Gallente
  • Client:Eng
Сарказм про SSE - это нормально, когда старые технологии перестают поддерживаться из-за прогресса продукта. Но ненормальным является то, что об этом не всегда предупреждают, т.к. не тестируют на различном оборудовании. Если, допустим, будет девблог о том, что XP не будет поддерживаться к лету, это нормально. Но если будет девблог "упс, а мы всё делали под семёрку, так что на XP уже нипоиграть" в день выхода патча, обладателям XP это мало понравится, правда?
  • 0
я всегда знаю, как надо лучше

#19
Psihius

Psihius

    Clone Grade Lambda

  • Tech III Pilots
  • PipPipPipPipPipPip
  • 3954 сообщений
911
  • EVE Ingame:psihius
  • EVE Alt:Loriel'a
  • Corp:Void Effect
  • Client:Eng

Сарказм про SSE - это нормально, когда старые технологии перестают поддерживаться из-за прогресса продукта. Но ненормальным является то, что об этом не всегда предупреждают, т.к. не тестируют на различном оборудовании. Если, допустим, будет девблог о том, что XP не будет поддерживаться к лету, это нормально. Но если будет девблог "упс, а мы всё делали под семёрку, так что на XP уже нипоиграть" в день выхода патча, обладателям XP это мало понравится, правда?

О поддержке продуктов, которые более официально не поддерживаются компанией разработчиком даже в виде латания самых опасных уязвимостей, никто не заботится. Не говоря уже о том, что в настолько старой системе просто нету некоторых компонентов, которые используются сегодня в игростроении и они туда просто не устанавливаются. Радуйтесь что CCP пока что до них не добрались и у вас есть возможность играть как таковая - главное отключайте свой комъютер от интернета почаще - на одного бота в ботнете будет меньше.
  • 1

Сообщество FactorioMMO: Discord , Reddit


#20
Sera Onzo

Sera Onzo

    Clone Grade Lambda

  • Tech III Pilots
  • PipPipPipPipPipPip
  • 4764 сообщений
1924
  • EVE Ingame:Sera Onzo
  • Corp:NPC
  • Ally:Caldari State
  • Client:Eng
Предлагаю модераторам превентивно жестоко банить любые попытки развести "ХРюша версус Семерка"-срач. Достали уже эти фанатики с обеих сторон.
  • 0




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

0 members, 1 guests, 0 anonymous users