Qt Quick Effect Maker - Basics and advanced usage

From Qt Wiki
Jump to navigation Jump to search

Session Summary

QQEM QtCS 2023.pdf

Qt Quick Effect Maker (QQEM) is a custom shader effect tool first introduced in Qt 6.5. In this presentation going first through basics of the tool UI and the usage. Then showing how to port an effect from Shadertoy into QQEM and exporting into your Qt Quick application. Finally presenting some examples where QQEM has already been used.

Session Owners

Kaj Grönholm

Note taker: Sakaria Pouke


Question: Who has used effect maker?

  • Half of audience

What is effect maker?

Tool for creating custom shader effects made for and with qt quick

  • Shadertoy: code intensive
  • Node editors: code not very accessible
  • Hybrid editor: get the best of both worlds
    • Switch between shader codeview and graph view seamlessly

Example: Adding bling to qt quick application

Copied shader code from shadertoy, added custom node in effect maker and exported to qml application

  • Note: Shadertoy porting is good but some effects are expensive, and QQEM offers other functionality as well (i.e. vertex shaders and texture inputs)

Lots of cool demos done with QQEM


Are we there some more tooling for shader code (eg LSPs)?

  • There is basic code completion but more could be added

The graph view looks different to e.g. the unreal engine approach.

  • Yes, the layer of abstraction in QQEM is lower.

Blender allows for multiple inputs, is this possible?

  • Yes, and no. You can add inputs, however the blending is not possible in the node editor. This has to be done in code.

How does this work with custom shapes, could I use it as a surface?

  • Yes, it creates a texture.

Can I add additional properties for additional effects?

  • Yes.