Anim8or Community

Please login or register.

Login with username, password and session length
Advanced search  

News:

An update to Anim8or, v1.00b, is available with a few bug fixes. Get your copy HERE. See the "ReadMe" file for details.

Pages: 1 ... 4 5 [6] 7 8 ... 10
 51 
 on: June 26, 2020, 05:22:43 pm 
Started by ronaldefarmer - Last post by ronaldefarmer
I didn't have time to model anything serious, so I did this just for fun.


 52 
 on: June 26, 2020, 12:45:52 pm 
Started by olan - Last post by olan
tnx and Yeah I will

 53 
 on: June 25, 2020, 05:32:25 pm 
Started by Trevor - Last post by Steve
Nice job. I know it's more work to implement it this way. Maybe someday I'll get recursion done!

 54 
 on: June 25, 2020, 11:08:03 am 
Started by ttsnim - Last post by ttsnim
They are technically the same face, Trev. One was the very first subdivision I did. I worked it for a couple of days trying hard to understand facial anatomy after that horror. 
Unfortunately I have discovered the loops are all wrong for expressions and will have to start from scratch!
Next head should be even better.

 55 
 on: June 25, 2020, 11:06:04 am 
Started by olan - Last post by ttsnim
Those look pretty neat. Will you be animating them?

 56 
 on: June 25, 2020, 06:52:51 am 
Started by olan - Last post by olan
simple modeling with cube.smooth and subdivision face

 57 
 on: June 24, 2020, 08:41:42 pm 
Started by ttsnim - Last post by Trevor
oh, nice, I actually like the one on the left (youl probably tell me there both the same :P) :)

Trev

 58 
 on: June 24, 2020, 08:29:07 pm 
Started by Trevor - Last post by Trevor
YAY, I managed to implement my own recursion in an8 script :)

this is the specific function;
Code: [Select]
int $ParseChildren(shape $Shape)
{
// Set up Stacks instead of normal vars
int   $si[0];
shape $sShape[0];
int   $Result, $i, $j;
shape $CurShape, $ChildShapes[0];

//Push Shape to stack
$sShape.push($Shape);
//Push Stacked Counter
$si.push(0);

$Result = true;

//While shapes are on stack and result is still true (No Fail)
while ($sShape.size && $Result)
{
//Get current shape
$CurShape = $sShape.pop;

if ($CurShape.GetKind() == SHAPE_KIND_GROUP)
{
//Recursion would happen here
// $ParseChildren($CurShape)
// however ...

//Get Children
$CurShape.GetShapes($ChildShapes);
$DebugPrint("getting Children " + $CurShape.name);

$i = $si.pop; //get last i off stack
$DebugPrint(PrintToString("getting i %d, stacksize %d ", $i, $si.size));

if ($i < $ChildShapes.size)
{
$DebugPrint("Parsing Children " + $CurShape.name);
//Has Children, traverse tree
$sShape.push($CurShape); //Push current Node to stack
$sShape.push($ChildShapes[$i]); //push next Node to stack
$DebugPrint("pushing child  " + $ChildShapes[$i].name);

if(!($StringContains($ChildShapes[$i].name, "BSP")))
{
$PrintTree.push("-"+$ChildShapes[$i].name);
for ($j = 1; $j < $sShape.size; $j++)
{
$PrintTree[$PrintTree.size - 1] = "\t|" + $PrintTree[$PrintTree.size - 1];
}
}


$i++;
$si.push($i); //Push(save) current nodes counter to counter stack
$DebugPrint(PrintToString("getting i %d, stacksize %d ", $i, $si.size));
if ($ChildShapes[$i-1].GetKind() == SHAPE_KIND_GROUP)
{
$si.push(0); //Stack new counter
$DebugPrint(PrintToString("accidental infinit group? getting i %d, stacksize %d ", $i, $si.size));
}
}
else
{
$DebugPrint("end of branch");
//reached end of branch
$C_File.print("/*\n");
$C_File.print("* Group: \n");
$C_File.print("*        Name      = %s\n", $CurShape.name);
$C_File.print("*        Objects   = %d\n", $ChildShapes.size);
$C_File.print("*/\n");

$C_File.print("static Gfx %s_dl[] = {\n", $CurShape.name);
for ($i = 0; $i < $ChildShapes.size; $i++)
{
if ($StringContains($ChildShapes[$i].name, "BSP"))
{
$ParseBSPNode($ChildShapes[$i]);
}
else
{
$C_File.print("    gsSPDisplayList(&%s_dl),\n", $ChildShapes[$i].name);
}
}

$C_File.print("    gsSPEndDisplayList(),\n};\n\n");



}
}
else if ($CurShape.GetKind() == SHAPE_KIND_PATH ||
$CurShape.GetKind() == SHAPE_KIND_MODIFIER ||
$CurShape.GetKind() == SHAPE_KIND_TEXT)
{
/* No 3D mesh to output. */
}
else
{
//Print mesh
if ($StringContains($CurShape.name, "BSP"))
{
//Do Nothing
}
else
{
$Result = $GenerateArray($CurShape);
//$PrintTree.push( PrintToString("%s", $CurShape.name));
}
}


}
return $Result;
}

 59 
 on: June 22, 2020, 03:48:11 pm 
Started by davdud101 - Last post by Kevin Gales
You can connect any two points in a mesh with the "Add Edge" tool. Click on the first point, press the Ctrl key, and drag to the second point. See Adding Points and Edges in the manual.

Oops! The manual doesn't show the Ctrl option that I mentioned!!! But it works. I'll update the manual!
Mine works with double click and drag (on touchpad)...or left click mouse button...also "double tap and drag" on touch screen

 60 
 on: June 22, 2020, 03:17:22 pm 
Started by davdud101 - Last post by Steve
You can connect any two points in a mesh with the "Add Edge" tool. Click on the first point, press the Ctrl key, and drag to the second point. See Adding Points and Edges in the manual.

Oops! The manual doesn't show the Ctrl option that I mentioned!!! But it works. I'll update the manual!

Pages: 1 ... 4 5 [6] 7 8 ... 10