Fix missing mapping and influence panel for particles when cycles is selected

as render engine. Still missing is colors and texture slots, but that's too
tricky to fix this close to release.
This commit is contained in:
Brecht Van Lommel
2012-12-07 11:30:40 +00:00
parent 4fd9df25c6
commit 369b9fcf0f
2 changed files with 11 additions and 3 deletions

View File

@@ -1026,6 +1026,8 @@ def get_panels():
bpy.types.TEXTURE_PT_voxeldata,
bpy.types.TEXTURE_PT_pointdensity,
bpy.types.TEXTURE_PT_pointdensity_turbulence,
bpy.types.TEXTURE_PT_mapping,
bpy.types.TEXTURE_PT_influence,
bpy.types.PARTICLE_PT_context_particles,
bpy.types.PARTICLE_PT_emission,
bpy.types.PARTICLE_PT_hair_dynamics,

View File

@@ -822,12 +822,12 @@ int buttons_context(const bContext *C, const char *member, bContextDataResult *r
ButsContextTexture *ct = sbuts->texuser;
PointerRNA *ptr;
if (ct)
return 0; /* new shading system */
if ((ptr = get_pointer_type(path, &RNA_Material))) {
Material *ma = ptr->data;
if (ct)
return 0; /* new shading system */
/* if we have a node material, get slot from material in material node */
if (ma && ma->use_nodes && ma->nodetree) {
/* if there's an active texture node in the node tree,
@@ -848,12 +848,18 @@ int buttons_context(const bContext *C, const char *member, bContextDataResult *r
else if ((ptr = get_pointer_type(path, &RNA_Lamp))) {
Lamp *la = ptr->data;
if (ct)
return 0; /* new shading system */
if (la)
CTX_data_pointer_set(result, &la->id, &RNA_LampTextureSlot, la->mtex[(int)la->texact]);
}
else if ((ptr = get_pointer_type(path, &RNA_World))) {
World *wo = ptr->data;
if (ct)
return 0; /* new shading system */
if (wo)
CTX_data_pointer_set(result, &wo->id, &RNA_WorldTextureSlot, wo->mtex[(int)wo->texact]);
}