Répondre

1

Wikitude Native SDK ne restitue que l'appareil photo et le filigrane d'essai. Le StrokedRectangle fait partie de l'exemple d'application.

Vous devrez utiliser OpenGL pour dessiner votre image. Peut-être que ce tutorial vous aidera.

public static int loadTexture(final Context context, final int resourceId) 
{ 
    final int[] textureHandle = new int[1]; 

    GLES20.glGenTextures(1, textureHandle, 0); 

    if (textureHandle[0] != 0) 
    { 
     final BitmapFactory.Options options = new BitmapFactory.Options(); 
     options.inScaled = false; // No pre-scaling 

     // Read in the resource 
     final Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(), resourceId, options); 

     // Bind to the texture in OpenGL 
     GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, textureHandle[0]); 

     // Set filtering 
     GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_NEAREST); 
     GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_NEAREST); 

     // Load the bitmap into the bound texture. 
     GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bitmap, 0); 

     // Recycle the bitmap, since its data has been loaded into OpenGL. 
     bitmap.recycle(); 
    } 

    if (textureHandle[0] == 0) 
    { 
     throw new RuntimeException("Error loading texture."); 
    } 

    return textureHandle[0]; 
} 

C'est le vertex shader de l'exemple d'application Wikitude pour montrer comment la texture peut alors être placé:

attribute vec4 v_position; 
uniform mat4 Projection; // from ImageTarget 
uniform mat4 ModelView; // from ImageTarget 
uniform mat4 Scale;  // create scale matrix based on ImageTarget.getTargetScale 
void main() 
{ 
    gl_Position = Projection * ModelView * Scale * v_position; 
}; 

Si vous ne vous sentez pas à l'aise avec OpenGL, vous pouvez essayer le SDK Wikitude JS ou le plugin Unity.

+0

Ok. Je vais vérifier Wikitude JS SDK. – fida1989