Render.ru

где команда "коллапс"?

asd 8334

Активный участник
Рейтинг
11
#2
что я имею ввиду...
стек максовский все видели? ну и коллапс тоже...
а где в синьке эта команда, подскажите?
 

asd 8334

Активный участник
Рейтинг
11
#4
навероне непонятно объяснил...
есть обьект, к нему навешен например bend
как теперь преобразовать это в полигоналныю форму?
 

asd 8334

Активный участник
Рейтинг
11
#8
ну не то чтобы закоренелый максист...
просто хочется работать с программой, которая поизящней что ли, проще в конце концов, дружественней к пользователю, ну а макс все равно пригодится
 

mongerholt

Активный участник
Рейтинг
18
#10
я не стесняюс что я максист но в него не вернусь пока в нём ядро не перепишут он своими тормозами кого хош достанет а ядро в нём не перепишут никогда вот и я не вернус .ты перепутал команды едитабл меш в максе то что в синке current state to object
 

ilay7k

Пользователь сайта
Рейтинг
2
#12
1. просто - правый клик на деформ.объекте make editable
2. или совет дяди-Влади/H.S./ - сохраняешь объект+деформер
3. или если группа объектов под нуль-объектом использ-шь скрипт Group Connect-копирайты сохранены(листинг ниже):
window->script mang-r->вставка скрипта(обзыва-шь Group Connect).... находишь его в plug-s->user scrips->Group Connect - вот и все... если кто не знал

// Group Connect v1.0
// -------------------
// Group Connect is a script that will convert a grouped selection
// of objects into a single polygon mesh including materials
// using Selection Tags to assign each polygon a seperate texture.
//
// Created by Ian Gorse 12 October 2006
// http://www.iangorse.co.uk/
// Recursive method to create a selection tag for each object
// ==========================================================
// child: The current object in hiearchy
CreateSelection(child)
{
while(child)
{
child->SetBit(BIT_AOBJ); // Select the object
CallCommand(13323); // Select All polygons
// Only create a selection tag if this object has polygons
if(child->GetType()==Opolygon)
{
// Creates a selection tag for this object
// It names the selection tag the same name as the object
var selection = new(BaseSelect);
selection = child->GetPolygonSelection();
var tag = new(PolygonSelectionTag);
tag->SetSelection(selection);
tag->SetName(child->GetName());
child->InsertTag(tag);
}
CallCommand(13324); // Deselect all polygons
child->DelBit(BIT_AOBJ); // Deselect the object
CreateSelection(child->GetDown());
child=child->GetNext();
}
}
// Just a method to start the selectio
// Its on its own function because I had other plans, but I made a workaround with a Hack (below)
StartSelectionProcess(op)
{
CreateSelection(op);
}
// Attempts to find a texture tag on the passed object
// If it doesn't find one, it will check its parents object
// and use that instead
// ==========================================================
// op: The object to check for a texture tag
FindTextureTag(op)
{
if(!op) return NULL;
// Search for a texture tag on this object
var tag = op->GetFirstTag();
var searching = TRUE;
var returntag;
while(tag && searching)
{
if(tag->GetType()==Ttexture)
{
// Found a texture tag
returntag = tag;
searching=FALSE;
}
tag=tag->GetNext();
}
// Could not find Texture Tag, attempt to find inherited texture tag
if(!returntag)
{
returntag = FindTextureTag(op->GetUp());
}
return returntag;
}
// Recursive method to find texture tags on each object
// =====================================================
// op: The object to apply the texture onto
// child: The selected object and its children
CreateMaterial(op,child)
{
while(child)
{
// Search for a texture tag on this object
var tag = FindTextureTag(child);
if(tag)
{
// Make a copy
var newtag = tag->GetClone();
newtag#TEXTURETAG_RESTRICTION=child->GetName();
op->InsertTag(newtag);
}
CreateMaterial(op,child->GetDown());
child=child->GetNext();
}
}
main(doc,op)
{
// Cals the Current State To Object command on the selected object
var bc = new(BaseContainer);
SendModelingCommand(MCOMMAND_CURRENTSTATETOOBJECT, doc, op, bc, MODIFY_ALL);
// The new editable object is automatically added to the document.
// Keep track of it here so I can remove it later
var newop = doc->GetActiveObject();
// Make sure the polygon tool is selected
CallCommand(12187);
// Start the polygon selection process
newop->DelBit(BIT_AOBJ); // De-select the cloned object first
StartSelectionProcess(newop);
newop->SetBit(BIT_AOBJ);
// HACK -- To avoid any hierarchy issues, Im just grouping everything up
// -- I'm taking advantage that the Connect command returns a polygon object only
var nullop = new(NullObject);
nullop->SetName(newop->GetName());
doc->InsertObject(nullop,NULL,NULL);
// Move the current state to object under the null objet
newop->Remove();
newop->InsertUnder(nullop);
// Select the nullobject
nullop->SetBit(BIT_AOBJ);
// Creates a texture tag for each polygon selection
CreateMaterial(nullop,op);
CallCommand(16388); // Select Children
CallCommand(12144); // Connect
// Remove the new grouped object
nullop->Remove();
}
 
Сверху