occt: master 72f6dc61
Author | Committer | Branch | Timestamp | Parent |
---|---|---|---|---|
iko | bugmaster | master | 2019-11-07 13:52:53 | master f051908e |
Affected Issues | 0031096: Visualization, TKOpenGl - support metallic-roughness texture mapping | |||
Changeset | 0031096: Visualization, TKOpenGl - support metallic-roughness texture mapping OpenGl_ShaderManager - metallic-roughness, emissive, occlusion and normal texture maps are now supported by PBR. Emissive, occlusion and normal texture maps are now supported by Phong shading model. Path-Tracing now handles metallic-roughness and emissive texture maps. Graphic3d_TextureUnit enumeration has been extended by new values corresponding to supported texture maps. OpenGl_TextureSet and OpenGl_ShaderProgram have been extended with bitmask Graphic3d_TextureSetBits identifying texture slots read from GLSL Program and slots defined within Texture Set to avoid undefined behavior by binding mock textures. OpenGl_TextureSet now duplicates texture unit information to handle textures shared across multiple slots (like Occlusion [R] + Metallic-Roughness [GB]). OpenGl_Context::BindTextures() has been extended with active GLSL program paramter to set mock textures to texture units used by program but undefined by texture set. OpenGl_Workspace::ApplyAspects() has been extended with parameter to avoid bining texture set. |
|||
mod - src/Graphic3d/FILES | Diff File | |||
mod - src/Graphic3d/Graphic3d_BSDF.cxx | Diff File | |||
mod - src/Graphic3d/Graphic3d_ShaderProgram.cxx | Diff File | |||
mod - src/Graphic3d/Graphic3d_ShaderProgram.hxx | Diff File | |||
add - src/Graphic3d/Graphic3d_TextureSetBits.hxx | Diff File | |||
mod - src/Graphic3d/Graphic3d_TextureUnit.hxx | Diff File | |||
mod - src/OpenGl/OpenGl_AspectsTextureSet.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_Context.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_Context.hxx | Diff File | |||
mod - src/OpenGl/OpenGl_LayerList.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_PrimitiveArray.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_SetOfShaderPrograms.hxx | Diff File | |||
mod - src/OpenGl/OpenGl_ShaderManager.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_ShaderManager.hxx | Diff File | |||
mod - src/OpenGl/OpenGl_ShaderProgram.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_ShaderProgram.hxx | Diff File | |||
mod - src/OpenGl/OpenGl_Structure.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_Text.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_Texture.hxx | Diff File | |||
mod - src/OpenGl/OpenGl_TextureSet.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_TextureSet.hxx | Diff File | |||
mod - src/OpenGl/OpenGl_View.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_View_Raytrace.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_View_Redraw.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_Workspace.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_Workspace.hxx | Diff File | |||
mod - src/Shaders/Declarations.glsl | Diff File | |||
mod - src/Shaders/DeclarationsImpl.glsl | Diff File | |||
mod - src/Shaders/PathtraceBase.fs | Diff File | |||
mod - src/Shaders/Shaders_DeclarationsImpl_glsl.pxx | Diff File | |||
mod - src/Shaders/Shaders_Declarations_glsl.pxx | Diff File | |||
mod - src/Shaders/Shaders_PathtraceBase_fs.pxx | Diff File | |||
mod - src/XCAFDoc/XCAFDoc_VisMaterial.cxx | Diff File | |||
mod - src/XCAFPrs/XCAFPrs_Texture.cxx | Diff File | |||
add - tests/v3d/raytrace/helmet | Diff File |