Jump to content

Technologies stack to run pixi on tvOS


Yurii Bilas
 Share

Recommended Posts

Hello! I thought about making a game for Apple's tvOS. And i did some research, but wanted to ask other people about what they think about this topic.

To start, I understand that Unity currently is the best choice for anyone who want to develop games for tvOS. But I've got some codebase in JS and I wanted to continue using it.

Then, I found that react native allows to develop for tvOS. But in this case I would need to use Skia as a rendering backend. Recently they added WebGPU support to react native, with Google's Dawn as backend (https://github.com/wcandillon/react-native-webgpu), but Dawn says that it doesn't support tvOS yet.

If Dawn supported tvOS, that would be amazing, because (if I understood it correctly) it would allow me to use pixi.js v8 on tv without even changing any codebase (because it supports WebGPU; Three.js supports it too and it can run on Dawn without code changes).

So until Dawn support for tvOS is available, what can I use instead? Is it true that I can use Skia, get it's rendering context and give it to pixi (not WebGPU, but WebGL or canvas, idk)? What do you think about the performance - would it be super slow or OK for some game with 20 spines on screen and +-200 sprites? Are there any alternative ways to develop with pixi for tvOS? How do you think - would it be hard and worth it to dig into Dawn's source code and implement tvOS support for them?

Thanks in advance for any of your thoughts.
Yurii.

Edited by Yurii Bilas
Link to comment
Share on other sites

Hi!‍‌‍‍‌ I did some research and React Native Skia seems to be compatible with tvOS, which is nice. However, it also seems that you cannot really link Pixi.js to Skia's rendering as they are operating differently most of the time.

Dawn reportedly supports Metal already, and since Metal is used by tvOS, maybe the difference is not that big? However, I couldn't locate any official tvOS support for Dawn. If you are into C++ and want to making contributions, it might be possible, though I have no idea how complicated it might be.

As a matter of fact, it looks like the simplest way for you is probably just going with React Native Skia directly and doing the rendering parts again. Don't change your game logic but get rid of Pixi. Not the best solution, I know.

Regarding the performance, I came across some posts where users claim that 20 Spines + 200 sprites should run fine, but they still strongly recommend testing it at an early stage.

Also, you might want to take a look at react-native-game-engine-skia if you are looking for a more game-oriented ‍‌‍‍‌solution.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...