509 |
|
} |
510 |
|
/* double link */ |
511 |
|
pp = &mp->patch[pn[i=0]]; |
512 |
< |
if (pp->nj2tris >= 256) |
512 |
> |
if (mp->patch[pn[1]].nj2tris < pp->nj2tris) |
513 |
|
pp = &mp->patch[pn[i=1]]; |
514 |
< |
if (pp->nj2tris >= 256) |
514 |
> |
if (mp->patch[pn[2]].nj2tris < pp->nj2tris) |
515 |
|
pp = &mp->patch[pn[i=2]]; |
516 |
|
if (pp->nj2tris >= 256) |
517 |
|
error(INTERNAL, "too many patch triangles in addmeshtri"); |
578 |
|
return("unbounded scene in mesh"); |
579 |
|
if (mp->mat0 < 0 || mp->mat0+mp->nmats > nobjects) |
580 |
|
return("bad mesh modifier range"); |
581 |
+ |
if (mp->nmats > 0) /* allocate during preload_objs()! */ |
582 |
+ |
getmeshpseudo(mp, mp->mat0); |
583 |
|
for (i = mp->mat0+mp->nmats; i-- > mp->mat0; ) { |
584 |
|
int otyp = objptr(i)->otype; |
585 |
|
if (!ismodifier(otyp)) { |