XSIforum.com

Conocer las coordenadas en UV de un point?

0 Usuarios y 1 Visitante están viendo este tema.

Conocer las coordenadas en UV de un point?
« en: 01 Mayo 2008, 22:33:08 »
Hola, quisiera saber si hay forma de saber las coordenadas en U y V de un point específico, es decir, mediante script accedo a un point de una malla poligonal y quisiera consultar sus coordenadas en U y en V para luego utilizar esa información en el resto del script.

Alguien sabe como hacerlo?
Gracias O0

agedito

  • ***
  • 1524
  • ¡¡Yo lo que quiero es milonguear!!
Re: Conocer las coordenadas en UV de un point?
« Respuesta #1 en: 01 Mayo 2008, 22:37:00 »
Hola Cesar, aqui no tengo XSI. El lunes cuando llegue a Salamnca lo miro y te cuento, yo lo he hecho varias veces pero así de memoria no me acuerdo.

Re: Conocer las coordenadas en UV de un point?
« Respuesta #2 en: 01 Mayo 2008, 23:41:21 »
Copio y pego un extracto de la conversación por messenger con agedito donde me da la pauta para conseguirlo, así queda para alguien más que tenga la misma duda :)

Muchas gracias Agedito O0

_________________________

Agedito dice:
¿qué andas tramando? 

César dice:
lo que quiero es saber el color RGB del pixel correspondiente a la UV de un point para que en funcion de una máscara animada usada como textura pueda activar o desactivar algo

César dice:
el color RGB del pixel lo puedo saber con un comando que hay específicamente para eso

César dice:
pero necesito la coordenada en U y en V

César dice:
y ahi estoy complicado, vi algo de TrianglePoints en la ayuda del SDK

César dice:
estoy tratando de entenderlo 

Agedito dice:
vale, tienes dos opciones

Agedito dice:
lo del triangle point no la conocía

Agedito dice:
por lo visto en las triangle points peudes acceder a las UVs

Agedito dice:
lo que tendrías que hacer es dado el índice de un punto, buscar en que triangle está ese vértice y ahi sacar las uvs

Agedito dice:
la otra manera , voy a mirarla a hora que es como lo hacía yo

Agedito dice:
ya lo tengo

Agedito dice:
vamos por parte

Agedito dice:
tenemos 3 cosas:

Agedito dice:
por una parte, un puento puede tener varias texturas

Agedito dice:
así que necesitamo el custer o la proyeccion a la que nos referimos

Agedito dice:
luego por otro lado, hablamos de puntos.. pero un punto no tiene una solo unba UV, lo que tiene uvs son los samples

Agedito dice:
pues los puntos titnen una propiedad Samples

Agedito dice:
pues coje uno de los samples

Agedito dice:
y toma el índice de ese sample

Agedito dice:
SelectObj("sphere.polymsh.cls.clUVs.tp");
coord=selection( 0);
uvs=coords.Elements.Array.toArray();
indice=sample.Index;
u=uvs[3*indice];
v=uvs[3*indice+1];

Agedito dice:
en este código, he seleccionado (a mano) la proyección de la textura

Agedito dice:
accedes a los elementos y lo conviertes en array

Agedito dice:
ese array tiene en linea todas las coordenas U,V,W de cada punto

Agedito dice:
así que la U es 3*indice del sample

Agedito dice:
la V. 3*index+1

Agedito dice:
y la W 3*index +2

Agedito dice:
(en vez de la proyección, puedes partir del cluster y acceder a él a traves de coords=clustes.LocalPorpertiers( 0))

agedito

  • ***
  • 1524
  • ¡¡Yo lo que quiero es milonguear!!
Re: Conocer las coordenadas en UV de un point?
« Respuesta #3 en: 02 Mayo 2008, 05:11:07 »
Bueno, esta noche hemos estado colaborando Cesar y yo, y hemos hecho esto:

agedito color
agedito gris
Cesar

Es usar una textura sobre objetos para hacer cosas, yo creía que se podía hacer sin scripting, pero parece que no (si estamos equivocado, por favor ayuda)

Yo lo he usado para activar unos rigid bodies y Cesar para escalar objetos, pero es lo mismo. Ha sido una noche provechosa, el lunes podré hacer una versión final que en este pc apenas puedo trabajar.

A ver que os parece.



Re: Conocer las coordenadas en UV de un point?
« Respuesta #4 en: 02 Mayo 2008, 05:19:41 »
El pueblo, unido, jamás será vencido! :P
Ha sido muy provechoso, he aprendido muchísimas cosas nuevas con la charla y el desarrollo en paralelo, fué un verdadero workshop de scripting O0

Re: Conocer las coordenadas en UV de un point?
« Respuesta #5 en: 02 Mayo 2008, 10:07:14 »
Bravo por los dos. A este paso acabareis enseñando a Softimage Co. cómo hacer las cosas ;)

agedito

  • ***
  • 1524
  • ¡¡Yo lo que quiero es milonguear!!
Re: Conocer las coordenadas en UV de un point?
« Respuesta #6 en: 02 Mayo 2008, 10:11:59 »
La verdad es que ha sido muy productivo y divertido, creo que es una herramienta muy util para hacer cantidad de efectos de toda índole de manera artística. Y lo mejor, es muy facil de aplicar y usar.

alanf

  • *****
  • 6029
  • Pipeline Developer @ Felix & Paul Studios
Re: Conocer las coordenadas en UV de un point?
« Respuesta #7 en: 14 Mayo 2008, 00:23:55 »
Tal vez os sea interesante este tuto:
http://student.vfs.com/~geraldf/TUTORIALS.html

Explica como hacer un set de pinchos que se levantan basado en una imagen animada. (Sin scripting.)

Re: Conocer las coordenadas en UV de un point?
« Respuesta #8 en: 17 Mayo 2008, 02:29:02 »
Interesante tutorial, no lo conocía.

El problema es que al basarse en deformaciones de la base contenedora de pins el sistema es mucho más limitado, de hecho creo que no serviría para nada más que mover cosas (y eso lo puedes hacer hasta con un mapa de desplazamiento animado), ninguno de los ejemplos que hicimos ese día Agedito o yo podría realizarse siguiendo esta técnica, el potencial de de poder manejar cualquier "evento" en nuestra escena 3D es muy superior a basarse sólo en deformaciones.

De todas formas gracias por el link, fué una lectura interesante O0

agedito

  • ***
  • 1524
  • ¡¡Yo lo que quiero es milonguear!!
Re: Conocer las coordenadas en UV de un point?
« Respuesta #9 en: 17 Mayo 2008, 13:36:58 »
Tampoco conocía ese enlace, bastante interesante. Coincido con Cesar en que esa técnica está más limitada. Ya tengo el plugin compilado para 64 bits, esta semana lo compilo para 32 bits y lo testeamos.