Bool ApplinkImporter::CreateChannelNormal(long i, BaseMaterial* mat) { if(this->matArray[i].norm_map != "") { BaseChannel *color = mat->GetChannel(CHANNEL_NORMAL); if (!color) return false; GeData b; mat->GetParameter(DescID(MATERIAL_USE_NORMAL), b, DESCFLAGS_GET_0); if(!b.GetBool()) mat->SetParameter(DescID(MATERIAL_USE_NORMAL), true, DESCFLAGS_SET_0); mat->SetParameter(DescID(MATERIAL_NORMAL_REVERSEY), true, DESCFLAGS_SET_0); BaseContainer cdata = color->GetData(); if (this->matArray[i].useTextures) { //GePrint ("Material Use texture: " + this->matArray[i].map_Kd); cdata.SetString(BASECHANNEL_TEXTURE, this->matArray[i].norm_map); cdata.SetFilename(BASECHANNEL_SUGGESTEDFOLDER, this->pSet.tempPath); } color->SetData(cdata); } return true; }
Bool ApplinkImporter::CreateChannelDisplacement(long i, BaseMaterial* mat) { if(this->matArray[i].disp_map != "") { BaseChannel *color = mat->GetChannel(CHANNEL_DISPLACEMENT); if (!color) return false; GeData b; mat->GetParameter(DescID(MATERIAL_USE_DISPLACEMENT), b, DESCFLAGS_GET_0); if(!b.GetBool()) mat->SetParameter(DescID(MATERIAL_USE_DISPLACEMENT), true, DESCFLAGS_SET_0); BaseContainer cdata = color->GetData(); //GePrint("disp: " + RealToString(this->matArray[i].disp_k)); mat->SetParameter(DescID(MATERIAL_DISPLACEMENT_STRENGTH), this->matArray[i].disp_k/100, DESCFLAGS_SET_0); if (this->matArray[i].useTextures) { //GePrint ("Material Use texture: " + this->matArray[i].map_Kd); cdata.SetString(BASECHANNEL_TEXTURE, this->matArray[i].disp_map); cdata.SetFilename(BASECHANNEL_SUGGESTEDFOLDER, this->pSet.tempPath); } color->SetData(cdata); } return true; }
Bool ApplinkImporter::CreateChannelSpecular(long i, BaseMaterial* mat) { if(this->matArray[i].map_Ks != "") { BaseChannel *color = mat->GetChannel(CHANNEL_SPECULARCOLOR); if (!color) return false; GeData b; mat->GetParameter(DescID(MATERIAL_USE_SPECULARCOLOR), b, DESCFLAGS_GET_0); if(!b.GetBool()) mat->SetParameter(DescID(MATERIAL_USE_SPECULARCOLOR), true, DESCFLAGS_SET_0); BaseContainer cdata = color->GetData(); cdata.SetVector(BASECHANNEL_COLOR_EX, this->matArray[i].Ks); cdata.SetData(BAKE_TEX_NORMAL_FLIP_Y, GeData(true)); if (this->matArray[i].useTextures) { //GePrint ("Material Use texture: " + this->matArray[i].map_Kd); cdata.SetString(BASECHANNEL_TEXTURE, this->matArray[i].map_Ks); cdata.SetFilename(BASECHANNEL_SUGGESTEDFOLDER, this->pSet.tempPath); } color->SetData(cdata); } return true; }
Bool CSVNodeData::GetDEnabling(GeListNode* node, const DescID& id, const GeData& t_data, DESCFLAGS_ENABLE flags, const BaseContainer* itemdesc) { if (id == CSVNODE_FORCEOUTPORTS_COUNT) { GeData data; if (node->GetParameter(CSVNODE_FORCEOUTPORTS, data, DESCFLAGS_GET_0)) { return data.GetBool(); } } return super::GetDEnabling(node, id, t_data, flags, itemdesc); }
static LONG _hook_GetInfo(GeListNode* op) { if (op && op->GetType() == Ocontainer) { GeData data; op->GetParameter(NRCONTAINER_GENERATOR_CHECKMARK, data, DESCFLAGS_GET_0); if (data.GetBool()) return OBJECT_GENERATOR; else return 0; } return _orig_GetInfo(op); }