我正在为这样的杯子创建一个Android应用程序
除了在对象周围包裹图像外,我知道如何做所有事情。如果我只需要将图像堆叠在另一个上面,如果它们是平的,那么这将是一个简单的任务,但如果它是一个圆形物体,就像这个杯子一样,它有点棘手。
我想过在blender中创建一个obj对象文件,并在OpenGL或Unity中渲染它上面的图像。 obj文件大小为5MB。我不能在我的应用程序中使用这么大的文件。
有没有其他好方法呢?如果有,请分享参考或示例
答案 0 :(得分:2)
以这种方式使用
通过对图像进行遮罩来解决它的问题
ImageView mImageView= (ImageView)findViewById(R.id.imageview_id);
Bitmap original = BitmapFactory.decodeResource(getResources(),R.drawable.content_image);
Bitmap mask = BitmapFactory.decodeResource(getResources(),R.drawable.mask);
Bitmap result = Bitmap.createBitmap(mask.getWidth(), mask.getHeight(), Config.ARGB_8888);
Canvas mCanvas = new Canvas(result);
Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);
paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.DST_IN));
mCanvas.drawBitmap(original, 0, 0, null);
mCanvas.drawBitmap(mask, 0, 0, paint); paint.setXfermode(null);
mImageView.setImageBitmap(result);
mImageView.setScaleType(ScaleType.CENTER);
mImageView.setBackgroundResource(R.drawable.background_frame);
所述
答案 1 :(得分:0)
我认为这是正确的方法,但使用纯OpenGL很困难。我使用LibGDX进行简单的3D建模。