Skocz do zawartości

Szczwana selekcja - Pytanie do PROuserów :)


Rekomendowane odpowiedzi

Napisano

Witam,

 

Mam kilkadziesiac elementow. Kazdy ma inny kształt. Kazdy sklada sie z kilku tysiecy mniejszych fragmentów (pocietych w RayFire). Potrzeba mi z nich zdjąć "warstwe zewnętrzną". Glowie sie nad tym od wczoraj i mysle ze trzeba bedzie zahaczyc o maxscript, jednak nie wiem zbytnio jaki utworzyc warunek selekcji. Jednak wolalbym maxscripta nei ruszac, nie jestem w tym biegly. Reczne usuwanie to kilkudniowe katorga. Oto screen o co mi dokladnie chodzi (oproszczone oczywiscie, interesuje mnie by pozostaly tylko elementy czerwone):

 

przedpo.png

 

 

Uploaded with ImageShack.us

  • Odpowiedzi 7
  • Created
  • Ostatniej odpowiedzi

Top Posters In This Topic

Popular Days

Top Posters In This Topic

Napisano

Jezeli to co chcesz zaznaczyc ma konkretny material (jesli rayfire przydziela nowe dla partii wewnetrznych, zniszonych), to mozesz po materiale.

 

Mozesz zaznaczac obiekty w czasie animacji?

Napisano
Jezeli to co chcesz zaznaczyc ma konkretny material (jesli rayfire przydziela nowe dla partii wewnetrznych, zniszonych), to mozesz po materiale.

 

Mozesz zaznaczac obiekty w czasie animacji?

 

Rayfire moze ewentulanie przydzielic material nowo powstalym elementom przy cieciu, bez zadnych warunkow niestety.

 

Moge wybierac sobie obiekty podczas animacji. Chcialbym wlasnie tego uniknac bo to paskudna reczna robota i zajelaby mi prawdopodobnie caly weekend :)

 

- - - Połączono posty - - -

 

Licze bardziej na cos w stylu: select visible to camera :)

 

P.S. ten czerwony kolor to do podgladu o co mi chodzi

Napisano

Cześć.

 

Nie bardzo wiem w jakiej to jest formie, ale jakbyś połączył to wszystko w jeden obiekt editable poly, zaznaczył sub-object "element" i pobawił się zaznaczaniem z "ignore backfacing" to może coś z tego wyjdzie?

Strzelam, nie wiem czy to się uda- a nie mam jak sprawdzić w tym momencie ;)

 

albo jeszcze inaczej - zaznacz sobie widoczne polygony (właśnie za pomocą ignore backfacing) i potem ctrl + click na podgrupę "element".

Napisano

@Miłosz3ds - Tez tak myslalem z poczatku. Jednak ignore backfacing to jest troszke inna opcja i zwraca tylko uwage, w ktora strone patrza fejsy. W efekcie zaznaczasz fejsy patrzace w strone kamery, a nie widoczne w kamerze - pamietam ze mialem kiedys z tym juz problem.

Napisano

Cholera, masz rację. Pomyliłem kwestię - myślałem, że rzeczywiście są interpretowane fejsy od strony kamery, ale byłem przekonany, że działa to też na przysłaniające się polygony - tzn. jak jeden zasłania drugi - to ten zasłonięty nie jest zaznaczany.

Mój błąd. Pomyślę jeszcze i jak na coś wpadnę to napisze, pozdrawiam! :)

Napisano

Heh, wyobrazam sobie, ze jakis skrypt sprawdza bounding box calego obiektu, pozniej kazdego fragmentu i ich polozenia w przestrzeni. Na zasadzie porownania wspolrzednych zaznacza te, ktore sa najblizej krawedzi obiektu, zdejmujac zewnetrzna warstwe;)

 

Duza abstrakcja ;)

Napisano

Udało się! Odpowiedz znaleziona na AreaAutodesk, Oto rezultat i o co mi chodzilo:

 

dzialae.png

 

Naprawde ciekawe, prawda? Oto skrypt, który dokładnia działa jak "Select Visible" - juz wyladowal u mnie na shelfie.

 

-----------------------

visobj = #()

 

for obj = 1 to $objects.count do

(

$objects[obj].gbufferChannel = obj

)

 

preferences.maximumGBufferLayers = 1

bitmapsize = 320

bm = bitmap bitmapsize bitmapsize channels:#(#objectID)

render bitmapsize bitmapsize to:bm channels:#(#objectID)

 

for j=0 to bitmapsize-1 do

(

for k=0 to bitmapsize-1 do

(

Test = getchannel bm [j,k] #objectID

TestString = Test as string

TestString = trimleft TestString "#("

TestString = trimright TestString ")"

testasnumber = TestString as integer

if (TestString !="0") then(appendIfUnique visobj $objects[testasnumber])

)

)

select visobj

-------------------------------------

 

P.S. http://area.autodesk.com/forum/autodesk-3ds-max/maxscript/solved-select-objects-visible-to-camera/page-1/ a to link z calym tematem

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