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

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

[devblog] The Space Object Factory (SOF): Один файл для управления всем


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

#1
Jack Hareka

Jack Hareka

    белко

  • Tech III Pilots
  • PipPipPipPipPip
  • 3583 сообщений
1427
  • EVE Ingame:Jack Hareka
  • EVE Alt:Calsys
  • Corp:Monks of War
  • Client:Eng

Оригинал

Превед, капсулиры!

 

CCP Mankiller (не судимый) здесь для того, чтобы рассказать вам немного о том, как мы сохраняем данные для наших космических корабликов. Сейчас, под "данными" я подразумеваю визуальное представление, ни какого геймплея, количества хайслотов, дронбея  и подобной хрени. Я говорю именно о вещах, которые вы можете увидеть в космосе: материалы, свет и разного рода декалы (честно говоря, не знаю как точно перевести на русский, декалы они и есть декалы, - прим. переводчика).

 

Я знаю-знаю! Большинство вас больше беспокоится о скорости Домика и об арморе, чем о цвете или маленьком галлентском значке сзади на движках. Графика хорошая, бесспорно, но Ева - это игра о табличках в космосе, поэтому я постараюсь объяснить покороче! ;-)

 

Как это было ранее - red-файлы.

 

В Еве дохрена кораблей. Многие из них отличаются от других (например, Морос и Инкурсус), другие не очень (Скорп и Раттл). Без разницы сколько было отличий между двумя кораблями, мы юзали для каждого корабля один уникальный файл, так же известный как red-файл:

 

  • Moros: model/ship/gallente/dreadnought/GDn1/GDn1_T1.red
  • Incursus: model/ship/gallente/Frigate/GF4/GF4_T1.red
  • Scorpion: model/ship/caldari/BattleShip/CB2/CB2_T1.red
  • Rattlesnake: model/ship/caldari/BattleShip/CB2/Guristas/CB2_T1_Guristas.red

 

Проблема в том, содержимое файлов CB2_T1.red и CB2_T1_Guristas.red было практически идентичное! Хотя если вы сравните GDn1_T1.red и GF4_T1.red вы найдете некоторые общие черты: декалы, т.к. оба корабля галлентские.

 

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

 

На вершине всего этого: как должна работать кастомизация кораблей с этими red-файлами? Ответ простой: она и не будет! И мы знаем, после прошлых Фанфестов и триальных блюпринтов разного рода корабликов (всякие сарум магнаты и прочее, - примечание переводчика) как наши пилоты хотят кастомизацию кораблей. Будь прокляты эти таблицы, - говорим мы! И таким образом, мы решили, что пора что-то изменить...

 

 

The Space Object Factory (далее просто SOF).

 

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

 

  • Moros: gdn1_t1:gallentebase:gallente
  • Incursus: gf4_t1:gallentebase:gallente
  • Scorpion: cb2_t1:caldaribase:caldari
  • Rattlesnake: cb2_t1:guristas:caldari

Каждый стандартный корабль в Еве  мы можем свести к его хуллу (gdn1_t1, gf4_t1 и т.д.), фракции (gallentebase, caldaribase) и расы (gallente, caldari). Каждое имя указывает на уникальный набор данных для хулла, фракции и расы, и на выходе получается корабль, который подгружается в клиент.

 

В теории, возможна любая комбинация и поддерживавается SOF, но какой смысл будет иметь хулл Мороса, с гуристовским материалом и саньша декалами? Это риторический вопрос. Пожалуйста не спрашивайте Sanistoros. Серьезно.

 

Что это меняет для игроков?

 

Визуально? Сейчас ничего. Корабли генерируются SOF и визуально ничем не отличаются от тех, что были ранее из red-файлов, редактировавшихся в ручную. Загрузка данных, тем не менее, стала быстрее, за счет более эффективного хранения данных. Из-за этого корабли должны быстрее прорисовываться в космосе при запросе.

 

Тем не менее, мы воспользовались возможностью переделать red-файлы, которые на протяжение многих лет, постоянно измениялись от ручного редактирования фракций и рас. Мы, наконец-то, переделали Gallente CreoDron корабли, как пример. Сейчас они стали с зеленоватым оттенком, который был во времена более молодого NewEden.

 

Что это меняет для разработчиков?

 

В будущем? Дохрена. Если ваша работа упирается в изменение кучи файлов - это проблема. Мы пока будем использовать эти файлы, но следующий шаг будет тотальное избавление от них. Мы можем переделать свои инструменты, чтобы они использовали одну SOF-базу:

 

  • dx9/model/SpaceObjectFactory/data.red

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

 

ships_low_res.jpg


Сообщение отредактировал Jack Hareka: 25 September 2014 - 13:35

  • 8

#2
Clancy

Clancy

    Clone Grade Ksi

  • CCP loc. team
  • 12406 сообщений
3015
  • EVE Ingame:Paul Clancy
  • Client:Рус

и QA (мм?, - прим. переводчика)

 

куда ж ты

 

Quality Assurance


  • 0

Лично я - полисексуальная кошечка, запертая в теле женщины.

запоминать три фигуры (квадратик, крест, дрон, треугольник, овал)


#3
Severus

Severus

    Newbie

  • Tech II Pilots
  • 17 сообщений
0
  • Client:Eng

Это же все-таки перевод... контроль качества или в данном контексте просто проверить: "открыть, изменить, сохранить и проверить каждый файл".

 

Ну и от себя, QA при таких раскрасках требует человеко-часов в разы больше чем остальные этапы вместе взятые.


  • 0

#4
Spiro

Spiro

    Clone Grade Zeta

  • Tech III Pilots
  • PipPipPip
  • 461 сообщений
75
  • EVE Ingame:Snezmy
  • Corp:ГрейХантерз
  • Ally:горгонято
  • Client:Eng
Прям уж в разы ☺
  • 0

#5
scariot

scariot

    Clone Grade Kappa

  • Tech III Pilots
  • PipPipPipPipPip
  • 1970 сообщений
-40
  • EVE Ingame:Mirialia Fox
  • Client:Eng

имхо - самое дельное изменение

да и и люди играющие на калькуляторах должны оценить.


  • 0

Нам очень важно ваше мнение (с) (CCP)

Ты заплатил за право страдать. Услуга оказана в полном объеме.(с) (Xiemargl)


#6
lim

lim

    Clone Grade Eta

  • Tech III Pilots
  • PipPipPipPip
  • 621 сообщений
298
  • EVE Ingame:Stalker SF
  • Corp:SF-BR
  • Channel:BS-INFO
  • Client:Eng

если сделают костомизацию это будет реально круто =)

всегда хотел розовый маель или бидон =)


  • 0

Землю рабочим! Заводы крестьянам!
Может наоборот?
Наоборот пробовали не хера не вышло...


#7
Tin Taron

Tin Taron

    Clone Grade Lambda

  • Tech III Pilots
  • PipPipPipPipPipPip
  • 5481 сообщений
1010
  • EVE Ingame:Tin Taron
  • EVE Alt:другой совсем
  • Corp:OEG
  • Ally:Goonswarm Federation
  • Client:Рус

если сделают костомизацию это будет реально круто =)

всегда хотел розовый маель или бидон =)

 

Я уже полетал на белом и розовом что-ли. Единственный плюс почти весь али выкатывал на андок посмотреть это чудо и слал приветики розовым маелькам в локал :) , но жизнь оказалось жестока и цвет ни хрена не тонканул :m0201:


  • 0

#8
advena

advena

    Clone Grade Nu

  • Tech III Pilots
  • PipPipPipPipPipPipPipPip
  • 8273 сообщений
1044
  • EVE Ingame:Advenat Bedala
  • Corp:.MLP.
  • Client:Eng

Меня больше удивляет, почему они так долго делали по-другому.


  • 0

В мире победившего капитализма всего два всадника апокалипсиса - Глупость и Жадность. Остальных оптимизировали.

 

Чтобы попасть в рай верующему надо умереть. Атеисту - выжить.


#9
Jack Hareka

Jack Hareka

    белко

  • Tech III Pilots
  • PipPipPipPipPip
  • 3583 сообщений
1427
  • EVE Ingame:Jack Hareka
  • EVE Alt:Calsys
  • Corp:Monks of War
  • Client:Eng

Меня больше удивляет, почему они так долго делали по-другому.

Были неопытные, после окончания школы, не знали как по-другому можно сделать :trololo:


  • 0




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

0 members, 0 guests, 0 anonymous users