We've obtained another NLnet grant!

After the success of our previous grant, which enabled myriad fixes, improvements, and new features, we are pleased to announce that we've obtained a second NLnet grant!

The NLnet Foundation continues to support many amazing Open Source projects, and we're honored to continue partnering with them.

As with the previous grant, we commit to keeping users and developers up to date with the progress made on these items, both during our usual Saturday development meetings and on GitHub, so that everyone can follow along with the progress.

Project plan

The funding will be used to pay developers to work on the areas listed below, with the possibility of extensions and additional work.

The agreed upon deadline for completion is December 1st, 2025.

Features

We would like to allow less technical users to more comfortably make use of all the features provided by our scripting engine. To that end, we would like to add a visual scripting system.

Graphics

Our engine uses its own internal graphics API, which is largely undocumented. Documenting this API is a lot of work and important for the future maintainability of the project. Additionally, we would like to spend more time on Vulkan optimization, especially on troubleshooting performance issues on Intel Arc graphics cards.

QML Localization

As Overte is used by people from all over the world, we want to add localization support. This task aims to allow translating all internal UI created using QML. (Most, but not all, of our UI uses QML.)

  • Mark strings as translatable

  • Generate translation files automatically

  • Hook up to Weblate translation system

  • Build with translations

  • Check if we include the required fonts

  • Add German translation (as a reference test case)

Maintenance

CMake 4.0 is around the corner, dropping support for some legacy compatibility, which seems to break almost every one of our dependencies. Libnode has similarly received updates, including breaking changes.

  • Update Overte for CMake 4.0 compatibility

  • Fix building dependencies on CMake 4.0

  • Update libnode to the next LTS version

  • Improve build instructions for building with KDevelop and CLion

  • Add automatic Docker release builds

  • Finish getting Overte into Flathub

  • Update to Qt 6 (https://github.com/overte-org/overte/issues/1243)

  • Package Qt 6 dependency for Windows

  • Package Qt 6 dependency for Linux

  • Package webrtc-audio-processing

  • Switch to libdatachannel

Bug Fixes

UI Rework

Our current UI is a mix of different themes, design philosophies, and programming languages (https://github.com/orgs/overte-org/projects/8). Specifically our Create app could use some improvement (https://github.com/overte-org/overte/issues/1145).

  • Framework for default QML applications

  • Rework Avatar app

  • Add grid shader to Create

  • Allow switching Create windows between external and embedded windows

  • Rework asset browser

  • Rework voxel edit mode

  • Allow parenting entities using drag and drop in entity list

  • Add a tree view to entity list

  • Add a free camera mode to Create

  • Improve material management in Create

  • Add centered scaling to Create

  • Rework More app

  • Rework settings

  • Rework Pal app (People list)

  • Rework log viewer

  • Rework Snapshot app

  • Rework Emote app

  • Rework running scripts window

  • Rework Places app

  • Rework notifications

  • Add theming support

  • Prefer using system file-picker

  • Add dashboard user interface

Integrate results from UX review and security audit

  • Perform UX review

  • Perform Security audit

Thanks

  • NLnet, for continuing to support Overte.

  • Julian Groß, for negotiating this agreement.

  • All of the developers who have agreed to take on this work.

  • The Overte community, for making this possible.