Improved OSX Builds
One of Ryzom and Ryzom Core's most prolific contributors, kervala, applied a patch provided to us by GelluleX. Kervala and GelluleX's patches and work have reduced a massive amount of warnings that people working on OSX encounter but have also provided us with the ability to build using CLang. This is pretty important for people developing on OSX as CLang/LLVM is Apple's preferred method and they're no longer maintaining GCC. In addition to this you can use CLang on the other platforms we officially support and it provides faster builds, faster code and much more accurate debugging and output.
If you want to build using CLang either on OSX or Linux and CMake has not chosen it as your default compiler you can force it to do so using these CMake command line options:
![]() |
| CLang build on OSX - detailed error messages. |
-DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++
Sound System Improvements
Kaetemi has been a busy guy working on the sound system over the past couple weeks. He has fixed a number of bugs and problems with the sound system but is planning a three stage re-implementation of the NeL music system. You can link into his detailed information about what he is doing but you can see that he has finished the first stage of the process which included implementing a streaming sound, a sound group controller interface, various performance improvements and bug fixes. In addition he uncovered some substantial fixes to the threading logic. He added thread priority and he fixed the isRunning method which used to have this lovely comment in it:
// TODO : need a real implementation here that check thread statusLong term this implementation will enable a greater ability to use music sources in game. For example for Ryzom players this feature will enable in-game items such as the jukebox in the Pyr bar to actually play back music.
Linux Patching Improvements
Botanic from the Tempest in the Aether project provided a fairly complete patch enabled the built-in client patcher on Linux and OSX. It works as well as it does on Windows and will hopefully be applied very soon. Due to the differences between the three main OSs we support and even between various distributions of Linux the answer of how to universally handle patching is still being discussed.
Botanic's patch works wonderfully if the client is installed into the user's home directory - where the user has full privileges to update all of the content. The debate comes in for situations such as distributing the game binary through a package manager or App Store. In the case of Linux the binary is then in an area of the file system which normal users cannot overwrite. In the case of OSX the binary is not allowed to be patched outside of the App Store.


No comments:
Post a Comment