# Updated Rive extension!

**URL:** <https://forum.defold.com/t/updated-rive-extension/75169>\
**Category:** Announcements\
**Created:** [December 1, 2023, 9:40am UTC](https://forum.defold.com/t/updated-rive-extension/75169 "2023-12-01T09:40:10Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Mathias\_Westerdahl](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/mathias_westerdahl/32/228_2.png) [@Mathias\_Westerdahl](https://forum.defold.com/u/Mathias_Westerdahl)\
**Post date:** [December 1, 2023, 9:40am UTC](https://forum.defold.com/t/updated-rive-extension/75169/1 "2023-12-01T09:40:11Z")

</div>

It’s finally time to release the updated Rive extension for testing!  
We consider this a `technical preview`, which means that there are some rough edges and missing features/platforms.

For instance, in this release we have verified support for

- arm64-macos (Vulkan)
- x86\_64-win32 (Vulkan)
- arm64-ios (Vulkan)

We’ve initially focused on the Vulkan/MoltenVK platforms.  
We will continue to update/verify the other platforms during the upcoming weeks.

## What’s new?

The extension now uses Rive’s new and improved vector renderer. It is a massive performance improvement compared to the previous version, as this one is GPU based.

We’ve also updated the extension with

- event callback support, so you can react to animation events
  - ~~events are currently limited to event names, not event values~~

- mouse cursor support, so that you can interact with your menus

## How to use it?

You can add the [main branch zip file](https://github.com/defold/extension-rive/archive/refs/heads/main.zip) as a dependency during the preview, or use the extension itself as a test project (it has a set of feature rich test scenes).  
We have started with release [2.0.0](https://github.com/defold/extension-rive/releases/tag/2.0.0), but we also expect it to change a lot during the upcoming weeks.

You can use the Defold 1.6.2 editor, but you also need to use the beta build server (until next release): [https://build-stage.defold.com](https://build-stage.defold.com)  
You set the server in the editor preferences. _Don’t forget to reset to the default server after next (1.6.3) release_

### App manifest!

Currently, the extension uses a manifest while we test the new improvements of our new Vulkan/MoltenVK renderer.

So, if you use this extension in a project, you’ll want to either copy the [game.appmanifest](https://github.com/defold/extension-rive/blob/main/game.appmanifest) to your project, or copy the relevant parts of the file. Don’t forget to add the manifest file in your `game.project` file!

## Known issues

There are a few known issue that are listed in the [extension-rive](https://github.com/defold/extension-rive/issues) repo. Please report new issues there!

## Editor preview

One known issue is that we’re still using the (old) tesselation renderer in the Editor.  
This may look less than optimal, but at runtime the result will be crisp.  
There’s a ticket in the github repo.

_Update 1: Added information about appmanifest_

---

<div class="post-metadata">

**Author:** ![Mathias\_Westerdahl](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/mathias_westerdahl/32/228_2.png) [@Mathias\_Westerdahl](https://forum.defold.com/u/Mathias_Westerdahl)\
**Post date:** [December 5, 2023, 8:46am UTC](https://forum.defold.com/t/updated-rive-extension/75169/2 "2023-12-05T08:46:07Z")

</div>



---

<div class="post-metadata">

**Author:** ![astrochili](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/astrochili/32/37266_2.png) [@astrochili](https://forum.defold.com/u/astrochili)\
**Post date:** [December 5, 2023, 5:26pm UTC](https://forum.defold.com/t/updated-rive-extension/75169/3 "2023-12-05T17:26:14Z")

</div>

Fantastic! It looks awesome, finally!

I think it’s also important to attach this video from Twitter to see the result 👍

Would love to test, but my game is still a long way from adding animations 😔

---

<div class="post-metadata">

**Author:** ![gianmichele](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/gianmichele/32/24028_2.png) [@gianmichele](https://forum.defold.com/u/gianmichele)\
**Post date:** [December 5, 2023, 5:31pm UTC](https://forum.defold.com/t/updated-rive-extension/75169/4 "2023-12-05T17:31:08Z")

</div>

This is kicking some serious \*\*\*!!!

---

<div class="post-metadata">

**Author:** ![Pkeod](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/pkeod/32/606_2.png) [@Pkeod](https://forum.defold.com/u/Pkeod)\
**Post date:** [December 6, 2023, 4:52pm UTC](https://forum.defold.com/t/updated-rive-extension/75169/5 "2023-12-06T16:52:55Z")

</div>

Could someone build this for HTML5 and upload it somewhere?

---

<div class="post-metadata">

**Author:** ![Mathias\_Westerdahl](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/mathias_westerdahl/32/228_2.png) [@Mathias\_Westerdahl](https://forum.defold.com/u/Mathias_Westerdahl)\
**Post date:** [December 6, 2023, 4:54pm UTC](https://forum.defold.com/t/updated-rive-extension/75169/6 "2023-12-06T16:54:33Z")

</div>

It doesn’t yet support WebGL (Or OpenGL for that matter), so it’ll take a little while longer.

---

<div class="post-metadata">

**Author:** ![britzl](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/britzl/32/23_2.png) [@britzl](https://forum.defold.com/u/britzl)\
**Post date:** [December 7, 2023, 9:52am UTC](https://forum.defold.com/t/updated-rive-extension/75169/7 "2023-12-07T09:52:19Z")

</div>

> [@Mathias\_Westerdahl](#):
>
> events are currently limited to event names, not event values

We’ve released Rive extension 2.1.0 with support for event properties/values

---

<div class="post-metadata">

**Author:** ![Bit\_Barrel](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/bit_barrel/32/34260_2.png) [@Bit\_Barrel](https://forum.defold.com/u/Bit_Barrel)\
**Post date:** [December 10, 2023, 1:01am UTC](https://forum.defold.com/t/updated-rive-extension/75169/9 "2023-12-10T01:01:48Z")

</div>

Is timeline scrub (panning) supported?

---

<div class="post-metadata">

**Author:** ![Mathias\_Westerdahl](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/mathias_westerdahl/32/228_2.png) [@Mathias\_Westerdahl](https://forum.defold.com/u/Mathias_Westerdahl)\
**Post date:** [December 10, 2023, 8:48am UTC](https://forum.defold.com/t/updated-rive-extension/75169/10 "2023-12-10T08:48:06Z")

</div>

You can set the `cursor` property on the component (a value between [0, 1])

---

<div class="post-metadata">

**Author:** ![Bit\_Barrel](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/bit_barrel/32/34260_2.png) [@Bit\_Barrel](https://forum.defold.com/u/Bit_Barrel)\
**Post date:** [December 10, 2023, 9:28am UTC](https://forum.defold.com/t/updated-rive-extension/75169/11 "2023-12-10T09:28:41Z")

</div>

Noted, thanks 🙏

---

<div class="post-metadata">

**Author:** ![Bit\_Barrel](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/bit_barrel/32/34260_2.png) [@Bit\_Barrel](https://forum.defold.com/u/Bit_Barrel)\
**Post date:** [December 10, 2023, 12:44pm UTC](https://forum.defold.com/t/updated-rive-extension/75169/12 "2023-12-10T12:44:40Z")

</div>

Is it possible to change the text of Rive text run?

---

<div class="post-metadata">

**Author:** ![Mathias\_Westerdahl](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/mathias_westerdahl/32/228_2.png) [@Mathias\_Westerdahl](https://forum.defold.com/u/Mathias_Westerdahl)\
**Post date:** [December 10, 2023, 12:49pm UTC](https://forum.defold.com/t/updated-rive-extension/75169/13 "2023-12-10T12:49:10Z")

</div>

I’m not sure if it’s currently possible in the [rive-cpp](https://github.com/rive-app/rive-cpp) library. If it is, then please add a feature request in the extensions issue tracker.

---

<div class="post-metadata">

**Author:** ![Bit\_Barrel](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/bit_barrel/32/34260_2.png) [@Bit\_Barrel](https://forum.defold.com/u/Bit_Barrel)\
**Post date:** [December 10, 2023, 11:43pm UTC](https://forum.defold.com/t/updated-rive-extension/75169/14 "2023-12-10T23:43:22Z")

</div>

rive-cpp already supports it. There is a file called text\_test.cpp which shows how to change text. I will add a feature request.

---

<div class="post-metadata">

**Author:** ![britzl](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/britzl/32/23_2.png) [@britzl](https://forum.defold.com/u/britzl)\
**Post date:** [December 11, 2023, 7:18am UTC](https://forum.defold.com/t/updated-rive-extension/75169/15 "2023-12-11T07:18:24Z")

</div>

> [@Bit\_Barrel](#):
>
> I will add a feature request.

[https://github.com/defold/extension-rive/issues/81](https://github.com/defold/extension-rive/issues/81)

Thanks. Seems doable then. The above is a prime candidate for a community contribution! Our focus right now is on adding support for the remaining platforms, not new features.

---

<div class="post-metadata">

**Author:** ![Bit\_Barrel](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/bit_barrel/32/34260_2.png) [@Bit\_Barrel](https://forum.defold.com/u/Bit_Barrel)\
**Post date:** [December 11, 2023, 7:37am UTC](https://forum.defold.com/t/updated-rive-extension/75169/16 "2023-12-11T07:37:34Z")

</div>

I wish my C++ coding skills were up to scratch. I would contribute if I could.

Speaking about platform support, Rive with Android would be awesome, more of a priority for me.

---

<div class="post-metadata">

**Author:** ![britzl](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/britzl/32/23_2.png) [@britzl](https://forum.defold.com/u/britzl)\
**Post date:** [December 11, 2023, 8:25am UTC](https://forum.defold.com/t/updated-rive-extension/75169/17 "2023-12-11T08:25:39Z")

</div>

> [@Bit\_Barrel](#):
>
> Rive with Android would be awesome

Yes, that is what we are working on right now.

---

<div class="post-metadata">

**Author:** ![OutreachGames](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/outreachgames/32/32899_2.png) [@OutreachGames](https://forum.defold.com/u/OutreachGames)\
**Post date:** [December 14, 2023, 10:55pm UTC](https://forum.defold.com/t/updated-rive-extension/75169/18 "2023-12-14T22:55:06Z")

</div>

Ah good to know, so likely at least few more months until Defold Rive extension can be used in web builds possibly? (totally understand if it’s more than that too given this is an extension and I reckon it’s hard to given time frames!). 🙂

---

<div class="post-metadata">

**Author:** ![Bit\_Barrel](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/bit_barrel/32/34260_2.png) [@Bit\_Barrel](https://forum.defold.com/u/Bit_Barrel)\
**Post date:** [December 17, 2023, 10:39am UTC](https://forum.defold.com/t/updated-rive-extension/75169/19 "2023-12-17T10:39:32Z")

</div>

First time trying to get Defold to work with Rive. I am a total Defold Noob coming from Unity.

I set the build server to [https://build-stage.defold.com](https://build-stage.defold.com)

I set the renderer to: defold-rive/lua/rive.render

I set the dependencies to [https://github.com/defold/extension-rive/archive/refs/tags/2.1.0.zip](https://github.com/defold/extension-rive/archive/refs/tags/2.1.0.zip)

I added the file game.appmanifest from the extension-rive-2.1.0 folder to my own project folder root (it is not clear from the instructions exactly what I have to do with this or where I have to place it).

I get this build error:

```lua
lld-link: error: undefined symbol: void * __cdecl dmGraphics::VulkanGetContext(void)
>>> referenced by /tmp/job14116362361621283313/upload/private/renderer_private.cpp:191
>>> rivedefold.lib(renderer_private.cpp_0.o):(void __cdecl dmRive::RenderBegin(void *, struct dmRive::ShaderResources *, struct dmResource::SResourceFactory *))
>>> referenced by /tmp/job14116362361621283313/upload/include/private/renderer_private.h:416
>>> rivedefold.lib(renderer_private.cpp_0.o):(public: virtual class rive::rcp<class rive::RenderBuffer> __cdecl dmRive::DefoldPLSRenderContext::makeRenderBuffer(enum rive::RenderBufferType, enum rive::RenderBufferFlags, unsigned__int64))
>>> referenced by /tmp/job14116362361621283313/upload/include/private/renderer_private.h:424
>>> rivedefold.lib(renderer_private.cpp_0.o):(public: virtual class rive::rcp<class rive::pls::PLSTexture> __cdecl dmRive::DefoldPLSRenderContext::makeImageTexture(unsigned int, unsigned int, unsigned int, unsigned char const *const))

```

How to fix it?

Edit: I had to go to main-\>game.project-\>Native Extension-\>App manifest, and add the following line:  
/game.appmanifest

Looking forward to easier integration.

---

<div class="post-metadata">

**Author:** ![Bit\_Barrel](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/bit_barrel/32/34260_2.png) [@Bit\_Barrel](https://forum.defold.com/u/Bit_Barrel)\
**Post date:** [December 17, 2023, 11:40am UTC](https://forum.defold.com/t/updated-rive-extension/75169/20 "2023-12-17T11:40:47Z")

</div>

The rive preview in the editor is very low resolution. How do I improve this?

---

<div class="post-metadata">

**Author:** ![jhonny.goransson](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/jhonny.goransson/32/3864_2.png) [@jhonny.goransson](https://forum.defold.com/u/jhonny.goransson)\
**Post date:** [December 17, 2023, 12:49pm UTC](https://forum.defold.com/t/updated-rive-extension/75169/21 "2023-12-17T12:49:33Z")

</div>

The editor doesn’t use the new renderer unfortunately, so you need to use the actual runtime to get a proper preview until we have had the time to work on the editor renderer.

[Next page](https://forum.defold.com/t/updated-rive-extension/75169.md?page=2)
