<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.wexosmk.xyz/index.php?action=history&amp;feed=atom&amp;title=EFC_%28File_Format%29</id>
	<title>EFC (File Format) - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.wexosmk.xyz/index.php?action=history&amp;feed=atom&amp;title=EFC_%28File_Format%29"/>
	<link rel="alternate" type="text/html" href="https://wiki.wexosmk.xyz/index.php?title=EFC_(File_Format)&amp;action=history"/>
	<updated>2026-05-06T17:00:48Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.41.1</generator>
	<entry>
		<id>https://wiki.wexosmk.xyz/index.php?title=EFC_(File_Format)&amp;diff=573&amp;oldid=prev</id>
		<title>Atlas: Created page with &quot;&#039;&#039;&#039;EFC&#039;&#039;&#039; is a file format found in Mario Kart Arcade GP DX. It defines culling effect areas used in tracks, and it functions identically to ABC files.  = File Format = The file byte order is always little endian.  == File Header == The file starts with a header that is 0x10 bytes long.  {|class=wikitable ! Offset !! Type !! Description |- | 0x00 || Char[4] || &#039;&#039;&#039;File magic&#039;&#039;&#039;. Always &#039;&#039;EFFC&#039;&#039; in ASCII. |- | 0x04 || Int32 || Always 1. Maybe version? The game chec...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.wexosmk.xyz/index.php?title=EFC_(File_Format)&amp;diff=573&amp;oldid=prev"/>
		<updated>2025-07-06T01:56:56Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;&amp;#039;&amp;#039;&amp;#039;EFC&amp;#039;&amp;#039;&amp;#039; is a file format found in &lt;a href=&quot;/index.php?title=Mario_Kart_Arcade_GP_DX&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Mario Kart Arcade GP DX (page does not exist)&quot;&gt;Mario Kart Arcade GP DX&lt;/a&gt;. It defines culling effect areas used in tracks, and it functions identically to &lt;a href=&quot;/index.php/ABC&quot; class=&quot;mw-redirect&quot; title=&quot;ABC&quot;&gt;ABC&lt;/a&gt; files.  = File Format = The file byte order is always little endian.  == File Header == The file starts with a header that is 0x10 bytes long.  {|class=wikitable ! Offset !! Type !! Description |- | 0x00 || Char[4] || &amp;#039;&amp;#039;&amp;#039;File magic&amp;#039;&amp;#039;&amp;#039;. Always &amp;#039;&amp;#039;EFFC&amp;#039;&amp;#039; in ASCII. |- | 0x04 || Int32 || Always 1. Maybe version? The game chec...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;EFC&amp;#039;&amp;#039;&amp;#039; is a file format found in [[Mario Kart Arcade GP DX]]. It defines culling effect areas used in tracks, and it functions identically to [[ABC]] files.&lt;br /&gt;
&lt;br /&gt;
= File Format =&lt;br /&gt;
The file byte order is always little endian.&lt;br /&gt;
&lt;br /&gt;
== File Header ==&lt;br /&gt;
The file starts with a header that is 0x10 bytes long.&lt;br /&gt;
&lt;br /&gt;
{|class=wikitable&lt;br /&gt;
! Offset !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || Char[4] || &amp;#039;&amp;#039;&amp;#039;File magic&amp;#039;&amp;#039;&amp;#039;. Always &amp;#039;&amp;#039;EFFC&amp;#039;&amp;#039; in ASCII.&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || Int32 || Always 1. Maybe version? The game checks if this value is 1, otherwise it won&amp;#039;t read the file.&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || Int32 || &amp;#039;&amp;#039;&amp;#039;Number of [[#Culling Areas|Culling Areas]]&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;&amp;#039;N&amp;#039;&amp;#039;&amp;#039;).&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || Byte[4] || &amp;#039;&amp;#039;&amp;#039;Padding&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || colspan=2 {{unknown|End of header, start of Culling Areas}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Culling Areas ==&lt;br /&gt;
After the header, there are &amp;#039;&amp;#039;&amp;#039;N&amp;#039;&amp;#039;&amp;#039; 0x40-byte culling areas. Each area corresponds to each section of the track&amp;#039;s [[EFD]] file, and it is made of a single 4x4 matrix that is used to transform the current position of the camera&amp;#039;s target. The game checks once per frame if the transformed position of each area lies within a -0.5f to 0.5f AABB cube to determine the culling status.&lt;br /&gt;
&lt;br /&gt;
{|class=wikitable&lt;br /&gt;
|+ Culling Area&lt;br /&gt;
! Offset !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || Float[16] || &amp;#039;&amp;#039;&amp;#039;4x4 matrix&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Tools =&lt;br /&gt;
The following tools can handle EFC files:&lt;br /&gt;
* (none)&lt;br /&gt;
&lt;br /&gt;
[[Category:Mario Kart Arcade GP DX File Formats]]&lt;/div&gt;</summary>
		<author><name>Atlas</name></author>
	</entry>
</feed>