2

我在查找屏幕的 opengles 3d 坐标时遇到问题。我搜索了很多,但我没有得到任何确切的解决方案。我可以使用 (event.getX() 和 event.getY()) 找到屏幕上触摸的像素。但我想要屏幕的 3d 坐标。我按照 rajawali ( https://github.com/MasDennis/Rajawali ) 库在 opengl 中制作动态壁纸。

这是我放置那条五颜六色的鱼的代码,我只是在放我用来绘制那条五颜六色的鱼的代码:-

 final Bitmap generatedBitmap2 = Bitmap.createBitmap(128, 128,Bitmap.Config.ARGB_8888);
 Bitmap colorful_fish = BitmapFactory.decodeResource(mContext.getResources(),R.drawable.colorful_fish);

// Create a canvas to do the drawing
final Canvas canvas2 = new Canvas(generatedBitmap2);
//canvas.drawColor(Color.TRANSPARENT);
canvas2.drawBitmap(colorful_fish, 0, 0, null);
 final SimpleMaterial simpleMaterial2 = new SimpleMaterial();
 simpleMaterial2.addTexture(mTextureManager.addTexture(generatedBitmap2));
 largeCanvasPlane2 = new Plane(1, 1, 1, 1);
 largeCanvasPlane2.setTransparent(true);
 largeCanvasPlane2.setScale(.2f);
 **largeCanvasPlane2.setPosition(.2f, -.5f,0f);**
 largeCanvasPlane2.setMaterial(simpleMaterial2);
 addChild(largeCanvasPlane2);

当我烘烤触摸时的像素值时,我需要 3d 坐标。

@Override
public void onTouchEvent(MotionEvent event) {
Toast.makeText(getContext(), ""+event.getX()+"   "+event.getY(),Toast.LENGTH_SHORT).show();
  super.onTouchEvent(event);
}

在此处输入图像描述

4

0 回答 0