Otra alternativa de Multimaker

 

Un archivo 3ds

 

 

Meses atrás, escribí un post sobre el multimarker con nyartoolkit. A raíz de este tutorial, me han llovido preguntas sobre cómo se inserta con objetos 3d  (obj/3ds)

Presentaré otra alternativa más intuita y usada por muchos programadores. Por cosas de simplicidad, aquí lo llamaremos: M-nyar. Hice un pequeño sondeo entre 10 personas expertas en temas de modelado en 3d y processing; y 7 de ellos usan M-nyar.

Si más preambulos aquí les va la explicación:

  • Importar librerías

import processing.core.*;
import processing.opengl.*;
import processing.video.*;
import jp.nyatla.nyar4psg.*;
import javax.media.opengl.*;
import mri.*;

  • Llamar librerías

Capture cam;
NyARMultiBoard nya;
V3dsScene vscene;
V3dsScene vscene2;

  • Usamos public void para llamar a las instancias de la clase

public void setup() {
size(640,480,OPENGL);
colorMode(RGB, 100);

  • Agregamos la cámara y los string para usar distintos marcadores y características

cam=new Capture(this,width,height,24);
String[] patts = {
“patt.hiro”, “patt.e”
};

double[] widths = {
80,80
};
nya=new NyARMultiBoard(this,width,height,”camera_para.dat”,patts,widths);
print(nya.VERSION);

nya.gsThreshold=120;
nya.cfThreshold=0.4;

  • Es momento de agregar los objetos 3d

try
{

vscene = new V3dsScene (this, “ARCHIVO.3ds”);
vscene.useMaterial( true );

vscene2 = new V3dsScene (this, “ARCHIVO.3ds”);
vscene2.useMaterial( true );

}
catch( Exception e )
{
println( e );
System.exit( 0 );
}
}

  • Nuevamente usamos un public, en esta ocasión es:

public void draw() {
background(200);
if (cam.available() ) {
cam.read();
}

  • Luego le agregamos las cosas esenciales de nyartoolkit

background(255);
hint(DISABLE_DEPTH_TEST);
image(cam,0,0);
hint(ENABLE_DEPTH_TEST);

if (nya.detect(cam))
{
hint(ENABLE_DEPTH_TEST);

PGraphicsOpenGL pgl = (PGraphicsOpenGL) g;
for (int i=0; i < nya.markers.length; i++)
{
if (nya.markers[i].detected)
{
nya.markers[i].beginTransform(pgl);

  • Finalmente cerramos las llamadas de los objetos 3d

if (i == 0)
{
vscene.draw();
}

else
{
vscene2.draw();
}
nya.markers[i].endTransform();
}
}
}
}

Recibe toda la información necesaria sobre realidad aumentada y el mundo de la innovación. Descarga gratis material especial de nuestra comunidad.

29 Comments

  1. Copernico October 8, 2010
    • emilio vegas ubillus October 9, 2010
  2. Ademar October 11, 2010
    • emilio vegas ubillus October 11, 2010
  3. alex November 17, 2010
  4. Rui Teixeira November 18, 2010
    • emilio vegas ubillus November 18, 2010
  5. Rui Teixeira November 18, 2010
  6. alex November 18, 2010
    • emilio vegas ubillus November 18, 2010
  7. alex November 18, 2010
    • emilio vegas ubillus November 18, 2010
      • alex November 18, 2010
  8. caprirey November 18, 2010
  9. alex November 19, 2010
    • emilio vegas ubillus November 19, 2010
  10. chepo March 6, 2011
  11. herman gonzalez March 16, 2011
  12. Manuel Jimenez April 18, 2011
    • emilio vegas ubillus April 21, 2011
  13. Mike May 18, 2011
    • emilio vegas ubillus May 18, 2011
  14. Jesus June 3, 2011
    • Jesus June 3, 2011
  15. Jesus June 3, 2011
  16. Jesus June 3, 2011
    • emilio vegas ubillus June 3, 2011
  17. Jesus June 3, 2011

Leave a Reply