NodeTree: Add eevee default shader tree.

This commit is contained in:
Clément Foucault 2017-05-02 19:55:02 +02:00
parent a740495814
commit 5570ba9c4f
3 changed files with 15 additions and 0 deletions

View File

@ -153,6 +153,7 @@ bool BKE_scene_use_spherical_stereo(struct Scene *scene);
bool BKE_scene_uses_blender_internal(const struct Scene *scene);
bool BKE_scene_uses_blender_game(const struct Scene *scene);
bool BKE_scene_uses_blender_eevee(const struct Scene *scene);
void BKE_scene_disable_color_management(struct Scene *scene);
bool BKE_scene_check_color_management_enabled(const struct Scene *scene);

View File

@ -111,6 +111,7 @@
const char *RE_engine_id_BLENDER_RENDER = "BLENDER_RENDER";
const char *RE_engine_id_BLENDER_GAME = "BLENDER_GAME";
const char *RE_engine_id_BLENDER_CLAY = "BLENDER_CLAY";
const char *RE_engine_id_BLENDER_EEVEE = "BLENDER_EEVEE";
const char *RE_engine_id_CYCLES = "CYCLES";
void free_avicodecdata(AviCodecData *acd)
@ -1791,6 +1792,11 @@ bool BKE_scene_uses_blender_game(const Scene *scene)
return STREQ(scene->r.engine, RE_engine_id_BLENDER_GAME);
}
bool BKE_scene_uses_blender_eevee(const Scene *scene)
{
return STREQ(scene->r.engine, RE_engine_id_BLENDER_EEVEE);
}
void BKE_scene_base_flag_to_objects(SceneLayer *sl)
{
Base *base = sl->object_bases.first;

View File

@ -397,6 +397,14 @@ void ED_node_shader_default(const bContext *C, ID *id)
Material *ma = (Material *)id;
ma->nodetree = ntree;
if (BKE_scene_uses_blender_eevee(scene)) {
out = nodeAddStaticNode(C, ntree, SH_NODE_OUTPUT_METALLIC);
out->locx = 300.0f; out->locy = 300.0f;
nodeSetActive(ntree, out);
ntreeUpdateTree(CTX_data_main(C), ntree);
return;
}
if (BKE_scene_use_new_shading_nodes(scene)) {
output_type = SH_NODE_OUTPUT_MATERIAL;
shader_type = SH_NODE_BSDF_DIFFUSE;