Adam Frisby e22e6c8a9c * Improves the reliability of teleports, especially while the Event Queue is down.
* Adds some functions to check if a message is a normal agent message, or a group message.
* Adds new RelativePositionEstimate to complement RelativePosition - RelativePosition actually ends up drifting badly. RelativePositionEstimate instead calculates each time it is requested, using known velocity, and is far more accurate in practice.
* Adds an override to ChatEventArgs.ToString to dump information about the chat.
* Improves reliability of Group Messages
* Teleports previously used GetGridRegion which is sometimes unreliable, request the full map, once, if it fails. The results will be cached.
* Adds AgentManager.LastPositionUpdate to tell you when the avatars position was last updated
2024-08-29 20:56:30 -05:00
2022-11-16 11:44:15 -06:00
2024-08-23 12:29:11 -05:00
2024-08-23 12:29:11 -05:00
2022-11-28 16:28:09 -06:00
2024-08-25 14:51:42 -05:00
2022-04-23 16:39:41 -05:00
2024-06-29 17:25:53 -05:00
2024-07-01 12:05:56 -05:00
2024-08-07 14:10:08 -05:00

 _ _ _            __  __ ___ _____ ___   _____ ___  ___ ___ 
| (_) |__ _ _ ___|  \/  | __|_   _/_\ \ / / __| _ \/ __| __|
| | | '_ \ '_/ -_) |\/| | _|  | |/ _ \ V /| _||   /\__ \ _| 
|_|_|_.__/_| \___|_|  |_|___| |_/_/ \_\_/ |___|_|_\|___/___|

LibreMetaverse

LibreMetaverse is a fork of libOpenMetaverse which in turn was a fork of libSecondLife, a library for developing Second Life-compatible virtual world clients. LibreMetaverse returns the focus to up-to-date Second Life and OpenSim compatibility with an eye to performance, multi-threading, and memory management.

The canonical source for LibreMetaverse can be found at: https://github.com/cinderblocks/libremetaverse

Simple installation procedure

Windows

The dotnet utility is cross-platform so compilation is no different than on Linux/macOS. You may, however, opt to use Visual Studio as you would any other .NET application.

Linux/macOS

  • Make sure you have at least dotnet installed, with a valid SDK and runtime of at least .NET6 available!

  • From the root, run dotnet restore LibreMetaverse.Release.sln. You should get some errors regarding missing Windows libraries; that's ok, you can ignore those, they're to be expected since Linux/macOS do not include such libraries. Some test applications are Windows-only.
    If all goes well, you should now have all dependent packages properly installed.

  • From the root, run dotnet msbuild LibreMetaverse.Release.sln, and enjoy the superfast Roslyn compiler at work 😄 It should finish after a few minutes, depending on the speed of your machine.

  • Your binaries will be under ../bin/net6.0 or ../bin/net7.0 (there might be a few more directories under ../bin), depending on what runtimes you have installed on your system. Make sure you cd to the correct directory depending on the runtime you have, and then search for all your binaries there: they should be normal-looking executable files (with the x attribute set) and having the name of the appropriate test application (e.g. TestClient for the interactive testing tool).

  • Unlike OpenSimulator and LibOpenMetaverse, you don't need to launch the binaries with Mono, they're directly executable; the dotnet chain already embeds the small runtime that allows .NET apps to run natively on whatever operating system you've got.

GUI support under Linux/macOS

LibreMetaverse.GUI is not available on Linux/macOS due to Microsoft's lack of support for GDI/WinForms on non-Windows platforms. They may work using Mono's implemention and can always be emulated using a product like Wine.

The GUI library is being phased out and eventually being replaced by a more cross-platform framework like Avalonia or MAUI.

LibreMetaverse NuGet-Release
NuGet Downloads
Build status
Test status
Codacy Badge
.NET
CodeQL
BSD Licensed
Commits per month
ZEC BTC

Description
A fork of the libopenmetaverse library striving for performance improvements and up-to-date compatibility with Second Life and OpenSimulator (such as it is)
Readme 50 MiB
Languages
C# 97.3%
omnetpp-msg 2.7%