Changeset View
Changeset View
Standalone View
Standalone View
source/blender/blenkernel/intern/collision.c
| Show First 20 Lines • Show All 525 Lines • ▼ Show 20 Lines | Object **get_collisionobjects_ext(Scene *scene, Object *self, Group *group, unsigned int *numcollobj, unsigned int modifier_type, bool dupli) | ||||
| if (group) { | if (group) { | ||||
| /* use specified group */ | /* use specified group */ | ||||
| for (go= group->gobject.first; go; go= go->next) | for (go= group->gobject.first; go; go= go->next) | ||||
| add_collision_object(&objs, &numobj, &maxobj, go->ob, self, level, modifier_type); | add_collision_object(&objs, &numobj, &maxobj, go->ob, self, level, modifier_type); | ||||
| } | } | ||||
| else { | else { | ||||
| Scene *sce_iter; | Scene *sce_iter; | ||||
| /* add objects in same layer in scene */ | /* add objects in same layer in scene */ | ||||
| for (SETLOOPER(scene, sce_iter, base)) { | for (SETLOOPER(scene, NULL, sce_iter, base)) { | ||||
| if ((base->flag & BASE_VISIBLED) != 0) { | if ((base->flag & BASE_VISIBLED) != 0) { | ||||
| add_collision_object(&objs, &numobj, &maxobj, base->object, self, level, modifier_type); | add_collision_object(&objs, &numobj, &maxobj, base->object, self, level, modifier_type); | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| *numcollobj= numobj; | *numcollobj= numobj; | ||||
| ▲ Show 20 Lines • Show All 51 Lines • ▼ Show 20 Lines | if (group) { | ||||
| for (go= group->gobject.first; go; go= go->next) | for (go= group->gobject.first; go; go= go->next) | ||||
| add_collider_cache_object(&objs, go->ob, self, 0); | add_collider_cache_object(&objs, go->ob, self, 0); | ||||
| } | } | ||||
| else { | else { | ||||
| Scene *sce_iter; | Scene *sce_iter; | ||||
| Base *base; | Base *base; | ||||
| /* add objects in same layer in scene */ | /* add objects in same layer in scene */ | ||||
| for (SETLOOPER(scene, sce_iter, base)) { | for (SETLOOPER(scene, NULL, sce_iter, base)) { | ||||
| if (!self || ((base->flag & BASE_VISIBLED) != 0)) | if (!self || ((base->flag & BASE_VISIBLED) != 0)) | ||||
| add_collider_cache_object(&objs, base->object, self, 0); | add_collider_cache_object(&objs, base->object, self, 0); | ||||
| } | } | ||||
| } | } | ||||
| return objs; | return objs; | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 840 Lines • Show Last 20 Lines | |||||