claude Napisano 29 Czerwiec 2010 Share Napisano 29 Czerwiec 2010 Mam około 400 obiektów dla których muszę zrobić tą samą czynność. stworzyć ogranicznik/zawias constriaint point-point i ustawić parent space w punkcie 0,0,0 Próbuje zrobić to maxrecorderem ale nic mi nie wychodzi macros.run "reactor" "rctCreatePointPoint" -- tutaj tworze point-pioint z zaznaczonych obiektów $.hasParent = off -- tutaj wyłączam parenta subobjectLevel = 1 modPanel.setCurrentObject $.baseObject subobjectLevel = 2 modPanel.setCurrentObject $.baseObject -- tutaj ustawiam parent i object space na 0,0,0 -- Unknown property: "baseObject" in $selection - dlaczego to wyskakuje, kiedy próbuje uruchomić skrypt dlaczego nie tworzy się obiekt POMOCY Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
guru Napisano 29 Czerwiec 2010 Share Napisano 29 Czerwiec 2010 Nie wiem czy to o to chodzi ale na poczatku musisz inaczej tworzyc poin-point. pp = point_point() -- tutaj tworze point-pioint z zaznaczonych obiektów pp.hasParent = off -- tutaj wylaczam parenta subobjectLevel = 1 modPanel.setCurrentObject $.baseObject subobjectLevel = 2 modPanel.setCurrentObject $.baseObject 1 Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
CgBartosz Napisano 29 Czerwiec 2010 Share Napisano 29 Czerwiec 2010 do point to point chyba musz byc przypisane obiekty. Child i Parent lub tylko child jesli maja dyndac w worldspace. chcesz stworzyc constraint ktory nic nie robi ? Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
claude Napisano 29 Czerwiec 2010 Autor Share Napisano 29 Czerwiec 2010 pp = point_point() -- tutaj tworze point-pioint z zaznaczonych obiektów -- samego point_point zrobiło pp.hasParent = off -- Runtime error: Attempt to access deleted scene object - tu wyskoczył błąd Nie znam sie na skryptach i to mnie zabija Jak wrzucam pierwsza linijke to tworzy sie się obiekt ale juz druga linijka nie działa Jak to powinno sie zapisywać aby jedna opcja działała po drugiej bo w tej chwili opcje działają jakby osobno Pozdrawiam Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
claude Napisano 29 Czerwiec 2010 Autor Share Napisano 29 Czerwiec 2010 do point to point chyba musz byc przypisane obiekty. Child i Parent lub tylko child jesli maja dyndac w worldspace. chcesz stworzyc constraint ktory nic nie robi ? Chyba nie umiem tego opisać. Chce do 400 obiektó przypisać ten point-point i zeby wszystkie obracały się wokół początku współrzędnych ale nie chce robic to dla każdego z osobna Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
guru Napisano 29 Czerwiec 2010 Share Napisano 29 Czerwiec 2010 tamten skrypt mi dzialal. A druga linijka o ile nie skasowales obiektu tez powinien dzialac. Nie znam reaktora ani tego point-point wiec ciezko mi pomoc. A nie moze to byc cos takiego ze parentuje twoje obiekty do zwykłego Point Helpera ktory jest tworzony w [0,0,0]. A potem sterujac obiektem wszysktie beda sie opraca/poruszac z nim? o to chodzi?? Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
claude Napisano 29 Czerwiec 2010 Autor Share Napisano 29 Czerwiec 2010 Nie mam pojęcia o co chodzi ale dostaje niezłego doła wiem że to się da zrobić i nie umiem. guru - tak, chcę aby wszystkie obiekty obracały się wokó jednego punktu nie ważne czy to będzie helper czy kula czy punkt początkowy Nie rozumiem tego. Może trzeba coś napisać zeby wyselekcjonował tego nowo powstałego point-point Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
guru Napisano 29 Czerwiec 2010 Share Napisano 29 Czerwiec 2010 fn ParentAll obj = ( local p = Point box:on cross:on WireColor:[0,150,0] size:0.5 for x in obj do ( x.parent = p ) print "Parent All objects" select p ) parentall $ Czy to o to chodzi?? Zaznacz obiekty ktore chcesz przylaczyc i wykonaj ten kod. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
claude Napisano 29 Czerwiec 2010 Autor Share Napisano 29 Czerwiec 2010 ok działa, ale czy to mi pomoże w symulacji? Chciałbym aby każdy obiekt miał swój własny ogranicznik bo chcę aby każdy poruszał się odzielnie w symulacji. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
guru Napisano 29 Czerwiec 2010 Share Napisano 29 Czerwiec 2010 zeby dla kazdego obiektu (400) byl tworzony point w srodku sceny. Jak to nie dziala:D. U mnie smiga. Jaka masz wersje maxa?? Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
claude Napisano 29 Czerwiec 2010 Autor Share Napisano 29 Czerwiec 2010 maxa mam 2011 Dla każdego obiektu chcę stowrzyć ogranicznik, helper może być tylo jako punkt odniesienia (parent) dla ogranicznikia point-point Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
CgBartosz Napisano 29 Czerwiec 2010 Share Napisano 29 Czerwiec 2010 wybierz obiekty i odpal to. Testowalem tylko na kulkach w maxie 2009 i dziala nromalnie. fn AddPointToPointConstraintToSelectionOfObjects = ( objs_arr = selection as array constraintSolver = CSolver() rigidBodyCollection = RBCollection() constraintSolver.rbCollection = rigidBodyCollection for i=1 to objs_arr.count do ( PointToPoint = Point_Point() PointToPoint.hasParent = false PointToPoint.childBody = objs_arr[i] constraintSolver.AddConstraint PointToPoint rigidBodyCollection.AddRigidBody objs_arr[i] PointToPoint.parentTransform = matrix3 1 PointToPoint.alignToParentSpace() ) for Bodyindex=1 to rigidBodyCollection.rigidBodies.count do ( RBCollectionInterface = rigidBodyCollection.rctRBCollectionInterface rigidBodyObject = RBCollectionInterface.getRigidObject Bodyindex rigidBodyObject.mass = 10 ) ) AddPointToPointConstraintToSelectionOfObjects() Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
claude Napisano 29 Czerwiec 2010 Autor Share Napisano 29 Czerwiec 2010 (edytowane) Hej CgBartosz To prawie działą ale robi dodatkowe RBcollection i CSolver i podwójnie ten ogranicznik point-point co mi komplikuje scene bo ja juz mam Rig body collection a CSolver też jakby dało się wyłączyć tworzenie tych dodatkowych obiektów to git by był? guru mi zrobił skrypcik, który działa musze tylko przy zaznaczaniu obiektów pierwsze klikać na ten parent a później na child Wielkie Dzięki jesteś prawdziwym GURU Ideałem byłoby żeby te 400 obiekty się automatycznie tak przetworzyły. pp = point_point() pp.hasParent = false par = selection[1] chi = selection[2] poz = chi.transform.pos pp.parentBody = par pp.childBody = chi pp.parentTransform = (matrix3 [1,0,0] [0,1,0] [0,0,1] [0,0,0]) pp.childTransform = (matrix3 [1,0,0] [0,1,0] [0,0,1] [-poz.x,-poz.y,-poz.z]) select pp Edytowane 29 Czerwiec 2010 przez claude Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
CgBartosz Napisano 29 Czerwiec 2010 Share Napisano 29 Czerwiec 2010 Masz jeden obiekt parent czy sa to pary obiektow parent-child ? Jesli pary to trzebaby je w scenie jakos unikalnie oznaczyc, na przyklad nazywajac w ponizszy sposob: Zawias_01_parent Zawias_01_child Zawias_02_parent Zawias_02_child ... Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się