This commit is contained in:
ShirosakiMio 2024-01-14 21:51:53 +08:00
commit 6ca914eaf4
3 changed files with 9 additions and 4 deletions

View File

@ -90,7 +90,7 @@ public class OfflineAccountSkinDialog extends FCLDialog implements View.OnClickL
setContentView(R.layout.dialog_offline_account_skin); setContentView(R.layout.dialog_offline_account_skin);
setCancelable(false); setCancelable(false);
renderer = new SkinRenderer(); renderer = new SkinRenderer(getContext());
skinCanvas = findViewById(R.id.skin_view); skinCanvas = findViewById(R.id.skin_view);
skinCanvas.setRenderer(renderer, 5f); skinCanvas.setRenderer(renderer, 5f);

View File

@ -38,7 +38,7 @@ public class MainUI extends FCLCommonUI {
super.onCreate(); super.onCreate();
skinContainer = findViewById(R.id.skin_container); skinContainer = findViewById(R.id.skin_container);
renderer = new SkinRenderer(); renderer = new SkinRenderer(getContext());
ViewGroup.LayoutParams layoutParamsSkin = skinContainer.getLayoutParams(); ViewGroup.LayoutParams layoutParamsSkin = skinContainer.getLayoutParams();
layoutParamsSkin.width = (int) (((View) skinContainer.getParent().getParent()).getMeasuredWidth() * 0.5f); layoutParamsSkin.width = (int) (((View) skinContainer.getParent().getParent()).getMeasuredWidth() * 0.5f);
layoutParamsSkin.height = (int) Math.min(((View) skinContainer.getParent().getParent()).getMeasuredWidth() * 0.5f, ((View) skinContainer.getParent().getParent()).getMeasuredHeight()); layoutParamsSkin.height = (int) Math.min(((View) skinContainer.getParent().getParent()).getMeasuredWidth() * 0.5f, ((View) skinContainer.getParent().getParent()).getMeasuredHeight());

View File

@ -1,11 +1,13 @@
package com.tungsten.fcllibrary.skin; package com.tungsten.fcllibrary.skin;
import android.content.Context;
import android.graphics.Bitmap; import android.graphics.Bitmap;
import android.graphics.BitmapFactory; import android.graphics.BitmapFactory;
import android.opengl.GLES20; import android.opengl.GLES20;
import android.opengl.GLSurfaceView; import android.opengl.GLSurfaceView;
import android.opengl.GLU; import android.opengl.GLU;
import android.opengl.GLUtils; import android.opengl.GLUtils;
import android.widget.Toast;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
@ -23,6 +25,7 @@ import javax.microedition.khronos.opengles.GL10;
public class SkinRenderer implements GLSurfaceView.Renderer { public class SkinRenderer implements GLSurfaceView.Renderer {
private final Context context;
private final SkinModel skinModel; private final SkinModel skinModel;
private boolean updateBitmapSkin; private boolean updateBitmapSkin;
private boolean slim; private boolean slim;
@ -31,7 +34,8 @@ public class SkinRenderer implements GLSurfaceView.Renderer {
private int[] modelTextureData; private int[] modelTextureData;
private ObjectProperty<Bitmap[]> textureProperty; private ObjectProperty<Bitmap[]> textureProperty;
public SkinRenderer() { public SkinRenderer(Context context) {
this.context = context;
this.skinModel = new SkinModel(); this.skinModel = new SkinModel();
this.skinModel.setRunning(true); this.skinModel.setRunning(true);
this.updateBitmapSkin = false; this.updateBitmapSkin = false;
@ -99,7 +103,8 @@ public class SkinRenderer implements GLSurfaceView.Renderer {
this.cape = cape; this.cape = cape;
this.updateBitmapSkin = true; this.updateBitmapSkin = true;
} catch (InvalidSkinException e) { } catch (InvalidSkinException e) {
throw new RuntimeException(e.getCause()); e.printStackTrace();
Toast.makeText(context, "Skin Renderer: " + e, Toast.LENGTH_SHORT).show();
} }
}); });
} }