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 23: Line 23:
 
| 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;" | Echo: These became known as Alias models, even though that‘s not correct. John Carmack always called these Alias models, so the name stuck. Squirmy when animating; maximum one texture per skin.
+
| style="text-align:left;" | Echo: 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 35: Line 35:
 
| 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  -->
| Even squirmier than QMDL when animating, due to having per-frame scale and origin. Maximum one texture per skin.
+
| Swimmy when animating. Yuck.
  
 
|-valign="top" style="background:#F8F8F8"
 
|-valign="top" style="background:#F8F8F8"
Line 47: Line 47:
 
| 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;" | Echo: Support of md3 may be limited in some engines, such as tags and animations. Still squirmy when animating, but has much higher precision than Quake1 MDL or Quake2 MD2, so vertex swimming is only noticeable up close.
+
| style="text-align:left;" | Echo: 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 55: Line 55:
 
| 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:green; color:white;" | Y  <!-- QSS -->
+
| style="background:yellow; color:black;" | Y  <!-- 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;" | Echo: 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.
+
| style="text-align:left;" | Echo: 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. QSS has some animation frame timing issues related to lerping.
  
 
|-valign="top" style="background:#F8F8F8"
 
|-valign="top" style="background:#F8F8F8"
Line 96: Line 96:
 
| 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"
 
| GLTF2 / GLTF2 Binary
 
| (.gltf / .glb)
 
| style="background:yellowgreen; color:black;" | Y  <!-- FTE -->
 
| style="background:darkred; color:white;" | N  <!-- DP  -->
 
| style="background:darkred; color:white;" | N  <!-- QS  -->
 
| style="background:darkred; color:white;" | N  <!-- QSS -->
 
| style="background:darkred; color:white;" | N  <!-- VK  -->
 
| style="background:darkred; color:white;" | N  <!-- MkV -->
 
| style="background:darkred; color:white;" | N  <!-- EZ  -->
 
| Slower to load than iqm files, but more widely exportable and supports PBR materials. The binary .glb files generally embed all textures in a single file. FTE supports most of the spec, though does not fully conform in a few edge cases (which will result in warning messages). Additional format extensions may cause the model to fail to load.
 
  
 
|-valign="top" style="background:#F8F8F8"
 
|-valign="top" style="background:#F8F8F8"
Line 127: Line 115:
 
| 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:green; color:white;" | Y <!-- QSS -->
+
| style="background:darkred; color:white;" | N <!-- QSS -->
| style="background:green; color:white;" | Y <!-- 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  -->
Line 139: Line 127:
 
| 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:green; color:white;" | Y <!-- QSS -->
+
| style="background:darkred; color:white;" | N <!-- QSS -->
| style="background:green; color:white;" | Y <!-- 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  -->
Line 147: Line 135:
 
|-valign="top" style="background:#F8F8F8"
 
|-valign="top" style="background:#F8F8F8"
 
| QuakeForge 16bit Alias
 
| QuakeForge 16bit Alias
| (.md16)
+
| (.???)
 
| 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 146:
  
 
|-valign="top" style="background:#F8F8F8"
 
|-valign="top" style="background:#F8F8F8"
| Half-Life (GoldSrc)
+
| Half-Life
 
| (.mdl)
 
| (.mdl)
 
| style="background:green; color:white;" | Y  <!-- FTE -->
 
| style="background:green; color:white;" | Y  <!-- FTE -->
Line 167: Line 155:
 
| 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  -->
| Vertex animation and blendshapes are not supported, skeletal only.<br>Toolchain license issues.
+
| Boo Hiss.
  
 
|-valign="top" style="background:#F8F8F8"
 
|-valign="top" style="background:#F8F8F8"
Line 268: 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 295: Line 283:
  
 
|-valign="top" style="background:#F8F8F8"
 
|-valign="top" style="background:#F8F8F8"
| Valve220
+
| Half-Life
 
| (.map)
 
| (.map)
 
| style="background:green; color:white;" | Y  <!-- FTE -->
 
| style="background:green; color:white;" | Y  <!-- FTE -->
Line 353: 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:green; color:white;" | Y <!-- VK  -->
+
| 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 395: Line 383:
  
 
|-valign="top" style="background:#F8F8F8"
 
|-valign="top" style="background:#F8F8F8"
| Half-Life (GoldSrc)
+
| Half-Life
 
| (.bsp)
 
| (.bsp)
 
| style="background:green; color:white;" | Y  <!-- FTE -->
 
| style="background:green; color:white;" | Y  <!-- FTE -->
Line 416: 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 493: Line 481:
 
| Wavefront
 
| Wavefront
 
| (.obj)
 
| (.obj)
| style="background:green; color:white;" | Y <!-- FTE -->
+
| 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 650: 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.
 
|-valign="top" style="background:#F8F8F8"
 
| Vis Patches
 
| (.vis)
 
| style="background:green; color:white;" | Y  <!-- FTE -->
 
| style="background:darkred; color:white;" | N  <!-- DP  -->
 
| style="background:darkred; color:white;" | N  <!-- QS  -->
 
| style="background:darkred; color:white;" | N  <!-- QSS -->
 
| style="background:green; color:white;" | Y  <!-- VK  -->
 
| style="background:green; color:white;" | Y  <!-- MkV -->
 
| style="background:darkred; color:white;" | N  <!-- EZ  -->
 
| style="text-align:left;" | These files override the vis data of maps, allowing for transparent water on vanilla maps.
 
  
 
|}
 
|}
Line 689: 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 701: 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"
| Truevision Targa
+
| Targa
 
| (.tga)
 
| (.tga)
 
| style="background:green; color:white;" | Y  <!-- FTE -->
 
| style="background:green; color:white;" | Y  <!-- FTE -->
Line 713: 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"
| Picture Exchange Image
+
| Image
 
| (.pcx)
 
| (.pcx)
 
| style="background:green; color:white;" | Y  <!-- FTE -->
 
| style="background:green; color:white;" | Y  <!-- FTE -->
Line 725: 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"
| Portable Network Graphics
+
| Image
 
| (.png)
 
| (.png)
 
| style="background:green; color:white;" | Y  <!-- FTE -->
 
| style="background:green; color:white;" | Y  <!-- FTE -->
Line 736: 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:olive; color:white;" | Y <!-- EZ  -->
+
| style="background:darkred; color:white;" | N <!-- EZ  -->
| style="text-align:left;" | Can be disabled in EZQuake depending on compile settings.
+
| style="text-align:left;" | none
  
 
|-valign="top" style="background:#F8F8F8"
 
|-valign="top" style="background:#F8F8F8"
| Joint Photograph Exports Group Image
+
| Image
 
| (.jpg)
 
| (.jpg)
 
| style="background:green; color:white;" | Y  <!-- FTE -->
 
| style="background:green; color:white;" | Y  <!-- FTE -->
Line 748: 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:olive; color:white;" | Y <!-- EZ  -->
+
| style="background:darkred; color:white;" | <!-- EZ  -->
| style="text-align:left;" | Can be enabled/disabled in EZQuake depending on compile settings.
+
| style="text-align:left;" | none
  
  
Line 762: 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"
| Quake WAD2
+
| Texture Wad (of other game)
 
| (.wad)
 
| (.wad)
 
| style="background:green; color:white;" | Y  <!-- FTE -->
 
| style="background:green; color:white;" | Y  <!-- FTE -->
Line 774: 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.
  
 
|-valign="top" style="background:#F8F8F8"
 
|-valign="top" style="background:#F8F8F8"
| Half-Life (GoldSrc) WAD3
+
| Image
| (.wad)
 
| style="background:green; color:white;" | Y  <!-- FTE -->
 
| style="background:green; color:white;" | Y  <!-- DP  -->
 
| style="background:darkred; color:white;" | N  <!-- QS  -->
 
| style="background:darkred; color:white;" | N  <!-- QSS -->
 
| style="background:darkred; color:white;" | N  <!-- VK  -->
 
| style="background:darkred; color:white;" | N  <!-- MkV -->
 
| style="background:green; color:white;" | Y  <!-- EZ  -->
 
| style="text-align:left;" | Like WAD2, but with per-texture palette
 
Required for halflife bsp support.
 
 
 
|-valign="top" style="background:#F8F8F8"
 
| DirectDraw Surface
 
 
| (.dds)
 
| (.dds)
 
| style="background:green; color:white;" | Y  <!-- FTE -->
 
| style="background:green; color:white;" | Y  <!-- FTE -->
Line 802: Line 765:
  
 
|-valign="top" style="background:#F8F8F8"
 
|-valign="top" style="background:#F8F8F8"
| Khronos Texture
+
| Image
 
| (.ktx)
 
| (.ktx)
 
| style="background:green; color:white;" | Y  <!-- FTE -->
 
| style="background:green; color:white;" | Y  <!-- FTE -->
Line 812: 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.
 
|-valign="top" style="background:#F8F8F8"
 
| Microsoft Bitmap
 
| (.bmp)
 
| style="background:yellowgreen; color:black;" | Y  <!-- FTE -->
 
| style="background:darkred; color:white;" | N  <!-- DP  -->
 
| style="background:darkred; color:white;" | N  <!-- QS  -->
 
| style="background:darkred; color:white;" | N  <!-- QSS -->
 
| style="background:darkred; color:white;" | N  <!-- VK  -->
 
| style="background:darkred; color:white;" | N  <!-- MkV -->
 
| style="background:darkred; color:white;" | N  <!-- EZ  -->
 
| style="text-align:left;" | Not scanned for by default (but can be named explicitly).
 
 
|-valign="top" style="background:#F8F8F8"
 
| Microsoft Icon
 
| (.ico)
 
| style="background:yellowgreen; color:black;" | Y  <!-- FTE -->
 
| style="background:darkred; color:white;" | N  <!-- DP  -->
 
| style="background:darkred; color:white;" | N  <!-- QS  -->
 
| style="background:darkred; color:white;" | N  <!-- QSS -->
 
| style="background:darkred; color:white;" | N  <!-- VK  -->
 
| style="background:darkred; color:white;" | N  <!-- MkV -->
 
| style="background:darkred; color:white;" | N  <!-- EZ  -->
 
| style="text-align:left;" | Not scanned for by default (but can be named explicitly).
 
 
|-valign="top" style="background:#F8F8F8"
 
| Portable Floatmap
 
| (.pfm)
 
| style="background:yellowgreen; color:black;" | Y  <!-- FTE -->
 
| style="background:darkred; color:white;" | N  <!-- DP  -->
 
| style="background:darkred; color:white;" | N  <!-- QS  -->
 
| style="background:darkred; color:white;" | N  <!-- QSS -->
 
| style="background:darkred; color:white;" | N  <!-- VK  -->
 
| style="background:darkred; color:white;" | N  <!-- MkV -->
 
| style="background:darkred; color:white;" | N  <!-- EZ  -->
 
| style="text-align:left;" | Simple HDR format. Not scanned for by default (but can be named explicitly).
 
 
|-valign="top" style="background:#F8F8F8"
 
| Gimp document
 
| (.xcf)
 
| style="background:olive; color:white;" | Y  <!-- FTE -->
 
| style="background:darkred; color:white;" | N  <!-- DP  -->
 
| style="background:darkred; color:white;" | N  <!-- QS  -->
 
| style="background:darkred; color:white;" | N  <!-- QSS -->
 
| style="background:darkred; color:white;" | N  <!-- VK  -->
 
| style="background:darkred; color:white;" | N  <!-- MkV -->
 
| style="background:darkred; color:white;" | N  <!-- EZ  -->
 
| style="text-align:left;" | HDR or LDR. Many things are not supported, although layers are. Not scanned for by default (but can be named explicitly).
 
 
|-valign="top" style="background:#F8F8F8"
 
| Photoshop Document
 
| (.psd)
 
| style="background:olive; color:white;" | Y  <!-- FTE -->
 
| style="background:darkred; color:white;" | N  <!-- DP  -->
 
| style="background:darkred; color:white;" | N  <!-- QS  -->
 
| style="background:darkred; color:white;" | N  <!-- QSS -->
 
| style="background:darkred; color:white;" | N  <!-- VK  -->
 
| style="background:darkred; color:white;" | N  <!-- MkV -->
 
| style="background:darkred; color:white;" | N  <!-- EZ  -->
 
| style="text-align:left;" | Only the base plane will load. Not scanned for by default (but can be named explicitly).
 
 
|-valign="top" style="background:#F8F8F8"
 
| 'Radiance' HDR.
 
| (.hdr)
 
| style="background:yellowgreen; color:black;" | Y  <!-- FTE -->
 
| style="background:darkred; color:white;" | N  <!-- DP  -->
 
| style="background:darkred; color:white;" | N  <!-- QS  -->
 
| style="background:darkred; color:white;" | N  <!-- QSS -->
 
| style="background:darkred; color:white;" | N  <!-- VK  -->
 
| style="background:darkred; color:white;" | N  <!-- MkV -->
 
| style="background:darkred; color:white;" | N  <!-- EZ  -->
 
| style="text-align:left;" | HDR RGBE format. Not scanned for by default (but can be named explicitly).
 
 
|-valign="top" style="background:#F8F8F8"
 
| ILM OpenEXR
 
| (.exr)
 
| style="background:yellow; color:black;" | Y  <!-- FTE -->
 
| style="background:darkred; color:white;" | N  <!-- DP  -->
 
| style="background:darkred; color:white;" | N  <!-- QS  -->
 
| style="background:darkred; color:white;" | N  <!-- QSS -->
 
| style="background:darkred; color:white;" | N  <!-- VK  -->
 
| style="background:darkred; color:white;" | N  <!-- MkV -->
 
| style="background:darkred; color:white;" | N  <!-- EZ  -->
 
| style="text-align:left;" | HDR format. Requires external libIlmImf library. Not scanned for by default (but can be named explicitly).
 
  
 
|}
 
|}
  
 
{| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1"
 
{| 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"
Line 936: 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;" | Sprite frames stored in separate PCX files; fewer features than Quake 1 and Half-Life sprites.
+
| style="text-align:left;" | none
  
 
|-valign="top" style="background:#F8F8F8"
 
|-valign="top" style="background:#F8F8F8"
Line 948: 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;" | True color variation of Quake 1 SPR
+
| style="text-align:left;" | none
  
 
|-valign="top" style="background:#F8F8F8"
 
|-valign="top" style="background:#F8F8F8"
| Half-Life (GoldSrc) Sprite
+
| Half-Life Sprite
 
| (.spr)
 
| (.spr)
 
| style="background:green; color:white;" | Y  <!-- FTE -->
 
| style="background:green; color:white;" | Y  <!-- FTE -->
Line 960: 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;" | Like Quake 1 sprites, but with dedicated color palette, and additional translucency modes. No toolchain license issues, unlike most GoldSrc formats.
+
| style="text-align:left;" | none
[https://www.the303.org/tutorials/gold_sprite.htm more info]
 
 
|}
 
|}
  
 
{| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1"
 
{| 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"
Line 986: 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:green; color:white;" | Y <!-- 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  -->
Line 1,023: Line 899:
 
| Quake3
 
| Quake3
 
| (.shader)
 
| (.shader)
| style="background:yellowgreen; color:black;" | Y  <!-- FTE -->
+
| 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,030: 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;" | Technically a list of materials, rather than a true shader.<br>Q3 shaders were not designed with rtlights in mind but otherwise work correctly in FTE (and are quite explicit, so can result in other effects getting disabled). Not using the fte_program term can result in lower performance in FTE - especially for skeletal models. 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).
+
| 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
| (.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,047: Line 923:
  
 
{| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1"
 
{| 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"
Line 1,071: 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
 
|}
 
|}
  
Line 1,106: 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:green; color:white;" | Y <!-- QSS -->
+
| 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,115: Line 990:
 
| Ogg Opus
 
| Ogg Opus
 
| (.opus)
 
| (.opus)
| style="background:yellow; color:black;" | ffmpeg <!-- FTE -->
+
| 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:green; color:white;" | Y <!-- QSS -->
+
| 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: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,127: Line 1,002:
 
| MPEG 2 layer 3
 
| MPEG 2 layer 3
 
| (.mp3)
 
| (.mp3)
| style="background:yellow; color:black;" | Win / ffmpeg <!-- FTE -->
+
| 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:green; color:white;" | Y <!-- QSS -->
+
| 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, or via ffmpeg on other systems.
+
| style="text-align:left;" | FTE can use MP3 as a sound effect, on windows only.
  
 
|}
 
|}
Line 1,155: Line 1,030:
 
| CD Audio
 
| CD Audio
 
| (none)
 
| (none)
| style="background:yellowgreen; color:black;" | Y  <!-- FTE -->
+
| 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,162: 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-based engines cannot support cd audio, and are likely to no longer support the 'cd' command too. FTE requires -cdaudio commandline arg, or 'cd on' arg to actually enable it.
+
| 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,172: 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:olive; color:white;" | N <!-- MkV -->
+
| style="background:green; color:white;" | Y <!-- MkV -->
| style="background:darkred; color:white;" | N <!-- EZ  -->
+
| style="background:green; color:white;" | Y <!-- EZ  -->
| style="text-align:left;" | This is specific to MUSIC playback (hence some Ns here). FTE supports float wavs, the others do not. All supporting engines also support stereo wavs, which isn't necessarily also true for game sounds.
+
| 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,184: 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:olive; color:white;" | N <!-- MkV -->
+
| style="background:green; color:white;" | Y <!-- MkV -->
| style="background:darkred; color:white;" | N <!-- EZ  -->
+
| style="background:green; color:white;" | Y <!-- EZ  -->
| style="text-align:left;" | QS only supports oggs for music, not game sounds. MkV only plays ogg vorbis music when the files are misnamed as '.mp3', and is dependant upon system codecs, and cannot be inside a pak, so basically doesn't play them. They're otherwise the most widely supported compressed music format.
+
| 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:yellow; color:black;" | ffmpeg <!-- FTE -->
+
| 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:olive; color:white;" | N <!-- MkV -->
+
| style="background:green; color:white;" | Y <!-- MkV -->
| style="background:darkred; color:white;" | N <!-- EZ  -->
+
| 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. MKV only plays ogg opus music when the files are misnamed as '.mp3', and is dependant upon system codecs, and cannot be inside a pak.
+
| 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 / ffmpeg <!-- FTE -->
+
| 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:yellowgreen; color:black;" | Y  <!-- MkV -->
+
| style="background:green; color:white;" | Y  <!-- MkV -->
| style="background:darkred; color:white;" | N <!-- EZ  -->
+
| 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. MKV cannot play mp3s inside pak files. FTE can fall back on its ffmpeg plugin for playback on non-windows.
+
| 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:yellow; color:black;" | ffmpeg <!-- FTE -->
+
| style="background:darkred; color:white;" | N <!-- FTE -->
| style="background:darkred; color:white;" | N <!-- DP  -->
+
| 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:olive; color:white;" | N <!-- MkV -->
+
| style="background:black; color:white;" | ? <!-- MkV -->
 
| style="background:darkred; color:white;" | N  <!-- EZ  -->
 
| style="background:darkred; color:white;" | N  <!-- EZ  -->
| style="text-align:left;" | MKV only plays ogg flac music when the files are misnamed as '.mp3', and is dependant upon system codecs, and cannot be inside a pak. So basically doesn't support it.
+
| 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.
  
 
|}
 
|}
Line 1,431: 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.
 
|}
 
 
{| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1"
 
==Pathfinding==
 
|-valign="top" style="background:#F8F8F8"
 
! Format
 
! Ext
 
! FTE
 
! DP
 
! QS
 
! QSS
 
! VK
 
! MkV
 
! EZ
 
! Notes
 
 
|-valign="top" style="background:#F8F8F8"
 
| Quake3
 
| (.aas)
 
| style="background:green; color:white;" | Y  <!-- FTE -->
 
| style="background:darkred; color:white;" | N  <!-- DP  -->
 
| style="background:darkred; color:white;" | N  <!-- QS  -->
 
| style="background:darkred; color:white;" | N  <!-- QSS -->
 
| style="background:darkred; color:white;" | N  <!-- VK  -->
 
| style="background:darkred; color:white;" | N  <!-- MkV -->
 
| style="background:darkred; color:white;" | N  <!-- EZ  -->
 
| style="text-align:left;" | Spike: Strictly in there for Q3 bots.
 
 
|-valign="top" style="background:#F8F8F8"
 
| Way
 
| (.way)
 
| style="background:green; color:white;" | Y  <!-- FTE -->
 
| style="background:darkred; color:white;" | N  <!-- DP  -->
 
| style="background:darkred; color:white;" | N  <!-- QS  -->
 
| style="background:darkred; color:white;" | N  <!-- QSS -->
 
| style="background:darkred; color:white;" | N  <!-- VK  -->
 
| style="background:darkred; color:white;" | N  <!-- MkV -->
 
| style="background:darkred; color:white;" | N  <!-- EZ  -->
 
| style="text-align:left;" | Text files that follow a specific syntax.
 
 
|}
 
 
{| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1"
 
== File Archives ==
 
|-valign="top" style="background:#F8F8F8"
 
! Format
 
! Ext
 
! FTE
 
! DP
 
! QS
 
! QSS
 
! VK
 
! MkV
 
! EZ
 
! Notes
 
 
|-valign="top" style="background:#F8F8F8"
 
| Quake PAK
 
| (.pak)
 
| style="background:green; color:white;" | Y  <!-- FTE -->
 
| style="background:green; color:white;" | Y  <!-- DP  -->
 
| style="background:green; color:white;" | Y  <!-- QS  -->
 
| style="background:green; color:white;" | Y  <!-- QSS -->
 
| style="background:green; color:white;" | Y  <!-- VK  -->
 
| style="background:green; color:white;" | Y  <!-- MkV -->
 
| style="background:green; color:white;" | Y  <!-- EZ  -->
 
| style="text-align:left;" | Uncompressed.
 
 
|-valign="top" style="background:#F8F8F8"
 
| Quake III PK3
 
| (.pk3)
 
| style="background:green; color:white;" | Y  <!-- FTE -->
 
| style="background:grey; color:white;" | ?  <!-- DP  -->
 
| style="background:darkred; color:white;" | N  <!-- QS  -->
 
| style="background:green; color:white;" | Y  <!-- QSS -->
 
| style="background:grey; color:white;" | ?  <!-- VK  -->
 
| style="background:grey; color:white;" | ?  <!-- MkV -->
 
| style="background:grey; color:white;" | ? <!-- EZ  -->
 
| style="text-align:left;" | Actually a renamed ZIP file.
 
Can use Deflate compression, or be uncompressed.
 
  
 
|}
 
|}

Please note that all contributions to Quake Wiki are considered to be released under the GNU Free Documentation License 1.3 or later (see Quake Wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel | Editing help (opens in new window)