Skocz do zawartości

Początki w Maya - ciężkie przyzwyczajenia z 3ds Maxa


Miłosz3ds

Rekomendowane odpowiedzi

  • Odpowiedzi 89
  • Created
  • Ostatniej odpowiedzi

Top Posters In This Topic

Uruchom sobie wbudowany w maję modeling toolkit z opcją quad draw, albo bezpośrednio wybierz to narzędzie z menu edit mesh. Domyślnie wyciagasz wtedy krawedzie, albo nawet całe loopy, jednym kliknieciem po wciśnięciu tabulatora, ale możesz zmienić w opcjach na shift. Jednak takie stare maxowe rozwiązania moim zdaniem spowalniają wręcz pracę, łatwiej zrobić sobie dowolny skrót do skonfigurowanego wcześniej extrude.

Odnośnik do komentarza
Udostępnij na innych stronach

Dziękuję @ca mel sprawdzę to! :)

Ja nie przesiadam się na Maya, ale chcę ją znać, podoba mi się i przesiadka modelarza wydaje się bardzo prosta.

Zgadzam się, że Maya jest szybsza ze swoimi skrótami, ale to extrudowanie maxowe to jest coś czego nie chciałbym zmieniać.

 

Tak na marginesie dodam, że nawigacja viewport w Mayce jest super, o wiele przyjemniejsza niż w 3ds Max.

Odnośnik do komentarza
Udostępnij na innych stronach

Mi to działa na wersji 2015, 2016 nie sprawdzałem. A i tak czasem mi nie zaskakuje w 2015, nie mam zielonego pojęcia od czego to zależy. :D Nawigacja fajna, jednak brakuje mi blokowania rotacji obrotu kamery na zaznaczeniu. Wiem, że po wciśnięciu "z" centruje mi zaznaczenie i kręci się dookoła niego, ale to nie do końca to. ;)

Odnośnik do komentarza
Udostępnij na innych stronach

Cześć wszystkim,

 

przygotowuję sobie postać do animacji, zastanawiam się jaki jest poprawny workflow połączenia skin deforma z blend shape'ami. Czy jeśli najpierw przygotuję sobie wszystkie blend shape'y, narzucę je na model to potem bez problemu będę mógł sobie ten model zeskinować?

Odnośnik do komentarza
Udostępnij na innych stronach

Dzięki Kroopson! A co w sytuacji gdy wszystko już zostanie zeskinowane, a będę chciał dodać jeszcze jakiegoś blend shape'a? Da się to zrobić czy jest to skomplikowane?

 

Pozdrawiam!

 

Da się bez problemu. BlendShape trzeba stworzyć jako "Front Of Chain" - zresztą, to jest defaultowe jego ustawienie.

Można wcześniej ustawić skinCluster.envelope = 0

Odnośnik do komentarza
Udostępnij na innych stronach

Da się bez problemu. BlendShape trzeba stworzyć jako "Front Of Chain" - zresztą, to jest defaultowe jego ustawienie.

Można wcześniej ustawić skinCluster.envelope = 0

 

A jeśli zapomniałeś o Front of chain zawsze możesz kliknąć prawym klawiszem na meshu, wybrać Inputs->All inputs i pojawi Ci się lista tego co wpływa na tego mesha (taki trochę deformer stack). Tam możesz sobie środkowym klawiszem myszy przestawiać kolejność deformerów (jak jest prosty setup to to działa)

Odnośnik do komentarza
Udostępnij na innych stronach

Cześć!

 

Mam kolejny problem. Mam w scenie kilkadziesiąt obiektów. Chciałbym animować w nich visibility. Zależy mi jednak na tym, żeby parametr był kontrolowany za pośrednictwem jakiegoś prostego mesha, nawet boxa / kilku boxów. Jeśli moje obiekty są poza boxem - są widoczne, jeśli tylko nawet kawałeczek znajdzie się w boxie - visibility od razu zmienia się na 0. Da się to jakoś prosto zrobić bez używania cząsteczek?

 

Co do dokładności detekcji kolizji - wystarczyłby mi nawet poziom bounding boxa.

 

 

Edit:

 

Coś takiego ewentualnie też by mnie ratowało:

 

 

 

Tylko bez soft select, tryb 0-1 i zamiast morphera / transforma zmieniany parametr Visibility.

Edytowane przez Miłosz3ds
Odnośnik do komentarza
Udostępnij na innych stronach

expression:

float $x = tx;
float $y = ty;
float $z = tz;
string $testcmd = "PointInMesh( 'pSphereShape1', (";
$testcmd += $x; $testcmd += ", ";
$testcmd += $y; $testcmd += ", ";
$testcmd += $z; $testcmd +=  ") ";
$testcmd += " )";
int $isInside = python( $testcmd );
locator1.visibility = $isInside;

 

python:

import maya.cmds as cmd
import maya.OpenMaya as om

def PointInMesh(shape, point, dir=(0.0, 0.0, 1.0)):
   sel = om.MSelectionList()
   dag = om.MDagPath()

   sel.add(shape)
   sel.getDagPath(0,dag)

   mesh = om.MFnMesh(dag)

   point = om.MFloatPoint(*point)
   dir = om.MFloatVector(*dir)
   farray = om.MFloatPointArray()

   mesh.allIntersections(
           point, dir,
           None, None,
           False, om.MSpace.kWorld,
           10000, False,
           None, # replace none with a mesh look up accelerator if needed
           False,
           farray,
           None, None,
           None, None,
           None
       )
   return farray.length()%2 == 1

  • Piękne 1
Odnośnik do komentarza
Udostępnij na innych stronach

Dzięki panowie za podpowiedzi.

 

Praetorian - super, bardzo Ci dziękuję! To co napisałeś działa niemal idealnie tak, jak sobie to wyobrażałem. Mam jeszcze niestety kilka problemów.

 

Jak mogę podpiąć pod to kilkadziesiąt obiektów? Czy muszę tworzyć osobne expressions dla każdego obiektu, który ma znikać?

 

Dodatkowy problem widzę w detekcji obiektów - teraz pivot głównego obiektu (powiedzmy - boxa) musi się znaleźć wewnątrz obiektu, który chcę ukryć (powiedzmy - sphere), żeby ukryć tą sphere. Jeśli chciałbym mieć ogromnego boxa, który ukryje mi kilkadziesiąt sphere za jednym razem, powinno to działać na jakiejś zasadzie detekcji bouding boxów czy mi się wydaje? Jeśli bouding boxy się pokrywają to spheres są ukrywane. Czy w jakiś sposób można zaimplementować taki tryb detekcji kolizji obiektów? Z tego co widzę to wydaje mi się, że to właśnie tak się odbywa, tylko odwrotnie - spheres odbierają kolizję jak tylko pivot dużego boxa przekroczy ich ściankę, a idealnie by było, jakby działo się odwrotnie. Jak się do tego zabrać?

 

Pozdrawiam!

Odnośnik do komentarza
Udostępnij na innych stronach

 

Jak mogę podpiąć pod to kilkadziesiąt obiektów? Czy muszę tworzyć osobne expressions dla każdego obiektu, który ma znikać?

Tak.

 

spheres odbierają kolizję jak tylko pivot dużego boxa przekroczy ich ściankę, a idealnie by było, jakby działo się odwrotnie.

Zamień sobie w zdaniu sphere na box :) i będziesz miał odwrotną zależność :)

Odnośnik do komentarza
Udostępnij na innych stronach

Rozumiem. Czyli w przypadku kilkudziesięciu/kilkuset obiektów tylko ten SOuP zostaje? Bo ręczne wpisywanie tego chyba nie ma zbyt dużego sensu przy większych ilościach?

 

 

 

Z podmianą niestety mam problem. Jak podmienię, to będą znikały mi obiekty którymi manipuluję, nie te "statyczne". A ja chcę ukrywać stojące w scenie obiekty za pomocą jednego dużego obiektu.

 

 

W załączniku podglądowy pliczek z Maya:

 

 

klatka 40 - kolizja z pierwszym obiektem, kula jest po środku boxa,

 

klatka 60 - kolizja z drugim obiektem, kula po środku boxa,

 

klatka 80 - mimo, że kula jest między obiektami, przenika ich ściany - nie pokazują się one.

 

Jak to ugryźć?

 

Pozdrawiam!

visibility_by_collision.zip

Odnośnik do komentarza
Udostępnij na innych stronach

Rozumiem. Czyli w przypadku kilkudziesięciu/kilkuset obiektów tylko ten SOuP zostaje? Bo ręczne wpisywanie tego chyba nie ma zbyt dużego sensu przy większych ilościach?

 

Expression można ustawić w pętli MEL/Python. Np. Twoje expression jest ustawiane taką komendą (widać w ScripEditor):

expression -e -s "float $x = pSphere1.translateX;\nfloat $y = pSphere1.translateY;\nfloat $z = pSphere1.translateZ;\nstring $testcmd = "PointInMesh( 'pCubeShape1', (";\n$testcmd += $x; $testcmd += ", ";\n$testcmd += $y; $testcmd += ", ";\n$testcmd += $z; $testcmd += ") ";\n$testcmd += " )";\nint $isInside = python( $testcmd );\npCube1.visibility = $isInside;" -o pSphere1 -ae 1 -uc all expression1;

 

Ćwiczenie polega na tym, żeby w pętli odpowiednio zbudować string'a z takim wyrażeniem i użyć komendy 'expression'

 

 

...

 

klatka 80 - mimo, że kula jest między obiektami, przenika ich ściany - nie pokazują się one.

 

Jak to ugryźć?

 

Pozdrawiam!

 

Nie pokazują się, bo środek kuli nie wpada do żadnego z wielościanów (a to właśnie testuje twoje expression).

Odpocznij od tematu, bo gubisz się w zeznaniach :) Mylą ci się obiekty kontrolowane z kontrolującymi, animowane ze statycznymi i kule z szścianami :)

Rozwiązanie masz podane na tacy. Good luck.

Odnośnik do komentarza
Udostępnij na innych stronach

Witam, Cieżka przesiadka na maye. Mam kilka pytań może ktoś wie. W maxie to była jedno klikniecie.

Mam spline chce go extrudowac. Jak to zrobić ? Chodzi mi o architektoniczne rysunki :/ np rama okna .

Mam spline i chce zmniejszyć ilość vertexow czy tez punktow ? w maxie było weld i wartość ?

 

Z gory dzieki !

Odnośnik do komentarza
Udostępnij na innych stronach

Ej czy tylko ja to zauważyłem wiem że zaraz poleje się fala chejtu na mnie że ja tylko na tego maxa ciągle.. ale..

w czym sprawa..

 

Czy tylko ja zauważyłem albo przynajmniej wydaje mi się że ludzie którzy korzystali maxa. mają problem przesiąść się na cokolwiek? z początku wiadome było to że z maxa na blendera jest mega ciężko ale co patrze jakieś tematy ostatnio na forach. to ludzie mają problem z przesiadką na imho wszystko.. a ten temat tylko udowadnia że nawet na maykę jest problem.

Odnośnik do komentarza
Udostępnij na innych stronach

Problem jest bo jest malo szczeglolowych tutoriali ;) no i 10 lat na 3dsmax to teraz ciezko ;). To jak pomozecie ? mam tez problem jak oczyszczac splane z automatu laczyc i usiwac niepotrzebne punkty. Potrzebuje pilnie :P

Odnośnik do komentarza
Udostępnij na innych stronach

mało tutoriali? Czy ja dobrze czytam? w dzisiejszych czasach jest praktycznie tutorial na zrobienie wszystkiego w 10 wersjach :X

a szczególnie chyba do 2 najpopularniejszych programów 3D na rynku ;x

 

mało tutoriali to było jak ja zaczynałem gdzie nauka polegała na klikaniu i patrzeniu co się stanie..

 

niestety nie mam jak ci pomóc bo nie korzystam z mayki ;x ale też mam wplanach nauczenie się jej na ten rok :D

Odnośnik do komentarza
Udostępnij na innych stronach

kontas. co do extrudowania kształtów ze sobą. Nie wiem czy o to Ci chodzi ale chyba opcja: modeling - surface - loft powinna Ci pomoc. http://download.autodesk.com/us/maya/2011help/index.html?url=./files/Surfaces__Loft.htm,topicNumber=d0e251996

 

A spline i zmniejszanie vertexów: modeling - curves - rebuild curve.

 

W ogolę w zakładce curves powinieneś mieć wszystko czego Ci potrzeba, jest też funkcja attach :D

 

I pisze o Maya 2016 we wcześniejszych było trochę inaczej jesli chodzi o interface.

ogólnie krzywe w mayce są średnio fajne.

Odnośnik do komentarza
Udostępnij na innych stronach

A moze ludzie pracujacy na maksie sa po prostu przyzwyczajeni do prostoty, przejrzystosci i intuicyjnosci czego brakuje innym softom?

 

no właśnie mnie to zastanawia dlaczego jest taka sytuacja imho. Nie stawiałbym jednak na to że max jest tak banalnie prosty intuicyjny i tak dalej. ponieważ, 3-4 lata temu. musiałem używać maxa przez miesiąc. I nie powiedziałbym że to było intuicyjne imho. zdecydowanie prościej było mi się nauczyć zbrusha czy Modo. Mi się wydaje że po prostu cały zamysł maxowego UI jest zupełnie inny niż w obecnych softach.

Odnośnik do komentarza
Udostępnij na innych stronach

W zyciu nie robilem arch wiz, a wylacznie animacje do reklam i bardzo mi max pasuje. Napewno nie bede zmienial softu na maya bo zwyczajnie nie widze sensu. Soft podobny tylko inaczej sie go obsluguje.

 

Duzo ludzi szuka zlotego srodka, grunt tylko w tym by sie nie zapedzic w kozi rog z tym szukaniem. Ja wole po prostu robic.

Odnośnik do komentarza
Udostępnij na innych stronach

Czołem!

 

Walczę z opacity w Arnoldzie. Edytuję scenę która była tworzona pod Arnoldem 1.2.3.1 w Mayce z najnowszym Arnoldem 1.4.0.0 (wszystko w Maya 2016). W którejś wersji wyszła opcja "enable_fast_opacity", na samym dole tutaj:

 

https://support.solidangle.com/display/NodeRef/options#options-Synopsis

 

nie mam zielonego pojęcia, gdzie to znaleźć. Chcę się upewnić, że u mnie na pewno jest włączone, czy nie jest przypadkiem tak, że domyślnie włączone jest na nowo utworzonych obiektach/materiałach.

 

Tutaj z kolei info, że w późniejszych wydaniach chcą, żeby zawsze to było włączone (jeśli dobrze rozumiem):

 

https://support.solidangle.com/display/ARP/4.2.7.0

 

Jest możliwe że tego już nigdzie nie ma?

 

Dzięki za info

Odnośnik do komentarza
Udostępnij na innych stronach

Cześć, dzięki za odpowiedź.

 

To jak najbardziej, od samego początku tak to działa. Mi wszystko się renderuje dobrze, tylko długo. Dlatego szukam opcji, o której wspominają w helpie - "enable_fast_opacity". Możliwe jest, że ona już została wciśnięta w Arnolda tak, że nie ma opcji on/off. Ale chciałem potwierdzić jak to wygląda u innych. ;)

Odnośnik do komentarza
Udostępnij na innych stronach

w Arnoldzie też tak mogę zadziałać, problem w tym że nie mogę się dogrzebać do tej konkretnej funkcji "enable_fast_opacity".

Stąd pytanie - czy jest ona już włączona na stałe w późniejszych wersjach programu, czy gdzieś można sprawdzić czy jest włączona/wyłączona dla poszczególnych obiektów?

Odnośnik do komentarza
Udostępnij na innych stronach

Na nurbsach rob. Zrob krzywa jedna druga i extuduj kolko po krzywej.Potem rebuild to surface i spans. Potem convert nurbs to poligons. MOzesz tez sprobowac zagescic przekonwertowac do subdives potem do nurbs. Przebudowac uzywaja rebuild i spowrotem do poligons. Potem mozesz sobie zrobic z na podstawie tych komend z script editora skrypt prosty.

Odnośnik do komentarza
Udostępnij na innych stronach

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