واو . . .
عالی بود .
شاید بتونم به جرات بگم حدود ۷۰ درصد مطالب برام تازگی داشت .
خیلی نیاز داشتم به این آموزش ( خودتون که در جریان بودید ، الان رو ماشینم تست میکنم .
)
حالا این متریال ها چرا مخفی هستن ؟!
اگر واقعا نیاز میشه چرا مخفی ؟!
اون هم برای نمایششون باید بریم اون فایلها را تغییر بدیم !!!
خیلی عجیبه .
دستورات فايل mentalrayCustomNodeClass.mel براي دسته بندي متريالها در پنجره ي Render Node هست
// Internal MentalRay Nodes. Not meant to be used with Maya.
int $enableMIPShaders = (`optionVar -query "MIP_SHD_EXPOSE"`== 1);
if ((($nodeType == "mip_rayswitch" ||
$nodeType == "mip_rayswitch_advanced" ||
$nodeType == "mip_rayswitch_environment" ||
$nodeType == "mip_card_opacity" ||
$nodeType == "mip_motionblur" ||
$nodeType == "mip_matteshadow" ||
$nodeType == "mip_cameramap" ||
$nodeType == "mip_mirrorball" ||
$nodeType == "mip_grayball" ||
$nodeType == "mip_gamma_gain" ||
$nodeType == "mip_render_subset" ||
$nodeType == "mip_matteshadow_mtl" ||
$nodeType == "mip_motion_vector" ||
$nodeType == "mip_binaryproxy") &&
$enableMIPShaders == 0 ) ||
$nodeType == "misss_physical_phen" ||
$nodeType == "mi_metallic_paint_output_mixer" ||
$nodeType == "surfaceSampler" )
return "rendernode/mentalray/internal";
return "";
}
دستور بالا همين دستوري هست كه در فايل mentalrayCustomNodeClass.mel براي دسته بندي متريالهاي mip آورده شده
return "rendernode/mentalray/internal";
اين قسمت از دستور بالا به اين معنا هست كه متريالهاي mip رو در پنجره ي رندر ند در قسمت منتال ري و در تگ internal نمايش بده.
فايل mentalrayCustomNodeUI.mel براي ساختن تك در پنجره ي رندرند و فايل mentalrayCustomNodeUI.res.mel براي نمايش دادن تگها در پنجره ي رندر ند هست. اكه فايل mentalrayCustomNodeUI.mel رو توي notepad باز كني مي بيني كه دستوري براي ايجاد تگ internal وجود نداره و اگه فايل mentalrayCustomNodeUI.res.mel رو توي notepad باز كني مي بيني كه دستوري براي نمايش تگ internal وجود نداره كه اگه
$mrNodeTypeInfo[$index++] = (uiRes("m_mentalrayCustomNodeUI.kinternals"));
$mrNodeTypeInfo[$index++] = "internal";
$mrNodeTypeInfo[$index++] = "rendernode/mentalray/internal";
$mrNodeTypeInfo[$index++] = "-asUtility";
رو به فايل mentalrayCustomNodeUI.mel و دستور
displayString -replace -value "internal" m_mentalrayCustomNodeUI.kinternals;
رو به فايل mentalrayCustomNodeUI.res.mel اضافه كني تگ internal ايجاد شده و در پنجره ي رندر ند نمابش داده مي شه و ديگه نيازي به تغيير دستورات فايل mentalrayCustomNodeClass.mel نيست(همونايي كه تو آموزش گفتم).
حالا چرا اين تگ اصلا در پنجره ي رندر ند وجود نداره شايد شركت Autodesk يادش رفته اين كار رو بكنه
يا شايد به خاطر اينكه ما از نسخه ي غير اصل استفاده مي كنيم يا ...