why does my gltf model appeared shiny black in jMonkeyEngine Scene Composer and Shiny textured in jMonkeyBuilder?

I rigged downloaded 3d model with mixamo and joined animation with godotgametool in blender but when I added this model to jMonkeyEngine test project and scene composer it appeared shiny black and i tested it with jMonkeyBuilder it appeared shiny textured, I Exported as gltf via godotgametool,I also used built in gltf exporter with the same result.
the model converted into j3oJmonkeyBuilder with no lightJmonkeyBuilder with lightJmonkeyEngine Scene Composer with no lightJmonkeyEngine Scene Composer with light
I added lights and generate TangentBinormalGenerator nothing changed

Did you added pre-baked Light probe?

Even Blender Eevee use envmaps light probes. its required for PBR models.

About non-textured versions i would suggest exporting to GLTF directly via Blender, idk why you use that tool.

I added Light Probe and the texture is shown but it make the scene very bright and it is not adjustable
I use the tool because it has feature to add multiple animation from Mixamo very easily to the armature
so how to make the texture not pbr?
and the model orginaly only contain diffuse map, normal map, and specular map and maybe the Mixamo make it PBR somehow

it is adjustable by AmbienLight intensity
also you should not use DirectionalLight, or only a little intensity one for PBR materials.
also dont use Camera Light

so how to make the texture not pbr?

Texture is texture/image, material here is PBR.
If you dont want use PBR material, i belive you might need create j3m based on TextureLightning.j3md for it and apply to model. (you can do it via CODE or SDK)

and the model orginaly only contain diffuse map, normal map, and specular map and maybe the Mixamo make it PBR somehow

I belvie it is because JME GLTF standard apply as PBR models only (but i might be wrong).
Thats why you need fix it via code or editor (apply different non-pbr material)
everything is here: Exporting Models as GlTF meshes from Blender :: jMonkeyEngine Docs

remember JME is more code-friendly, instead of click-friendly. So here would be easier to write quick “material replacer” instead of click it via SDK for each exported GLTF model.

I belive you should describe your general idea and what for you need that models, so we could suggest you best solutions.

edit:
here is also some tutorial about PBR if you might be interested in it:

1 Like

thank you for your response.
I’ve already seen that video
I’m currently just learning with the ambition of making horror game so I’m just trying cloning resident evil games the three generations to test my skills and the engine current capabilities to see how far I can reach
I’ll try your suggestions and see what I can do about them and respond later
again thank you for the hints

1 Like

you were right
it looks that mixamo convert materials’ metallic property to 1
so I have two solutions:
1: load lightprobe to the scene but it’ll make like my character shiny as it made of metal.
2: before converted it to gltf, I turn every metallic value to 0 for every material there.

  1. use JmeConvert to convert your gltf model and add a script that visits all of the materials and changes the metallic value.

is there any documentation or any tutorial for using scripts in your converter?

Hahah, that’s crazy talk. :slight_smile: Unfortunately, it requires a little digging at the moment.

The key bit is that in the scripts “model” is a ModelInfo object. From there is makes reading the javadoc a bit easier.

However, here is an example that goes through all of the Geometry to mark the materials for j3m export.

import com.jme3.scene.Geometry;
model.findAll(Geometry.class).each { geom ->
    model.generateMaterial(geom.material, "materials/" + geom.material.name);
}

It should be straight forward to extrapolate that into “change a material parameter”. (Or you could just export the j3m and edit the files, I guess.)

1 Like

thank you for your work
then it’s time to experiment it