I am new to ARToolKit and I have been using the SimpleNativeCars example for Android. I have trained a new marker and put it in the assets folder and tried to relate it to my own model which is in my models folder. I have done this in the ARWrapperNativeCars.cpp file like the other models and markers are but it does not recognise it. I have also tried changing the two sample models to their opposite marker but that still does nothing. I have searched this site and the web but cannot find an answer to this question. Can anyone tell me what I am missing ?

Below is the method where I am trying to fix this.

Thanks. 

```
#define NUM_MODELS 3
static ARModel models[NUM_MODELS] = {2};

static float lightAmbient[4] = {0.1f, 0.1f, 0.1f, 1.0f};
static float lightDiffuse[4] = {1.0f, 1.0f, 1.0f, 1.0f};
static float lightPosition[4] = {0.0f, 0.0f, 1.0f, 0.0f};

JNIEXPORT void JNICALL JNIFUNCTION_DEMO(demoInitialise(JNIEnv* env, jobject object)) {

const char *model0file = "Data/models/Ferrari_Modena_Spider.obj";
const char *model1file = "Data/models/Porsche_911_GT3.obj";
const char *model2file = "Data/models/Keith.obj";

models[0].patternID = arwAddMarker("single;Data/patt.hiro;80");
arwSetMarkerOptionBool(models[0].patternID, ARW_MARKER_OPTION_SQUARE_USE_CONT_POSE_ESTIMATION, false);
arwSetMarkerOptionBool(models[0].patternID, ARW_MARKER_OPTION_FILTERED, true);

models[0].obj = glmReadOBJ2(model0file, 0, 0); // context 0, don't read textures yet.
if (!models[0].obj) {
    LOGE("Error loading model from file '%s'.", model0file);
    exit(-1);
}
glmScale(models[0].obj, 0.035f);
//glmRotate(models[0].obj, 3.14159f / 2.0f, 1.0f, 0.0f, 0.0f);
glmCreateArrays(models[0].obj, GLM_SMOOTH | GLM_MATERIAL | GLM_TEXTURE);
models[0].visible = false;

models[1].patternID = arwAddMarker("single;Data/patt.kanji;80");
arwSetMarkerOptionBool(models[1].patternID, ARW_MARKER_OPTION_SQUARE_USE_CONT_POSE_ESTIMATION, false);
arwSetMarkerOptionBool(models[1].patternID, ARW_MARKER_OPTION_FILTERED, true);

models[1].obj = glmReadOBJ2(model1file, 0, 0); // context 0, don't read textures yet.
if (!models[1].obj) {
    LOGE("Error loading model from file '%s'.", model1file);
    exit(-1);
}
glmScale(models[1].obj, 0.035f);
//glmRotate(models[1].obj, 3.14159f / 2.0f, 1.0f, 0.0f, 0.0f);
glmCreateArrays(models[1].obj, GLM_SMOOTH | GLM_MATERIAL | GLM_TEXTURE);
models[1].visible = false;

models[2].patternID = arwAddMarker("single;Data/patt.job;80");
arwSetMarkerOptionBool(models[2].patternID, ARW_MARKER_OPTION_SQUARE_USE_CONT_POSE_ESTIMATION, false);
arwSetMarkerOptionBool(models[2].patternID, ARW_MARKER_OPTION_FILTERED, true);

models[2].obj = glmReadOBJ2(model2file, 0, 0); // context 0, don't read textures yet.
if (!models[2].obj) {
    LOGE("Error loading model from file '%s'.", model2file);
    exit(-1);
}
glmScale(models[2].obj, 0.035f);
//glmRotate(models[1].obj, 3.14159f / 2.0f, 1.0f, 0.0f, 0.0f);
glmCreateArrays(models[2].obj, GLM_SMOOTH | GLM_MATERIAL | GLM_TEXTURE);
models[2].visible = false;

```

}