ofxARToolkitPlus with OF 0.8.0 + CB12.11 + Win7(64bit)

Do you mean I must use one of markers from AllBchThinMarkers.png under data dir.? cause all my markers failed detection. besides, the .exe takes about 3 mins to start up, seems strange. Now I use of0072+vs 2010 express, only want to speed up testing, after everything run fluently, I’ll transfer it to of080+vs2013 express.

Yes exactly. You have to choose some of them from AllBchThinMarkers.png.

cause all my markers failed detection

where do you grab them? you can use only those specified in the AllBchThinMarkers.png.

besides, the .exe takes about 3 mins to start up, seems strange

That’s really strange the same in linux64 take few seconds, but i don’t remember this difference in perormance in Windows OS. i should check it.

The old markers which I’d used before are those applied within my flash AP (of cause they failed all ;P)
Now the program recognize markers correctly, but, none of 3ds file can be drawn???
I’ve used debug mode to trace the program, everything go as it should be, but no 3ds model shows on the screen…really dont know the reason…
here I attach one 3ds file sample for check also
sculpture_196_ID.zip (455.4 KB)

@kaykay the problem is in your model, i haven’t the time to modified it but if you want to see it in your app modify in this way the code:

//in testApp.cpp in draw()
 else if(IDnumber==196) // or change the IDnumber with your...
		{
                        ///don't use the light and material otherwise won't work and enable and disable backface culling
			//setupGlLight();
			//setupGlMaterial();
			ofPushMatrix();
			glEnable(GL_DEPTH_TEST);
			glEnable( GL_CULL_FACE);
		
			scultura_196.draw();
			glDisable(GL_DEPTH_TEST);
			glDisable( GL_CULL_FACE);
			ofPopMatrix();
			//glDisable(GL_LIGHT0);

		}

Also maybe reduce a bit the dimension of the model. I suggest to use, if you works only in windows and the final project will be in windows, ofxAssimModelLoader adddon becuse you can load different types of model files (dae, obj, x…). I used 3ds only because my final project ran on a raspberrypi and ofxAssimModelLoader at that time not works in ARM arch. Switching to this addon won.t be too difficult.
I had this problems ( normals not corret, too polygons, ant other issues) also with my models, i used Meshlab and Assimpiewer to fix it but they hasn’t the feature to export to .3DS, so you have to reimport them in yopur favourite modelling app(blender, 3DSmax, maya…) and export from these. You understand that in your case, this is a waste of time.
I attach also the model not sure if i modified it or not.sculpture_196_ID-kaykay.zip (452.4 KB)

Because i’m using ofxARToolKitPlus addon for my project and i will use ofxAssimpNodelLoader addon, i can update this example to it. I need only a bit of time to make the changes and the i upload to github.
Cheers

thanks ur kindly replies. it’s very useful. i really learn a lot!
in my case, after crossed out setupGlLight() & setupGlMaterial(), the target model
immediately shows up although lacking of color and light. and i also tried another model but failed again, seems to reduce polygon as ur suggestion… but if reduce the model , how can i use a complicated one? should i always use the simple one?
the modified model you’ve provided didnt work yet.
mmm…in this way, maybe try to use ofxAssimModelLoader instead of of3DSModelLoder addon will be the final solution.

In any case is not an issue regarding ofxARToolkitplus, it’s just a metter of how to display with OpenGL the model you want to, and how to prepare the model for the shading method used ( fixed opengl, or GLSL). Probably your model has a problem with normals, I don’t think that you have to reduce the polygons ( but maybe this will help) for this i suggest to use MeshLab becasue has many filters to reduce polygons, triangles, adjust normals, and many other features, and most important it is open source.
I don’t know your esperience with modelling in 3d, but normally you can’t do just to model and to display it. you have to check if it display in the correct way. Maybe normals are flipped or rough, and you have to correct them. Depend also how the model was construct it. Looking at your model maybe the leaves are flat without thickness and so the normals point in the wrong direction (opposite to viewer) so this is why i used the backface culling in the code.

the modified model you’ve provided didnt work yet.

It’s strange that the model worked for me and not for you

mmm…in this way, maybe try to use ofxAssimModelLoader instead of of3DSModelLoder addon will be the final solution.

yes, go straight to it.

Sorry, your modified model works on my env., but it lacks of correct color & shading.
does it reflect the same status on urs’?

yes it lacks in shading and colors, but i dont’t rember now what i did, i should has applied only some filters to the normals.

Hi there!
I’ve been reading all thread, and it’s been really helpful!
Finally I’ve managed to compile the project from @kalwalt ( ARToolkitPlus + OF0.7.1 + VS2010 just like @kaykay , even in OF 0.8.1 + vs2012)

But the problem I have it’s that even if it compiles, when I try to run it, when it has some access to ARToolkit library, the program crashes telling me something like: “No controlled exception in 0x00429ec2 en SculturaAumentata_debug.exe: 0xC0000005: Access error reading 0xfeeeffa2.”

I’m in windows7 64bits, and I feel like it’s because of the compiling platform in visualStudio set to win32, but I’m not sure.
Can anyone give me a little help/feedback?

Thank you all!

Hi @Godie, you could receive a crash if you haven’t in the data folder the LogitechPro4000.dat or other needed by ARTollkitPlus but i’m worry that error could be caused by another reason… maybe as you saying you bulid for another arch System. try to debug to found the exact point where it fail, At the moment i’ have no other ideas… sorry!

Thanks for the reply @kalwalt !

In that precise moment, I want to marry you! XD (or pay you some beers!)
That was exactly the problem I was having. Now it works and recognizes markers. The frame rate goes really slow when a marker it’s on screen, but I’ll work on that :smiley:

But only for the shake of knowledge: why is that file needed (LogitechPro4000.dat), and what is supposed to do?

Thank you very much!

@Godie happy that you solved easily your issue!

In that precise moment, I want to marry you! XD (or pay you some beers!)

maybe one beer! but not worry about…

That was exactly the problem I was having. Now it works and recognizes markers. The frame rate goes really slow when a marker it’s on screen, but I’ll work on that smiley

i was trying to add threading support to ofxARToolkitPlus in order to improve the performances, but i received seg faults difficult to debug (at least for me…).

the LogitechPro4000.dat is needed by ofxARToolkitplus for the calibration of the camera. You can choose in the setup to use your own calibration file as described here with

void setup(int w, int h, string camParamFile, string multiFile);

@kalwalt Thanks for your help, honestly. And I hope you can finally reach your objective in threading support!

Only one thing, I’ve been testing around with the library, and I’ve been getting some memory crash errors, when I try to capture from webcam or other devices, in a resolution bigger than 640x480. Something like: “No controlled exception in 0x6000be46 (msvcr100d.dll)app_debug.exe: 0xC0000005: Access error reading 0x0a131000.”

That it’s similar to the crash error I had when missing the .dat file, so I’m wondering if it’s a problem from ARToolkitPlus, ofVideograbber, or my library msvcr100.dll has some problem…

Any ideas?

Thanks in advance!

Ok, solved, it was a stupid error, where I messed up with a video variable I used for showing in a marker…

Hello kalwalt ^^
many thanks your great help again!!!
i’ve change the 3d model to 2d image, finally, the picture behaves strangely when the marker located a little bit left or right the camera, do you know the reason?
here attached the demo reel link:

hello @kaykay! Are you referring the stretching of the yellow square? i think that one possible reason could be a different size of the window capture and a different size of display check if they are the same, ( note that all must be the same…)

got it !!! Thanks a lot !!!
coz my webcam only supports 640x480res and the display set to 1680x1050.
mmm… is going to buy a new webcam

Yes! this errors happens in the past also to me…

actually, with changed the new web cam and made capture as well as display sizes both 1280x1024, the problem still here, it only works correctly on 640x480.
should i change the calibration file LogitechPro4000.dat to the one for my webcam? how can i get the calibration file? or should i make it by myself?