Rename Ogre2 into OgreNext#1289
Open
sumir0 wants to merge 11 commits intogazebosim:mainfrom
Open
Conversation
* Rename ogre2 related definitions into ogre_next * Add option to use ogre next >= 3.0.0 * Provide ogre2 definitions for backwards-compatibility Signed-off-by: Ramir Sultanov <sumir0@proton.me>
Signed-off-by: Ramir Sultanov <sumir0@proton.me>
Signed-off-by: Ramir Sultanov <sumir0@proton.me>
Signed-off-by: Ramir Sultanov <sumir0@proton.me>
Signed-off-by: Ramir Sultanov <sumir0@proton.me>
Signed-off-by: Ramir Sultanov <sumir0@proton.me>
This reverts commit 80eeb90. Signed-off-by: Ramir Sultanov <sumir0@proton.me>
Signed-off-by: Ramir Sultanov <sumir0@proton.me>
Signed-off-by: Ramir Sultanov <sumir0@proton.me>
Signed-off-by: Ramir Sultanov <sumir0@proton.me>
…ts.txt` Signed-off-by: Ramir Sultanov <sumir0@proton.me>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🎉 New feature
Partly related to gazebosim/gz-sim#2753.
Summary
This PR renames ogre2 definitions into ogre-next definitions. By default, it builds
ogre2plugin alongsideogre_nextplugin. An option is present to disable build ofogre2plugin. Ogre2-relatedtypedefs were added.Note
There were some experiments with OGRE-Next 3.0 support several years ago. This PR might repeat some of the work that was done before. My apologies if that is the case.
Commit description
Test it
Please, note: I did not use Ubuntu for testing. Instead, I used Arch Linux. I guess the following test algorithm should work in Ubuntu.
My test process involved installing OGRE-Next of version 2.3.3 from sources first. Then I installed
gz-cmake,gz-utils,gz-math,gz-common,gz-plugin,gz-msgs,gz-fuel-tools,gz-transportfrom source. After that I builtgz-renderingusing the following cmake command:cd build/ PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/ cmake -S ../ -B ./ -DBUILD_TESTING=ON -DCMAKE_BUILD_TYPE=DebugAfter installing it I ran
make test. There were 2 failed tests. I manually specified the following environment variables in the IDE I use:After that those 2 failed tests were not failing if run from the IDE.
To test
gz-rendering-ogre2plugin I usedexamples/ogre2_demoexample. It displayed a scene with some objects in it. To testgz-rendering-ogre_nextplugin I changed two"ogre2"strings inexamples/ogre2_demo/Main.ccinto"ogre_next". After that it also displayed a scene with some objects in it (but it usedgz-rendering-ogre_nextplugin).The
/usr/local/include/and/usr/local/lib/directories contained the files I expected from it:gz/rendering/ogre2include directory and headers,gz/rendering/ogre_nextinclude directory and headers,After that I cleaned
/usr/local/*directories and the directory wheregz-renderingwas built. Then I installed OGRE-Next of version 3.0.0 from sources andgz-cmake,gz-utils,gz-math,gz-common,gz-plugin,gz-msgs,gz-fuel-tools,gz-transportfrom source as earlier. After that I builtgz-renderingusing the following cmake command:cd build/ PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/ cmake -S ../ -B ./ -DBUILD_TESTING=ON -DCMAKE_BUILD_TYPE=Debug -DUSE_OGRE_NEXT_INSTEAD_OF_OGRE2=ONAfter installing it I ran
make test. There were no failed tests, only 12 tests were present (I did not add tests forgz-rendering-ogre_nextplugin, the PR seems big even without them)To test
gz-rendering-ogre2plugin I usedexamples/ogre2_demoexample. I reverted my local changes in the example. It did not display any scene because this PR does not buildgz-rendering-ogre2plugin withUSE_OGRE_NEXT_INSTEAD_OF_OGRE2option. To testgz-rendering-ogre_nextplugin I changed two"ogre2"strings inexamples/ogre2_demo/Main.ccinto"ogre_next"as before. After that it also displayed a scene with some objects in it.The
/usr/local/include/and/usr/local/lib/directories contained the files I expected from it:gz/rendering/ogre2include directory and headers (I decided to leave them as withoutUSE_OGRE_NEXT_INSTEAD_OF_OGRE2option, because deprecation warnings are not added just yet),gz/rendering/ogre_nextinclude directory and headers,gz-rendering-ogre_next).Checklist
codecheckpassed (See contributing)Bazel files might require additional modifications. I have read somewhere that Bazel is not supported for plugins at the moment, therefore minimal changes were done (be aware, I did not test changes to Bazel configuration, I tried to focus on CMake configuration only).
There are a lot of things missing (tests for
gz-rendering-ogre_nextplugin, examples, tutorials, documentation, updates for media folder from OGRE-Next 3.0.0 if any, etc.). I tried to minimize changes but also to provide a ready-to-go PR. This PR may require developers to redo some of their ongoing work inogre2/folder if any after merging the PR.Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining
Signed-off-byandGenerated-bymessages.