Skocz do zawartości

Rekomendowane odpowiedzi

Napisano

Witam,

 

Mam pytanie. Czy istnieje w programie Maya możliwość zmiany pojedyńczego numeru vertexa. TJ. czy w obiekcie poly mogę zmienić id vertexa z numerem 1 na vertex o numerze 2.

  • Odpowiedzi 12
  • Created
  • Ostatniej odpowiedzi

Top Posters In This Topic

Napisano

Mozesz jedynie z poziomu API niestety. Jest to MEGA zajebista opcja zwłaszcza przy własnych blend shapach.

 

Powodzenia przy pisaniu takowego bo zakładam ze do tego potrzebujesz tej opcji :)

Napisano (edytowane)

dokładnie potrzebuje to do blendshapa. Planuje wykonac skomplikowany morph i jakakolwiek wskazówka mogłaby się przydać. Moze znacie jakies stronki poświecone tego typu problemom lub odnośnie skryptow w API lub MEL

 

beny>>> wiesz moze gdzie mniej wiecej zaczac? gdzie stuknac?

Edytowane przez mayamak
Napisano

Malo o tym znajdziesz. Proponuje najbogatsze zrodlo wiedzy w temacie:

 

http://nccastaff.bournemouth.ac.uk/jmacey/RobTheBloke/www/

 

Paskudna strona ale informacje zajebiste. Noi oczywiscie zakup w amazon.com Maya Complete Programming. Jak dopiero zaczynasz proponuje najpierw Tom II a dopiero potem Tom I. Jedynka jest mocno zaawansowana i uwazam ze nie pokrywa wystarczajaco tematu meshy, a Dwojka za to jest dosc prosta, pokrywa meshe, operacje na wektorach i macierzach. Poza tym proponuje abys osobiscie sie z Robertem Batemanem skontaktowal. Rzadko odpowiada ale jak juz odpowie to jest to konkret odpowiedz.

Napisano (edytowane)

Spotkalem sie ostatnio z tym problemem i nie moglem wyjsc ze zdziwienia, ze ta prosta operacja sprawia klopot nie do przejscia bez c++ (rozumiem, ze chodzi o numer punktu, a nie werteksu w scislym slowa sensie).

 

Jesli jest to mozliwe w Twoim przypadku, sprobuj uzyc Houdiniego do zmiany kolejnosci punktow, a potem import do Mai (darmowy H. zezwala na import/eksport objotow). O ile Maya nie zmieni numerow w trakcie importu, bo to tez sie zdarza...

 

powodzenia!

skk.

Edytowane przez SYmek
Napisano (edytowane)

A ja nie znajac api próbowałbym eksportu obiektu do pliku .ma i zbudowania go od nowa.

Moznaby tu wykorzystac fakt, ze w takim pliku wspolrzedne w tablicy wierzcholkow

tworza wierzcholki o kolejnych numerach.

Podajac te same wspolrzedne ale w innej kolejnosci dostajemy inny rozklad numerow.

Albo prosciej, bez eksportu pobierac tablice shape'a ".vrts[0:ilosc]" i robic kopie obiektu na bierzaco.

A reszte moze zalatwic dosc prosty algorytm tworzenia krawedzi na podstawie zmienionych punktow.

W kazdym razie przy kazdej zmianie probowalbym robic nowy klon obiektu,

wyrzucajac poprzedni a po skonczonej zabawie w przemienianki

skasowalbym oryginal i zmienil klonowi ( i jego potomstwu : ) nazwe na taka jaka byla wczesniej.

 

A jak w ogole wyobrazasz sobie obsluge takiego zmieniania numerow?

Zaznaczamy wierzcholek i wciskamy jakis +/- czy podajemy numer jakim ma sie stac?

Czy zaznaczamy dwa i zamieniamy je ze soba? Bo to jest chyba najlogiczniejsza opcja.

 

Zmieniając dajmy na to punkt numer 5 na np. 3 inne punkty tez musialyby sie zmienic.

Myslales o tym jak to rozwiazac?

Pozdr.

Edytowane przez ca mel
Napisano

ca mel, nie uwazasz ze to troche skomplikowane jak na prosta zmiane numeru verteksa? :) lepiej sobie odpalic VS C++ i zalatwic sprawe w 30 linijkach kodu i miec dzialajaca funkcje praktycznie w czasie rzeczywistym, a to co napisales by musialo korzystac jeszcze z dysku i zapisywac pliki .ma ... czas wykonania oceniam na O(2^n) ... czyli przy 10k wierzcholkow, co nie jest za duzo, czekal bys przy dobrym wietrze 2h na nastepna klatke :)

Napisano

Ha, zeby zmiescic to w 30liniach trzeba byc szczesliwcem znajacym api ;]

Do ktorych ja np sie nie zaliczam.

Pomyslalem wiec nad sposobem zeby zrobic to za pomoca samego mela.

Z eksportem do .ma to moze rzeczywiscie przesada, sposob zapisu nasunał mi mysl

o wzglednie prostym kombinowaniu z budowaniem kopii obiektu.

Czuje ze szybciej mozna cos wymodzic niz nauczyc sie tego nieszczesnego api;]

Pozdr.

Napisano

Eksportowanie dobra opcja ale ciągle nie o to chodzi. Chciałbym mieć pełną kontrolę nad tym co zmieniam, czyli zaznaczam np. vtx ID5 i zmieniam go na ID1.

 

Przetestowałem już opcję przy polyplanie 4face (łącznie ilość ID8) każdy z face > detache > separate co tworzy 4 oddzielne poly i każdy ma wyzerowane ID od 0 do 4 następnie w zależności jakie chcemy zachować ID > combine > merge vertex i ręcznie można kontrolować ID każdego obiektu. Ale ciągle jest to metoda bardzo syzyfowa.

 

Co do API i C++ podzielam wasze zdanie da rade to zrobić, ale musiałbym spędzić nad tym chyba z dobry rok żeby jakoś to ogarnąć, a tyle nie mam.

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ę



×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Wykorzystujemy cookies. Przeczytaj więcej Polityka prywatności