Я работаю с LibGDX и Blender над своего рода упражнением для начинающих по рендерингу 3d-модели.
Я создал шестигранный кубик, uvunwrapped и создал файл png uvmap.В Blender это выглядит нормально.Тем не менее, в окне игры оно выглядит серым.
Я пробовал несколько разных конфигураций освещения, но не повезло.Может ли это быть материальной проблемой?Есть предложения?
Скриншоты и код ниже.Спасибо!
public class ShipRenderer implements ApplicationListener {
public Environment environment;
public PerspectiveCamera cam;
public CameraInputController camController;
public ModelBatch modelBatch;
public Model model;
public ModelInstance instance;
Color lightColor;
PointLight light;
float DISTANCE = 40f;
@Override
public void create() {
modelBatch = new ModelBatch();
environment = new Environment();
environment.set(new ColorAttribute(ColorAttribute.AmbientLight, 1f, 1f, 1f, 1.0f));
cam = new PerspectiveCamera(67, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
cam.position.set(DISTANCE, DISTANCE, DISTANCE);
cam.lookAt(0,0,0);
cam.near = 1f;
cam.far = 150f;
cam.update();
UBJsonReader jsonReader = new UBJsonReader();
G3dModelLoader loader = new G3dModelLoader(jsonReader);
model = loader.loadModel(Gdx.files.internal("dice/dice.g3db"));
instance = new ModelInstance(model);
camController = new CameraInputController(cam);
Gdx.input.setInputProcessor(camController);
}
@Override
public void render() {
camController.update();
Gdx.gl.glViewport(0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT);
modelBatch.begin(cam);
modelBatch.render(instance, environment);
modelBatch.end();
}