-
-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[3D] qgs3dmapscene: Compute max clip planes #59328
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! It misses a comment I think
efe803e
to
d0eb0d7
Compare
🪟 Windows buildsDownload Windows builds of this PR for testing. 🪟 Windows Qt6 buildsDownload Windows Qt6 builds of this PR for testing. |
Tests failed for Qt 5One or more tests failed using the build from commit 00881ae polygon3d_extrusion_clipping (testExtrudedPolygonsClipping)polygon3d_extrusion_clippingTest failed at testExtrudedPolygonsClipping at tests/src/3d/testqgs3drendering.cpp:490 Rendered image did not match tests/testdata/control_images/3d/expected_polygon3d_extrusion_clipping/expected_polygon3d_extrusion_clipping.png (found 77226 pixels different) polygon3d_extrusion_data_defined_phong_clipping (testExtrudedPolygonsDataDefinedPhongClipping)polygon3d_extrusion_data_defined_phong_clippingTest failed at testExtrudedPolygonsDataDefinedPhongClipping at tests/src/3d/testqgs3drendering.cpp:708 Rendered image did not match tests/testdata/control_images/3d/expected_polygon3d_extrusion_data_defined_phong_clipping/expected_polygon3d_extrusion_data_defined_phong_clipping.png (found 77226 pixels different) polygon3d_extrusion_data_defined_gooch_clipping (testExtrudedPolygonsDataDefinedGoochClipping)polygon3d_extrusion_data_defined_gooch_clippingTest failed at testExtrudedPolygonsDataDefinedGoochClipping at tests/src/3d/testqgs3drendering.cpp:827 Rendered image did not match tests/testdata/control_images/3d/expected_polygon3d_extrusion_data_defined_gooch_clipping/expected_polygon3d_extrusion_data_defined_gooch_clipping.png (found 77226 pixels different) line_rendering_clipping (testLineRenderingClipping)line_rendering_clippingTest failed at testLineRenderingClipping at tests/src/3d/testqgs3drendering.cpp:1084 Rendered image did not match tests/testdata/control_images/3d/expected_line_rendering_clipping/expected_line_rendering_clipping.png (found 5327 pixels different) buffered_lines_clipping (testBufferedLineRenderingClipping)buffered_lines_clippingTest failed at testBufferedLineRenderingClipping at tests/src/3d/testqgs3drendering.cpp:1293 Rendered image did not match tests/testdata/control_images/3d/expected_buffered_lines_clipping/expected_buffered_lines_clipping.png (found 15111 pixels different) sphere_rendering_clipping (testInstancedRenderingClipping)sphere_rendering_clippingTest failed at testInstancedRenderingClipping at tests/src/3d/testqgs3drendering.cpp:1681 Rendered image did not match tests/testdata/control_images/3d/expected_sphere_rendering_clipping/expected_sphere_rendering_clipping.png (found 1621 pixels different) mesh3d_clipping (testMeshClipping)mesh3d_clippingTest failed at testMeshClipping at tests/src/3d/testqgsmesh3drendering.cpp:375 Rendered image did not match tests/testdata/control_images/3d/expected_mesh3d_clipping/expected_mesh3d_clipping.png (found 19394 pixels different) pointcloud_3d_singlecolor_clipping (testPointCloudSingleColorClipping)pointcloud_3d_singlecolor_clippingTest failed at testPointCloudSingleColorClipping at tests/src/3d/testqgspointcloud3drendering.cpp:319
The full test report (included comparison of rendered vs expected images) can be found here. Further documentation on the QGIS test infrastructure can be found in the Developer's Guide. |
00881ae
to
3f884a1
Compare
Tests failed for Qt 6One or more tests failed using the build from commit 00881ae polygon3d_extrusion_clipping (testExtrudedPolygonsClipping)polygon3d_extrusion_clippingTest failed at testExtrudedPolygonsClipping at tests/src/3d/testqgs3drendering.cpp:490 Rendered image did not match tests/testdata/control_images/3d/expected_polygon3d_extrusion_clipping/expected_polygon3d_extrusion_clipping.png (found 77226 pixels different) polygon3d_extrusion_data_defined_phong_clipping (testExtrudedPolygonsDataDefinedPhongClipping)polygon3d_extrusion_data_defined_phong_clippingTest failed at testExtrudedPolygonsDataDefinedPhongClipping at tests/src/3d/testqgs3drendering.cpp:708 Rendered image did not match tests/testdata/control_images/3d/expected_polygon3d_extrusion_data_defined_phong_clipping/expected_polygon3d_extrusion_data_defined_phong_clipping.png (found 77226 pixels different) polygon3d_extrusion_data_defined_gooch_clipping (testExtrudedPolygonsDataDefinedGoochClipping)polygon3d_extrusion_data_defined_gooch_clippingTest failed at testExtrudedPolygonsDataDefinedGoochClipping at tests/src/3d/testqgs3drendering.cpp:827 Rendered image did not match tests/testdata/control_images/3d/expected_polygon3d_extrusion_data_defined_gooch_clipping/expected_polygon3d_extrusion_data_defined_gooch_clipping.png (found 77226 pixels different) line_rendering_clipping (testLineRenderingClipping)line_rendering_clippingTest failed at testLineRenderingClipping at tests/src/3d/testqgs3drendering.cpp:1084 Rendered image did not match tests/testdata/control_images/3d/expected_line_rendering_clipping/expected_line_rendering_clipping.png (found 5327 pixels different) buffered_lines_clipping (testBufferedLineRenderingClipping)buffered_lines_clippingTest failed at testBufferedLineRenderingClipping at tests/src/3d/testqgs3drendering.cpp:1293 Rendered image did not match tests/testdata/control_images/3d/expected_buffered_lines_clipping/expected_buffered_lines_clipping.png (found 15111 pixels different) sphere_rendering_clipping (testInstancedRenderingClipping)sphere_rendering_clippingTest failed at testInstancedRenderingClipping at tests/src/3d/testqgs3drendering.cpp:1681 Rendered image did not match tests/testdata/control_images/3d/expected_sphere_rendering_clipping/expected_sphere_rendering_clipping.png (found 1621 pixels different) mesh3d_clipping (testMeshClipping)mesh3d_clippingTest failed at testMeshClipping at tests/src/3d/testqgsmesh3drendering.cpp:375 Rendered image did not match tests/testdata/control_images/3d/expected_mesh3d_clipping/expected_mesh3d_clipping.png (found 19394 pixels different) pointcloud_3d_singlecolor_clipping (testPointCloudSingleColorClipping)pointcloud_3d_singlecolor_clippingTest failed at testPointCloudSingleColorClipping at tests/src/3d/testqgspointcloud3drendering.cpp:319
The full test report (included comparison of rendered vs expected images) can be found here. Further documentation on the QGIS test infrastructure can be found in the Developer's Guide. |
032b39c
to
a5312f9
Compare
The number of available clip planes depends on the OpenGL implementation. This change Introduces a new function in Qgs3DUtils function called `Qgs3DUtils::getOpenGLMaxClipPlanes` to compute this number (`GL_MAX_CLIP_PLANES`) and use it in the 3D scene. See: https://registry.khronos.org/OpenGL-Refpages/gl2.1/xhtml/glClipPlane.xml
a5312f9
to
79a5011
Compare
@wonder-sk @uclaros Gentle ping |
Description
The number of available clip planes depends on the OpenGL implementation.
This change Introduces a new function in Qgs3DUtils function called
Qgs3DUtils::getOpenGLMaxClipPlanes
to compute this number (GL_MAX_CLIP_PLANES
) and use it in the 3D scene.See: https://registry.khronos.org/OpenGL-Refpages/gl2.1/xhtml/glClipPlane.xml