Skip to content
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

{humble} WIP: ros-image-world fixes for Humble Kirkstone #1150

Open
wants to merge 60 commits into
base: kirkstone
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
b5ff1ed
{humble} apriltag: Set SOABI in Python module
robwoolley May 21, 2024
02a0734
{humble} as2-motion-controller: Remove pid-controller dependency
robwoolley May 21, 2024
20905ae
{humble} fields2cover: Replace gtest with googletest
robwoolley May 21, 2024
46422a7
{humble} libphidget22: Fix SPDX identifier
robwoolley May 21, 2024
18bb0cf
{humble} libphidget22: Refresh integration patch
robwoolley May 21, 2024
1332ea7
{humble} libphidget22-upstream: Update to 1.19
robwoolley May 21, 2024
be31717
{common} libfyaml: Add new recipe
robwoolley May 21, 2024
f973229
{common} nanogui: Add new recipe
robwoolley May 21, 2024
eb2c38a
{humble} mrpt2: WIP: Add new recipe
robwoolley May 21, 2024
f7a6181
{common} jxrlib: Add new recipe
robwoolley May 21, 2024
c00a3ff
{common} Add backport of tiff 4.6.0 recipe
robwoolley May 21, 2024
90b08e8
{common} freeimage: Add new recipe
robwoolley May 21, 2024
8ca01ab
{common} mongo-cxx-driver-legacy: Add new recipe
robwoolley May 21, 2024
712be62
{common} openexr: Add new recipe
robwoolley May 21, 2024
dd4672a
{common} gts: Add new recipe
robwoolley May 21, 2024
05db6c8
{common} python3-colorcet: Add dependencies for caret-analyze
robwoolley May 21, 2024
c149439
{common} assimp: Explicitly add branch name
robwoolley May 21, 2024
6b988bc
{common} assimp: Update recipe to 5.4.0
robwoolley May 21, 2024
4651f50
{common} jasper: Set the math library name
robwoolley May 21, 2024
b634016
{common} sdformat9: Add new recipe
robwoolley May 21, 2024
26dd71c
{common} sdformat12: Add new recipe
robwoolley May 21, 2024
25348d1
{common} imath: Add new recipe
robwoolley May 21, 2024
c13f5a7
{common} gts: Add missing patches
robwoolley May 21, 2024
da7a79b
{humble} spinnaker-camera-driver: Add build tool dependencies
robwoolley May 21, 2024
369aead
{humble} pangolin: Add missing zstd dependency
robwoolley May 21, 2024
1bc9613
{humble} ros-gz-bridge: Add build tool dependency
robwoolley May 21, 2024
4f90d57
{humble} turtlebot4-ignition-gui-plugins: Resolve dependencies
robwoolley May 21, 2024
d139cb3
{humble} mrt-cmake-modules: Add missing patch
robwoolley May 21, 2024
4be413a
{humble} ignition-cmake2-vendor: Add missing dependencies
robwoolley May 21, 2024
59f343a
{humble} ignition-math6-vendor: Add missing dependencies
robwoolley May 21, 2024
993856c
{humble} rviz-rendering: Add CMake Qt5 configuration
robwoolley May 21, 2024
fccda1e
{humble} warsehouse-ros-mongo: Add new recipe
robwoolley May 21, 2024
6cc2a6d
{common} ogre: Add new recipe
robwoolley May 21, 2024
4c942b2
{common} ogre-next: Add new recipe
robwoolley May 21, 2024
becb3a4
{common} ogre: Remove old recipe
robwoolley May 21, 2024
97ba675
{humble} Set preferred versions for ogre and ogre-next
robwoolley May 21, 2024
4f43494
{humble} Remove skip_recipe entries for mongo-cxx-driver-legacy
robwoolley May 21, 2024
63825e9
{humble} List geoemtry-msgs-native as build tool
robwoolley May 21, 2024
e6fe358
{humble} Remove unnecessary ROS_WORLD_SKIP_GROUPS
robwoolley May 21, 2024
6799e3d
{humble} Resolve missing ROS_UNRESOLVED_DEP entries
robwoolley May 21, 2024
630641c
{humble} Remove spinnaker camera driver from packagegroup
robwoolley May 21, 2024
4e40779
{humble} gazebomsgsout-native: Add new recipe
robwoolley May 21, 2024
4000f71
{common} gazebo11: Add new recipe
robwoolley May 21, 2024
403970d
{common} WIP: New recipes for Ignition / Gazebo
robwoolley May 21, 2024
602fa71
{common} ogre: Add preferred version for ROS 2 Humble
robwoolley May 21, 2024
c87a14b
{humble} ignition-cmake2-vendor: Fix package dependency
robwoolley May 23, 2024
c1f4ff8
{humble} slam-toolbox: Fix package dependency
robwoolley May 23, 2024
1102901
{humble} urdf: Add missing dependency
robwoolley May 23, 2024
5b58587
{humble} usb-cam: Backport fix for newer ffmpeg
robwoolley May 23, 2024
81473dd
{humble} draco: Update branch name
robwoolley May 23, 2024
4d2a899
{common} ignition: Enable native dependencies
robwoolley May 23, 2024
ee7f1f2
{ros2} libdeflate: Extend recipe for native builds
robwoolley May 23, 2024
7ba3d25
{humble} rqt-moveit: Add files to package
robwoolley May 23, 2024
e761a0a
{humble} rqt-gui: Add files to package
robwoolley May 23, 2024
d22cff7
{humble} gazebo-ros: Add missing build dependencies
robwoolley May 23, 2024
0dffc52
{humble} gazebo-plugins: Inherit pkgconfig
robwoolley May 23, 2024
abc97d3
{humble} dolly-gazebo: Add build dependencies
robwoolley May 23, 2024
8d088a6
{humble} rqt-*: Add missing files to packages
robwoolley May 23, 2024
064b125
{humble} libtins: Add openssl dependency
robwoolley May 24, 2024
80da752
{humble} gc-spl: Fix upstream SRC_URI
robwoolley May 24, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,329 @@
https://github.com/gazebosim/gazebo-classic/commit/6ca23806f7b67d51529e2ddb07d3464b85781c6e.patch

From ca09e1330138e8083d9b9274992b8f5d07eb78dd Mon Sep 17 00:00:00 2001
From: Rob Woolley <[email protected]>
Date: Sun, 19 May 2024 07:29:57 -0700
Subject: [PATCH] Revert "fix for ogre 1.8"

This reverts commit 6ca23806f7b67d51529e2ddb07d3464b85781c6e.
---
.../rendering/CustomPSSMShadowCameraSetup.cc | 25 -----
.../rendering/CustomPSSMShadowCameraSetup.hh | 32 -------
gazebo/rendering/RTShaderSystem.cc | 13 ---
gazebo/rendering/RTShaderSystem.hh | 1 +
gazebo/rendering/RTShaderSystemPrivate.hh | 12 ---
gazebo/rendering/ogre_gazebo.h | 4 -
media/rtshaderlib/SGXLib_IntegratedPSSM.glsl | 94 ++-----------------
7 files changed, 8 insertions(+), 173 deletions(-)

diff --git a/gazebo/rendering/CustomPSSMShadowCameraSetup.cc b/gazebo/rendering/CustomPSSMShadowCameraSetup.cc
index c4570197aa..7f0d8f5a2c 100644
--- a/gazebo/rendering/CustomPSSMShadowCameraSetup.cc
+++ b/gazebo/rendering/CustomPSSMShadowCameraSetup.cc
@@ -657,28 +657,3 @@ void CustomPSSMShadowCameraSetup::getShadowCamera(const Ogre::SceneManager *_sm,
cam->setCustomProjectionMatrix(true, oldCustomProjMat);
}
}
-
-//////////////////////////////////////////////////
-CustomGLSLProgramWriter::CustomGLSLProgramWriter()
- : Ogre::RTShader::GLSLProgramWriter()
-{
- mGpuConstTypeMap[Ogre::GCT_SAMPLER2DSHADOW] = "sampler2DShadow";
-}
-
-//////////////////////////////////////////////////
-CustomGLSLProgramWriterFactory::CustomGLSLProgramWriterFactory()
-{
-}
-
-//////////////////////////////////////////////////
-const Ogre::String &CustomGLSLProgramWriterFactory::getTargetLanguage() const
-{
- static const Ogre::String targetLanguageGLSL("glsl");
- return targetLanguageGLSL;
-}
-
-//////////////////////////////////////////////////
-Ogre::RTShader::ProgramWriter *CustomGLSLProgramWriterFactory::create()
-{
- return OGRE_NEW CustomGLSLProgramWriter();
-}
diff --git a/gazebo/rendering/CustomPSSMShadowCameraSetup.hh b/gazebo/rendering/CustomPSSMShadowCameraSetup.hh
index 24faabba7f..d36203362d 100644
--- a/gazebo/rendering/CustomPSSMShadowCameraSetup.hh
+++ b/gazebo/rendering/CustomPSSMShadowCameraSetup.hh
@@ -123,38 +123,6 @@ namespace gazebo
const Ogre::Light *_light, Ogre::Camera *_texCam, size_t _iteration)
const override;
};
-
- /// \brief This overrides ogre's default GLSLProgramWriter to fix
- /// a bug in ogre versions <= 1.8 where 'sampler2DShadow' sampler type
- /// is missing
- class GAZEBO_VISIBLE CustomGLSLProgramWriter :
- public Ogre::RTShader::GLSLProgramWriter
- {
- /// \brief Constructor
- public: CustomGLSLProgramWriter();
-
- /// \brief Destructor
- public: ~CustomGLSLProgramWriter() = default;
- };
-
- /// \brief A factory to create our own CustomGLSLProgramWriter.
- class GAZEBO_VISIBLE CustomGLSLProgramWriterFactory :
- public Ogre::RTShader::ProgramWriterFactory
- {
- /// \brief Constructor
- public: CustomGLSLProgramWriterFactory();
-
- /// \brief Destructor
- public: ~CustomGLSLProgramWriterFactory() = default;
-
- /// \brief Get shader language supported by this factory
- /// \return Language supported - "glsl"
- public: const Ogre::String &getTargetLanguage() const override;
-
- /// \brief Creates the GLSLProgramWriter
- /// \return Ogre's program writer
- public: virtual Ogre::RTShader::ProgramWriter* create() override;
- };
}
}

diff --git a/gazebo/rendering/RTShaderSystem.cc b/gazebo/rendering/RTShaderSystem.cc
index 72f86bf782..52cf0050ad 100644
--- a/gazebo/rendering/RTShaderSystem.cc
+++ b/gazebo/rendering/RTShaderSystem.cc
@@ -40,8 +40,6 @@
#include "gazebo/common/Exception.hh"
#include "gazebo/common/SystemPaths.hh"
#include "gazebo/rendering/ogre_gazebo.h"
-#include "gazebo/rendering/CustomPSSMShadowCameraSetup.hh"
-#include "gazebo/rendering/Light.hh"
#include "gazebo/rendering/RenderEngine.hh"
#include "gazebo/rendering/Scene.hh"
#include "gazebo/rendering/Visual.hh"
@@ -100,13 +98,6 @@ void RTShaderSystem::Init()
// Set shader cache path.
this->dataPtr->shaderGenerator->setShaderCachePath(cachePath);

-#if OGRE_VERSION_MAJOR >= 1 && OGRE_VERSION_MINOR <= 8
- this->dataPtr->programWriterFactory =
- OGRE_NEW CustomGLSLProgramWriterFactory();
- Ogre::RTShader::ProgramWriterManager::getSingletonPtr()->addFactory(
- this->dataPtr->programWriterFactory);
-#endif
-
this->dataPtr->shaderGenerator->setTargetLanguage("glsl");

Ogre::RTShader::SubRenderStateFactory* factory =
@@ -149,10 +140,6 @@ void RTShaderSystem::Fini()
#else
Ogre::RTShader::ShaderGenerator::destroy();
#endif
-
- if (this->dataPtr->programWriterFactory)
- delete this->dataPtr->programWriterFactory;
-
this->dataPtr->shaderGenerator = NULL;
}

diff --git a/gazebo/rendering/RTShaderSystem.hh b/gazebo/rendering/RTShaderSystem.hh
index b9227357f9..c66852a389 100644
--- a/gazebo/rendering/RTShaderSystem.hh
+++ b/gazebo/rendering/RTShaderSystem.hh
@@ -22,6 +22,7 @@
#include <string>

#include "gazebo/rendering/ogre_gazebo.h"
+#include "gazebo/rendering/CustomPSSMShadowCameraSetup.hh"
#include "gazebo/gazebo_config.h"

#include "gazebo/rendering/Camera.hh"
diff --git a/gazebo/rendering/RTShaderSystemPrivate.hh b/gazebo/rendering/RTShaderSystemPrivate.hh
index 15d1b277fa..97bc8656ee 100644
--- a/gazebo/rendering/RTShaderSystemPrivate.hh
+++ b/gazebo/rendering/RTShaderSystemPrivate.hh
@@ -22,8 +22,6 @@
#include <string>
#include <vector>

-#include "gazebo/rendering/CustomPSSMShadowCameraSetup.hh"
-
#include "gazebo/rendering/ogre_gazebo.h"
#include "gazebo/gazebo_config.h"

@@ -76,16 +74,6 @@ namespace gazebo

/// \brief Parallel Split Shadow Map (PSSM) overlap between splits.
public: double shadowSplitPadding = 2.0;
-
- /// \brief Custom program writer factory that supports sampler2DShadow,
- /// only used in ogre versions <= 1.8
- public: CustomGLSLProgramWriterFactory *programWriterFactory = nullptr;
-
- /// \brief Flag to indicate if normal map should be enabled
- public: bool enableNormalMap = true;
-
- /// \brief Mutex to protect shaders and shadows update
- public: std::mutex updateMutex;
};
}
}
diff --git a/gazebo/rendering/ogre_gazebo.h b/gazebo/rendering/ogre_gazebo.h
index a171782c1e..f151b620b9 100644
--- a/gazebo/rendering/ogre_gazebo.h
+++ b/gazebo/rendering/ogre_gazebo.h
@@ -66,10 +66,6 @@
#if OGRE_VERSION_MAJOR > 1 || OGRE_VERSION_MINOR >= 7
#include <OGRE/RTShaderSystem/OgreRTShaderSystem.h>
#include <OGRE/RTShaderSystem/OgreShaderProgramSet.h>
-#include <OGRE/RTShaderSystem/OgreShaderGLSLProgramWriter.h>
-#include <OGRE/RTShaderSystem/OgreShaderProgramWriterManager.h>
-#include <OGRE/RTShaderSystem/OgreShaderFunction.h>
-#include <OGRE/RTShaderSystem/OgreShaderProgram.h>
#endif

#if OGRE_VERSION_MAJOR > 1 || OGRE_VERSION_MINOR >= 9
diff --git a/media/rtshaderlib/SGXLib_IntegratedPSSM.glsl b/media/rtshaderlib/SGXLib_IntegratedPSSM.glsl
index 0eb9a5956a..4826e7d6a9 100644
--- a/media/rtshaderlib/SGXLib_IntegratedPSSM.glsl
+++ b/media/rtshaderlib/SGXLib_IntegratedPSSM.glsl
@@ -1,71 +1,3 @@
-/*
- * Copyright (C) 2017 Open Source Robotics Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
-*/
-
-// Code in this file has been adapted from Ogre. The original Ogre's licence and
-// copyright headers are copied below:
-
-/*
------------------------------------------------------------------------------
-This source file is part of OGRE
-(Object-oriented Graphics Rendering Engine)
-For the latest info, see http://www.ogre3d.org
-
-Copyright (c) 2000-2012 Torus Knot Software Ltd
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
------------------------------------------------------------------------------
-*/
-//-----------------------------------------------------------------------------
-// Program Name: SGXLib_IntegratedPSSM
-// Program Desc: Integrated PSSM functions.
-// Program Type: Vertex/Pixel shader
-// Language: GLSL
-//-----------------------------------------------------------------------------
-
-//-----------------------------------------------------------------------------
-void SGX_CopyDepth(in vec4 clipSpacePos,
- out float oDepth)
-{
- oDepth = clipSpacePos.z;
-}
-
-//-----------------------------------------------------------------------------
-void SGX_ModulateScalar(in float vIn0, in vec4 vIn1, out vec4 vOut)
-{
- vOut = vIn0 * vIn1;
-}
-
-//-----------------------------------------------------------------------------
-void SGX_ApplyShadowFactor_Diffuse(in vec4 ambient,
in vec4 lightSum,
in float fShadowFactor,
out vec4 oLight)
@@ -75,7 +7,7 @@ void SGX_ApplyShadowFactor_Diffuse(in vec4 ambient,
}

//-----------------------------------------------------------------------------
-float _SGX_ShadowPoisson9(sampler2DShadow shadowMap, vec4 shadowMapPos, vec2 invShadowMapSize, bool hardwarePCF)
+float _SGX_ShadowPoisson9(sampler2DShadow shadowMap, vec4 shadowMapPos, vec2 invShadowMapSize)
{
// Remove shadow outside shadow maps so that all that area appears lit
//
@@ -121,19 +53,13 @@ float _SGX_ShadowPoisson9(sampler2DShadow shadowMap, vec4 shadowMapPos, vec2 inv
// driver hack.
// shadow += shadow2D(shadowMap, newUV.xyz).r;
float d = shadow2D(shadowMap, newUV.xyz).r;
- if (hardwarePCF)
- shadow += d;
- else
- shadow += step(shadowMapPos.z, d);
+ float minShadowFactor = 0.2;
+ shadow += (step(shadowMapPos.z, d) >= 1.0) ? 1.0 : minShadowFactor;
}
shadow /= 9.0;

// smoothstep makes shadow edges appear more crisp and hides Mach bands
- float s = smoothstep(0.0, 1.0, shadow);
- // make shadow lighter color
- float minShadowFactor = 0.2;
- s = s * (1.0 - minShadowFactor) + minShadowFactor;
- return s;
+ return smoothstep(0.0, 1.0, shadow);
}

//-----------------------------------------------------------------------------
@@ -150,25 +76,19 @@ void SGX_ComputeShadowFactor_PSSM3(in float fDepth,
in vec4 invShadowMapSize2,
out float oShadowFactor)
{
- // hack! On OSX the shadow map size is halved so we use this as a hint
- // that hardware PCF is not enabled.
- bool hardwarePCF = false;
- if (invShadowMapSize0.x == invShadowMapSize1.x)
- hardwarePCF = true;
-
if (fDepth <= vSplitPoints.x)
{
oShadowFactor =
- _SGX_ShadowPoisson9(shadowMap0, lightPosition0, invShadowMapSize0.xy, hardwarePCF);
+ _SGX_ShadowPoisson9(shadowMap0, lightPosition0, invShadowMapSize0.xy);
}
else if (fDepth <= vSplitPoints.y)
{
oShadowFactor =
- _SGX_ShadowPoisson9(shadowMap1, lightPosition1, invShadowMapSize1.xy, hardwarePCF);
+ _SGX_ShadowPoisson9(shadowMap1, lightPosition1, invShadowMapSize1.xy);
}
else
{
oShadowFactor =
- _SGX_ShadowPoisson9(shadowMap2, lightPosition2, invShadowMapSize2.xy, hardwarePCF);
+ _SGX_ShadowPoisson9(shadowMap2, lightPosition2, invShadowMapSize2.xy);
}
}
--
2.43.0

Loading