Sceneform Framework предоставляет определения материалов по умолчанию, которые позволяют разработчикам получать правдоподобно выглядящие материалы. Таким образом, вы можете добавить normal map
для своего канонического лица мне sh, используя JSON
i sh код в .sfa
или .mat
file.
Посмотрите на этот пример на GitHub.
Вот фрагмент кода:
{
materials: [
{
name: 'Planet_Mat',
parameters: [
{ baseColorFactor: [ 1, 1, 1, 1, ], },
{ baseColor: 'Planet_Mat_baseColor', },
{ normal: 'Planet_Mat_normal', },
{ metallicFactor: 1, },
{ metallicRoughness: 'Planet_Mat_occlusionRoughnessMetallic', },
{ emissiveFactor: [ 0, 0, 0, 1, ], },
],
source: 'build/sceneform_sdk/default_materials/gltf_material.sfm',
},
],
model: {
attributes: [
'Position',
'TexCoord',
'Orientation',
],
collision: {},
file: 'sampledata/models/Planet/Planet.gltf',
name: 'Planet',
recenter: true,
scale: 0.5,
},
samplers: [
{
file: 'sampledata/models/Planet/Planet_Mat_baseColor.png',
name: 'Planet_Mat_baseColor',
pipeline_name: 'Planet_Mat_baseColor.png',
},
{
file: 'sampledata/models/Planet/Planet_Mat_normal.png',
name: 'Planet_Mat_normal',
params: {
usage_type: 'Normal',
},
pipeline_name: 'Planet_Mat_normal.png',
},
],
}