Zawartość dodana przez lechoo
-
RC Menu
To podobno dlatego ze RCmenu zostalo zastapione przez quad menu. U mnie jest ten sam problem. Quad menu dziala bez zarzutu.
-
Plug-in - jak pisać....
Nie trzeba, SDK jest na pierwszej plycie :) Tylko trzeba wybrac w czasie instalacji, bo nie instaluje sie domyslnie.
-
Plug-in - jak pisać....
Najlepiej zajrzyj do przykladow ktore sa razem z maxsdk, sa tam zrodla czesci obiektow z maxa: teapot, geosphere itp.
-
możliwości widoku fpp w 3dstudio
Tutaj niestety Ci nie pomoge :D Chyba nawet nie ma wersji demo.
-
możliwości widoku fpp w 3dstudio
Powinienes zainteresowac sie Virtoolsem, tam takie rzeczy robi sie bez problemu. http://www.virtools.com/ Mozesz wykorzystywac dowolne urzadzenie do poruszania sie po scenie, dodatkowo jest mozliwosc wlaczenia roznych interakcji i calej masy innych fajnych rzeczy. Najlepiej obejrzyj przyklady na stronie Virtoolsa.
-
Skrypty a linia polecen
Juz wiem! W ten sposob mozesz podejrzec nazwy wszystkich dostepnych parametrow: lista = getpropnames vray for i in 1 to lista.count do print lista Znajac ich nazwy w np. taki sposob mozesz ustawiac poszczegolne opcje: renderers.current.gi_irradmap_minRate = 12
-
Skrypty a linia polecen
hehe, faktycznie chyba niedoczytalem :) Co do VRaya to niektorymi parametrami napewno tak, jakis czas temu Adek dal w newsach linka do skrytpu VRay Automator v0.55 http://www.metinseven.com/menu_goodies.htm
-
Skrypty a linia polecen
Z tego co wiem to nie, mozna jedynie okreslic jakie skrypty beda wykonywane kiedy max sie uruchamia. Wydaje mi sie ze wystarczy wrzucic je do katalogu max_root\\scripts\\startup Najlepiej zajrzyj do helpa pod haslo Startup Script. Co do Brazila to niestety nie moge pomoc bo jakis czas temu przerzucilem sie na VRay\'a :D
-
\"Llinkowanie\" obiektow
Zajrzyj do tego tematu: http://www.max3d.pl/forum/viewthread.php?tid=6201&page=1#pid70504 To jest chyba dokladnie to o co Ci chodzi, tyle ze zamiast wiazac pozycje vertexa do dummiego powiazesz orientacje dwoch obiektow. Kiedy dodasz registerTimeCallback, skrypt bedzie wykonywal sie przy kazdej zmianie timeslidera.
-
\"Llinkowanie\" obiektow
Moze wykorzystaj Script Controller. W okienku kontrolera wpisujesz zwykly skrypt ktory steruje obrotami obiektu. Jesli masz np dwa boxy i w okienku kontrolera drugiego (czyli Box02) wpiszesz $Box01.rotation, to bedzie sie obracal dokladnie tak samo jak pierwszy. Jak nie bedzie dzialac tak jak chcesz, albo wolisz tradycyjnego skrypta to pisz i cos sie wymysli :)
-
\"Llinkowanie\" obiektow
Zaznaczasz obiekt, klikasz na nim prawym klawiszem myszki i wybierasz Wire Parameters.
-
Pytanie o rozmieszczanie obiektow
I jeszcze kod. surf = $Plane01 attach_obj = $Cylinder01 attach_vert = 25 lookatdummy = $Dummy01 for i=animationrange.start to animationrange.end do ( animate on ( at time i attach_obj.pos = (getvert surf attach_vert) at time i my_matrix = matrixFromNormal (getNormal surf attach_vert) my_matrix.row4 = (at time i getvert surf attach_vert) at time i in coordsys my_matrix lookatdummy.pos = [0,0,20] ) ) Wiem, napisane okropnie ale chcialem tylko sprawdzic czy ta metoda bedzie dzialac. LookAt przypisalem juz recznie z maxa ale skryptem tez oczywiscie sie da zrobic.
-
Pytanie o rozmieszczanie obiektow
Pewnie mozna to zrobic na mase sposobow ale ja wymyslilem cos takiego: najpierw nalezy ustawic w kazdej ramce obiekt na pozycji vertexa, czyli mamy juz pozycje. Teraz orientacja. Bierzemy normalna vertexa, przeksztalcamy ja na macierz transformacji (chyba tak sie to nazywa :)). Mowiac po ludzku musimy z uzyskac jakis lokalny uklad wspolrzednych zwiazany z normalna. Teraz w tym ukladzie na osi Z ustawiamy dummiego. Dzieki temu ze uklad jest zwiazany z normalna, dummy bedzie zawsze znajdowal sie dokladnie na normalnej. Teraz wystarczy przypisac zlinkowanemu do vertexa obiektowi kontroler LookAt w ktorym celem bedzie dummy. Dzieki temu obiekt bedzie \"kiwal\" sie razem z normalna. Pod tym linkiem wrzucilem przykladowa scene: wave.zip
-
rollout
Wtedy musisz odwolac sie do slidera w innym rolloucie przez nazwe tego rolloutu np. nazwa_rolloutu.slider_a.value = 23 Zerknij tez na ten watek: http://www.max3d.pl/forum/viewthread.php?tid=9130
-
Rotacje w MaxScripcie
eee to zwykla geometria, tylko xyz, zadnych matrixow nie trzeba uzywac.
-
rollout
Obsluga buttona musi byc w tym samym rolloucie co jego definicja. rollout a \"Rollout A\" ( button a1 \"a1\" on a1 pressed do ... )
-
Nie moge modyfikowac krzywych NURBS, co jest nie tak?
Ostatnio mialem podobny problem, rozwiazalem to tak: move NURBS_curve.curveCVs[n] [x,y,z] Cos takiego: NURBS_curve.curveCVs.pos nie dzialalo jesli dobrze pamietam, ale pierwsza opcja powinna wystarczyc.
-
Rotacje w MaxScripcie
Powiedzmy ze oba wektory pokrywaja sie z osiami Z cylindrow. W pierwszym obierasz np. punkt [0,0,10]. Nastepnie wyznaczasz wspolrzedne tego punktu we wspolrzednych sferycznych drugiego cylindra. Dostajesz katy fi i teta czyli to czego potrzebujesz. Mam nadzieje ze za bardzo nie zagmatwalem :) Wydaje mi sie ze chyba jest jeszcze jakas metoda wektorowa, powinno byc w kazdej ksiazce o grafice 3d.
-
custAttributes.add
To powinno dzialac: ABC = attributes parametr ( --tu np. slider? ) custAttributes.add $Box01 ABC
-
Dziwny problem ze scriptem
Musisz zamienic miejscami rozm_roll i ob_roll. Najpierw ten w ktorym zdefiniowane sa spinnery a potem ten w ktorym sie do nich odwolujesz. Nie wiem czemu tak, max script ma takie rozne fanaberie :) Przerobiony skrypt wyglada tak: rollout rozm_roll \"Dlugosc, Szerokosc, Wysokosc\" width:160 height:184 ( Spinner l \"Length: \"range:[0,999,30] type:#float Spinner w \"Width: \"range:[0,999,30] type:#float Spinner h \"Height: \"range:[0,999,30] type:#float ) rollout ob_roll \"Obiekt\" width:160 height:184 ( radiobuttons rdo2 pos:[35,20] width:49 height:46 labels:#(\"Poly\", \"Mesh\") default:1 label lb2 \"Create Box, convert to Edit Tablet: \" pos:[10,45] button b1 \"Do It\" pos:[70,70] on b1 pressed do ( pot = box length:rozm_roll.l.value width:rozm_roll.w.value height:rozm_roll.h.value pot.name = \"Box01\" ) ) rollout opcje_roll \"Opcje\" width:160 height:184 ( ) rollout info_roll \"Info\" width:160 height:64 ( label lbl2 \"Autor: CoRnS\" pos:[16,32] width:136 height:16 ) mainfloater = newRolloutFloater \"Creator\" 201 240 addrollout ob_roll mainfloater addrollout rozm_roll mainfloater addrollout opcje_roll mainfloater addrollout info_roll mainfloater
-
Dziwny problem ze scriptem
Mozna to zrobic jeszcze inaczej. Wystarczy odwolac sie do spinera przez nazwe rolloutu czyli np. rozm_roll.l.value. Wtedy wartosc ta powinna byc widoczna w innych rolloutach.
-
Dziwny problem ze scriptem
To tylko literowki. W definicji spinerow brakuje dwukropkow po range, powinno byc: Spinner l \"Length: \"range:[0,999,30] type:#float I dalej jeszcze w labelu lbl2, gdzie powinno byc pos:[16,32] zamiast pos16,32]
-
help me !
Niestety jedyna jaka znam jest po angielsku (MAX Script & the SDK for 3d studio max). Jakis czas temu Adek napisal kilkuczesciowy kurs max scriptu ale nie moge go nigdzie znalesc. Adek, odezwij sie!! Moze wrzuc go do dzialu z tutorialami.
-
Kurs MAX Script - temat 7 - podsumowanie
Mysle ze nie ma sensu ciagnac kursu na sile, gdyby frekwencja miala byc wieksza to pewnie by byla. Kurs trwa juz od jakiegos czasu, wiec to chyba nie jest kwestia odpowiedniego rozgloszenia. Tak czy inaczej mam nadzieje ze pare osob na tym skorzystalo, ja tez sie troche nauczylem sprawdzajac te wszystkie skrypty.
-
Kurs MAX Script - temat 7 - podsumowanie
Autor: VGTsXVII macroscript zegar category:\"kurs maxscript\" tooltip:\"Zegar\" ( local obiekt1 local obiekt2 rollout roll \"clock\" ( pickbutton pierwszy \"pick_minuty\" width:75 height:30 pickbutton drugi \"pick_godziny\" width:75 height:30 spinner godz \"Godz:\" range:[0,23,0] align:#center fieldwidth:30 type:#integer across:2 spinner min \"Min:\" range:[0,59,0] align:#center fieldwidth:30 type:#integer across:1 checkbox kierunek \"przod / tyl\" checked:true align:#center radiobuttons os labels:#(\"X\",\"Y\",\"Z\") button start \"ustaw\" on pierwszy picked obj do ( obiekt1=obj pierwszy.text = obj.name ) on drugi picked obj do ( obiekt2=obj drugi.text = obj.name ) on start pressed do undo on ( --obracanie wskazowki minut wart_obrot = min.value*6+godz.value*360 if kierunek.checked == true then wart_obrot = -wart_obrot if os.state == 1 then rotate obiekt1 wart_obrot x_axis if os.state == 2 then rotate obiekt1 wart_obrot y_axis if os.state == 3 then rotate obiekt1 wart_obrot z_axis --obracanie wskazowki godzin wart_obrot = godz.value*30+min.value*0.5 if kierunek.checked == true then wart_obrot = -wart_obrot if os.state == 1 then rotate obiekt2 wart_obrot x_axis if os.state == 2 then rotate obiekt2 wart_obrot y_axis if os.state == 3 then rotate obiekt2 wart_obrot z_axis destroydialog roll completeredraw() ) ) createdialog roll width:200 height:200 ) W tym skrypcie zwroccie uwage na checkboxa \"przod / tyl\". Dzieki niemu mozna zmienic kierunek obrotu wskazowek co moze byc bardzo przydatne.