Difference between revisions of "BFG (File Format)"

From Custom Mario Kart
Jump to navigation Jump to search
m
(3 intermediate revisions by 2 users not shown)
Line 15: Line 15:
 
* 0x4 = Perspective projection inverse exponent.
 
* 0x4 = Perspective projection inverse exponent.
 
* 0x5 = Perspective projection inverse of the square exponent.
 
* 0x5 = Perspective projection inverse of the square exponent.
* 0x6 = Ortographic projection linear.
+
* 0x6 = Orthographic projection linear.
* 0x7 = Ortographic projection exponential.
+
* 0x7 = Orthographic projection exponential.
* 0x8 = Ortographic projection exponent squared.
+
* 0x8 = Orthographic projection exponent squared.
* 0x9 = Ortographic projection inverse exponent.
+
* 0x9 = Orthographic projection inverse exponent.
* 0xA = Ortographic projection inverse of the square exponent.
+
* 0xA = Orthographic projection inverse of the square exponent.
 
|-
 
|-
 
| 0x04 || Float || '''StartZ''': stores the Z value where fog generation begins inside the view space.
 
| 0x04 || Float || '''StartZ''': stores the Z value where fog generation begins inside the view space.
Line 33: Line 33:
 
| 0x12 || UInt16 || Maybe center to which the range correction is applied?
 
| 0x12 || UInt16 || Maybe center to which the range correction is applied?
 
|-
 
|-
| 0x14 || Float || {{Unknown-left|'''Unknown'''.}}
+
| 0x14 || Float || Affects the transition speed when swapping fog entries. 1.0 is instant; lower values create longer fades. Whether it affects swapping to this entry, from this entry, or both is unknown.
 
|-
 
|-
| 0x18 || UInt16 || {{Unknown-left|'''Unknown'''.}}
+
| 0x18 || UInt16 || {{Unknown-left|'''Unknown'''. 0 in most Nintendo tracks, 5544 in N64 DK's Jungle Parkway.}}
 
|-
 
|-
 
| 0x1A || UInt16 || {{Unknown-left|'''Unknown'''.}}
 
| 0x1A || UInt16 || {{Unknown-left|'''Unknown'''.}}

Revision as of 15:09, 5 February 2018

BFG (Binary FoG) files are one of the multiple post-effect controllers Mario Kart Wii provides. It controls fog used in tracks, and they appear in the "./posteffect" folder inside U8 files.

File Format

The structure of the file is based in four fog entries, 0x1C (28) bytes long each.

Table showing fog types, with their curve equations
Offset Type Description
0x00 Int32 Fog type:
  • 0x0 = No fog.
  • 0x1 = Perspective projection linear.
  • 0x2 = Perspective projection exponential.
  • 0x3 = Perspective projection exponent squared.
  • 0x4 = Perspective projection inverse exponent.
  • 0x5 = Perspective projection inverse of the square exponent.
  • 0x6 = Orthographic projection linear.
  • 0x7 = Orthographic projection exponential.
  • 0x8 = Orthographic projection exponent squared.
  • 0x9 = Orthographic projection inverse exponent.
  • 0xA = Orthographic projection inverse of the square exponent.
0x04 Float StartZ: stores the Z value where fog generation begins inside the view space.
0x08 Float EndZ: stores the Z value at which fog density is maximum inside the view space.
0x0C Byte[4] Fog color, stored in RGBX format (alpha is ignored).
0x10 UInt16 Fog range correction:
  • 0x0 = Disabled.
  • 0x1 = Enabled.
0x12 UInt16 Maybe center to which the range correction is applied?
0x14 Float Affects the transition speed when swapping fog entries. 1.0 is instant; lower values create longer fades. Whether it affects swapping to this entry, from this entry, or both is unknown.
0x18 UInt16 Unknown. 0 in most Nintendo tracks, 5544 in N64 DK's Jungle Parkway.
0x1A UInt16 Unknown.
0x1C End of fog entry

Tools

The following tools can handle BFG files: