Mutiple views support

Hi,
We’re porting a Unity app to to React Native and would love to use BabylonJS for the 3D rendering. However our app has multiple views (it shows a list of items, where each item is rendered in a small 3d view).
Do you guys have already scheduled to add support for multiple views?
Thanks a lot!

This is so cooool you are considering porting to Babylon !!!

@bghgary and @ryantrem are the king of respectively native and react native and I am sure they ll be able to help.

Thanks @sebavan!
This how the Unity app looks:

2 Likes

Diiiiceee :wink: @PatrickRyan and @Deltakosh will be fans

3 Likes

@obasille, we have had questions about comparison views in the past so I put together a simple scene to demonstrate one possible way to show and control multiple meshes at once in a split screen. And by any chance is your project connected to Pixels? I’m guessing from the patterns icon at the bottom of the screen that may be the case. If so, I’ve been excited for the dev kits to see how I could use them to drive Babylon scenes.

3 Likes

Yes this is our project, so glad you’ve heard about it!

Thank you for the sample code, it’s very clear. Having multiple cameras would certainly help, although I assume it would make the code a bit more complex than having multiple views.
I’m still discovering ReactNative, do you think this sample would run in ReactNative and that it would be possible to overlay native GUI elements on top of the 3D view?

I’m not familiar with the ReactNative part of the question but some others from the team would possibly be able to speak to the specifics like @bghgary, @Cedric, or @DarraghBurke.

Congrats on what you’ve been able to do with the project so far. I’m so excited for the progress you’ve made and can’t wait to see an awesome package on my doorstep.

Multi-view in Babylon Native (and Babylon React Native) is something we’ve talked about, but there are no concrete plans to add support right now. There is an (old) issue tracking it that you can find here: Support for multiple views · Issue #147 · BabylonJS/BabylonNative (github.com). It would help if you could add a comment to the issue describing your scenario.

Maybe it would be possible in the meantime to use the Babylon.js UI constructs to create a list like this directly in the 3D scene, rather than using React Native UI (I’m not very familiar with Babylon.js GUI)?

3 Likes

Thank you @ryantrem!
I’ve added a comment to the issue you mentioned.
I will experiment more with this :slight_smile:
(right now I’m trying to run @PatrickRyan sample in a ReactNative app)

1 Like

Would it be feasible in Babylon React Native to have multiple components each with their own engine/scene/camera for each die in the list? This might be a big performance hit, I’m not sure.

Unfortunately Babylon Native does not currently support multiple engine and/or view instances.

1 Like

I got a similar use case as you (but not on native). However, multiple views were a little expensive to render, as we need to run on rather old machines. We decided to generate each of those figures as webp picture, as we do not have any animations there. Technically we use multi canvases to generate these, but this could be done without them as well.

(On the left you can generate new figures, or press F)
https://sb.online-systembrett.com/session/freemium

Thanks @JPeer264
Yeah, we’ll have to see if performance is good enough. Hopefully it will be ok since the Unity version of the app runs fine (we just don’t want to render the entire app in a 3D game engine!)
In our case, we need the animations, so we’ll have to stick to real time 3D rendering.

1 Like