Convertir el atributo hitid en una selección de primitivas en sops
Pues eso, cuando estas en pops y añades y nodo collision, éste puede decirte contra que primitivas ha chocado en pops. Esto luego en SOP se almacena como un atributo point.
Pues yo lo que necesito es convertir ese atributo point a una selección de primitivas. ¿alguien sabe cómo?
El caso es que no debe ser complicado, seguro que se me escapa alguna tontería.
Convertir el atributo hitid en una selección de primitivas en sops
Pues nada, por si alguien alguna vez tiene el mismo problema yo lo he resuelto a base de scripting. Aquí lo dejo:
Código:
# this code is called when instances of this SOP cok.
Geo = hou, pwd(), geometry().
# add code todo modify the contents of geo.
Tuplepoints = geo, points().
Tupleprimshitted = [].
For point in tuplepoints:
If point, attribvalue (hitid).= 0:
Tupleprimshitted, append(point, attribvalue (hitid)).
For primhitted in tupleprimshitted:
Hitted = geo, iterprims()[primhitted].
Hitted, setattribvalue (hitted, int(primhitted))
Lo que yo quería era que cada partícula se llevara por delante una única primitiva para desmenuzar un grid de forma muy progresiva.
Así y todo la partícula coge la primitiva por el centro y si hay un choque entre partículas se quitan las primitivas unas a otras.
Convertir el atributo hitid en una selección de primitivas en sops
Vaya no me he enterado muy bien lo que quieres hacer, puedes poner una animación de cómo queda el efecto final, para hacer una selección de primitivas tienes que crear u ngrupo de primitivas, como tu atributo es de tipo punto, lo puedes prmocionar a prmitiva con attributepromote y usar una expresión para crear el grupo, también si lo que quiere es generar varios grupos en base al valor de un atributo puedes usar partition SOP, así a bote pronto creo que el tema se puede solucionar sin scripting, pero estaría ver bien un video para saber exactamente que es lo que quieres hacer.
1 Archivos adjunto(s)
Convertir el atributo hitid en una selección de primitivas en sops
Quería hacer un sistema para un tornado que destruyera edificios y este fue el mejor método que se me ocurrió. El caso es que ya probé con todo eso (attrib promote + attrib transfer). Incluso con el partition. Pero no me salía bien. Quizás algún paso lo hice mal. Os dejo la escena con el resultado final.
-- IMÁGENES ADJUNTAS --
https://www.foro3d.com/attachment.ph...hmentid=128636