occt: master cc8cbabe
Author | Committer | Branch | Timestamp | Parent |
---|---|---|---|---|
kgv | bugmaster | master | 2017-07-10 12:43:25 | master a6dee93d |
Affected Issues | 0028912: Visualization, TKOpenGl - multi-texture support | |||
Changeset | 0028912: Visualization, TKOpenGl - multi-texture support Graphic3d_AspectFillArea3d now stores array of textures. Graphic3d_TextureParams stores texture unit for mapping texture. OpenGl_Context::BindTextures() - context now manages the set of active textures. Related code has been removed from OpenGl_Workspace. OpenGl_Sampler has been extended to hold texture parameters structure. OpenGl_Texture now holds OpenGl_Sampler instance as class field. OpenGl_Texture inherits new class OpenGl_NamedResource and holds texture identifier used for sharing resource in OpenGl_Context. OpenGl_RaytraceGeometry now creates bindless textures taking Sampler object directly from OpenGl_Texture. OpenGl_Context::BindTextures() automatically recreates immutable Sampler Object on texture parameters change. Declared new structure OpenGl_ArbSamplerObject for platform-neutral usage of related functionality. Related functions are now loaded within OpenGL ES 3.0+. Declarations.glsl - occActiveSampler has been renamed to occSampler0 with aliases occSamplerBaseColor (main) and occActiveSampler (for compatibility). Additional texture samplers should be declared explicitly within specific GLSL program as occSampler1, occSampler2, etc. AIS_Shape and AIS_ColoredShape now computes Shaded presentation with UV coordinates if texture mapping is enabled in Drawer. vshaderprog now accepts Shader source code as parameter. |
|||
mod - src/Graphic3d/FILES | Diff File | |||
mod - src/Graphic3d/Graphic3d_AspectFillArea3d.cxx | Diff File | |||
mod - src/Graphic3d/Graphic3d_AspectFillArea3d.hxx | Diff File | |||
mod - src/Graphic3d/Graphic3d_ClipPlane.cxx | Diff File | |||
mod - src/Graphic3d/Graphic3d_ClipPlane.hxx | Diff File | |||
mod - src/Graphic3d/Graphic3d_TextureParams.cxx | Diff File | |||
mod - src/Graphic3d/Graphic3d_TextureParams.hxx | Diff File | |||
mod - src/Graphic3d/Graphic3d_TextureRoot.hxx | Diff File | |||
add - src/Graphic3d/Graphic3d_TextureSet.cxx | Diff File | |||
add - src/Graphic3d/Graphic3d_TextureSet.hxx | Diff File | |||
add - src/Graphic3d/Graphic3d_TextureUnit.hxx | Diff File | |||
mod - src/Graphic3d/Graphic3d_TypeOfLimit.hxx | Diff File | |||
mod - src/OpenGl/FILES | Diff File | |||
add - src/OpenGl/OpenGl_ArbSamplerObject.hxx | Diff File | |||
mod - src/OpenGl/OpenGl_AspectFace.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_AspectFace.hxx | Diff File | |||
mod - src/OpenGl/OpenGl_AspectMarker.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_AspectMarker.hxx | Diff File | |||
mod - src/OpenGl/OpenGl_BackgroundArray.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_CappingPlaneResource.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_Context.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_Context.hxx | Diff File | |||
mod - src/OpenGl/OpenGl_Font.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_GlFunctions.hxx | Diff File | |||
mod - src/OpenGl/OpenGl_GraphicDriver.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_Layer.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_LayerList.cxx | Diff File | |||
add - src/OpenGl/OpenGl_NamedResource.hxx | Diff File | |||
mod - src/OpenGl/OpenGl_PointSprite.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_PointSprite.hxx | Diff File | |||
mod - src/OpenGl/OpenGl_PrimitiveArray.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_Resource.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_Sampler.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_Sampler.hxx | Diff File | |||
mod - src/OpenGl/OpenGl_SceneGeometry.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_SceneGeometry.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.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_Texture.hxx | Diff File | |||
mod - src/OpenGl/OpenGl_TextureBufferArb.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_TextureBufferArb.hxx | Diff File | |||
add - src/OpenGl/OpenGl_TextureSet.cxx | Diff File | |||
add - src/OpenGl/OpenGl_TextureSet.hxx | Diff File | |||
mod - src/OpenGl/OpenGl_View.cxx | Diff File | |||
mod - src/OpenGl/OpenGl_View.hxx | 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/Shaders_Declarations_glsl.pxx | Diff File | |||
mod - src/ViewerTest/ViewerTest.cxx | Diff File | |||
mod - src/ViewerTest/ViewerTest_OpenGlCommands.cxx | Diff File | |||
add - tests/v3d/glsl/texture_multi1 | Diff File |