Hosting and domain costs until October 2024 have been generously sponsored by dumptruck_ds. Thank you!
Editing FTEQW File Formats
From Quake Wiki
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
− | This is a list of all the file formats that can be used by FTEQW and some of the other commonly used engines. The engines are: FTEQW, DarkPlaces, Quakespasm, Quakespasm Spiked, VK Quake, Mark V, and EZ-Quake. | + | {{todo|user=echos|todo=this page is mostly complete, but needs more examples and tutorials}} |
− | + | This is a list of all the file formats that can be used by FTEQW and some of the other commonly used engines. The engines are: FTEQW, DarkPlaces, Quakespasm, Quakespasm Spiked, VK Quake, Mark V, and EZ-Quake. Please contribute example files and tutorials. | |
− | + | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | |
− | |||
==Model and/or Animation== | ==Model and/or Animation== | ||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 26: | Line 24: | ||
| style="background:green; color:white;" | Y <!-- MkV --> | | style="background:green; color:white;" | Y <!-- MkV --> | ||
| style="background:green; color:white;" | Y <!-- EZ --> | | style="background:green; color:white;" | Y <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | Echos: These became known as Alias models, even though that‘s not correct. John Carmack always called these Alias models, so the name stuck. |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 38: | Line 36: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | | + | | Swimmy when animating. Yuck. |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 50: | Line 48: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:green; color:white;" | Y <!-- EZ --> | | style="background:green; color:white;" | Y <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | Echos: Support of md3 may be limited in some engines, such as tags and animations. |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 58: | Line 56: | ||
| style="background:green; color:white;" | Y <!-- DP --> | | style="background:green; color:white;" | Y <!-- DP --> | ||
| style="background:darkred; color:white;" | N <!-- QS --> | | style="background:darkred; color:white;" | N <!-- QS --> | ||
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- QSS --> |
| style="background:darkred; color:white;" | N <!-- VK --> | | style="background:darkred; color:white;" | N <!-- VK --> | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | Echos: The best choice for creating models & animations in FTE and DP. Skeletal animation support for 256 joints. Vertex animation and blendshapes are not supported, skeletal only. |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 99: | Line 97: | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
| Slow to load (although easy to export). the separate .psa files contain the animation data in an external file. | | Slow to load (although easy to export). the separate .psa files contain the animation data in an external file. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 130: | Line 116: | ||
| style="background:darkred; color:white;" | N <!-- DP --> | | style="background:darkred; color:white;" | N <!-- DP --> | ||
| style="background:darkred; color:white;" | N <!-- QS --> | | style="background:darkred; color:white;" | N <!-- QS --> | ||
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- QSS --> |
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- VK --> |
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
Line 142: | Line 128: | ||
| style="background:darkred; color:white;" | N <!-- DP --> | | style="background:darkred; color:white;" | N <!-- DP --> | ||
| style="background:darkred; color:white;" | N <!-- QS --> | | style="background:darkred; color:white;" | N <!-- QS --> | ||
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- QSS --> |
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- VK --> |
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
Line 150: | Line 136: | ||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
| QuakeForge 16bit Alias | | QuakeForge 16bit Alias | ||
− | | (. | + | | (.???) |
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
| style="background:darkred; color:white;" | N <!-- DP --> | | style="background:darkred; color:white;" | N <!-- DP --> | ||
Line 158: | Line 144: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | Echos: The Alias model format (Quake1 .mdl) with 16-bit vertices. This gives models more precision, the vertices will show up in-game positioned more accurately. |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | Half-Life | + | | Half-Life |
| (.mdl) | | (.mdl) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
Line 170: | Line 156: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | | + | | Boo Hiss. |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 206: | Line 192: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | Echos: This format is for creating terrains in FTE, can be used by mappers to make large sandbox-style game levels. Sections are streamed in from disk as required. Models and bsps can be embedded as desired. Entities are really messy right now. |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
| Wavefront | | Wavefront | ||
| (.obj) | | (.obj) | ||
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- FTE --> |
| style="background:green; color:white;" | Y <!-- DP --> | | style="background:green; color:white;" | Y <!-- DP --> | ||
| style="background:darkred; color:white;" | N <!-- QS --> | | style="background:darkred; color:white;" | N <!-- QS --> | ||
Line 218: | Line 204: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | DP can | + | | style="text-align:left;" | LH: DP can use .obj as a map if you provide a .ent file with it. You can also use it as a standard model in DP. |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 230: | Line 216: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | Echos: This is the real Alias model format. Obsolete, but old files exist. The original Quake1 models were converted from .tri to .mdl with the modelgen utility. Listed for informational purposes, no point to load it in engine. |
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Map Source File (load a .map without compiling it)== | ==Map Source File (load a .map without compiling it)== | ||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 271: | Line 256: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 298: | Line 283: | ||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | | + | | Half-Life |
| (.map) | | (.map) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
Line 311: | Line 296: | ||
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Map Data File== | ==Map Data File== | ||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 356: | Line 341: | ||
| style="background:green; color:white;" | Y <!-- QS --> | | style="background:green; color:white;" | Y <!-- QS --> | ||
| style="background:green; color:white;" | Y <!-- QSS --> | | style="background:green; color:white;" | Y <!-- QSS --> | ||
− | | style="background: | + | | style="background:black; color:white;" | ? <!-- VK --> |
| style="background:black; color:white;" | ? <!-- MkV --> | | style="background:black; color:white;" | ? <!-- MkV --> | ||
| style="background:black; color:white;" | ? <!-- EZ --> | | style="background:black; color:white;" | ? <!-- EZ --> | ||
Line 398: | Line 383: | ||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | Half-Life | + | | Half-Life |
| (.bsp) | | (.bsp) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
Line 419: | Line 404: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 496: | Line 481: | ||
| Wavefront | | Wavefront | ||
| (.obj) | | (.obj) | ||
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- FTE --> |
| style="background:green; color:white;" | Y <!-- DP --> | | style="background:green; color:white;" | Y <!-- DP --> | ||
| style="background:darkred; color:white;" | N <!-- QS --> | | style="background:darkred; color:white;" | N <!-- QS --> | ||
Line 504: | Line 489: | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
| style="text-align:left;" | LH: DP can use .obj as a map if you provide a .ent file with it. You can also use it as a standard model in DP. | | style="text-align:left;" | LH: DP can use .obj as a map if you provide a .ent file with it. You can also use it as a standard model in DP. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 545: | Line 525: | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
| style="text-align:left;" | Equivelent to a .lux file, but embedded into the bsp itself. Compile with ericw's light util using the -bspxlux argument. | | style="text-align:left;" | Equivelent to a .lux file, but embedded into the bsp itself. Compile with ericw's light util using the -bspxlux argument. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 568: | Line 536: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | Allows per-surface lightmap scaling, for higher resolution lightmaps. This is why .lit2 was basically abandoned | + | | style="text-align:left;" | Allows per-surface lightmap scaling, for higher resolution lightmaps. This is why .lit2 was basically abandoned. |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 594: | Line 549: | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
| style="text-align:left;" | Allows rtlights+specular lighting effects to respect 'phong'/edge smoothing. ericw stripped support for this from his tool. | | style="text-align:left;" | Allows rtlights+specular lighting effects to respect 'phong'/edge smoothing. ericw stripped support for this from his tool. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 621: | Line 564: | ||
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Map Misc. Data File== | ==Map Misc. Data File== | ||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 683: | Line 625: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | Echos: DP doesn‘t load .lux so use .dlit the file format is identical. |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 696: | Line 638: | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
| style="text-align:left;" | Spike: FTE supports spotlight rtlights and spinning static lights, DP doesn't, which may make format conversions necessary. You can use the spinning light w/ a cubeMap to make it fancy. | | style="text-align:left;" | Spike: FTE supports spotlight rtlights and spinning static lights, DP doesn't, which may make format conversions necessary. You can use the spinning light w/ a cubeMap to make it fancy. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Texture File== | ==Texture File== | ||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 735: | Line 665: | ||
| style="background:green; color:white;" | Y <!-- MkV --> | | style="background:green; color:white;" | Y <!-- MkV --> | ||
| style="background:green; color:white;" | Y <!-- EZ --> | | style="background:green; color:white;" | Y <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 747: | Line 677: | ||
| style="background:green; color:white;" | Y <!-- MkV --> | | style="background:green; color:white;" | Y <!-- MkV --> | ||
| style="background:green; color:white;" | Y <!-- EZ --> | | style="background:green; color:white;" | Y <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | | + | | Targa |
| (.tga) | | (.tga) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
Line 759: | Line 689: | ||
| style="background:green; color:white;" | Y <!-- MkV --> | | style="background:green; color:white;" | Y <!-- MkV --> | ||
| style="background:green; color:white;" | Y <!-- EZ --> | | style="background:green; color:white;" | Y <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | | + | | Image |
| (.pcx) | | (.pcx) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
Line 771: | Line 701: | ||
| style="background:green; color:white;" | Y <!-- MkV --> | | style="background:green; color:white;" | Y <!-- MkV --> | ||
| style="background:green; color:white;" | Y <!-- EZ --> | | style="background:green; color:white;" | Y <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | | + | | Image |
| (.png) | | (.png) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
Line 782: | Line 712: | ||
| style="background:darkred; color:white;" | N <!-- VK --> | | style="background:darkred; color:white;" | N <!-- VK --> | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- EZ --> |
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | | + | | Image |
| (.jpg) | | (.jpg) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
Line 794: | Line 724: | ||
| style="background:darkred; color:white;" | N <!-- VK --> | | style="background:darkred; color:white;" | N <!-- VK --> | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- EZ --> |
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
Line 808: | Line 738: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | | + | | Texture Wad (of other game) |
| (.wad) | | (.wad) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
Line 832: | Line 750: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:green; color:white;" | Y <!-- EZ --> | | style="background:green; color:white;" | Y <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | Required for halflife bsp support. |
− | Required for halflife bsp support. | ||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | | + | | Image |
| (.dds) | | (.dds) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
Line 848: | Line 765: | ||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | | + | | Image |
| (.ktx) | | (.ktx) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
Line 858: | Line 775: | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
| style="text-align:left;" | Spike: FTE supports this for bc1-7/dxt/etc1/etc2/hdr. Allows for properly compressed textures even with npot textures for lower gpu memory/bandwidth use. | | style="text-align:left;" | Spike: FTE supports this for bc1-7/dxt/etc1/etc2/hdr. Allows for properly compressed textures even with npot textures for lower gpu memory/bandwidth use. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Sprite File== | ==Sprite File== | ||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 982: | Line 814: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 994: | Line 826: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | Half-Life | + | | Half-Life Sprite |
| (.spr) | | (.spr) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
Line 1,006: | Line 838: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
− | |||
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Particle File== | ==Particle File== | ||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 1,032: | Line 862: | ||
| style="background:darkred; color:white;" | N <!-- QS --> | | style="background:darkred; color:white;" | N <!-- QS --> | ||
| style="background:green; color:white;" | Y <!-- QSS --> | | style="background:green; color:white;" | Y <!-- QSS --> | ||
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- VK --> |
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
Line 1,048: | Line 878: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | Echos: It‘s easy to convert a DarkPlaces particleinfo.txt file to be used with FTE, but you must do it manually at the console. FTE and QSS can directly use these only when explcitly configured to do so - either r_particledesc effectinfo or a mod that explicitly calls particleeffectnum("effectinfo.something") |
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Shader File== | ==Shader File== | ||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 1,070: | Line 899: | ||
| Quake3 | | Quake3 | ||
| (.shader) | | (.shader) | ||
− | | style="background: | + | | style="background:yellow; color:black;" | Y <!-- FTE --> |
| style="background:yellow; color:black;" | Y <!-- DP --> | | style="background:yellow; color:black;" | Y <!-- DP --> | ||
| style="background:darkred; color:white;" | N <!-- QS --> | | style="background:darkred; color:white;" | N <!-- QS --> | ||
Line 1,077: | Line 906: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | '''Partial support.''' Not using the ftee_program term can result in lower performance in FTE - especially for skeletal models. Realtime lighting breaks these shaders in FTE. DP supports single stage shaders only. Many shaders from Q3 will not work in DP due to the multiple stages, and shaders designed only for DP are malformed as far as Q3+FTE are concerned (ie: expect weirdness). |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
| GLSL | | GLSL | ||
− | | (. | + | | (.???) |
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
| style="background:darkred; color:white;" | N <!-- DP --> | | style="background:darkred; color:white;" | N <!-- DP --> | ||
Line 1,089: | Line 918: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | Echos: FTE allows you to create shaders with GLSL. DP only uses GLSL internally. Use Q3 bsp & shader for compat w/ both. |
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Script File== | ==Script File== | ||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 1,118: | Line 946: | ||
| style="background:green; color:white;" | Y <!-- MkV --> | | style="background:green; color:white;" | Y <!-- MkV --> | ||
| style="background:green; color:white;" | Y <!-- EZ --> | | style="background:green; color:white;" | Y <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Sound Effect File== | ==Sound Effect File== | ||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 1,154: | Line 981: | ||
| style="background:green; color:white;" | Y <!-- DP --> | | style="background:green; color:white;" | Y <!-- DP --> | ||
| style="background:darkred; color:white;" | N <!-- QS --> | | style="background:darkred; color:white;" | N <!-- QS --> | ||
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- QSS --> |
| style="background:darkred; color:white;" | N <!-- VK --> | | style="background:darkred; color:white;" | N <!-- VK --> | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
Line 1,163: | Line 990: | ||
| Ogg Opus | | Ogg Opus | ||
| (.opus) | | (.opus) | ||
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- FTE --> |
| style="background:darkred; color:white;" | N <!-- DP --> | | style="background:darkred; color:white;" | N <!-- DP --> | ||
| style="background:darkred; color:white;" | N <!-- QS --> | | style="background:darkred; color:white;" | N <!-- QS --> | ||
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- QSS --> |
| style="background:darkred; color:white;" | N <!-- VK --> | | style="background:darkred; color:white;" | N <!-- VK --> | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
− | | style="background: | + | | style="background:black; color:white;" | ? <!-- EZ --> |
| style="text-align:left;" | QS only supports opus for music, not game sounds. FTE can load this audio formats via its ffmpeg plugin (and pretty much any other too). | | style="text-align:left;" | QS only supports opus for music, not game sounds. FTE can load this audio formats via its ffmpeg plugin (and pretty much any other too). | ||
Line 1,175: | Line 1,002: | ||
| MPEG 2 layer 3 | | MPEG 2 layer 3 | ||
| (.mp3) | | (.mp3) | ||
− | | style="background:yellow; color:black;" | Win | + | | style="background:yellow; color:black;" | Win <!-- FTE --> |
| style="background:darkred; color:white;" | N <!-- DP --> | | style="background:darkred; color:white;" | N <!-- DP --> | ||
| style="background:darkred; color:white;" | N <!-- QS --> | | style="background:darkred; color:white;" | N <!-- QS --> | ||
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- QSS --> |
| style="background:darkred; color:white;" | N <!-- VK --> | | style="background:darkred; color:white;" | N <!-- VK --> | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | FTE can use MP3 as a sound effect on windows | + | | style="text-align:left;" | FTE can use MP3 as a sound effect, on windows only. |
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Music Track File== | ==Music Track File== | ||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 1,204: | Line 1,030: | ||
| CD Audio | | CD Audio | ||
| (none) | | (none) | ||
− | | style="background: | + | | style="background:green; color:white;" | Y <!-- FTE --> |
| style="background:green; color:white;" | Y <!-- DP --> | | style="background:green; color:white;" | Y <!-- DP --> | ||
| style="background:darkred; color:white;" | N <!-- QS --> | | style="background:darkred; color:white;" | N <!-- QS --> | ||
Line 1,211: | Line 1,037: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | SDL2 | + | | style="text-align:left;" | SDL2 engines no longer support cd audio. All four engines support fake tracks, but don't depend on the cd command still existing if you want to change track. Currently FTE and DP still do have the cd command, while QS & QSS don't. |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 1,221: | Line 1,047: | ||
| style="background:green; color:white;" | Y <!-- QSS --> | | style="background:green; color:white;" | Y <!-- QSS --> | ||
| style="background:green; color:white;" | Y <!-- VK --> | | style="background:green; color:white;" | Y <!-- VK --> | ||
− | | style="background: | + | | style="background:green; color:white;" | Y <!-- MkV --> |
− | | style="background: | + | | style="background:green; color:white;" | Y <!-- EZ --> |
− | | style="text-align:left;" | | + | | style="text-align:left;" | DP+FTE support stereo wav files, QSS will average the channels and load game sounds as mono. FTE supports float wavs, the others do not. |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 1,233: | Line 1,059: | ||
| style="background:green; color:white;" | Y <!-- QSS --> | | style="background:green; color:white;" | Y <!-- QSS --> | ||
| style="background:green; color:white;" | Y <!-- VK --> | | style="background:green; color:white;" | Y <!-- VK --> | ||
− | | style="background: | + | | style="background:green; color:white;" | Y <!-- MkV --> |
− | | style="background: | + | | style="background:green; color:white;" | Y <!-- EZ --> |
− | | style="text-align:left;" | QS only supports oggs for music, not game sounds | + | | style="text-align:left;" | QS only supports oggs for music, not game sounds. |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
| Ogg Opus | | Ogg Opus | ||
| (.opus) | | (.opus) | ||
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- FTE --> |
| style="background:darkred; color:white;" | N <!-- DP --> | | style="background:darkred; color:white;" | N <!-- DP --> | ||
| style="background:green; color:white;" | Y <!-- QS --> | | style="background:green; color:white;" | Y <!-- QS --> | ||
| style="background:green; color:white;" | Y <!-- QSS --> | | style="background:green; color:white;" | Y <!-- QSS --> | ||
| style="background:green; color:white;" | Y <!-- VK --> | | style="background:green; color:white;" | Y <!-- VK --> | ||
− | | style="background: | + | | style="background:green; color:white;" | Y <!-- MkV --> |
− | | style="background: | + | | style="background:black; color:white;" | ? <!-- EZ --> |
− | | style="text-align:left;" | QS only supports opus for music, not game sounds. FTE can load this audio formats via its ffmpeg plugin | + | | style="text-align:left;" | QS only supports opus for music, not game sounds. FTE can load this audio formats via its ffmpeg plugin (and pretty much any other too). |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
| MPEG 2 layer 3 | | MPEG 2 layer 3 | ||
| (.mp3) | | (.mp3) | ||
− | | style="background:yellow; color:black;" | Win | + | | style="background:yellow; color:black;" | Win <!-- FTE --> |
| style="background:darkred; color:white;" | N <!-- DP --> | | style="background:darkred; color:white;" | N <!-- DP --> | ||
| style="background:green; color:white;" | Y <!-- QS --> | | style="background:green; color:white;" | Y <!-- QS --> | ||
| style="background:green; color:white;" | Y <!-- QSS --> | | style="background:green; color:white;" | Y <!-- QSS --> | ||
| style="background:green; color:white;" | Y <!-- VK --> | | style="background:green; color:white;" | Y <!-- VK --> | ||
− | | style="background: | + | | style="background:green; color:white;" | Y <!-- MkV --> |
− | | style="background: | + | | style="background:green; color:white;" | Y <!-- EZ --> |
− | | style="text-align:left;" | Engines will load id1/music/*.ogg in preference to mod/music/*.mp3, so this is only useful for users ripping their own fake-track audio. QS only supports mp3s for music, not game sounds | + | | style="text-align:left;" | Engines will load id1/music/*.ogg in preference to mod/music/*.mp3, so this is only useful for users ripping their own fake-track audio. QS only supports mp3s for music, not game sounds. |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
| FLAC | | FLAC | ||
| (.flac) | | (.flac) | ||
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- FTE --> |
− | | style="background: | + | | style="background:black; color:white;" | ? <!-- DP --> |
| style="background:green; color:white;" | Y <!-- QS --> | | style="background:green; color:white;" | Y <!-- QS --> | ||
| style="background:green; color:white;" | Y <!-- QSS --> | | style="background:green; color:white;" | Y <!-- QSS --> | ||
| style="background:green; color:white;" | Y <!-- VK --> | | style="background:green; color:white;" | Y <!-- VK --> | ||
− | | style="background: | + | | style="background:black; color:white;" | ? <!-- MkV --> |
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | DP+FTE support stereo wav files, QSS will average the channels and load game sounds as mono. FTE supports float wavs, the others do not. |
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Video File== | ==Video File== | ||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 1,481: | Line 1,306: | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
| style="text-align:left;" | LH: videos from the game "Blood Omen: Legacy of Cain" for use in the DP port "Blood Omnicide: Legacy of Cain." Requires an original playstation game disc. | | style="text-align:left;" | LH: videos from the game "Blood Omen: Legacy of Cain" for use in the DP port "Blood Omnicide: Legacy of Cain." Requires an original playstation game disc. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|} | |} |