| # | Line 121 | Line 121 | int mod; | |
|---|---|---|
| 121 | /* check for infinite loop */ | |
| 122 | if (depth++ >= MAXLOOP) | |
| 123 | objerror(r->ro, USER, "possible modifier loop"); | |
| 124 | + | r->rt = r->rot; /* set effective ray length */ |
| 125 | for ( ; mod != OVOID; mod = m->omod) { | |
| 126 | m = objptr(mod); | |
| 127 | /****** unnecessary test since modifier() is always called | |
| # | Line 136 | Line 137 | int mod; | |
| 137 | raytrans(r); | |
| 138 | return; | |
| 139 | } | |
| 140 | < | if (m->otype != MAT_ILLUM) |
| 140 | > | if (!islight(m->otype)) |
| 141 | m = &Lamb; | |
| 142 | } | |
| 143 | (*ofun[m->otype].funp)(m, r); /* execute function */ | |
| – | Removed lines |
| + | Added lines |
| < | Changed lines (old) |
| > | Changed lines (new) |