Is there any way to change OpenGL properties when rendering a surface?
2 次查看(过去 30 天)
显示 更早的评论
Hi,
Is there any way to change OpenGL properties when rendering a surface in Matlab, especially depth peeling? Here an example on how the surface looks like with alpha = 0.5 in Matlab (left) and depth peeling on a different platform (right).
Thanks,
Cristi

0 个评论
回答(2 个)
Sally Al Khamees
2017-2-3
If I understand your question correctly, the list of properties returned by opengl are:
>> opengl('info')
Version:
Vendor:
Renderer:
RendererDriverVersion:
RendererDriverReleaseDate:
MaxTextureSize:
Visual:
Software:
HardwareSupportLevel:
SupportsGraphicsSmoothing:
*SupportsDepthPeelTransparency*:
SupportsAlignVertexCenters:
Extensions:
MaxFrameBufferSize:
the SupportsDepthPeelTransparency returns 1 if is supported and 0 otherwise.
You can refer to this document for more information on depth peel support https://www.mathworks.com/help/matlab/ref/opengl.html
And this for specifying rendering techniques: https://www.mathworks.com/help/sl3d/specify-rendering-techniques.html?
I hope that helps
0 个评论
Tectract
2022-4-28
I ran into this same problem. DepthPeelTransparency is causing weird issues with surf() function EdgeAlpha displaying incorrectly or diffent, on my new system.
you can use the command:
opengl hardwarebasic
to revert to the older-style or more basic style rendering that does not use DepthPeelTransparency
use the command:
opengl hardware
to revert this change in rendering back to using your full GPU capabilities including DepthPeelTranspancy
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Lighting, Transparency, and Shading 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!