Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

298
Vistas
Las imágenes aumentadas de ArCore se colocarán en posición horizontal en la pared

Estoy tratando de hacer algo como esto: https://www.youtube.com/watch?v=sX1aOBlwGWc ingrese la descripción de la imagen aquí

Puedo renderizar una imagen en AR. Pero siempre se colocaba con la orientación equivocada. Lo que realmente quiero lograr es que una imagen se superponga sobre el póster, la imagen o el banner actual.

Este es mi código:

Mi configuración:

 config.focusMode = Config.FocusMode.AUTO config.updateMode = Config.UpdateMode.LATEST_CAMERA_IMAGE config.planeFindingMode = Config.PlaneFindingMode.VERTICAL

Mi código después de que se reconoce una imagen.

 ViewRenderable.builder() .setView(context, R.layout.ar_layout) .build() .thenAccept { addNodeToScene(arFragment, image, it) } private fun addNodeToScene(fragment: ArFragment, image: AugmentedImage, renderable: ViewRenderable) { val node = Node() node.renderable = renderable val pose = image.centerPose val anchorNode = AnchorNode(image.createAnchor(pose)) anchorNode.addChild(node) fragment.arSceneView.scene.addChild(anchorNode) Toast.makeText(fragment.context, "Added", Toast.LENGTH_SHORT).show() }

el archivo ar_layout:

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <ImageView android:layout_width="50dp" android:layout_height="75dp" android:src="@drawable/poster" /> </LinearLayout>

Encontré algunos tutoriales sobre cómo necesitas implementarlo en Unity. Pero no es así como quiero hacerlo. ¿Puede alguien ayudarme a resolver esto?

Lo que obtuve en este punto:

ingrese la descripción de la imagen aquí

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Lo descubrí creando mi propio cubo (cubo plano) y agregando la imagen como textura.

 fun renderImage(arFragment: ArFragment, anchor: Anchor) { Texture.builder().setSource(BitmapFactory.decodeResource(arFragment.resources, R.raw.sample_image)) .build() .thenAccept { MaterialFactory.makeOpaqueWithTexture(arFragment.context, it) .thenAccept { material -> val modelRenderable = ShapeFactory.makeCube( Vector3(0.84f, 0.01f, 1.12f), Vector3(0.0f, 0.0f, 0.0f), material) addNodeToScene(arFragment, anchor, modelRenderable) } } } private fun addNodeToScene(fragment: ArFragment, anchor: Anchor, renderable: Renderable) { val node = Node() node.renderable = renderable val anchorNode = AnchorNode(anchor) anchorNode.addChild(node) fragment.arSceneView.scene.addChild(anchorNode) Toast.makeText(fragment.context, "Added", Toast.LENGTH_SHORT).show() }
over 4 years ago · Santiago Trujillo Denunciar

0

Debería poder cambiar la orientación de la imagen/vista/objeto representado usando setLocalRotation.

Por ejemplo, en mi proyecto, he usado el siguiente código, que hace que la imagen renderizada mire directamente hacia afuera desde la imagen detectada.

 Node cornerNode; localPosition.set(-0.0f * image.getExtentX(), 0.1f, +0.5f * image.getExtentZ()); cornerNode = new Node(); cornerNode.setParent(this); cornerNode.setLocalPosition(localPosition); cornerNode.setLocalRotation(Quaternion.axisAngle(new Vector3(-1f, 0, 0), 90f)); cornerNode.setRenderable(testViewRenderable);
over 4 years ago · Santiago Trujillo Denunciar

0

AnchorNode sigue la pose de AugmentedImage y, por lo tanto, no puede cambiar localRotation o localPosition en este nodo. De AnchorNode.setLocalRotation : "Establezca la rotación del espacio local de este nodo si no está anclado".

Puede cambiar la transformación local introduciendo un Nodo intermedio:

 val base = AnchorNode() base.anchor = augmentedImage.createAnchor(augmentedImage.centerPose) val node = Node() node.setParent(base) node.localPosition = Vector3(0f, 0f, augmentedImage.extentZ/2) node.localRotation = Quaternion.axisAngle(Vector3(1.0f, 0f, 0f), -90f) node.localScale = Vector3(augmentedImage.extentX, augmentedImage.extentZ, 0f) node.renderable = renderable
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda