@@ -465,32 +465,46 @@ pl__show_entity_components(plAppData* ptAppData, plScene* ptScene, plEntity tEnt
465465 bool bMaterialModified = false ;
466466 if (ImGui::InputFloat (" Roughness" , &ptMaterialComp->fRoughness )) bMaterialModified = true ;
467467 if (ImGui::InputFloat (" Metalness" , &ptMaterialComp->fMetalness )) bMaterialModified = true ;
468- if (ImGui::InputFloat (" Clearcoat" , &ptMaterialComp->fClearcoat )) bMaterialModified = true ;
469- if (ImGui::InputFloat (" Clearcoat Roughness" , &ptMaterialComp->fClearcoatRoughness )) bMaterialModified = true ;
470468 if (ImGui::InputFloat (" Alpha Cutoff" , &ptMaterialComp->fAlphaCutoff )) bMaterialModified = true ;
471469 if (ImGui::InputFloat4 (" Base Factor" , ptMaterialComp->tBaseColor .d )) bMaterialModified = true ;
472- if (ImGui::InputFloat4 (" Emmissive Factor" , ptMaterialComp->tEmissiveColor .d )) bMaterialModified = true ;
470+ if (ImGui::InputFloat4 (" Emmissive Color" , ptMaterialComp->tEmissiveColor .d )) bMaterialModified = true ;
471+ if (ImGui::InputFloat (" Anisotropy Strength" , &ptMaterialComp->fAnisotropyStrength )) bMaterialModified = true ;
472+ if (ImGui::InputFloat (" Anisotropy Rotation" , &ptMaterialComp->fAnisotropyRotation )) bMaterialModified = true ;
473+ if (ImGui::InputFloat3 (" Sheen Color" , ptMaterialComp->tSheenColor .d )) bMaterialModified = true ;
474+ if (ImGui::InputFloat (" Sheen Roughness" , &ptMaterialComp->fSheenRoughness )) bMaterialModified = true ;
475+ if (ImGui::InputFloat (" Clearcoat" , &ptMaterialComp->fClearcoat )) bMaterialModified = true ;
476+ if (ImGui::InputFloat (" Clearcoat Roughness" , &ptMaterialComp->fClearcoatRoughness )) bMaterialModified = true ;
477+ if (ImGui::InputFloat (" Iridescence Factor" , &ptMaterialComp->fIridescenceFactor )) bMaterialModified = true ;
478+ if (ImGui::InputFloat (" Iridescence IOR" , &ptMaterialComp->fIridescenceIor )) bMaterialModified = true ;
479+ if (ImGui::InputFloat (" Iridescence Thickness Max" , &ptMaterialComp->fIridescenceThicknessMax )) bMaterialModified = true ;
480+ if (ImGui::InputFloat (" Iridescence Thickness Min" , &ptMaterialComp->fIridescenceThicknessMin )) bMaterialModified = true ;
481+ if (ImGui::InputFloat (" Normal Strength" , &ptMaterialComp->fNormalMapStrength )) bMaterialModified = true ;
482+ if (ImGui::InputFloat (" Emissive Strength" , &ptMaterialComp->fEmissiveStrength )) bMaterialModified = true ;
483+ if (ImGui::InputFloat (" IOR" , &ptMaterialComp->fIor )) bMaterialModified = true ;
484+ if (ImGui::InputFloat (" Dispersion" , &ptMaterialComp->fDispersion )) bMaterialModified = true ;
485+ if (ImGui::InputFloat (" Thickness" , &ptMaterialComp->fThicknessFactor )) bMaterialModified = true ;
486+ if (ImGui::InputFloat (" Attenuation Distance" , &ptMaterialComp->fAttenuationDistance )) bMaterialModified = true ;
487+ if (ImGui::InputFloat3 (" Attenuation Color" , ptMaterialComp->tAttenuationColor .d )) bMaterialModified = true ;
488+
473489
474490 if (bMaterialModified)
475491 gptRenderer->update_scene_materials (ptScene, 1 , &tEntity);
476492
477493 static const char * apcBlendModeNames[] =
478494 {
479- " PL_MATERIAL_BLEND_MODE_OPAQUE " ,
480- " PL_MATERIAL_BLEND_MODE_ALPHA " ,
481- " PL_MATERIAL_BLEND_MODE_PREMULTIPLIED " ,
495+ " PL_MATERIAL_ALPHA_MODE_OPAQUE " ,
496+ " PL_MATERIAL_ALPHA_MODE_MASK " ,
497+ " PL_MATERIAL_ALPHA_MODE_BLEND " ,
482498 " PL_MATERIAL_BLEND_MODE_ADDITIVE" ,
483499 " PL_MATERIAL_BLEND_MODE_MULTIPLY" ,
484500 " PL_MATERIAL_BLEND_MODE_CLIP_MASK"
485501 };
486- ImGui::LabelText (" Blend Mode" , " %s" , apcBlendModeNames[ptMaterialComp->tBlendMode ]);
502+ ImGui::LabelText (" Alpha Mode" , " %s" , apcBlendModeNames[ptMaterialComp->tAlphaMode ]);
487503
488504 static const char * apcShaderNames[] =
489505 {
490506 " PL_SHADER_TYPE_PBR" ,
491- " PL_SHADER_TYPE_PBR_CLEARCOAT" ,
492- " PL_SHADER_TYPE_PBR_SHEEN" ,
493- " PL_SHADER_TYPE_CUSTOM"
507+ " PL_SHADER_TYPE_PBR_ADVANCED"
494508 };
495509 ImGui::LabelText (" Shader Type" , " %s" , apcShaderNames[ptMaterialComp->tShaderType ]);
496510 ImGui::LabelText (" Double Sided" , " %s" , ptMaterialComp->tFlags & PL_MATERIAL_FLAG_DOUBLE_SIDED ? " true" : " false" );
@@ -511,18 +525,17 @@ pl__show_entity_components(plAppData* ptAppData, plScene* ptScene, plEntity tEnt
511525 " PL_TEXTURE_SLOT_CLEARCOAT_NORMAL_MAP" ,
512526 " PL_TEXTURE_SLOT_SHEEN_COLOR_MAP" ,
513527 " PL_TEXTURE_SLOT_SHEEN_ROUGHNESS_MAP" ,
514- " PL_TEXTURE_SLOT_TRANSMISSION_MAP" ,
515- " PL_TEXTURE_SLOT_SPECULAR_MAP" ,
516- " PL_TEXTURE_SLOT_SPECULAR_COLOR_MAP" ,
517- " PL_TEXTURE_SLOT_ANISOTROPY_MAP" ,
518- " PL_TEXTURE_SLOT_SURFACE_MAP" ,
519528 " PL_TEXTURE_SLOT_IRIDESCENCE_MAP" ,
520529 " PL_TEXTURE_SLOT_IRIDESCENCE_THICKNESS_MAP"
530+ " PL_TEXTURE_SLOT_ANISOTROPY_MAP" ,
531+ " PL_TEXTURE_SLOT_TRANSMISSION_MAP" ,
532+ " PL_TEXTURE_SLOT_THICKNESS_MAP" ,
521533 };
522534
523535 for (uint32_t i = 0 ; i < PL_TEXTURE_SLOT_COUNT; i++)
524536 {
525- ImGui::Text (" %s: %s" , apcTextureSlotNames[i], ptMaterialComp->atTextureMaps [i].acName [0 ] == 0 ? " " : " present" );
537+ if (ptMaterialComp->atTextureMaps [i].acName [0 ] != 0 )
538+ ImGui::Text (" %s" , apcTextureSlotNames[i]);
526539 }
527540 ImGui::Unindent ();
528541 }
0 commit comments