Pular para o conteúdo

openFrameworks 0.8.4 + ofxARToolKitPlus

Esse post é para descrever o problema/solução que eu tive que fazer para linkar o addon ofxARToolKitPlus no oF0.8.4. Já tinha feito um tutorial para o SVR 2013 ensinando a criar ambientes de RA rapidamente. Mas, na época eu usei a versão do oF 0.7.4, hoje está na 0.8.4, e algumas coisas mudaram, inclusive o compilador, na época era o VS2010, hoje é o VS2012. Nisso o C++ também teve uns updates, então nesse post, tentarei trilhar o caminho das pedras:

1. O que é necessário:

a) oF 0.8.4 - http://openframeworks.cc/download/
b) VS2012 - http://openframeworks.cc/setup/vs/
* Vou considerar que você instalou tudo ok, e que os exemplos funcionaram.
c) ofxARToolKitPlus - (http://ofxaddons.com/) - https://github.com/fishkingsin/ofxARtoolkitPlus

2. O Tutorial

Funciona relativamente bem, mas o problema que ocorre é o erro de versão da lib ofxARToolKitPlus que tem no addons.

Vai dizer que está faltando compatibilidade de algumas coisas, e que não está encontrando nas libs.

3) Resolvendo os erros do ofxARToolKitPlus

Para resolver isso precisa compilar novamente a biblioteca:
a) Baixar o ARToolKitPlus - https://launchpad.net/artoolkitplus
b) Baixar o CMake (não gosto, mas enfim, facilita) - http://www.cmake.org/

c) No CMake você tem que compilar a lib para o VS que está usando. (Tentar pelo menos, pois vai dar um erro).

c.1) Descompacta o ARToolKitPlus-2.3.0 (O ultimo update foi em 2012) - gosto de usar rootDEVEL (ps.: Demora)
c.2) Abrir o CMake, a seguir o print das minhas configurações do CMake

c.3) Clicar em Configure - escolha o compilador desejado, no caso: Visual Studio 11 2012 e “Use default native compilers”

e depois Generate

d) Vá ao diretório DEVELARToolKitPlus-2.3.0bin, e execute a solução criada pelo CMake: ARToolKitPlus.sln

Do projetos criados, só é necessário o ARToolKitPlus.

Não esqueça de passar para Release e mandar dar Build.

Ocorrerá um erro, pois o C++ mudou, por preguiça, compile e espere eles aparecerem, vão ser 3 erros pois não existe mais a função make_pair, agora é só pair. Mude, compile e seja feliz.

Se quiser, vai que, compile o Debug também.

e) Onde as bibliotecas estão:!?

No DEVELARToolKitPlus-2.3.0binbin, tem as dlls Release e Debug

No DEVELARToolKitPlus-2.3.0binlib, tem as libs Realease e Debug

* Se você quiser salvar as respostas em um lugar só, coloque o d na frente só para diferenciar a versão release e a versão debug

4) Atualizando o ofxARToolKitPlus

Bem, agora precisa atualizar as coisas,
a) 1º passo: Copia as libs que você gerou para: addonsofxARtoolkitPluslibsARToolKitPluslibwin32

b) 2º passo: Copia as dlls para a raiz de execução do seu programa, ex: appsmyAppstestARTKP

c) 3º passo: O ofxARToolKitPLus foi escrito para o oF.0.7.x, e agora ao invés de testApp é ofApp, então para rodar o exemplo, você tem que ir um a um e copiar os elementos do cabeçalho e os conteúdos dos métodos.

Ultima coisa, para testar eu criei um projeto no project generator, usando as dicas do tutorial que está no slideshare.

Bem boa sorte, qq dúvida entre em contato.

Deixe um comentário