- Posts: 1
- Joined: Sun Mar 24, 2019 9:40 pm
- Real Name: Noah Schultz
Fusion won't automatically link the textures, though, so you'll have a bit of a job getting those connected!
Albedo goes to Diffuse Color, and Roughness will go to Specular Exponent or Specular Roughness, depending on the material you use. Looks like you can skip the Normal maps—they're carrying no information, and Fusion doesn't have a 'PBR' shader, so Metallic is meaningless* (plus they're all 0, anyway, so this object appears to have no metal bits).
AO and Opacity will need to be applied with a Boolean, like so:
- Code: Select all
{
Tools = ordered() {
Loader1 = Loader {
Clips = {
Clip {
ID = "Clip1",
Filename = "D:\\Downloads\\fortnite-lama\\source\\model\\model\\textures\\15_albedo.jpg",
FormatID = "JpegFormat",
StartFrame = -1,
LengthSetManually = true,
TrimIn = 0,
TrimOut = 0,
ExtendFirst = 0,
ExtendLast = 0,
Loop = 0,
AspectMode = 0,
Depth = 0,
TimeCode = 0,
GlobalStart = 0,
GlobalEnd = 0
}
},
Inputs = {
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
},
ViewInfo = OperatorInfo { Pos = { -1650, 1930.5 } },
},
lambert15SG = MtlBlinn {
CtrlWZoom = false,
NameSet = true,
Inputs = {
["Diffuse.Color.Material"] = Input {
SourceOp = "Loader1",
Source = "Output",
},
["Specular.Color.Red"] = Input { Value = 0, },
["Specular.Color.Green"] = Input { Value = 0, },
["Specular.Color.Blue"] = Input { Value = 0, },
["Specular.Exponent.Material"] = Input {
SourceOp = "Loader4",
Source = "Output",
},
MaterialID = Input { Value = 115, },
},
ViewInfo = OperatorInfo { Pos = { -1540, 1963.5 } },
},
Loader2 = Loader {
Clips = {
Clip {
ID = "Clip1",
Filename = "D:\\Downloads\\fortnite-lama\\source\\model\\model\\textures\\15_AO.jpg",
FormatID = "JpegFormat",
StartFrame = -1,
LengthSetManually = true,
TrimIn = 0,
TrimOut = 0,
ExtendFirst = 0,
ExtendLast = 0,
Loop = 0,
AspectMode = 0,
Depth = 0,
TimeCode = 0,
GlobalStart = 0,
GlobalEnd = 0
}
},
Inputs = {
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
},
ViewInfo = OperatorInfo { Pos = { -1430, 1930.5 } },
},
ChannelBoolean1 = MtlChanBool {
Inputs = {
OperationR = Input { Value = 6, },
OperationG = Input { Value = 6, },
OperationB = Input { Value = 6, },
BackgroundMaterial = Input {
SourceOp = "lambert15SG",
Source = "MaterialOutput",
},
ForegroundMaterial = Input {
SourceOp = "Loader2",
Source = "Output",
},
MaterialID = Input { Value = 56, },
},
ViewInfo = OperatorInfo { Pos = { -1430, 1963.5 } },
},
Loader4 = Loader {
Clips = {
Clip {
ID = "Clip1",
Filename = "D:\\Downloads\\fortnite-lama\\source\\model\\model\\textures\\15_roughness.jpg",
FormatID = "JpegFormat",
StartFrame = -1,
LengthSetManually = true,
TrimIn = 0,
TrimOut = 0,
ExtendFirst = 0,
ExtendLast = 0,
Loop = 0,
AspectMode = 0,
Depth = 0,
TimeCode = 0,
GlobalStart = 0,
GlobalEnd = 0
}
},
Inputs = {
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
},
ViewInfo = OperatorInfo { Pos = { -1650, 1963.5 } },
},
ChannelBoolean2 = MtlChanBool {
Inputs = {
OperationA = Input { Value = 1, },
OperandBA = Input { Value = 0, },
CoordSpace = Input { Value = FuID { "Model" }, },
BackgroundMaterial = Input {
SourceOp = "ChannelBoolean1",
Source = "MaterialOutput",
},
ForegroundMaterial = Input {
SourceOp = "Loader3",
Source = "Output",
},
MaterialID = Input { Value = 57, },
},
ViewInfo = OperatorInfo { Pos = { -1320, 1963.5 } },
},
Loader3 = Loader {
Clips = {
Clip {
ID = "Clip1",
Filename = "D:\\Downloads\\fortnite-lama\\source\\model\\model\\textures\\15_opacity.jpg",
FormatID = "JpegFormat",
StartFrame = -1,
LengthSetManually = true,
TrimIn = 0,
TrimOut = 0,
ExtendFirst = 0,
ExtendLast = 0,
Loop = 0,
AspectMode = 0,
Depth = 0,
TimeCode = 0,
GlobalStart = 0,
GlobalEnd = 0
}
},
Inputs = {
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
},
ViewInfo = OperatorInfo { Pos = { -1320, 1930.5 } },
}
}
}
The idea is that you need to multiply by Ambient Occlusion after the shading's been done, then you knock out the alpha. Alternately, you could apply the opacity map to the Albedo texture, which would pass it down. But AO should be applied after the rest.
Hopefully all those materials are named to match the textures…
*There is a workflow where you can use Metallic as a mask on a material Boolean to split between a metal and non-metal material, but you don't need it for this.