libGdx 1.9.6을 사용하고 있는데 문제가 있습니다. 여러 포럼을 검색하고 다양한 자습서를 읽었지만 아무 것도 적합하지 않습니다. 블렌더에 간단한 큐브를 만들고 텍스쳐를 만들고 FBX로 내보내는 방법입니다 (fbx-conv 사용). BDX-Blender-Exporter도 다운로드했습니다. 나는 결과에 아무런 변화없이 Blender 2.69와 2.76b를 테스트했다.Libgdx 로딩 블렌더 모델, 투명도가 잘못됨
모델은로드와 같습니다
난의 배경 색상을 변경하는 경우 (0,0,0,0) 또는 (0,0,0,1) 만 검은 색을 화면이 나타납니다.
여기에 라인이
model.materials.get(0).set(new BlendingAttribute(GL20.GL_SRC_ALPHA, GL20.GL_ONE_MINUS_SRC_ALPHA));
이 존재하는 경우
public class modelloader implements ApplicationListener {
private PerspectiveCamera camera;
private ModelBatch modelBatch;
private Model model;
private ModelInstance modelInstance;
private Environment environment;
private CameraInputController camController;
private AssetManager as;
@Override
public void create() {
camera = new PerspectiveCamera(
75,
Gdx.graphics.getWidth(),
Gdx.graphics.getHeight());
camera.position.set(0f,0f,7f);
camera.lookAt(0f,0f,0f);
camera.near = 0.1f;
camera.far = 300.0f;
modelBatch = new ModelBatch();
as = new AssetManager();
as.load("moon.g3db",Model.class);
as.finishLoading();
model = as.get("moon.g3db",Model.class);
model.materials.get(0).set(new BlendingAttribute(GL20.GL_SRC_ALPHA, GL20.GL_ONE_MINUS_SRC_ALPHA));
modelInstance = new ModelInstance(model);
modelInstance.transform.rotate(1, 0, 0, 0);
modelInstance.transform.translate(0, 0, -2);
environment = new Environment();
environment.set(new ColorAttribute(ColorAttribute.AmbientLight, 0.8f, 0.8f, 0.8f, 1.0f));
environment.add(new DirectionalLight().set(0.8f, 0.8f, 0.8f, -0.8f, 0.3f, 1f));
camController = new CameraInputController(camera);
camController.forwardTarget = true;
Gdx.input.setInputProcessor(camController);
}
@Override
public void dispose() {
modelBatch.dispose();
model.dispose();
}
@Override
public void render() {
camController.update();
Gdx.gl20.glViewport(0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
Gdx.gl20.glClearColor(1,1,1,0);
Gdx.gl20.glClear(GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT);
camera.update(true);
modelBatch.begin(camera);
modelBatch.render(modelInstance, environment);
modelBatch.end();
}
이 모델은 또한에만 표시되는 코드 (libGDX 1.9.6, 안드로이드 스튜디오 2.3.3)이다.
문제가 될 수 :
여기 블렌더 파일입니까?
편집 : 잘못된 그림으로 고정 된 링크 – CptnRoughnight
without model.materials.get (0) .set (새 BlendingAttribute (GL20.GL_SRC_ALPHA, GL20.GL_ONE_MINUS_SRC_ALPHA))] https : //i.imgur처럼 보입니다. .com/drNer46.png – CptnRoughnight
모델의 UV가 풀린 상태에서 텍스처가 존재한다고 가정하면 다음을 시도해 보았습니다. https://stackoverflow.com/questions/19112349/libgdx-3d-texture-transparency OP 이 링크와 그가 사용할 수있는 Gdx.gl20 함수 – kacpr