LINEDEFS

Материал из DoomDev

(Различия между версиями)
Перейти к: навигация, поиск
 
 +
Линии (linedef) - то, что составляет облик карты. Каждая линия заключена между двумя [[VERTEXES|вертексами]] и может содержать один или два [[SIDEDEFS|sidedef]] (которые содержат данные о текстурах). У линий две основных цели. Первая - отделить игрока от пустоты (пустотой считается всё по ту сторону односторонних линий), вторая - запускать [[спецификаторы]] ("тип линии" в терминах обычного Doom).
 +
ZDoom использует те же основные данные карт, что и Doom, но с двумя исключениями: блоки LINEDEFS и THINGS расширены в форму, совместимую с Hexen. ZDoom решает, в каком формате записаны эти блоки, проверяя, содержит ли карта блок BEHAVIOR. Если содержит, то блоки LINEDEFS и THINGS рассматриваются, как имеющие формат Hexen, в противном случае – как имеющие обычный формат DOOM.
ZDoom использует те же основные данные карт, что и Doom, но с двумя исключениями: блоки LINEDEFS и THINGS расширены в форму, совместимую с Hexen. ZDoom решает, в каком формате записаны эти блоки, проверяя, содержит ли карта блок BEHAVIOR. Если содержит, то блоки LINEDEFS и THINGS рассматриваются, как имеющие формат Hexen, в противном случае – как имеющие обычный формат DOOM.
-
 
+
В Hexen Блок LINEDEFS состоит из ряда 16-и байтовых записей, в Doom - из 14-и байтовых. Каждая запись структурирована следующим образом:
-
== Hexen LineDefs ==
+
-
Блок LINEDEFS состоит из ряда 16-и байтовых записей. Каждая запись структурирована следующим образом:
+
{|border=1
{|border=1
-
!Смещение
+
!Смещение<br>(Doom)
-
! азмер
+
!Смещение<br>(Hexen)
 +
!Размер
!Метка
!Метка
!Значение
!Значение
|-
|-
 +
|0
|0
|0
|word
|word
|Вертекс начала линии
|Вертекс начала линии
|-
|-
 +
|2
|2
|2
|word
|word
|Вертекс конца линии
|Вертекс конца линии
|-
|-
 +
|4
|4
|4
|word
|word
|Свойства линии (см. ниже)
|Свойства линии (см. ниже)
|-
|-
 +
|6
 +
|
 +
|word
 +
|type
 +
|Тип линии
 +
|-
 +
|8
 +
|
 +
|word
 +
|tag
 +
|Tag сектора
 +
|-
 +
|
|6
|6
|byte
|byte
|Индекс спецификатора линии
|Индекс спецификатора линии
|-
|-
 +
|
|7
|7
|byte
|byte
|Первый аргумент спецификатора линии
|Первый аргумент спецификатора линии
|-
|-
 +
|
|8
|8
|byte
|byte
|Второй аргумент спецификатора линии
|Второй аргумент спецификатора линии
|-
|-
 +
|
|9
|9
|byte
|byte
|Третий аргумент спецификатора линии
|Третий аргумент спецификатора линии
|-
|-
 +
|
|10
|10
|byte
|byte
|Четвертый аргумент спецификатора линии
|Четвертый аргумент спецификатора линии
|-
|-
 +
|
|11
|11
|byte
|byte
|Пятый аргумент спецификатора линии
|Пятый аргумент спецификатора линии
|-
|-
 +
|10
|12
|12
|word
|word
|sidenum[0]
|sidenum[0]
-
|Индекс переднего sidedef линии
+
|Индекс переднего sidedef линии. 0xffff - нет sidedef.
|-
|-
 +
|12
|14
|14
|word
|word
|sidenum[1]
|sidenum[1]
-
|Индекс заднего sidedef линии
+
|Индекс заднего sidedef линии. 0xffff - нет sidedef.
|}
|}
|6
|6
|0x1800
|0x1800
-
|То же, что 1, но с пересечением (см. boomref.txt)
+
|То же, что 1, но с пересечением
|-
|-
|7
|7
|Зарезервировано
|Зарезервировано
|}
|}
 +
 +
{{zdoomwikibased2|Linedef}}

Текущая версия

Личные инструменты