The Resonance/2025-07-13/Transcript

From Resonite Wiki
Revision as of 13:20, 20 September 2025 by Hemisputnik (talk | contribs) (Add transcript)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

This is a transcript of The Resonance from 2025 July 13.

This transcript is auto-generated from YouTube. There may be missing information or inaccuracies reflected in it, but it is better to have searchable text in general than an unsearchable audio or video. It is heavily encouraged to verify any information from the source using the provided timestamps.

00:01: Hello.

00:04: Sending announcements.

00:07: It should be live.

00:10: Um,

00:14: give me a sec. I'm just going to post

00:16: announcements.

00:20: Uh, post the live stream one.

00:23: Where's live stream?

00:27: Where's blind? I can never find

00:31: channels on Discord.

00:34: Uh,

00:37: where's live streams?

00:39: Oh, there it is.

00:44: There we go. Post more announcements

00:46: online. Hello. Already getting messages.

00:51: Give me a second. I'm just going to

00:52: finish posting announcements.

00:56: Post. And there we go. Could be live.

01:01: Hello everyone. Welcome to another

01:03: episode of the resonance. Uh I'm Frixus.

01:06: Uh today, unfortunately, we don't have

01:08: Syra. Uh so I'll be I'll be handling the

01:11: questions myself. Uh but welcome. This

01:15: is another episode of Resonance. You

01:17: It's essentially kind of like my office

01:18: hours. Um and you can ask anything about

01:23: resonate like whatever you want. Um,

01:25: first, um, is the audio okay? Can you

01:29: like hear me fine? Are the audio levels

01:30: okay? I'm going to adjust the camera a

01:33: little bit too.

01:37: Is the audio okay? I think it seems to

01:39: be okay. Thank you. So, uh, audio is

01:43: fine. So, we should be able to get

01:45: started. So, uh, welcome again. Uh, this

01:48: is sort of like my office hours. You can

01:51: ask anything you want about Arizona

01:53: night whether it's a technical question

01:54: whether it's philosophical with how

01:56: platform goes kind of like you know

01:58: personal things you want to get the you

02:00: want to get you know get to know the

02:01: team a bit more pretty whatever you want

02:04: to ask you can ask in chat uh make sure

02:07: whenever you ask question put a question

02:08: mark at the end that way it kind of pops

02:10: in my thing let me just show you oh

02:13: that's my hair hold on I'm just going to

02:17: grab the

02:19: I'm grabbing the wrong things. Oop, I

02:21: have too many things.

02:23: There we go.

02:26: Got uh There we go. See, that's that's

02:28: that's that's you and that's the

02:30: questions.

02:34: Um so, make sure like you know to uh

02:36: make sure to put a question mark at the

02:37: end and uh it'll pop on the thing. Uh we

02:41: also have a bunch of questions that are

02:43: coming from Discord that are sort of

02:44: like you know uh in advanced questions.

02:47: So, I'm going to go through those first

02:48: and I'm going to go go to the questions

02:50: from the chat. So, with that, uh, we

02:53: should be able to get started. I don't

02:55: know if I'm forgetting anything. Um,

02:59: yeah. So, let's let's get started. So,

03:02: uh, I'm also going to actually I think

03:03: I'm going to freeze the camera, too, so

03:05: it's not floating so much. Uh,

03:10: put make a good angle. Actually, hold

03:12: on.

03:14: That's fine. I also like used one of the

03:16: creator J worlds. Um, this is like a

03:18: pretty cozy one. Um, and I actually

03:21: contributed to this one. I made like a

03:23: few things like the skybox and and I'm

03:26: clipping through. I made like a skybox

03:28: and the cloud system you can see behind

03:30: is like procedurally generated clouds

03:32: that sort of like poof in and then pull

03:34: out like kind of cartooning. Nice.

03:38: Um, so let me create a camera anchor.

03:42: There we go. Okay, I'm going to adjust

03:46: myself a bit. Okay, so let's get

03:49: started. Actually, maybe I should move a

03:52: little bit here.

03:55: There we go. So that way I have like

03:56: space for the questions.

03:59: So let's go. So first one, uh first

04:04: question that's from Discord.

04:06: Um

04:09: this is from Phoenix. Phoenix is asking

04:12: uh when the splitting is shipped to

04:14: stable, can we get systems with

04:15: guidelines on what kind of GPU, CPU and

04:17: how much memory always ideal for running

04:19: in desktop mode and for VR mode? It

04:21: seems like Nvidia chip might be more

04:23: stable for example, but it can be tricky

04:24: to work out exactly what to get when

04:27: thinking about blogging PC. I want

04:28: resite to work very well. Is X3 chip

04:31: still important with net 9? I almost

04:32: wish there was just Resonate box I could

04:34: buy or an external MHD where resite is

04:37: spatial computer OS and I have to worry

04:38: about components. So pro probably not

04:41: going to have uh our own HMD like at

04:44: least not in the immediate future. Uh

04:46: but I think this is one of those things

04:49: where it's kind of good like you know to

04:52: source it to the community because

04:54: usually when you build like the specs is

04:55: like you try lots of different hardware

04:57: and see what it runs well on. And you

05:00: know we're a small team and we don't

05:02: really have access to that much like

05:03: hardware. Um but with the community like

05:06: you know people try lots of different

05:08: specs. uh they can all you know compare.

05:10: So I'll probably leave it to that. Um

05:14: ask you know around the community. Some

05:15: people like you know some people even

05:17: like build guides you know like what

05:18: this is good to like run on and this is

05:20: like what things like they get. So, I

05:23: would probably say we're not going to

05:26: have like one officially, but um

05:30: we're going to have like, you know, like

05:31: one officially, but like I think it's

05:33: good like to kind of ask around in

05:35: community and see like what everybody's

05:36: kind of using and what kind of

05:38: performance are they getting in

05:39: different worlds.

05:42: Uh I do know from some people like uh

05:45: the X3D chips are like like working

05:47: really well and some people had like

05:49: interesting result like with core

05:50: affinitive like assigning different

05:52: cores like you know to the main process

05:55: and to the renderer. Uh but we'll kind

05:58: of see like you know how version kind of

05:59: shakes up once it's done.

06:01: The next question is from uh Shadow X is

06:07: asking uh every version number currently

06:10: begins with the beta. Is there a

06:11: specific goal you have in mind where you

06:13: plan to drop the beta part? Yeah, it's

06:16: pretty much like uh dropping the beta,

06:18: it means coming out of early access. And

06:20: there actually I think there should be a

06:22: video on it like on our YouTube channel

06:24: where I kind of like went through um

06:27: when I went through like a lot of uh the

06:31: big things that I want to happen before

06:32: like we move out of it. uh just sort of

06:36: TLDDR um definitely know the split

06:38: ending performance improvements like

06:40: that's one of the big parts um we

06:42: definitely want to rework some of the UI

06:44: and I just like you know some of the

06:46: like on boarding making sure like things

06:48: are um making sure things are kind of

06:51: like you know

06:52: smooth uh for users uh there are like

06:56: few other features but like overall

07:00: the minimum for like dropping the beta

07:02: is uh Ooh, it's a big cloud. Uh, overall

07:06: for like, you know, dropping the beta,

07:08: it's like making sure that like Resonate

07:10: out of the box is a good experience for

07:13: new users and it's pretty smooth, it's

07:15: stable, it performs reasonably well. Uh,

07:18: it has like easy to use UI. Uh, so those

07:20: would be like the main things. There

07:22: might be some other stuff that I'm kind

07:23: of forgetting, but those are the ones

07:25: that uh come to the top of my head.

07:30: The next question is from uh Tito. Uh

07:35: Tito's asking uh have you heard of

07:38: Spacetime DB? If not, you should check

07:40: it out. You could get some insights for

07:41: your net code that can improve games

07:43: performance. So I've heard about it. Uh

07:45: it's I don't think it's like

07:47: particularly helpful because it's a very

07:48: different kind of architecture and very

07:50: different philosophy like for how things

07:53: are kind of approached. is also like

07:55: with Resonite the net code itself

07:59: like like based on like the benchmarks

08:01: is not really something affecting the

08:03: performance that significantly that's

08:05: more on the data model side which

08:07: relates to the data like it relates to

08:09: the net code but it's also not um so

08:13: it's uh

08:16: um so yeah like I don't think like there

08:20: are like sufficiently different

08:21: approaches that like it's hard to like,

08:24: you know, draw pearls or be like, you

08:27: know, like maybe you should do things

08:28: this way because it's like it's it's a

08:30: little bit like trying to like, you

08:32: know, say you're making

08:34: um I don't know, you're making a plane

08:37: and you look like, you know, you try to

08:39: look at like a a submarine, you know,

08:42: and there's like surface similarities,

08:45: you know, what are kind of cabins where

08:46: inside of the cabin, but ultimately

08:47: they're very different

08:50: things with different design

08:53: and like, you It's not going to

08:54: translate between the two.

08:59: The next question is from uh Ozie. Uh

09:03: Ozie is asking uh even in its early

09:07: state uh has any of the performance test

09:09: other users have done surprisingly in

09:11: per release? Yes, actually did. Uh

09:13: people have been kind of so been like

09:15: have an issue. I think it's something

09:17: more with my machine and I kind of want

09:19: to dig into it but like I've been having

09:20: some weirdness like with performance but

09:23: like my machine like was running million

09:25: things and it's kind of struggling with

09:27: things so I think it's not like a

09:29: representative and then like when it got

09:30: released um when it got released

09:35: uh like there was like somebody who

09:37: literally got like over,000 FPS at one

09:39: point in the cloud home and not cloud

09:41: home and sorry uh the local home. Um

09:45: also there's like also interesting thing

09:47: like with the cloud home um people have

09:50: been like you know making the spliting

09:52: work on Linux uh and Sy kind of working

09:55: on it like officially right now like

09:56: he's making kind of PR so like you know

09:59: it just works out of the box um but

10:01: people have also gotten it to work um

10:05: like not like on a person he's made he

10:07: made it work on on a phone on like ARM

10:10: phone where the main process which is

10:12: net 9 runs natively play and then the

10:15: render is like running with like

10:16: emulation

10:18: and he opened the cloud home expecting

10:22: it to crash and it just worked and he

10:24: got 9 fps on a phone with emulation. So

10:29: that's like started like like I'm like

10:31: ooh this kind of cool like I don't

10:33: expect like you know work that well. Um

10:36: so yeah people have been like seem to

10:38: have like getting pretty good results

10:39: with it. So, um I'm quite happy to hear

10:43: and I hope like it's kind of like, you

10:44: know, it's going to hold up like well.

10:46: Um but we'll see. It kind of the

10:48: performance also depends, you know, like

10:50: a lot like what you do. Some things have

10:52: like, you know, better performance than

10:54: others. And um there's

10:59: like

11:01: there's there's a lot of like different

11:02: kind of like, you know, aspects to it.

11:04: So like you're not going to see the same

11:07: performance like increase for every

11:08: single thing. But over like overall

11:11: things should be better and some things

11:14: are like way better than some others and

11:16: you know there's going to be more stuff

11:17: in the future. But uh overall like uh

11:21: seems to to be quite positive.

11:24: Uh let's see what's next. Uh

11:30: so Ozie is asking combo question. What

11:33: pulp spinninging task interests you most

11:35: if any? So actually have to look. So, I

11:38: have a board uh if you haven't seen it,

11:40: there's like a board where you can see

11:44: um all the tasks for spliting that are

11:47: like logged on GitHub. Let me just open

11:50: it up. Um shall see if I can also throw

11:53: a link in the chat.

11:55: Uh let me open the Twitchite

11:59: app.

12:02: So, if you want to look along and I'm

12:05: getting an ad my own stream. Let me just

12:08: post this in here. This is the link. Um,

12:12: so there's a number of things like

12:13: posteries. Uh,

12:16: so there's like a few like like for

12:18: example you're in the previous scene

12:20: state on main process h that's going to

12:22: be I think this one's going to be

12:23: interesting. Like that's like if you

12:24: freeze like like it's just going to keep

12:27: rendering more frames which might be

12:28: good like if you said for example

12:29: watching videos and you get a lock spike

12:31: the video is going to continue. So like

12:33: uh your avatar is going to be frozen but

12:35: um it'll render more frames. Um

12:41: let's see switch to numeric

12:45: like some stuff I'm interested like for

12:47: example one thing considering switching

12:48: the render to C++ and I'm kind of

12:51: curious how much will that help will

12:52: that help at all. Um but garbage

12:56: collector smoothing out native process

12:58: Linux that's everything actually that

13:00: should be in the progress corner but uh

13:03: reboot render when it crashes that's

13:05: that one that one like I'm looking

13:07: forward to um

13:10: like I feel like we're going to be like

13:11: very unique like where we can be like

13:13: we're doing an application that can

13:14: withstand a unit crash and like it I'm

13:18: kind of curious how it's going to feel

13:19: like you know like a crash and

13:21: everything goes away and then it just

13:22: pops back in And like what is that

13:25: feeling going to be like, you know, like

13:27: because right now like if you crash,

13:28: you're just kind of out of the world and

13:30: if they rejoin and kind of like miss out

13:32: on a bunch of stuff. So that be going to

13:34: be interesting. Um

13:37: there's

13:38: h okay. So like I would say probably out

13:41: of these this one. However, there's like

13:43: one

13:44: thing that's sort of going to be enabled

13:46: by the split thinging, but it's like a

13:48: bigger feature that I wanted to do for a

13:49: long while and it's ability to use as an

13:53: overlay for so you can actually open

13:55: your dash and use a lot of the

13:57: functionality over other applications.

13:59: So, you could like, you know, be for

14:01: example in VR you could be playing

14:02: Minecraft, the Vivecraft mode. Um, we

14:05: can be playing whatever VR game you want

14:07: and you can have like access to your

14:09: night dash.

14:11: So you could like you know message

14:12: people, you could spawn things in an

14:14: overall layer. So we can have like you

14:16: know sort of this augmented reality

14:18: layer over like other ones um other

14:22: applications and we could provide like

14:23: SDKs and like other things. So you could

14:25: actually like have tighter integration

14:27: like say for example you you know we

14:31: have like a Minecraft mode where like

14:33: you're in Minecraft and like in your

14:35: contacts people will see you like you're

14:37: in this Minecraft world and you know

14:39: maybe they can even see and maybe you

14:40: can even send them invite and it's going

14:42: to make the mod just like you know be

14:43: like okay I'm on the server with this IP

14:45: and if you click the invite it's going

14:46: to like you know make them their

14:48: Minecraft instance connect to the right

14:49: one. Um, and then you could like, you

14:52: know, even see other people and you

14:53: could like, you know, you want to be in

14:54: Minecraft world, spawn a resonate, like,

14:56: you know, spawn a video in over a layer

14:58: and watch it in your Minecraft world,

14:59: you could do that. Um, and that like I

15:03: think that's going to be like like could

15:04: be like one of the kind of coolest

15:06: things, but that's like technically not

15:08: like a post spliting task. like I

15:10: haven't like decided to paraphrase it,

15:11: but it's like one I really really want

15:13: to work on because I think it's going to

15:15: be like super cool and it's going to be

15:17: like you know

15:20: I don't want to say the word metaverse

15:22: because it kind of got tainted but kind

15:24: of like you know the metaverse like in

15:25: the before the word got tainted like you

15:27: know by meta um and I will say like that

15:32: one that one's like on my mind a lot

15:36: Um,

15:40: another big cloud.

15:42: Uh, next questions from BD_.

15:46: Let's see. Let's position this here.

15:50: Uh, B asking, are you planning on taking

15:52: a break post splittening before starting

15:54: on the next big thing?

15:58: Planning is hard. I mean, I would kind

16:00: of like to like slow things down a bit,

16:03: but like, you know, the question is, am

16:04: I going to be able to

16:07: because usually like sometimes it feels

16:10: like, you know, issues and things like

16:12: it's like liquid like, you know, like if

16:14: you if you try to like carve out a

16:16: little like, you know, hole,

16:19: you know, like freedom, the task will

16:22: just go and it just fills it out like,

16:25: you know, the same way like you take

16:26: like what? Oh, I didn't know that was in

16:28: here. Um the same way like you know

16:30: water

16:32: you pour it and just it's going to fall

16:34: into every little crevice. So things

16:38: rarely,

16:40: you know,

16:42: things rarely kind of slow down and

16:44: there's always like million other

16:46: things. And even now like it feels like

16:47: there's so many stuff that's being piled

16:49: like where a lot of the conversations

16:51: and things we're having. It's like it's

16:54: like oh like post spliting this post

16:56: spliting that post spliting that after

16:58: spliting do this after spliting to do

17:00: that after spliting to do that. And it's

17:02: just like even knowing

17:06: even knowing like you know that like

17:07: once this is finished there's already

17:08: like a pile of stuff waiting. I I don't

17:11: know. So we'll we'll see.

17:16: And it's kind of hard because you know

17:17: like comes like with just being like

17:19: responsible for the business and making

17:21: sure like you know we kind of keep going

17:23: and things that need to be done need to

17:26: be done.

17:29: Um,

17:32: next question is from Menshock. Um,

17:37: Mshock's asking uh response on the last

17:40: fruits office hours the topic of social

17:42: media posting. If I understand

17:44: correctly, there are plans to make in

17:45: platform social media system where you

17:48: can share stuff from Resonite to other

17:50: Resonite users. Would it possible to

17:52: build that service uh upon a service

17:54: like Masteron? So like having separate

17:56: instance that stores all resonate post

17:58: and makes those available both inside

18:00: resonite and through existing clients.

18:03: So I don't think we probably build it on

18:04: the master.

18:06: uh we probably have integrations with

18:09: Mastodon but like the idea for that one

18:11: is have it built around our own systems

18:13: because that gives us a really tight

18:14: integration and I think the tight

18:16: integration is like you know where

18:19: um

18:20: where like the huge benefit lies because

18:22: we already have kind of systems and just

18:24: having and then having like multiple

18:25: systems that kind of one does like one

18:28: part and the other one does do another

18:30: part and like not as well integrated

18:32: like it doesn't kind of mesh a little

18:36: our philosophy and the things we want to

18:37: do. So, it's better to kind of have like

18:39: things where the system does exactly

18:41: what we need it to and then we have we

18:42: have it like have like you know sort of

18:44: IO like input output with other systems.

18:48: So, it's probably going to like you know

18:50: take take that kind of form.

18:54: Uh next question is from uh also from

18:57: Mshock. Um position it right. Um, Muk

19:01: Muk is asking, uh, and another one for

19:04: context. I'm currently working on

19:06: sequencing timeline animation system

19:07: with Resonate using spatial variables.

19:11: Uh, by the way, huge props there.

19:12: Awesome. Yay. Yeah, like spatial

19:15: variables are like one of those things I

19:16: wanted to do for so long like because I

19:18: was like, they're got to be like really

19:19: powerful and it's not that complicated

19:21: to add as well. Uh, similar for

19:24: officially system. Can you imagine time

19:25: where user creations reach level of

19:27: sophistication? and the development team

19:28: essentially wouldn't have much to do

19:30: except maybe upkeep. So I don't think

19:33: we'll ever get to the point where we're

19:34: doing just upkeep. Um but we do want to

19:38: like you know make tools where people

19:40: can make as many systems as possible. Um

19:44: and you know if like if there's a system

19:46: missing in Resonate we want you to have

19:48: tools to build build your own or maybe

19:51: even like if you don't like the system

19:53: maybe it doesn't fit your needs you know

19:54: like it is we want you to have ability

19:57: to like you know build your own build

19:58: alternatives.

20:00: That said, I think there's a lot of

20:03: cases where there's benefit to us having

20:05: an official system for something because

20:08: usually we can make those like very well

20:10: integrated with all the tooling and

20:11: having sort of like you know standard

20:13: official system. Um it sort of makes it

20:16: like it makes it like like this like

20:18: nucleation point where like a lot of

20:20: stuff the community builds is going to

20:22: be built around that system because they

20:24: know like you know this is to one

20:27: official system so they can rely on it

20:29: be like accessible everywhere. It can be

20:30: rely on it being maintained. Um

20:35: and like you know like um because like

20:38: if you have like lots of kind of

20:39: community systems sometimes like it's

20:41: hard to like sort of get consensus you

20:44: know which one to use and some people

20:46: use this one some people use that one

20:47: and you have like bunch of stuff that's

20:49: like you know not mutually compatible

20:52: with each other which is like fine

20:53: because like you know we want you to be

20:55: able to build your own systems but um it

20:58: does like from what I noticed it does

21:00: lead to like certain level of

21:01: fragmentation

21:03: uh and us making official systems that

21:05: can help reduce some of that

21:06: fragmentation and it can make it more

21:08: like you know where if you're building

21:10: your own system you you know we have a

21:13: much stronger reason to do it like the

21:14: reason is not that it doesn't exist the

21:17: reason is like you know you need it to

21:19: be designed differently from the

21:21: official one where the official one

21:22: doesn't fit your needs um so you have

21:25: like much more you know sophisticated

21:28: kind of reason for building your own

21:30: system rather than just you know the

21:32: system doesn't exist so I'm making my

21:34: own um so like uh there's also a bunch

21:38: of thoughts like you know relating to

21:39: like uh because last I could ask you

21:42: know is there an I ever got me finished

21:44: and I uh there's like a video on it on

21:47: the YouTube so if you want to watch that

21:49: one that also has a bunch of thoughts

21:50: like they're sort of related to this

21:54: uh let's see what's next

21:57: and next question is also from Tito The

21:59: ferror

22:01: uh titer is asking is there a plan to

22:05: make reporting easier, intuitive, and

22:07: easily accessible in game. It'd be uh

22:10: rich if every time someone says I

22:11: crashed and not reporting it. Funnily

22:13: enough, people saying I'll report it

22:15: later likely to forget about it. My

22:17: first experience of reporting a bug was

22:19: a bit confusing. They end up not being

22:20: able to explain it properly and then get

22:22: credited. Someone was able to help and

22:24: they got credit instead. Is there a

22:26: skill issue? Yes. Uh there's many more

22:28: where that came from. Then again, is

22:30: there a plan to make your reporting

22:31: easier, intuitive, or easily accessible

22:32: in game? So our goal is to have like

22:35: reporting accessible in game uh

22:38: eventually. So you can like you know

22:39: just go make like a report and uh you

22:42: know and it's going to um it's going to

22:45: make things easier in some ways because

22:46: like for example we can autoincclude

22:48: logs that you know just get uploaded to

22:50: like our server. Uh we can auto like you

22:52: know if you have a replication item say

22:54: like you know this thing is just as

22:57: example say like this thing is causing

22:58: issue it just be like drop and you know

23:01: it make sure it gets uploaded um or you

23:03: say like I have issue in this war that

23:05: I'm in and like you know we're just

23:06: going to uh include information so that

23:09: should simplify the reporting process

23:12: um that said so there's

23:17: one aspect of the reporting where like

23:20: It's pretty much on the skill of the

23:22: reporter, you know, to accurately kind

23:24: of describe the issue and there, you

23:26: know, something that we can't really

23:30: fix, you know, it's not a technical

23:32: problem. That's more like, you know,

23:33: people knowing

23:35: um

23:38: people are like, you know, like some

23:40: people are kind of porting things and

23:42: describing things than others. And I

23:44: don't think there's much like we can do

23:47: like because we do have like guidelines

23:49: which you know try to explain this is

23:50: how we parize things. This is think

23:52: human based photo subscription.

23:55: Yeah I can actually do this.

24:00: Um anyway

24:03: uh what else what was I saying?

24:06: um we have the guidelines but like a lot

24:08: of people kind of skim them or don't

24:10: even read them and then like we get like

24:12: you know reports that like are hard for

24:15: us to handle and they're hard for us to

24:16: understand and sometimes it can be

24:18: depending on what the issue is sometimes

24:20: it can be like difficult to be like you

24:21: know

24:23: understanding what the actual problem is

24:25: because when you do report something you

24:28: know like you know what the problem is

24:29: kind of in your head but

24:33: it's kind of it can be hard to like you

24:34: know someone else like you know have the

24:36: same kind of like understanding of

24:38: what's happening. Um, and I don't think

24:40: that's something like, you know, fix.

24:43: And there's like one thing I'm a little

24:44: bit worried about is like once we do

24:46: have it in game reporting, we might get

24:49: more of that. Like, you know, we get

24:50: like more reports that um

24:55: are kind of like, you know, hard to

24:57: handle, that can be hard to understand

24:58: for us. Um

25:02: because like by lowering like you know

25:03: if we lower the bar you know we get like

25:06: more reports and then like we need to we

25:08: still need to triage them and if we get

25:11: like you know a lot more of them

25:14: it means like you know we can spend less

25:16: time on each one you know trying to

25:18: understand it and we're also like lower

25:20: like quality it creates like the

25:22: situation where like you know we're

25:24: flooded with reports and we're not able

25:26: to kind of process them. Um so I do

25:29: wonder if there's going to be you know

25:30: some kind of like negative effects of

25:32: that. Um but some of the stuff like you

25:36: know for example the logs that will help

25:38: you know just having included having

25:40: included like crash logs if you like we

25:41: can even detect you know the user has

25:43: crashed just auto upload the crash logs.

25:46: So some of the stuff can be you know

25:48: done pretty automatically. Um

25:51: and that will help in some ways but

25:54: depending on what the issue is like you

25:56: know

25:58: some like some things like you know

26:00: there

26:02: essentially not something we can fix on

26:04: a technical level like no amount of

26:06: tooling is going to make it you know so

26:09: people kind of follow the proper like

26:11: reporting guidelines and make sure to

26:13: include like the information like

26:15: correctly. The only the only thing that

26:17: can be done is with that is you know on

26:20: the side of the user like read

26:22: guidelines try to understand you know

26:24: like how to make good reports uh try to

26:26: understand how we prioritize we have

26:28: like a big like write up on it um where

26:30: we kind of describe like you know how do

26:32: we prioritize issues

26:35: um and the only thing we can do is you

26:37: know encourage people to do that more

26:41: but I don't know if there's like you

26:42: know anything on technical level So all

26:45: the kind of basic stuff you know the

26:46: logs stuff like that helps because like

26:48: you know we can just auto collect that

26:50: like with the report like if you just

26:51: check a check box like include my log.

26:53: Uh but then like the stuff like you know

26:56: actual description of things you know

26:57: that's a little bit harder. So we'll

27:00: see. Um

27:03: yeah it it happens and it's like you

27:06: know stuff like we deal with and we'll

27:08: hit it as as we kind of come. Uh but

27:11: yeah, like we will have like in-game

27:13: system eventually like we do want to

27:15: like you know get more reports like so

27:17: more stuff gets caught and make it kind

27:19: of easier like you know quicker to

27:21: report because there's some things that

27:22: end up like being reported but um we

27:26: also like worry about like you know the

27:28: flip side of it like because it is it is

27:30: a double-edged sword. Um, and if we get

27:33: like overwhelmed like you know by having

27:35: lots of issues that like are hard to

27:37: parse.

27:39: Um,

27:42: I like I I'm I'm like, you know, a

27:44: little bit concerned what this what is

27:46: that going to do to our ability to sort

27:48: through the issues and solve them?

27:50: Because you can also see that for

27:52: example, you know, like with the

27:55: Minecraft like uh issue tracker, there's

27:58: so many reports where like they're just

28:00: like

28:02: they're missing with like core

28:03: information and they just they don't

28:04: even bother like engaging with them. Um

28:08: and I wonder like you know we'll have to

28:09: do the same. will just be like like we

28:11: just this report is like like we can't

28:13: really do anything with this and you

28:16: know and you don't you won't have time

28:18: to like also be like you know spend time

28:20: replying to every single one. Can you

28:22: please include this? Can you please

28:23: include that? Can you please include

28:24: that? Because it takes time to like you

28:27: know have those responses and you know

28:29: and to like try to understand like

28:31: whether like what you might need for

28:32: this one. Um it also like you don't know

28:35: if you're even going to get a response

28:36: because we already get that with GitHub

28:38: where um you know sometimes people

28:41: report something and we're like like we

28:42: don't understand this and then like we

28:44: don't really get the response back but

28:46: in a lot of cases we do. So um but the

28:49: question is you know with this kind of

28:50: system are we going to get one? But

28:51: maybe if it's like integrated you know

28:53: and the user like we make a message pop

28:56: up be like please reply to this thing we

28:58: need more information maybe they'll

28:59: help. So

29:02: it's it's it's it's going to be like I

29:04: think it's like there's going to be like

29:06: you know no kind of challenges we'll

29:08: have to deal with that kind of system.

29:10: Um but yes eventually we will we will

29:14: have the system you know sort of like in

29:15: game make it like more accessible and

29:18: whatever kind of issues like arise like

29:20: we'll um we'll see what we can do like

29:22: to deal with those.

29:24: Um that's you know kind of like my

29:26: thinking on it and and my only like

29:28: worry is that like

29:30: that people will have expectation that

29:33: like it makes it more likely for their

29:35: reports to be addressed and that they

29:37: can like you know not that they will not

29:39: have to follow the guidelines we ask

29:42: them to follow on the GitHub

29:44: where you know with it being more

29:46: accessible we'll need them to follow

29:48: them like you know that much more to be

29:50: able to handle the larger volume of the

29:53: reports.

29:55: Um

29:57: because like you know the more reports

29:58: there are

30:01: the less time we have to spend on them

30:03: and the higher you know does the quality

30:05: need to be. So, it's kind of almost like

30:09: almost feels like a potentially paradox,

30:11: but like overall

30:13: um there's potentially things we could

30:15: do like you know maybe having system

30:17: where we kind of say like rate the

30:20: reports and be like you know this like

30:22: this needs this this needs that like

30:23: maybe we can like link the guidelines.

30:25: We'll we'll see. We'll see.

30:28: I don't want to ramble on this much

30:30: longer.

30:32: Uh the next question is

30:36: from uh Safi. Safi is asking uh almost

30:40: every time introduced showed someone the

30:41: resonite they were turned off by how the

30:43: movement ike looked especially when

30:45: using full body tracking. Is there a

30:47: time frame when the work on the yak

30:48: system continues? Um we don't do time

30:51: frames like things like you know

30:57: things are hard to predict like with

30:59: like this level of complexity of

31:00: development. So like we cannot really

31:02: give you a specific time frames. The

31:04: only thing I can say is like um I'm

31:06: going to say because I use full body

31:08: myself you know um it's one of the like

31:12: high priority things. Um

31:15: if you know if this is something that's

31:17: important to you uh I recommend you know

31:20: avoing the GitHub issue for the new IK

31:23: uh because that like you know signals to

31:24: us this is a really important issue that

31:27: we need to prioritize sooner than later.

31:29: Um, and I do think I want to like

31:32: prioritize this like, you know, sooner

31:34: than later, but also like if it's

31:36: fighting with other things that need to

31:37: be prioritized sooner than later, which

31:39: is, you know, stuff like the UI. Um,

31:41: because that's another thing that, you

31:42: know, people are turned off by. And we

31:44: need to figure out like what is more

31:47: what is going to be more impactful? Is

31:49: it going to be more impactful if we

31:51: address some of the UI now or is it

31:53: going to be more impactful with the IK

31:54: or is it going to be more impactful for

31:56: us if we for example prioritize

31:57: something like the molecule which is you

31:59: know going to help uh on the development

32:01: side because now it's creating you know

32:03: some issues where um right now for

32:06: example you know working on the split

32:08: ending and I'm just kind of laser

32:09: focused on it and there's a bunch of

32:11: like PRs and like it's kind of hard for

32:14: me to make normal builds because I have

32:16: to like switch out everything to make a

32:18: Um once we have like molecule that like

32:21: makes some of the stuff easier because

32:23: if people if team members make PRs for

32:25: features those can just become

32:28: automatically available as per builds we

32:30: can have bunch of you know completely

32:31: separate pre-releases

32:33: um and they can start doing community

32:35: testing on those and that's going to

32:37: help you know reduce some of the

32:39: workload for like you know having to

32:41: manually verify um you know and review

32:44: the code and it's going to make it you

32:46: know where we can was more like rubber

32:48: stamp it. Uh and there still going to be

32:50: like a review but like at least like you

32:52: know the confidence this is not like

32:53: causing any breaking changes. So

32:57: there's bunch of things that are kind of

32:59: like being balanced and it's pretty high

33:01: up there but there's also like other

33:02: things that are high up there. Um you

33:05: know another thing like we can also be

33:06: like you know maybe it's going to be

33:08: more impactful if we do stuff like

33:09: collections for protofllex because

33:10: that's going to open up so many

33:12: possibilities for creators and they're

33:14: going to start building cool content. So

33:17: there's there's a lot and I do myself

33:20: want the IK to be like reworked,

33:24: but I kind like I also want the UI to be

33:26: like reworked. I like want so many

33:28: things at once and it is hard.

33:32: Um, next question

33:36: is from Abysmol.

33:39: Uh, Abyssmos asking, uh, are there any

33:42: plans or is it even possible to get rid

33:44: of the UI and frame rate lookup when

33:45: loading a new world? Is it possible to

33:47: separate UI rendering and your POV

33:49: camera movement into something like

33:51: SteamVR home overlay that isn't affected

33:53: by loading things? Um, so that's not

33:56: really with like the Steam VR overlay.

33:59: Um, you can't really separate that like

34:01: that. But um what we can do is like you

34:04: know do as much of the work as possible

34:06: on a separate thread and then just

34:07: switch to it. And there are some changes

34:09: I would like to make like to how the

34:11: worlds are being updated. So we can like

34:13: I don't know both run the world's

34:15: updates in parallel and also

34:19: um have them like you know like if the

34:22: world isn't currently focused and

34:23: rendering have the world be updated you

34:26: know asynchronously so it doesn't you

34:29: know it doesn't need to like log the

34:31: entire like frame rate and that will

34:33: help you know with like a lot of these

34:36: things because it can like process all

34:37: the world like in background and once

34:39: everything's ready and stable then it

34:41: like switches back into like you know

34:42: syn like sort of synchronous mode where

34:44: it can start like rendering stuff and

34:46: sending stuff to the renderer. So um

34:48: there are things that can definitely be

34:50: done.

34:53: Uh next question is from uh from Chu.

34:58: Uh let me make this bigger. Uh Choose

35:02: asking uh I know you talked about

35:06: looking for new rendering engine. Have

35:09: you sorry this is kind of big so I don't

35:11: know where to position it without

35:12: blocking the camera. Um

35:15: uh have you looked at ogre next at all?

35:19: Uh forward cluster van render target

35:21: cross perform rendering only and

35:23: embedible no force custom surface shader

35:25: language like filament major development

35:27: and already even stereostopic VR

35:29: rendering. Only thing I can see be

35:31: bottage or conser is that it's currently

35:32: open VR only. It doesn't have open XR

35:35: supported but it seems to have an

35:36: enterprise downstream consumer using it.

35:39: honestly impressive looking contracted

35:40: XR simulator work so it's not the

35:42: hobbyist only. So this sounds

35:45: interesting. Um we don't like really

35:47: like I haven't like really done super

35:49: much in depth like scouting for like

35:50: renderers yet. Um so it's possible like

35:55: like well like this seems like a good

35:57: like consideration. There's definitely

35:59: stuff like we would need to know is like

36:01: what is you know the what's the level of

36:04: like feature like feature parity because

36:07: you know we need we need stuff like even

36:09: like low level like you know lower level

36:11: like you know how does the lighting

36:13: system work like you know like does it

36:15: like can for example point lights have

36:17: shadows you know on them can direction

36:20: lights have shadows can does it support

36:22: reflection probes um stuff like that so

36:27: Open XR that's potentially like

36:29: concerned because like you know like

36:31: like what how how's it going to you know

36:35: are you planning to switch to it like is

36:37: there any active like work going towards

36:39: that um like you know that's that's

36:42: another one the other part would be you

36:44: know with the stability like having the

36:46: downstream client that's a that's a big

36:49: one but also like still there's a worry

36:52: what if the component just you know goes

36:53: under what if like they're not

36:55: interested what if they switch and the

36:56: project ends up being a bound Don't. Oh

36:58: my god. Thank you so much for the gifts

37:01: uh for the tiers. There's uh one, two,

37:04: three, four, five. Five gifted subs

37:06: subscriptions. Thank you. Thank you so

37:08: much.

37:10: Um but yeah, like going under render, uh

37:13: there's a bunch of considerations like

37:14: what I think I will do at some point. Um

37:17: we'll just compile the list of them be

37:19: like you these are the pros, these are

37:20: the cons. um you know because for

37:24: example one thing I'd be kind of curious

37:25: with this one is how much community

37:27: involvement there is. Is this like you

37:29: know like um this is very active like

37:32: with community or is this like mostly

37:34: driven by that one company? So we'll

37:38: see. But uh thank you like this is this

37:40: is good to have like you know kind of

37:41: more more considerations.

37:45: Uh

37:47: let's see. Uh I think we got two. I kind

37:51: of put things behind the camera so I

37:52: don't know. Um

37:55: yeah, there's two more questions after

37:56: this one from Discord. Uh so the next

37:59: one's from Mint Shock. Uh Mint Shock is

38:02: asking uh how is it handled if you drive

38:04: the value of dynamic variable from two

38:06: different places? How does decide what

38:08: uh drive takes priority? So it's not you

38:12: can't do that. One of the constraints of

38:15: drives is you can like there can only be

38:17: one drive for particle value. So like if

38:20: you try to drive uh if you try to drive

38:23: you know something that's already there

38:25: going to try to drive it either you know

38:28: trying to establish the drive will fail

38:31: or if you force it it's going to break

38:33: the other drive. So, but the constraint

38:36: is at any time there can only be one

38:39: driving source and if you force one in

38:42: it's going to break whatever the other

38:43: one is like it's going to like um

38:45: essentially undrive it. Um and it's the

38:48: constraint that like the data model

38:49: enforces. So,

38:52: uh there should be actually video I

38:54: don't know if it's published yet. Uh

38:56: there should be video on like you know

38:59: why this is um like why can you like

39:02: drive from multiple sources? I do

39:04: recommend giving them one more watch in

39:05: case it's published. I'll have to check.

39:08: Um the next question is from

39:14: Shadow X. Um

39:18: Shadow is asking, "What is the correct

39:20: terminology in your eyes to refer to

39:21: builds with the new architecture, split

39:23: builds, post splitending builds?" Um I

39:26: don't think we actually have like proper

39:27: terminology right now. I mean you can

39:29: just I I've been also saying like the

39:31: split thing it's kind of sort of meme

39:34: name to for it. Um

39:37: like like I would say like like I've

39:39: been calling them like graphical net

39:41: like builds. So maybe that but uh like I

39:45: don't think we have like a super like

39:46: specific terminology for them. I can

39:48: call them like you know spliting build

39:50: net graphical client like I think that

39:52: works.

39:56: Uh, and let's see. I think that's all of

39:58: them with this one being the last one

40:01: from Discord. Uh, so I'll be able to get

40:04: to the Twitch ones in a sec. Uh, BDS is

40:07: asking, "Now that pre-release has been

40:08: out for a bit, how are things going

40:10: compared to how expected? More issues

40:12: feel on align with expectations."

40:14: Um, I would say it's roughly kind of

40:17: expectations. like there's like things,

40:19: you know, like that aren't super

40:21: expected, but most of them kind of are

40:23: issues that like make sense for what has

40:26: been changed. Um,

40:29: I haven't seen any issues that would be

40:33: like curve balls, like big curve balls,

40:37: uh, that like where I'm like like that

40:39: just doesn't make any sense. Like why

40:41: would this be happening? Uh but there's

40:43: also like issues that even though like

40:44: they make sense, they end up like being

40:45: a little bit of a rabbit hole. Um for

40:49: some things so

40:52: like right now like not super much kind

40:55: of not super much stuff kind of stands

40:57: out. So like I feel like it's kind of

40:59: going like okay and kind of like sorting

41:03: through the issues. So

41:05: yeah, the thing is like you know it's

41:07: hard to have like expectations because

41:08: you don't know like what you're going to

41:10: get. Um,

41:14: but like there's like nothing that would

41:16: be like too surprising that I can like

41:19: think of.

41:21: I guess the the the one that like is

41:23: more complicated was the

41:26: uh Linux, you know, like not working

41:29: with Proton because there's like a lot

41:31: of like really weird issues with that

41:33: one that a lot of people had to kind of

41:35: like look into. Um, and that one that's

41:38: the one actually that Yeah, that one

41:40: that one feels like that's more

41:41: problematic than I thought it would be

41:43: because I thought like program would

41:44: just kind of handle things. Uh, but

41:47: there's a lot of kind of like

41:48: complications there. Fortunately, S has

41:50: been kind of like working on those and

41:52: like you know a lot of people in the

41:54: community have been kind of figuring how

41:55: to get it working. So, um, I think we'll

41:57: get that one sorted. Um but otherwise

42:01: like otherwise like things like one

42:03: thing that actually was kind of nice is

42:05: like um a lot of the reports that people

42:07: have made even though they were like

42:09: different reports and like different

42:10: kind of like seemingly different issues

42:13: they were actually the same bug. So I

42:15: would fix one bug and then be like okay

42:17: that's like that fixes five of these

42:19: issues and fix another bug and I'm like

42:21: oh this fixes four of these issues. Um,

42:25: so it's uh that's partly kind of nice

42:28: because like it makes it easier to clear

42:29: a bunch of issues, you know, at the same

42:31: time.

42:33: So with that, we've got all the Discord

42:36: questions out of the way. Uh, which

42:38: means we can get into the ones from the

42:42: uh from the Twitch chat. So again, if

42:44: you're like joining uh if you want to

42:46: there's a lot of questions, so I might

42:48: uh speed through some of these. Um,

42:52: actually, hold on. Let me let me check.

42:54: There's a bunch. Um, actually, there's

42:57: not that many so far. Uh, if you if you

43:00: want to ask any questions, um, do you

43:03: want to ask any questions, make sure to

43:05: put a question mark in it in the chat.

43:07: That way, it kind of pops on this thing

43:08: over here. Um, and you know, to make

43:11: sure I don't miss it because I don't

43:12: like I don't watch every single message

43:14: in the chat. Um, so let's get started.

43:18: So the first one, it's not a quite quite

43:20: question, but it's it's a good start.

43:23: Bitcoin saying, "Hey, hello."

43:28: Oh, and we got I think I missed this. Uh

43:30: we got a we got a spliting from Jack the

43:32: Fox. Thank you for the bits.

43:36: And we got the schnopit. Um

43:40: so and we also got a schnopit from the

43:42: redneo and also from ace on Twitch. No,

43:44: actually no, that's I misread that. the

43:46: type. Um, I actually started compiling

43:50: my schnoets.

43:52: I have a list now, so I don't have to

43:55: like, you know, think of something over

43:56: the top of my head. Um, I might pick

43:59: like a shorter one.

44:02: Um,

44:04: I

44:06: I'm going to pick a shorter one uh

44:08: because uh I've already spent like there

44:10: was a lot of Discord questions. there's

44:11: some like bigger questions. So I don't

44:14: want to like do a long schnuppet. Um so

44:18: one of my schnopets is when people

44:21: assume that something is done by design

44:24: like for example it's going to be some

44:26: undesirable behavior. There's going to

44:27: be some kind of bug you know or

44:30: something that just kind of works in a

44:31: really weird way and people be like you

44:33: know like those are like weird like

44:35: design decisions. Um,

44:38: and like to me that's kind of like like

44:41: a bit annoying because like not like

44:44: people sometimes like it's kind of like

44:46: assuming like we make things bad on

44:48: purpose and that's kind of weird. Um,

44:53: and a lot of things that like you know

44:55: are like weird like they're often times

44:57: they're not by design. They're you know

44:59: sort of consequences of like some other

45:02: things but like they were not designed

45:03: to be that way. um it's just you know

45:07: kind of how the dice has rolled on some

45:09: things you know it's like how things

45:10: kind of settle down or maybe it's some

45:12: bug or maybe it's a system that we

45:15: didn't have time to complete yet. Uh,

45:18: and this actually is one that kind of

45:20: happens a lot. It's like, you know,

45:21: where people kind of assume like it's

45:22: that way because it's been designed that

45:25: way. And a lot of the times it's

45:26: literally like we haven't had time to

45:29: like finish this part of the system yet

45:31: to actually make it like, you know, work

45:33: well and be polished and have all the

45:34: features it needs. So sometimes, you

45:37: know, there's stuff like like

45:38: workarounds where that you have to use

45:40: because, you know, we don't have time.

45:44: So if you're like seeing like something

45:46: weird unless we say it's by design

45:49: like

45:51: I would kind of ask you know people

45:53: don't assume it's by design

45:55: and if somebody says like you know it's

45:57: like weird design don't assume it is

46:00: like by design like you know like unless

46:02: we actually say that uh because it kind

46:05: of makes things a bit weird

46:08: and it kind of feels like you know being

46:09: like

46:12: like we're assuming like we make things

46:14: like you know about on purpose

46:17: and just going to

46:19: so that's that's that's that's my snit

46:21: for for for the stream. Uh I'm going to

46:24: cross it out from cross it out from

46:27: this. I have some big ones for some

46:29: other times. Uh oh my god. I don't know

46:32: where the strike through is. Where's the

46:34: strike through in this format

46:37: text strike through? There we go.

46:41: Uh we also got um

46:45: uh TyponX and we also got BD typonx 4net

46:48: 9. I'm just going to I'm going to

46:49: combine these two and I'm just going to

46:51: do it about net 9. Um

46:55: so typonex that's like you know this

46:57: like that's super cool about net 9. Hm.

47:01: I wonder what it would be.

47:05: Um, I have like one that I really like,

47:08: but it's not even specific to denied

47:10: because like I have like one about

47:12: spans.

47:14: You know what? I'm going to I'm going to

47:15: shoehorn it into this. It's kind of

47:17: related. Um, one of the cool things with

47:20: the spliting which is kind of related to

47:21: that nine is in C like while back they

47:26: introduced this called span. And what a

47:29: span does it lets you sort of it lets

47:32: you access like you know raw memory

47:35: without worrying where that memory

47:37: exists. And that memory can be you know

47:40: it can be managed memory you know

47:41: managed by the um common language

47:44: runtime. It can be native memory. It can

47:47: be shared memory

47:49: um you know like like that we like using

47:52: for the IPC mechanism. It just kind of

47:53: like you know abstracts it away and it's

47:56: super performant. Uh it also lets you

47:58: interpret that memory. So you can like

48:00: you know take this data type and

48:01: reinterpret as a different one and just

48:02: work with it as different data type and

48:05: it's super fast like if you if you know

48:07: like what you're doing with it. It's

48:09: also like hard to shoot yourself in the

48:10: foot with it the way it's designed. Um

48:13: so it's like it's pretty safe but also

48:15: very powerful like it it kind of lets

48:17: you do stuff that like you could do with

48:19: you know um raw pointers and like which

48:21: is like C and C++

48:23: but in a sort of safe way. And when I

48:27: designed you know photon dust uh the our

48:30: own like particle system I've designed

48:33: it in a way like because I knew like you

48:37: know I knew like we're going to do the

48:38: split thinning and the photon does this

48:41: in preparation for the split thinning.

48:42: set design where all the simulation

48:44: results like all the final states

48:46: they're actually held in just like you

48:48: know a raw chunk of memory like like a

48:51: like a buffer and for initial

48:53: implementation it was just a bite array

48:56: but all the modules all the simulator

48:59: modules were accessing that through

49:01: spans

49:02: and then for splitting I needed to move

49:05: it from like managed memory to the

49:06: shared memory. So like the simulation

49:09: results are actually accessible

49:10: overshared memory on the renderer side.

49:14: Uh and all I had to do is just like add

49:16: like the allocator that like allocates

49:19: you know the memory chunk to the system.

49:21: So it can be like I need like this many

49:23: bytes and it just adjust like you know

49:25: how the span is accessed and that's it.

49:28: and it just worked like it literally

49:30: just made it work across you know

49:33: separate process and I didn't have to

49:34: like modify like much of photon dust to

49:37: make it work. Um, and it's super cool

49:40: because like it like this was only

49:43: possible thanks to spans that like you

49:45: know most of the code like it doesn't

49:47: care it doesn't care that like the data

49:49: exists in share memory instead of like

49:51: you know C# array and that makes things

49:55: so much nicer and like you know we just

49:57: get like the performance benefit of the

49:59: dead 9 like you know without too much

50:01: hassle for that specific part. So, um I

50:05: would say that's this that's that's the

50:07: one I'm going to say for now. And it's

50:09: like that really expans like one of the

50:12: best features like from C.

50:16: Uh

50:18: next one here from uh Kra Blades is

50:21: asking hello yellow man. How are you

50:23: feeling today? I'm tired.

50:28: Uh think you're not working things. Next

50:32: one is from Asce on Twitch. As Twitch is

50:34: asking, do you see any future projects

50:36: bigger and more complex than performance

50:38: optimizations?

50:40: Um h

50:43: I'm not

50:45: kind of depends what you count because

50:47: uh the current performance optimizations

50:49: displaying it's been huge. It's been

50:51: like one of the biggest things but also

50:54: in part because of all the preparatory

50:56: work because we needed to do the type

50:58: system you know like so then moving the

51:00: headless to net 9 then we had to like

51:03: you know um had to like rework photon

51:05: does make our own particle system have

51:07: to make our own audio system and then

51:10: like you know only then like able to do

51:12: the actual splitening. So it had a lot

51:14: of like very complex preparatory work.

51:17: So if you if you take that whole that

51:20: probably has been like one of the most

51:22: like it has been the most complex like

51:24: engineering project like on the like on

51:26: this so far and right now I don't know

51:30: of any specific projects which would

51:32: have like you know a lot of big

51:35: predefined prerequisites like that. Um

51:37: there's a bunch of like you know big

51:39: tasks that are like ahead but um

51:44: I can't like immediately think of any

51:45: that would like involve because the the

51:47: the split to be able to get to split

51:49: ending we actually had to do bunch of

51:53: big projects that are big projects on

51:55: their own that have to be done as

51:56: prerequisites

51:58: and there's like projects in the future

52:00: that are also like big tasks but I don't

52:02: think many of them have like big

52:04: prerequisites

52:06: like this. So if you count like the

52:09: whole I don't I can't think of any but

52:12: like you know

52:14: things can change something can come up.

52:16: Uh but we'll we'll see how things go

52:21: like sometime something something will

52:23: eventually come up. Um

52:27: yeah, I can't think of like anything

52:29: right now. Like I do maybe one that's

52:33: going to be big one could be uh web

52:35: assembly support because there's a lot

52:37: of like you know in terms of API but

52:39: also like I don't think that would still

52:42: be like as big as this because like

52:44: that's also like you know it's a big

52:45: project on its own but it doesn't have

52:48: that many prerequisites to do.

52:52: Um, so yeah, we'll we'll we'll see if

52:54: something comes up. Like I don't see

52:56: projects that like as a whole would be

52:58: like this big, but there's some sort of

53:01: projects that like uh if you if you took

53:03: any individual part, there's definitely

53:04: projects that would be like

53:07: actually wait one would be probably the

53:10: render switch because making sure

53:14: there's like a lot of stuff with that

53:16: one. So like I do think the render

53:18: switch that might be a big one because

53:20: it does involve a lot of things like you

53:22: know it's like one figuring out which

53:25: render to use but then also like

53:26: bringing to feature parity making sure

53:29: stuff like works and then like all the

53:31: shaders will have to be pretty much

53:33: reworked. Um all the behaviors will have

53:36: to like make sure to be like reworked.

53:38: So it's like and then we have to like

53:40: you know build stuff like on that but

53:41: those can be like separate projects like

53:43: you know once we want to add like custom

53:44: shader support that's a project of its

53:47: own making sure you know this design to

53:49: be long-term stable um so there's a

53:53: bunch of things but also could be

53:54: conserved separate. So like um we'll see

53:58: we'll we'll see that

54:01: sometimes like you don't know like you

54:02: know how big some of these things are

54:04: until you actually get to them because

54:06: you know that's where you discover like

54:07: oh like and we need to do this I need to

54:09: do that and once you kind of start

54:11: taking it apart and seeing to things

54:12: like you know that's when you learn like

54:14: of some of the complexities kind of

54:16: involved.

54:18: Uh,

54:20: next question is from the Redneco. Uh,

54:22: Reo is asking, "Hey Fox, what's your

54:24: favorite book series?" Uh, for book

54:26: series, I would say the expanse, like

54:28: the all the nine books and like a bunch

54:31: of the novelas, especially the last

54:33: three books. Like those are like

54:35: excellent. It's like when stuff gets

54:36: like super alien. Um, we've also seen

54:39: the TV show. Like the TV show is

54:41: excellent. I recommend watching it. Uh,

54:43: and the books are also like great. Uh

54:45: there's some actually differences

54:46: between the books and the shows, but

54:48: like overall the story is the same. Um

54:51: and what I really like about that is

54:52: like it it feels very realistic like you

54:55: know it like it's sci-fi. Um but also

54:57: like stuff that happens feels like you

54:59: know this is potentially natural

55:01: progression you know of humanity like

55:04: you kind of like this kind of makes

55:05: sense. Like I can see this being real.

55:08: um you know you don't you don't like

55:13: you you don't like a lot of like scihfi

55:15: that tend to feel like you know very

55:20: I don't want to say like cartoonish

55:22: almost like you know it's like ships and

55:24: shooting lasers and so on but like

55:28: expans feels a lot more grounded but

55:31: then there's like but that's until like

55:33: you know some of the alien stuff starts

55:35: happening but even the alien stuff is

55:37: like proper for the alien like it makes

55:39: a lot of other series feel like you know

55:41: like that aliens like are just like

55:44: you know green humans with antennas

55:47: like because the stuff in expands is

55:49: like alien like on very fundamental

55:52: level and I don't want to say too much

55:53: because I don't want to spoil it but it

55:55: gets really weird but also in a way that

55:58: sort of kind of makes sense like we're

56:00: like like you know I can see this being

56:02: real. Um,

56:04: so that's that's that's that's a really

56:06: good series.

56:11: Uh, next question is from BLAR. Uh, on a

56:15: scale from Yep to all, how you feeling

56:18: about the progress on Spliting on

56:20: personal level? I'm feeling

56:24: I'm tired, but there's like still a

56:26: bunch of stuff to do, so chewing through

56:28: it.

56:32: Uh, next question is from Ace on Twitch.

56:34: Uh, how big of a performance impact do

56:36: you see Arizona getting after Beu gets

56:38: updated and multi-threaded? Um, as I

56:41: say, um, I think it's going to be a bit

56:44: it is also going to depend like a lot

56:46: like on specific world you're in. Uh,

56:48: because depending on the workload, you

56:50: know, there can be different amount of

56:52: workload being put on physics versus on,

56:55: you know, um, other stuff. So in worlds

56:59: like there's like lots of colliders,

57:00: lots of stuff kind of like you know

57:02: moving and so on that's defin

57:06: like you know stuff that's indirect like

57:08: like using beu's acceleration structures

57:11: for a bunch of things like we're using

57:12: them for dynamic bones that's using the

57:14: simulation itself is not using beu but

57:16: like to figure out where to figure out

57:18: like where the colliders are that's

57:21: using beu acceleration structure same

57:23: with spatial variables same you know

57:25: with like for example haptics and stuff

57:27: so if there's like improvements for that

57:29: in performance, you know, that can have

57:32: positive effects. But it's one of those

57:35: things is, you know, like until we do

57:38: it, it's kind of hard to speculate about

57:40: it because like these interactions tend

57:42: to be very complex. So, we'll we'll see.

57:46: Um, it's good to update it like anyways

57:48: because like it should provide

57:49: improvement like overall. It's also

57:51: going to, you know, there's like back

57:52: fixes in it and it's just good like in

57:54: general to be like be the latest

57:56: version. Um some of the like

57:58: improvements might not even be like you

57:59: know something that you would

58:01: necessarily notice because like for

58:02: example you know the effects stuff like

58:05: like if you have lots of rigid bodies

58:06: and also rigid body simulation um and

58:10: like you know that's something can't

58:11: really do like unless you use know the

58:13: character controller. So

58:16: um you know with those cases if we

58:19: didn't update Beu and like then we

58:20: implement the rigid body physics

58:23: that might be slower than if we do

58:26: upgrade. Uh but like we're probably

58:28: going to upgrade to beu like very very

58:31: likely going to upgrade beu physics

58:32: before we implement full rigid body. So

58:34: once we get rigid body you know that's

58:36: going to be faster than it would have

58:37: been otherwise because that's where a

58:39: lot of the improvements are. So there's

58:41: like no effects like that where it's

58:42: like you know good to have it upgraded.

58:44: So, um, but we'll see. We'll we'll we'll

58:48: see.

58:51: Um, oh, this is within discussion. Just

58:55: asking to share stuff. Uh, hello.

59:00: U Bubbler. Uh, which team member is

59:03: responsible for editing, uploading

59:04: resonance clips to YouTube channel? Uh,

59:06: that's me. Um, I usually do it because

59:09: like I know like you know what I talked

59:10: about and I kind of have like in my head

59:12: like, okay, this one's this one would

59:14: make a good clip. This one would make a

59:15: good clip. Um, it's actually it's also

59:18: very quick for me to just be like, you

59:19: know, I have the file on my PC already.

59:22: Um, let me make sure. Yeah, I have like

59:25: the file on my PC. Actually, let me

59:28: double check my dis space. Uh, I forgot

59:30: to do that at the beginning. Oh, wait.

59:33: Phone. Oh, I got 100 gigs free. So,

59:35: that's fine. Um yeah, like I I just I

59:38: just do it like very it's very quick to

59:40: do. So like um you know like it's one of

59:45: those things where people are like oh I

59:46: just like have like you know somebody on

59:47: the team to do it but then I have to

59:49: worry about like okay I need to make

59:50: sure they get the file. I need to tell

59:52: them this would make a good clip, this

59:53: would make a good clip. Um and in the

59:56: time like it takes to do all of that I

59:58: can just clip it out myself because like

01:00:00: it's literally I just find beginning and

01:00:02: clip out done. Um I don't do like any

01:00:06: complex or editing on those. Um so it's

01:00:10: just kind of easier that way. It's kind

01:00:12: of ends up like being faster. Um

01:00:17: and usually like you know uh what I was

01:00:21: going to say

01:00:23: yeah usually like I just kind of you

01:00:24: know clip it. Oh I remember. Um, one

01:00:26: thing that made it easier is like once I

01:00:28: started doing the thing where I pulled

01:00:29: these out like you know I can just

01:00:31: literally scrap the timeline and be like

01:00:33: okay like I pulled out I pulled out this

01:00:35: question beginning find like we know

01:00:37: where make it go away um you know click

01:00:41: there done it's very quick process

01:00:45: I also got a subscription from Moonbase

01:00:47: thank you and the one from BD we go

01:00:51: through that part but uh actually wait

01:00:52: there's a question first uh Moonbase

01:00:54: asking just for client Will molecule

01:00:56: also be usable in game for stuff like

01:00:58: asset versioning and stuff? Yes, that's

01:01:00: the plan. Um the general goal like with

01:01:03: anything is make systems that are very

01:01:06: very flexible, you know, that can be

01:01:08: used for lots of different stuff and gen

01:01:11: can be used you know by you the

01:01:12: community as well. Um so having them

01:01:15: having molecule

01:01:18: um it solves like you know certain set

01:01:20: of problems which is you know versioning

01:01:22: stuff like uh um compatibility you know

01:01:25: kind of like where you can do like minor

01:01:27: major versions you know breaking changes

01:01:29: versions resolving dependencies um when

01:01:32: it does all of that stuff you know

01:01:33: that's something that's not useful just

01:01:35: for us like for the engine itself but

01:01:37: it's also useful for stuff you build in

01:01:39: game so the way I want us to build it is

01:01:43: make So it can be used for all those all

01:01:45: those different scenarios. Once we have

01:01:47: protofllex you know nested nodes we need

01:01:49: like a package system you know so you

01:01:51: can like be like okay I need to version

01:01:52: I need to I need I need like you know my

01:01:54: protolex to reference package you know

01:01:57: this and that you know for doing this

01:01:58: and that of version this and then have

01:02:00: like a system that resolves it. Um

01:02:04: why not use molecule like we already

01:02:05: have like system that solves like a lot

01:02:07: of these problems use that and you know

01:02:10: we get we get like bigger bang for the

01:02:13: that like you know for the time we put

01:02:15: into it

01:02:17: and it's kind of you know the philosophy

01:02:19: of like my development and also video

01:02:22: thank you like I'm going to pull these

01:02:23: out

01:02:26: there's a lot of lot of gifted ones uh

01:02:30: make sure make sure you thank the BD the

01:02:32: underscore to view one of these.

01:02:38: Thank you.

01:02:40: Jup

01:02:45: uh look at the sort through these.

01:02:50: Oops, that's not the one.

01:02:55: Uh as on Twitch is asking um are you

01:02:57: excited for the help tab and it progress

01:02:59: so far? Yeah, it's looking pretty good.

01:03:01: like the team that they've been kind of

01:03:02: working on it for a while and

01:03:06: um

01:03:09: it's it's like you know like I think

01:03:10: it's going to help like a lot of people.

01:03:12: Um so it's like you know just having the

01:03:13: information accessible right on the tab.

01:03:15: We'll see how like people end up

01:03:17: interacting with it because you know

01:03:18: like

01:03:19: there's always part of the development

01:03:21: where like you know this should help

01:03:22: this should like work out this way but

01:03:23: then like you know another thing is how

01:03:24: do people actually interact with it. Uh

01:03:27: but overall I think it's going to help

01:03:28: because like it's also becomes a thing

01:03:30: you know we can direct people to but

01:03:32: even just having you know help on the

01:03:33: tab I think that's going to make it more

01:03:37: easy like easier for people to you know

01:03:40: just get help with stuff like they'll be

01:03:42: lost and they'll be like okay there's a

01:03:43: big question mark button you know I'm

01:03:45: going to click that and then it's going

01:03:46: to guide you through things uh so I

01:03:49: think overall that's going to be like

01:03:50: big help um and hopefully like you know

01:03:54: they'll kind of ease like people's like

01:03:55: on boarding

01:03:59: Uh, next question. I'm just going to

01:04:01: repeat again like the dark team have

01:04:02: been like doing really good job on it.

01:04:05: Um, next question is from uh Helix. Uh,

01:04:10: given that you are kind of just actually

01:04:12: making the M W

01:04:15: now way better than my Zuckerboard ever

01:04:18: could. Do you see a future where is

01:04:19: basically full VR based operating

01:04:21: system? I'd love to have a dedicated rig

01:04:24: just for Resonate like in Ready Player

01:04:26: One. I mean, that's kind of like part of

01:04:28: the the philosophy is, you know, like

01:04:29: Resonate kind of like operating system.

01:04:31: You can do anything in here. You know,

01:04:33: you can you can just socialize. But it's

01:04:35: more than just a socialization. You can

01:04:37: work. You can like, you know, have fun.

01:04:39: You can build things. You can use it for

01:04:41: your, you know, job. We can for it like

01:04:44: um say you want to build you like

01:04:46: producing music. Once we have like you

01:04:47: know the stuff for like like doing audio

01:04:50: DSP you can build your virtual music

01:04:51: studio invite friends over you know jam

01:04:54: together make music together once we

01:04:56: have in game like the vertex edit thing

01:04:58: you can do use it as a modeling tool and

01:05:00: you can use it as a collaborative one

01:05:02: too. Um there's going to be lots of

01:05:05: different things you know like if you're

01:05:06: a programmer you can make modules like

01:05:08: you know protoflux once you have web

01:05:10: assembly and web assembly and can help

01:05:12: empower other people like you know say

01:05:15: even with combination like with web

01:05:16: assembly maybe you make a module that

01:05:18: like is a super cool audio filter and

01:05:21: you know you publish it in workshop and

01:05:23: then like you know people who make music

01:05:25: or make sound effects they'll just be

01:05:26: like oh this is a cool filter and maybe

01:05:28: it's free maybe it's paid like you know

01:05:30: but they get it they put it into their

01:05:32: setup and start making music with it or

01:05:34: you make a module that like you know

01:05:35: does some mesh processing you know and

01:05:37: integrates with the mesh editing system

01:05:39: or you make some tools for that. Like

01:05:41: the goal is like you know to have like

01:05:42: this universe where

01:05:45: you can do almost like everything like

01:05:48: you know like from um you know if if

01:05:52: it's like casual like recreational or if

01:05:54: it's like work or learning things like

01:05:56: you know everything sort of like

01:05:58: integrated and inter interfaces with

01:06:00: each other. Um, and I think that like,

01:06:02: you know, it's like what can what makes

01:06:04: this platform like really powerful and

01:06:06: where like most of the potential kind of

01:06:08: lies and that's kind of like you know

01:06:10: where like we've been kind of pushing it

01:06:13: towards and there's still a lot of work

01:06:15: work to do it but um

01:06:18: like we we already see like a lot of

01:06:20: stuff kind of happening so I feel like

01:06:22: it's kind of on its natural way there

01:06:24: and the more stuff we add you know um I

01:06:28: think the more clear it's going to be

01:06:29: the more people you know that's what

01:06:30: that's the kind application we are

01:06:32: building. Um because I feel a lot of

01:06:35: times people kind of compare it you know

01:06:37: to stuff like VR chat and so on and

01:06:38: there's like overlap but also there's a

01:06:41: lot of stuff like we're doing like you

01:06:43: know that's not even the goal of these

01:06:45: other platforms. Um we're just focused

01:06:49: like you know purely mostly on the

01:06:51: socialization aspect. Uh but I feel

01:06:53: there's like so much more we can be

01:06:55: doing with VR and there's so much more

01:06:56: you can be doing with social spaces

01:06:59: because the way I see the social aspect

01:07:01: of you know this kind of software is

01:07:03: that it's just your is your base layer

01:07:05: and it's more like you know what do you

01:07:08: build on top of it what can you do with

01:07:10: that you know like it's just the social

01:07:12: layer is just existence you know it's

01:07:15: like it lets you exist with other people

01:07:17: and do stuff with other people and it's

01:07:19: like what kind of tools what kind of

01:07:21: like you know abilities we give you in

01:07:23: that space and how much power we give

01:07:26: you over the universe you exist in

01:07:28: because that's also another big part of

01:07:29: our philosophy is giving you as much

01:07:32: control over your experience over like

01:07:34: you know this virtual universe that you

01:07:36: exist in as you can have um

01:07:40: because like everybody wants like you

01:07:42: know has different goals everybody wants

01:07:43: to do something different but like we

01:07:45: feel like um you know the virtual

01:07:48: universe shouldn't be something that's

01:07:49: you know controlled by somebody else

01:07:51: somebody who controls you know like your

01:07:54: experience

01:07:56: and like you know what can you do in it

01:07:58: but it's something you

01:08:01: like you know you should control like

01:08:03: you should be in control of like your

01:08:06: virtual reality and your virtual

01:08:07: experience. So that's kind of like you

01:08:10: know where a lot of the stuff kind of

01:08:12: like you know comes together like it's

01:08:15: one of the reasons why we have like you

01:08:16: know the ability to just edit

01:08:18: everything. You can literally just edit

01:08:20: your avatar, edit the environment, edit

01:08:22: the world. You can change anything about

01:08:24: it. And that's part of like you know why

01:08:27: resonate and fusion is designed that way

01:08:29: is to give you that level of control

01:08:32: over your experience to make it like you

01:08:35: know a virtual universe that's like

01:08:37: malleable and under your control at

01:08:40: least like you know within your own kind

01:08:42: of like you know sessions and stuff like

01:08:44: like because if you like somebody else's

01:08:47: session you know that's their universe

01:08:48: and they kind of take control of that.

01:08:51: Uh but also like you know there's like

01:08:52: ways for those to kind of interact with

01:08:54: each other. So um yeah I can definitely

01:08:57: like you know see that like it kind of

01:08:59: goes like you know along with like our

01:09:00: vision for this and we generally are

01:09:03: very long-term focused on vision. Oh

01:09:07: thank you Kir for the subscription too.

01:09:11: Yeah. So

01:09:13: it goes along you know without

01:09:14: philosophy

01:09:19: um

01:09:22: PD is asking

01:09:26: um what was the cause of float fields

01:09:27: being broken on the inspector? Uh so the

01:09:31: reason for that was like um we're

01:09:33: essentially using reflection to kind of

01:09:35: access um you know fields and we have a

01:09:39: system that like you know if you have a

01:09:40: strct it deconstructs a strct and lets

01:09:43: you access individual elements of it in

01:09:45: sort of like a generic way. Um and the

01:09:48: problem is there's some like differences

01:09:50: in behavior between mono and uh you know

01:09:54: net 9 and for uh for nullable fields

01:09:58: they're essentially a strct which

01:09:59: contains a boolean and it contains the

01:10:02: actual value and the system we have you

01:10:05: know we will try to deconstruct that and

01:10:07: would try to access just the value which

01:10:09: works fine on mono but it wouldn't work

01:10:11: with net 9 like this is an illegal

01:10:14: access so I had to add like a system

01:10:16: that detects once it's nullable. Don't

01:10:18: try to deconstruct it into like you know

01:10:20: individual fields. Just like you know

01:10:22: there's a special handler now and that

01:10:25: fixed the thing there like a lot of the

01:10:28: bugs were like you know little things

01:10:29: like that versus like subtle differences

01:10:30: in some of the behaviors like um between

01:10:33: the run times.

01:10:36: Uh next question is from me.

01:10:42: um is open source something on uh

01:10:44: something your mind is open to at

01:10:45: someday uh when the time is right and

01:10:47: project is ready for it. There's a lot

01:10:49: of very capable engineers in the

01:10:50: community that would love to help and

01:10:52: there are some uh big open source games

01:10:55: now that run business on top of their

01:10:56: open source code bases. Most notable

01:10:59: would be also which is again gained a

01:11:00: lot of uh from it opensource community a

01:11:03: lot of baggage with that question. I'm

01:11:04: sure just curious if you could see

01:11:06: yourself going for that at some point.

01:11:08: There's actually a video on our YouTube

01:11:10: channel where we kind of like go in

01:11:12: depth into this question. Uh so I do

01:11:15: strongly recommend watching that one

01:11:16: because like I kind of ramble about it

01:11:18: for like I forget how long like 10 15

01:11:21: minutes uh however long. Um there's a

01:11:23: lot of considerations but is definitely

01:11:25: something that's on our mind and it's

01:11:26: something we want to do. The TLDDR of it

01:11:29: is like we definitely want to do it like

01:11:32: when we ready for it. Uh because there's

01:11:34: like you know lot of considerations like

01:11:36: one is you know how do we handle PRs? Uh

01:11:39: you know do we have like uh code

01:11:41: guidelines? to have like uh style

01:11:43: guidelines to have like no general

01:11:44: philosophy of how things are designed

01:11:46: which PRs we accept which we don't uh do

01:11:49: we have bandwidth for handling all the

01:11:50: PRs you know because we need to like uh

01:11:53: we need to make sure we maintain certain

01:11:55: code quality we need to make sure it

01:11:57: doesn't you know call like we don't

01:11:59: accept like stuff you know that would

01:12:00: cause us like long-term issues because

01:12:03: we often know worry about long-term

01:12:05: compatibility and long-term

01:12:06: maintenability so like we will have

01:12:08: certain requirements and it requires you

01:12:10: know putting documentation together um

01:12:14: you know and making sure we have like

01:12:15: guidelines so people know how to like do

01:12:17: things and then we also have the

01:12:18: bandwidth and the training for people

01:12:20: who are handling the PRs to actually you

01:12:23: know make sure like those things are

01:12:26: followed so I don't see us doing it um I

01:12:30: think the way like you know we're going

01:12:32: to approach it and actually we've kind

01:12:34: of already been kind of approach it like

01:12:35: a bit but is like you know sort of doing

01:12:38: gradually where we open source modules

01:12:41: And we're going to start with ones that

01:12:42: are like you know easier to handle that

01:12:44: like if if there's like you know some

01:12:46: kind of contribution that would have

01:12:47: like long-term impact like it it's very

01:12:50: very limited in scope stuff like you

01:12:52: know device drivers stuff like you know

01:12:54: importers and exporters because they

01:12:56: don't they don't like add new things to

01:12:59: data model which is like what needs to

01:13:01: have the long-term um long-term kind of

01:13:04: considerations.

01:13:06: Um but yeah like I I recommend watching

01:13:08: that video. Uh there's like b like we

01:13:10: kind of go like a bunch of details.

01:13:12: There's actually some parts like which

01:13:13: we where we already accept like

01:13:14: contributions. Um for example the go

01:13:17: go.zonai.com website where you can like

01:13:20: open like you know uh worlds that

01:13:23: actually has a bunch of community

01:13:24: contributions. Uh and that's like you

01:13:26: know one example like where we are kind

01:13:28: of accepting some and the community has

01:13:30: made some like really cool improvements.

01:13:32: So if I done a little bit and that's

01:13:35: kind of like you know probably do the

01:13:36: model we want to like focus but uh doing

01:13:38: more is definitely there's a lot of

01:13:40: considerations there.

01:13:44: Uh next questions from uh Lucas uh for

01:13:48: clarification uh I think Mant to ask

01:13:52: what happens when you have two dynamic

01:13:53: variable components with the same name

01:13:56: and drive both of them to the B

01:13:58: different values.

01:14:01: Oh, so it's like dynamic variable. Um,

01:14:04: they're going to clash.

01:14:07: Yeah. Like like super defined because

01:14:09: like they're essentially like

01:14:12: they're going to try to like when

01:14:14: whenever like one of them changes, it's

01:14:16: going to try to change the other, but it

01:14:18: might not be able to. So, it'll probably

01:14:20: just be like, you know, fighting for

01:14:23: whatever D value is.

01:14:27: Um, I would probably recommend not doing

01:14:29: that.

01:14:31: Uh, Jack the Fox author is asking, "You

01:14:33: mentioned that spatial variables were a

01:14:35: thing you've been waiting to do for a

01:14:36: while that you knew you wouldn't take

01:14:38: too long to implement, but with a

01:14:39: massive impact. Are there any other plan

01:14:42: systems similar to that that you've had

01:14:44: back into your mind for a while?" Uh,

01:14:46: there's a lot. Um, let me actually

01:14:51: thing is like there's often times like

01:14:52: so many of them that like I don't

01:14:53: actually it's hard for me to remember

01:14:55: from the top of my head. I need to look

01:14:59: um

01:15:01: I need to look at my

01:15:05: board.

01:15:07: So I have like a bunch like in the first

01:15:10: few good issues. Let's see.

01:15:14: Uh

01:15:17: let's see. Let's see. Let's see what

01:15:18: would be like a big one.

01:15:25: Well, it kind of also depends like how

01:15:27: how of a big one.

01:15:30: Um

01:15:32: H

01:15:40: I can't see like it would be like there

01:15:42: like big ones that got are going to have

01:15:44: impact. Um

01:15:49: big features that would have like a big

01:15:51: impact but not like a small

01:15:57: Yeah, I don't have like one on my list

01:15:58: that I would consider to be huge impact.

01:16:01: There's like one that like I wanted to

01:16:03: do is uh implement proper triangulation

01:16:06: algorithm for triangles because but

01:16:08: there's more of a foundational thing

01:16:10: where it's going to allow to implement

01:16:13: lots of you know new features that are

01:16:15: kind of hard right now but you know

01:16:17: that's not a direct impact um direct

01:16:20: impact. Um

01:16:23: h

01:16:29: yeah not um

01:16:32: yeah I don't know like from the top of

01:16:33: my head like especially combination like

01:16:35: where it would be like you know very

01:16:36: quick implementation and would have like

01:16:38: huge impact um

01:16:41: I would have to think and go through the

01:16:44: other issues for a bit like I don't

01:16:47: remember one from the actually one maybe

01:16:50: Um maybe like adding like simple support

01:16:54: for face tracking in desktop and adding

01:16:58: um adding like way to like you know sort

01:17:00: of like have to like pose your avatar

01:17:02: because like you could start using

01:17:05: Resonate for sort of like V tubing as a

01:17:07: sort of like V tubing tool. So I think

01:17:09: that could be one that like is not that

01:17:11: big of a work but could open up like you

01:17:13: know a use case that like you know you

01:17:16: can't really do easily right now but

01:17:17: that could have like opens a whole

01:17:20: category of like uses that is not

01:17:22: possible right now. So maybe that

01:17:31: uh

01:17:34: [Music]

01:17:35: next.

01:17:37: Thank you for the raid. Uh it's from uh

01:17:40: it's kind of hard to read.

01:17:42: Uh Koshard, thank you for the raid.

01:17:47: Uh next question is from Orion Moonclaw.

01:17:51: Uh Arian's asking, "I'm going to be

01:17:53: working on this next for my god renderer

01:17:55: TN." So, uh this should be helpful. Uh

01:18:00: could you give a quick overview of how

01:18:01: mesh uploads work post spliffening? Um

01:18:04: and it kind of works the same. It's just

01:18:07: going to proceed over like shared

01:18:08: memory. Um there's like two parts of it

01:18:11: like one is like the submission which

01:18:13: describes the structure of the mesh

01:18:15: which is like you know the vertx layout

01:18:17: format of index buffer and sub meshes

01:18:19: that are defined and then it's like a

01:18:21: big buffer of the actual data which

01:18:23: contains you know the vertex streams the

01:18:24: index buffer streams and blend shape

01:18:26: kind of streams. Uh that's kind of the

01:18:30: main thing. Uh and as part of the reason

01:18:33: like why the mesh upload was reworked is

01:18:35: so it can work over IPC very easily

01:18:38: where it just you know it submits like

01:18:42: all the data instead of like being tons

01:18:44: of tiny buffers and classes and so on.

01:18:46: It's submitted like you know as like

01:18:49: this bulk data that's just bite buffer

01:18:52: you know or now like shared memory

01:18:54: buffer and then like you know bit of

01:18:56: like information that's also just

01:18:57: collection of strikes that describes the

01:19:00: layout of it.

01:19:05: Uh next question is from Oz. Uh it's a

01:19:08: long one. Uh there are few renderable

01:19:11: components that are not implemented yet

01:19:12: but even in the base builds they have

01:19:14: some unity functionality that doesn't

01:19:16: work. For example crossfading with the

01:19:18: LOD component and blit to display

01:19:21: allowing another unit window will be

01:19:23: fixed with their implementation. I would

01:19:25: understand focusing just making it work

01:19:26: how it did before. Uh, depends if if the

01:19:29: fix is easy enough to do, like working,

01:19:31: it's probably going to get fixed. But if

01:19:33: it's like more involved, um, I'm

01:19:35: probably not going to like, you know,

01:19:36: fix it during the time just to kind of

01:19:38: keep it quicker. Um,

01:19:42: uh, the

01:19:44: crossfading, that's probably not going

01:19:45: to work at all because I don't think

01:19:47: that's a feature that's like fully

01:19:48: implemented that requires like shader

01:19:50: support like for it to actually

01:19:53: function.

01:19:57: Uh but yeah, usually usually depends,

01:19:58: you know, how complicated the fix is. If

01:20:00: it's something that can be done just by

01:20:02: reworking it, then usually I do it. But

01:20:04: um if it's bigger, then I usually just

01:20:06: keep it the way it is. Uh next question

01:20:09: is from dusty sprinkles. Someone might

01:20:11: have already asked this cuz I wasn't

01:20:14: watching chat, but about uh difficulties

01:20:16: knowing breaking points for new users.

01:20:17: Have you told more about adding metrics

01:20:19: collection to resonate? after might be

01:20:21: enough good will post splitting it could

01:20:23: be worthwhile but at the same time I

01:20:25: could see it being risky and understand

01:20:26: if you don't want to one of those tricky

01:20:29: things because like people like you know

01:20:30: one of the things is like we don't

01:20:32: really collect much data um it's just

01:20:34: kind of like you know very I pretty much

01:20:37: like don't collect like I depends how we

01:20:39: define the data like we don't collect

01:20:41: any like sort of metrics like that like

01:20:43: that's like user kind of specific or

01:20:45: user behavior um it's just you know

01:20:47: based stuff like for like account

01:20:50: um to make that work and I feel like

01:20:53: like we do that we probably need to be

01:20:55: like you know we're adding this we make

01:20:58: very clear what is this information is

01:21:00: being collected um and then like we give

01:21:03: people like probably option to opt out

01:21:05: because like

01:21:07: this one of those things where I don't

01:21:08: think optin really works well because

01:21:10: like people would just ignore it and not

01:21:12: not opt in and then we get you know

01:21:14: either very little and or you know very

01:21:17: skewed data which kind of like you know

01:21:20: makes it not that useful, but like if

01:21:22: you're like, "Okay, like we like this is

01:21:23: on by default, but like you have the

01:21:25: opportunity to turn it off right now."

01:21:27: Um maybe that'll work, but like we'll

01:21:30: we'll see. Uh right now we kind of like

01:21:32: rely on people like you know making

01:21:33: videos, talking about it like you know

01:21:35: watching people's streams and so on.

01:21:38: Um it will definitely kind of help like

01:21:40: in the future but also like you know how

01:21:41: much time do we want to spend

01:21:42: implementing those metrics because

01:21:44: making sure like you know we we need to

01:21:46: know what to track you know what

01:21:47: information is going to be useful um and

01:21:50: that's you know also non-trivial also

01:21:52: and we might not be able to spend too

01:21:54: much time on something like that.

01:22:00: Um

01:22:02: the bomb master is asking did the vague

01:22:04: thought of having resonate OS ever cross

01:22:06: your mind talked about before. I don't

01:22:08: know like what exactly would like you

01:22:10: know mean would it just be like a Linux

01:22:12: dro that's optimized forite like maybe

01:22:14: it could be interesting. I know some

01:22:15: people wanted to make something like

01:22:17: that but it's not something um at the

01:22:21: top.

01:22:24: Um next question is from shining hero

01:22:27: one. uh splitening grave party when when

01:22:30: it's done and maybe like after it

01:22:32: stabilizes a little bit too post

01:22:33: released. So like I'm not like so I can

01:22:36: actually visit it like you know while

01:22:38: not like fixing bugs.

01:22:43: I know there's like a bunch of people

01:22:44: who plan on one so I'm kind of you know

01:22:46: excited for those. Um

01:22:50: next question is from beauty_. Are you

01:22:52: planning any kind of event post

01:22:54: spliting? Something like the headless n

01:22:57: benchmark party. Um I don't think we

01:22:59: have like one official one right now. I

01:23:00: know a bunch of people are going to you

01:23:02: know run events.

01:23:06: Uh I'm probably going to like happen

01:23:08: something at some point, but right now

01:23:09: no specific plans and also again for a

01:23:12: subscription Kyob

01:23:17: uh

01:23:20: uh so um I don't think the Arena is

01:23:23: asking a thing but I don't know what

01:23:26: this is in context of. So if if you're

01:23:28: asking question that's like a followup,

01:23:30: please include the original context

01:23:32: because I I have I don't know what this

01:23:33: is about.

01:23:36: Uh the next question from uh are

01:23:41: material property blocks ever going to

01:23:42: be removed or are they still planned to

01:23:44: exist forever? Oops. Uh there's no plans

01:23:48: to remove them. Like I don't see why

01:23:50: would we remove them?

01:23:53: Like essentially everything like we add

01:23:55: like you know it's it kind of needs to

01:23:58: exist forever in some form because like

01:24:00: if we if it stops then we break content

01:24:02: that depends on it and maybe we can

01:24:04: convert to something else but you know

01:24:06: right now there's no plan for that for

01:24:08: for those.

01:24:12: Um, next question is from BD_. Uh, if

01:24:16: someone built an alternate open source

01:24:19: renderite protocol renderer that got you

01:24:21: away from Unity, would you consider

01:24:22: adopting that back end assuming the code

01:24:24: quality was up to your standards? Um, I

01:24:27: we might it kind of depends on a lot of

01:24:29: things, you know, like depends like what

01:24:30: licensing is, what feature, how is it

01:24:32: implemented, what is it using, uh how

01:24:35: can we, you know, kind of maintain it

01:24:37: ourselves, how can we add the features

01:24:38: we need in the future. So there's like a

01:24:40: lot of considerations for that. Um

01:24:44: it's I feel it's something like you know

01:24:46: it's just better like if we organize it

01:24:48: like you know as a sort of community

01:24:49: effort and we kind of like give some

01:24:51: kind of structure to it and some

01:24:52: resources. Um so I think it would be

01:24:56: kind of best way to go about it. Um

01:24:59: because I feel like like you know it's

01:25:00: just something to develop like without

01:25:02: that like it's much less likely to

01:25:04: actually align with what we need because

01:25:06: usually when we also develop things you

01:25:08: know they're not only developed to match

01:25:10: the feature parity of what we have right

01:25:12: now they are developed to allow for

01:25:14: future expansion you know of the things

01:25:17: we need to do in the future. But one

01:25:19: thing I noticed is a lot of people will

01:25:20: make things you know where it just

01:25:22: focuses just on that just on feature

01:25:24: parity and completely ignores you know

01:25:26: what happens afterwards and sometimes

01:25:29: that leads you know to making a design

01:25:31: decisions that sort of closed door you

01:25:33: know to some of those future expansions

01:25:35: and like even though like it would work

01:25:37: right now

01:25:39: it it will not make it usable in the

01:25:40: future and would have to be replaced by

01:25:42: something else um just to allow for the

01:25:44: stuff we need to do in the future. So,

01:25:48: it depends. There's a lot of factors to

01:25:49: it.

01:25:52: Uh,

01:25:56: and also the red. Oh, I already showed

01:25:57: that one. Oops. I grabbed the camera.

01:25:59: Sorry.

01:26:02: Grand is asking, "Shnit, you're late

01:26:06: with your schnopit." That's the

01:26:07: schnopedit. You missed the schnopedit.

01:26:11: Uh Grand is also asking uh how is the

01:26:14: splitending work on Linux going? Uh Syra

01:26:17: was working on that. Yeah, is working on

01:26:18: that. He's kind of figured out like

01:26:20: pretty much all the major things that

01:26:22: need to be done to make it work on

01:26:24: Linux. Uh so right now the the main

01:26:27: issue is you know making making the PRs

01:26:31: uh the code changes to actually do it

01:26:34: like officially. So is in progress. Um

01:26:39: uh hopefully like you know it's going to

01:26:40: be it's going to be ready soonish.

01:26:46: The next question is from the red neco

01:26:50: uh uh I sent my question about material

01:26:53: property blocks out of order. The big

01:26:54: one was uh uh there was a continent

01:27:01: was sent before the initial question but

01:27:03: the LDR the initial three texture

01:27:05: propert were added a long while ago with

01:27:07: extra ones added. I was wondering if we

01:27:09: swap to different render since there

01:27:11: never been any

01:27:13: um any more of powerful ones added

01:27:15: texture color would it just convert back

01:27:17: to regular material if said render

01:27:19: doesn't have material port support. Um,

01:27:22: I don't think that's likely because like

01:27:23: the point of material property blocks is

01:27:25: they allow for very efficient like you

01:27:29: know rendering a lot of things that

01:27:30: share the same base material. Um, but

01:27:34: like you know very like one of the few

01:27:36: parameters um and often times like you

01:27:38: know that's done is like you know like

01:27:40: it needs shader support. The shader

01:27:42: needs to be made so for a certain

01:27:44: property instead of like you know that

01:27:46: just being singular property it

01:27:47: actuallyes it from an array. Um, and

01:27:50: that like makes it like super super

01:27:52: efficient. Um,

01:27:55: and like even though like you know

01:27:56: different renderers might not have

01:27:58: exactly like material blocks, the same

01:28:00: principle still applies you know where

01:28:01: you have a shader which accesses certain

01:28:04: properties from an array like you know

01:28:06: that's kind of prefilled uh in like a

01:28:08: lot more efficient manner than like you

01:28:10: know just having separate material that

01:28:12: copies all of the properties you know

01:28:14: for each one. Um, and the whole point is

01:28:17: like, you know, we can use it to render

01:28:18: stuff like bashed and we can use it to

01:28:20: render stuff like with instancing.

01:28:22: Um, so I don't think like we would

01:28:25: remove it like it would like at at most

01:28:28: it would like be

01:28:31: um

01:28:34: like um

01:28:37: at most like it would essentially get

01:28:38: like transformed into like some

01:28:40: alternate but compatible mechanism. But

01:28:42: like they're they're like a I feel like

01:28:45: a okay like abstraction for this. So I

01:28:49: don't see them going away like not not

01:28:51: not like fully like at most like you

01:28:53: know transforming into like maybe some

01:28:55: something like similar but uh I don't

01:28:58: think they'll go away. That will

01:29:00: actually make like you know all of the

01:29:01: rendering like very inefficient.

01:29:06: Uh,

01:29:11: Grand is asking, "Did you know that your

01:29:13: long neck works at uh times?" Yes, one

01:29:15: of the reasons I want to like go I want

01:29:17: to work on the K just to make it like

01:29:19: look better and behave better like it's

01:29:22: you know making stretchy. Um

01:29:26: it's um

01:29:30: it's one of my like it's one of those

01:29:31: things I would want to work on like you

01:29:33: know was one of the reasons but focus on

01:29:37: what I can focus

01:29:43: um next questions from y def tool to

01:29:47: asking how does creator jam public work

01:29:50: do they just get unlimited cloud storage

01:29:52: uh they don't have unlimited cloud cloud

01:29:54: storage. They do have quite a bit. Uh I

01:29:56: think uh they actually are one of the

01:29:58: patron supporters or like uh stripes. I

01:30:01: think I don't know if they switched to

01:30:02: stripe yet or no. Um but they do like

01:30:05: support. They get bunch of storage. Um

01:30:08: we did like give them like some um like

01:30:10: I don't actually remember. I don't want

01:30:12: to like say like

01:30:14: I think we gave them like some for like

01:30:16: some of the uh stuff because like of the

01:30:18: stuff like they're doing for the

01:30:19: platform because it's like pretty much

01:30:21: the biggest like longunning thing that's

01:30:23: like has like over like benefit to the

01:30:25: platform. um but I don't remember

01:30:30: details but they also like support the

01:30:32: platform so they could get a bunch of

01:30:34: storage from that

01:30:37: and also like things sometimes like they

01:30:39: don't take as much as you would think

01:30:42: but um yeah

01:30:47: uh Nico's asking I forgot what was your

01:30:49: favorite book series my brain on

01:30:51: accident uh it was the expans uh I do

01:30:54: recommend like watching the video

01:30:55: afterwards like you know if you the the

01:30:57: whole answer because I I don't want to

01:30:59: spend time repeating it.

01:31:03: Uh

01:31:04: G is asking could duplicate component

01:31:06: flux nodes be made similar to slow

01:31:08: duplicate nodes. Is there anything

01:31:10: inherent components that mean is hard to

01:31:12: do? I mean

01:31:15: depends what you're wanting to do. Like

01:31:17: you could just duplicate a component.

01:31:19: There's like mechanisms for that but

01:31:21: also like you know components aren't the

01:31:22: same as slots. So it kind of depends.

01:31:26: It depends what you're doing. So like

01:31:28: it's like you know like if it's just

01:31:29: duplicating singular component then um

01:31:33: that can be done.

01:31:39: Uh next questions from Dusty Sprinkles.

01:31:41: Speaking about storage being given have

01:31:43: you thought about bringing back doing

01:31:45: more storage awards? Uh we might do more

01:31:47: in the future. usually like you know we

01:31:49: need to figure out like what does make

01:31:51: sense business-wise because um

01:31:54: we don't want to like you know end up

01:31:57: like losing like money on things like

01:31:59: overall because if we like end up like

01:32:01: doing that too much that hurts our

01:32:03: ability to like run the project and you

01:32:05: know pay the people on the theme and pay

01:32:07: for the service. So it depends but um

01:32:12: um like it's not over the table.

01:32:18: Deno is asking uh also on metrics I'd

01:32:21: love to see the split on headset usage.

01:32:23: I honestly feel it's like 90% meta index

01:32:26: on here. I don't really know. We don't

01:32:27: have like those metrics but you can look

01:32:29: at the statistics that Valve gets

01:32:31: because they do collect a bunch of stuff

01:32:32: and they are pretty representative. I

01:32:35: don't know how how is it like you know

01:32:36: on the resite

01:32:41: uh Koborus asking uh with the splitting

01:32:45: would it be possible for Resonate to

01:32:47: process next frame update while Unity is

01:32:48: still rendering the current one? um that

01:32:51: already kind of happens like Unity uh

01:32:54: like what Unity does like when it

01:32:56: renders it actually like generates a

01:32:58: bunch of jobs and then it like will run

01:33:00: stuff like earlier but also like it's a

01:33:02: little bit tricky to do fully because

01:33:04: like to start the next frame you need to

01:33:07: like you know get stuff like for example

01:33:09: inputs um you know to like you know new

01:33:12: user position like whatever like is

01:33:14: being pressed and it also comes from

01:33:16: Unity so

01:33:18: um you know you can't really

01:33:22: do that without like finishing a bunch

01:33:24: of the work for the frame. But there's

01:33:25: like some stuff that's spiral like once

01:33:27: the um

01:33:30: once like the stuff is like sub method

01:33:32: like Unity does like some stuff that's

01:33:33: like been rendered and it's also like

01:33:34: processing some of the stuff. So like

01:33:36: there's some pipelining um but

01:33:39: ultimately like you know you cannot do

01:33:40: it fully. It's also like the other part

01:33:42: is like you know if you just do it

01:33:44: because the question is at which at what

01:33:46: point do you stop? Um, let me actually

01:33:49: grab my brush because I can draw like a

01:33:52: little timeline to demonstrate the

01:33:55: issue. Um,

01:33:57: where is it? Where's the brush?

01:34:01: Uh, tools.

01:34:06: There's like because there's like one

01:34:07: major problem also with that which is

01:34:09: like if you do that um

01:34:13: you

01:34:14: um

01:34:18: let's see

01:34:21: where's the brush I'm blind.

01:34:25: Oh, there it is. Um is this going to be

01:34:28: visible or this might be poor contrast

01:34:30: with this world. Um let me try a

01:34:34: different one.

01:34:37: Maybe the blue one.

01:34:39: Is this visible? That's kind of visible.

01:34:42: I think that's okay. Um, so imagine like

01:34:46: you know like your timeline.

01:34:49: I'm going to

01:34:51: So imagine like you know have a timeline

01:34:53: you're kind of like you know you're

01:34:54: rendering a frame

01:34:57: and say this is a resonate update. and

01:35:00: it happens and then unit starts

01:35:02: rendering a frame and say like it takes

01:35:04: this long to render a frame. If you just

01:35:06: start the new frame right away, you

01:35:09: might you know finish the frame before

01:35:11: unit is even done and what do you do

01:35:13: now? This has to wait. This has to be

01:35:15: rendered here and now you start like you

01:35:18: know doing another frame and but this

01:35:21: one you know unit is rendering. So this

01:35:23: will need to go here and now you start

01:35:26: another frame and now like and the

01:35:28: longer you go the more behind you get

01:35:30: and the more memory just gets

01:35:31: accumulated you know for all these

01:35:33: frames. Um so like you know you can't do

01:35:36: it like you know you cannot just like

01:35:38: keep like generating frames from the

01:35:40: engine and like submitting to Unity

01:35:42: because if the unit is taking you know

01:35:45: too long um now it's like

01:35:49: now like you essentially end up with

01:35:50: frame accumulation and you keep like

01:35:52: lagging more and more behind and you

01:35:54: like increase the latency. So let's

01:35:57: consider a scenario where it doesn't

01:35:58: take unity that long. say like for

01:36:00: engine takes frame to compute um and

01:36:03: then like you know this starts rendering

01:36:05: the frame and then like you know for

01:36:08: extension does another frame. This is

01:36:10: like a much better kind of scenario

01:36:12: because like you know it can start doing

01:36:15: stuff but it has like another problem

01:36:17: which is then when you when you actually

01:36:20: when you see this frame like this is the

01:36:23: point where you see this frame. Um the

01:36:27: latency is actually higher or

01:36:29: potentially higher than like you know uh

01:36:31: from it like being presented than uh if

01:36:35: it was like you know done like this way

01:36:39: because this way like you get like you

01:36:40: know fresher fresher data.

01:36:43: Um but

01:36:48: this like you know what you're saying

01:36:49: here this is already kind of a little

01:36:51: bit like what happens because like it is

01:36:53: like pipelined a bit. Uh the thing is

01:36:56: like you know it kind of has to wait for

01:36:57: it. So like if you if you had it like

01:36:58: with the other scenario

01:37:00: um if you had it with the other scenario

01:37:05: um say so this is like for extension

01:37:08: updates the frame and then like unit it

01:37:10: takes a while to render

01:37:15: you know like you might start like maybe

01:37:17: unit is like doing the rendering but

01:37:19: like once it kind of processed enough

01:37:20: stuff it can start another frame while

01:37:23: it's still finishing the render so it

01:37:24: does the compute. So like you know

01:37:26: there's like a little bit of an overlap

01:37:28: between them and it kind of helps like

01:37:31: um it makes you know things like a

01:37:34: little bit better but it is a tricky

01:37:36: issue because like you want these to be

01:37:38: somewhat in sync because in order to

01:37:41: begin a new frame you need like data

01:37:43: from Unity and the data might only be

01:37:45: available like here for whatever like

01:37:47: you know input like you get. Um, so

01:37:51: there's like you want to like through

01:37:52: some pipelining, but there also like

01:37:54: limit on like how much you can actually

01:37:55: do it.

01:38:02: Um,

01:38:04: next question is,

01:38:11: uh, next question is from Kioru. Um,

01:38:16: Kenduk is asking Joe question. Are you

01:38:19: in favor of creating the torment nexus?

01:38:23: No. No. Not. Actually, I'm surprised

01:38:26: like nobody has made it as a joke world

01:38:28: like where they like created the torment

01:38:29: nexus from the book. Don't create the

01:38:32: torment nexus.

01:38:34: Somebody should make the Torment Nexus

01:38:35: on here.

01:38:38: Make it make it happen.

01:38:41: Um, as Twitch is asking, uh, which

01:38:44: current split thing or implementation

01:38:45: task do you see being the most complex

01:38:47: to do? Um, let me actually look at the

01:38:51: list again so I see what's on there. Uh,

01:38:55: the splittening.

01:38:57: So, I posted a link earlier. Uh, if

01:39:00: you're like interested or if you missed,

01:39:01: I'm just going to post it again. Uh, so

01:39:05: this is the board I'm like looking at

01:39:06: where you can see all the spliting

01:39:08: tasks.

01:39:09: Um,

01:39:11: so there's a bunch. There's gions plus

01:39:14: those should be relatively quick. The

01:39:15: script texture is going to be quickish.

01:39:18: BL display should be quick. All the GS

01:39:20: shouldn't be too long. Um, transform

01:39:24: render material override. I don't think

01:39:26: it's going to so maybe render transform

01:39:28: material override if I end up like

01:39:30: reworking how it works. Uh I'm probably

01:39:33: going to just like repeat the

01:39:34: implementation but because then I can

01:39:36: use like bits of it but I might need to

01:39:39: like depending on what kind of issues we

01:39:40: get uh it might need to change a bit.

01:39:44: Game pass fine touch fine and then the

01:39:47: video texture support that's uh I would

01:39:52: say probably that one's going to be the

01:39:53: most complex one of the ones that are

01:39:55: remaining

01:39:56: uh because there's like a few things

01:39:58: with videos uh that's kind of like bit

01:40:00: special. Uh one of them is they kind of

01:40:02: need to sync up the time. So like it

01:40:04: actually the system needs to proxy the

01:40:06: current playback time uh in a way like

01:40:09: you know it's able to handle like you

01:40:10: know all the timing differences between

01:40:12: the processes and also it needs to proxy

01:40:14: bug the audio and there's like few

01:40:16: approaches um that I'm thinking of

01:40:18: taking with it. Uh I'm not sure which

01:40:20: one yet. One of the approaches could be

01:40:22: you know lally just um there's a fixed

01:40:24: buffer. uh there's an event that gets

01:40:27: pushed to the render. It fills the audio

01:40:29: buffers and then proxies event back. But

01:40:31: there requires you know control to go

01:40:33: from one process to another which like

01:40:35: is not might not be fast enough. Uh the

01:40:38: other approach is that the renderer is

01:40:40: literally just going to like going to be

01:40:42: shared memory buffer and the renderer is

01:40:45: just going to be like the moment it gets

01:40:46: audio data it just pushes it in as fast

01:40:49: as it can. The other side is also going

01:40:50: to be just reading the data as fast as

01:40:52: as fast as it can. So like it's going to

01:40:54: be trying to just you know boom pump the

01:40:57: data like the audio data as fast you

01:40:59: know as possible but it also requires

01:41:01: you know managing shared memory buffers

01:41:04: for every single video that's loaded in

01:41:05: the scene. So there's like you know

01:41:08: complexities with that and it's like

01:41:09: it's doable. It's just like you know

01:41:11: requires a bit of work. Uh so I think

01:41:13: that one's probably going to be the

01:41:15: biggest one out of the remaining ones

01:41:17: and I've been kind of like saving it for

01:41:18: later. Um,

01:41:21: another implementation of VR support. I

01:41:23: don't think this one's going to be a big

01:41:24: one. That's just proxying a bunch of

01:41:25: data, but there's a bunch of data to

01:41:27: proxy. So, it just might take a bit of

01:41:29: time to like make like make models for

01:41:31: all of them and write code to proxy all

01:41:34: of them. Um, but I don't think the one's

01:41:37: going to be as big like the videos. I

01:41:39: think the videos are going to be like

01:41:40: the biggest one.

01:41:44: Uh, next question is from Ozie. Uh is

01:41:47: asking I recently realized we can mess

01:41:49: with the GC settings on the user end in

01:41:51: the pre-release and there is open issue

01:41:53: uh you made about it too. Uh so what GC

01:41:56: settings would need tuning what could be

01:41:58: adjusted to improve resisting workflow

01:42:01: when it comes to both playing and

01:42:02: creating things. I mean that's kind of

01:42:05: point of the issue is like you know be

01:42:06: like mess with it and like see how do

01:42:09: things feel with each of the settings.

01:42:11: How do how does it behave? What is the

01:42:12: performance like? Um right now I don't

01:42:15: know but that's why why the issue is

01:42:17: there. So I remember that like this

01:42:19: needs to be messed with and you know we

01:42:21: need to figure out like should it be

01:42:23: tuned are like settings that like you

01:42:25: know behave better. Um

01:42:28: so answering that question that's you

01:42:30: know part of like why the issue exists.

01:42:35: Uh there oh also you're bean and also

01:42:39: Mr. Fugs. Thank you or

01:42:46: next question. As I'm just checking on

01:42:48: time, we've got about 15 minutes left.

01:42:50: So, depending on how many more questions

01:42:52: there are, um

01:42:56: how many more questions there are, like

01:42:57: I think I should be able to get through

01:42:58: of these, but if there's like any

01:43:00: long-winded questions, I might not be

01:43:02: able to answer them, but feel free to

01:43:03: still ask them. If I don't get to them,

01:43:06: um, we'll pump them like, you know, for

01:43:09: the next one. Uh, next questions from,

01:43:13: uh, Dis Majir. Uh, I'm sorry, I don't

01:43:17: know how to pronounce it. Uh, how do I

01:43:18: convince my friends from competing

01:43:20: platforms to all make the move to

01:43:22: Resonite? Um, so maybe like at this

01:43:25: point, I would just wait for the

01:43:26: splitting to be done like and use that

01:43:28: as an excuse. And one of the ways I've

01:43:30: seen people do it is they sort of

01:43:32: organize like, you know, field trips.

01:43:35: It's like, you know, like you go as a

01:43:36: group, you explore, you mess around, you

01:43:38: know, you make like a whole like fun

01:43:40: event out of it. Um, and we just make it

01:43:43: like, you know, it's almost like, you

01:43:45: know, going on a field trip to a

01:43:46: different city for a bit, like, you

01:43:47: know, where things are going to be

01:43:49: different and unknown and unfamiliar,

01:43:51: but you're like, you know, exploring and

01:43:53: seeing things. So

01:43:56: uh and growing as a group like you know

01:43:57: I feel it kind of makes it a lot more

01:43:58: fun too. So that could be a good way. I

01:44:01: know there's actually people on here who

01:44:03: don't really you know play competing

01:44:05: platforms but they also organized field

01:44:07: trips you know where they just have a

01:44:09: whole fun event and then they will like

01:44:11: you know kind of talk about it and like

01:44:12: you know share things. So that could be

01:44:15: a potentially interesting approach.

01:44:20: Uh next qu oh no it's a huge question

01:44:22: and make it a make it a huge

01:44:26: uh redneck asking uh I move my chin uh a

01:44:31: huge question if someone somehow manages

01:44:33: to get different render the turns better

01:44:34: up this question which reporative with

01:44:37: how we are with unity post sping would

01:44:39: you consider using it all as your code

01:44:40: was made this literally the same

01:44:42: question that was asked earlier

01:44:46: uh just just watch the watch the clip

01:44:50: Um we don't have like too much time so I

01:44:52: want to like in general I don't want to

01:44:54: like repeat things um just to give more

01:44:57: space for like the other questions

01:44:58: because you can always rewind or watch

01:45:00: the uh watch the like recording of this.

01:45:03: Uh next question is from uh Coso

01:45:07: maybe a newbie question. Is there a way

01:45:10: to see where all your chlores is in

01:45:12: something like wiser? Uh so there's um

01:45:15: there's a command you can send. It's not

01:45:17: super user friendly right now

01:45:18: unfortunately, but there's a command

01:45:20: like where you can request the usage

01:45:22: JSON and there you can see a JSON file

01:45:24: and there's a community made tool where

01:45:26: you can load it up and actually shows

01:45:28: you like a graph of all your like assets

01:45:30: and like where a lot of them are kind of

01:45:31: like allocated. Uh we also make like

01:45:34: kind of some tools that make it easier

01:45:37: uh you know just by default like to like

01:45:40: see this is how much storage is being

01:45:42: taken by different things but like

01:45:43: that's like yet to be implemented.

01:45:48: Um

01:45:50: so next question is from BD how

01:45:53: difficult would it be uh how difficult

01:45:55: will the Eldrich procedural texture to

01:45:57: be implemented

01:46:00: net 666

01:46:02: you see the Eldrich texture it doesn't

01:46:04: get implemented it just manifests itself

01:46:11: oh there's a cloud right here.

01:46:15: Oh, that's my hat. There's a cloud.

01:46:20: Here

01:46:25: just flew by. Um, next question is from

01:46:28: Grand UK. Uh, at what point in the

01:46:31: splitting pre-release testing would VR

01:46:33: support be added? um once I get to it,

01:46:36: I've been kind of like working on things

01:46:38: depending on the energy level and like

01:46:40: what's kind of like um quickest to do in

01:46:42: some cases um because sometimes like you

01:46:45: know I don't have like I'm kind of tired

01:46:48: like so like I work on like more like

01:46:51: hang lower hanging fruit issues. Uh

01:46:54: right now I'm I'm kind of focusing more

01:46:56: on the stuff like uh

01:47:00: you know like bug fixing like making

01:47:02: sure like it's kind of stable because it

01:47:03: kind of makes it a little bit it it

01:47:05: discovers like it helps discover some of

01:47:07: the bugs so I can make sure that like

01:47:10: you know when I'm implementing more

01:47:11: things those bugs don't end up you know

01:47:15: being put into those as well. um because

01:47:18: some of them like you know bugs like

01:47:19: with how fundamental things are kind of

01:47:20: like proxied and some of the issues

01:47:22: there which is like one of the reasons I

01:47:23: wanted to start testing early so um I

01:47:26: don't know yet like I'll I'll see I kind

01:47:28: of want to try it on VR like soon but

01:47:30: also like you know I usually prioritize

01:47:33: things on combination of factor like one

01:47:35: of them is like energy level another one

01:47:36: is like what I feel is going to be most

01:47:38: beneficial right now for the testing

01:47:41: purposes like so it's more like you know

01:47:44: what is most efficient And

01:47:50: um Jose is asking, "How do you feel if I

01:47:53: cursed you with the knowledge that

01:47:54: everyone's hips, including yours, are

01:47:56: not smooth in full body currently?"

01:47:58: Yeah, I think there's like some issues

01:47:59: with it, but I haven't looked into it.

01:48:02: Um,

01:48:04: is asking where is this tool? I don't

01:48:07: know the context of that. If you're

01:48:08: asking questions, please include

01:48:10: context. Um

01:48:14: next questions from uh D Nico. Uh

01:48:19: answer with yes no or maybe as you will

01:48:21: have looked into it more but since you

01:48:22: already making proxy system for syncing

01:48:24: up the audio and video of videos could

01:48:27: possibly lead to using the pain that is

01:48:31: higher quality YouTube videos. Plus I

01:48:34: heard anything above uh 360

01:48:37: 360p audio video split into two files

01:48:40: and container file. No, that's unrelated

01:48:42: to that. Um that's that has to do with

01:48:45: the play video playback engine. The

01:48:48: stuff I need to do for the video

01:48:50: playback is taking the audio from the

01:48:52: playback engine and proxing to proxying

01:48:55: to the main process so it can actually

01:48:57: mix it and play it back. And that's it's

01:49:00: completely separate thing unfortunately.

01:49:04: Uh check the fox authors asking is there

01:49:07: anything that surprised you while

01:49:09: working on the spliting like some system

01:49:11: working much better than expected or

01:49:13: indirect interaction performance again

01:49:14: you didn't expect I'll say the loading

01:49:16: process is one like I mean I kind of

01:49:18: knew it's going to be better because

01:49:19: like I kind of changed the architecture

01:49:21: of it uh because that actually kind of

01:49:23: goes you know with like um was talking

01:49:25: about earlier uh with like you know the

01:49:27: timelining and pipelining of stuff when

01:49:30: engine is running its updates

01:49:32: Unity like before Unity was the one you

01:49:35: know running the updates and I still

01:49:36: have my brush. I deleted the brush I

01:49:39: think. Um

01:49:42: fortunately still have the folder open.

01:49:44: So

01:49:46: you know we have a timeline

01:49:48: and uh what happens is you know what

01:49:51: happened before is FRS like everything

01:49:54: was running in Unity. So Unity would run

01:49:56: frux engine updates and then it would

01:49:59: actually run asset updates and then it

01:50:02: would render a new frame and you know

01:50:04: and then and at that point where's this

01:50:08: there we go and at that point you got a

01:50:10: new frame and then it would start the

01:50:11: whole process again and these things

01:50:13: like you know happened in sequence.

01:50:17: What happens now because they're

01:50:18: actually separate processes is Fergus

01:50:22: engine is running you know its updates

01:50:26: and while it's doing that Unity is

01:50:28: actually running asset uploads for the

01:50:31: whole time and then when it gets the

01:50:33: frame it just you know integrates the

01:50:34: frame and then renders the frame and the

01:50:37: F extension is actually also doing stuff

01:50:40: you know um anything that doesn't like

01:50:43: involve the renderer and then it like

01:50:44: waits until unit is like ready that it

01:50:46: has new frame And then FX starts doing

01:50:48: new frame

01:50:50: while unit is doing more asset uploads

01:50:53: the whole time instead of just you know

01:50:54: idling and doing nothing. Uh and then

01:50:57: like you know unit like integrates the

01:50:59: frame renders the frame you know and it

01:51:01: just kind of continues this kind of

01:51:03: cycle. So I knew like that's going to be

01:51:05: efficient but just by how much more

01:51:07: efficient um I didn't expect you know

01:51:10: that kind of a difference. Uh so that

01:51:13: was like very happy with uh and what's

01:51:15: even cooler is godly he's actually

01:51:18: looked into this and it seems it's not

01:51:20: even using HTTP2 or three yet it's still

01:51:22: using HTTP1 so and he's made part that

01:51:26: like um s going to search out uh but

01:51:29: it's probably going to be merged soon

01:51:30: probably tomorrow um where he actually

01:51:34: makes it use HTTP2 or HTTP3 for the

01:51:36: cloud communication and for asset

01:51:38: downloads and that should help even more

01:51:40: with the download speeds like when you

01:51:42: load worlds, especially if you're like

01:51:43: further away and have like higher

01:51:44: latency. So, there's even more

01:51:47: performance gains to be gained.

01:51:51: Oops, I'm grabbing the brush. I'm going

01:51:53: to keep it around.

01:51:55: Um,

01:51:57: next question.

01:52:00: Uh, next question is from Grand K. The

01:52:02: storage tool. That's what I'm looking

01:52:03: for. Uh, oh, that's I don't remember the

01:52:06: name of it. It was like one that

01:52:07: earthark made. So I don't remember name

01:52:11: of it unfortunately. Like you have to

01:52:12: search earth marks like a repository.

01:52:18: Uh

01:52:21: oh.

01:52:23: Uh I don't know what this is about. It's

01:52:25: like some chat like happening.

01:52:28: Uh if you're like talking to somebody in

01:52:31: chat, please don't include like the

01:52:32: question mark because I don't know like

01:52:34: what it is about. Um,

01:52:37: next question also just checking time.

01:52:39: We got about uh six minutes left. Uh,

01:52:42: all is asking a bit strange question

01:52:44: explaining the splitting and all the

01:52:46: details with it is really neat to

01:52:48: someone not in the know. Have you had

01:52:50: anyone be completely surprised and reset

01:52:52: is planning and currently doing that? Um

01:52:55: I would some reason people be like you

01:52:57: know are we the first like to do this

01:53:00: kind of architecture um especially like

01:53:03: you know for a game and I like some

01:53:05: people suggest that like we should maybe

01:53:07: publish like a white paper on it like

01:53:09: you know or like some article or

01:53:11: something because like it's uh I do

01:53:14: think it's very like unique. We're

01:53:16: definitely not first like in software to

01:53:18: this kind of architecture is actually

01:53:20: inspired by web browsers because uh it

01:53:22: was Google Chrome who first pioneered

01:53:24: this architecture for web browsers and

01:53:27: Firefox then kind of followed and I've

01:53:29: actually read like you know a lot of how

01:53:30: they did things you know to kind of like

01:53:32: get better understanding

01:53:34: um

01:53:35: like you know like the philosophy and

01:53:37: like kind of design of things. So, we're

01:53:40: definitely not the first like in

01:53:42: general, but I think we might be the

01:53:44: like I think I'm pretty confident we're

01:53:46: the first social VR platform to do this

01:53:49: kind of architecture. Um,

01:53:52: so some people were kind of like, you

01:53:54: know, surprised like by the technical

01:53:55: complexity of doing something like that

01:53:57: and the fact that like it works. Um,

01:54:01: and I think like we might be like, you

01:54:03: know,

01:54:05: maybe we're the first game to do it. I

01:54:08: don't know. I don't know if there's like

01:54:09: any other that like use this

01:54:10: architecture, but um I do think it's

01:54:14: pretty like unique

01:54:18: and like you know some people were kind

01:54:19: of like you know some people were kind

01:54:21: of like surprised like you know by that

01:54:23: fact

01:54:25: and be kind of curious like you know

01:54:26: what people in game development

01:54:28: community like think about this too. So

01:54:31: also G type one X also late somebody

01:54:34: asked it already so you get nothing

01:54:38: um K be asking how's the feedback on SP

01:54:41: release are people happy with

01:54:43: performance u I mean seems so to me like

01:54:46: people seem to be quite happy with it

01:54:47: like people have been like when they

01:54:49: release like people just loading worlds

01:54:50: and being like oh my thing so many FPS

01:54:52: like in these worlds um I've seen like

01:54:54: some people get like a really huge

01:54:56: chumps I've actually seen some of the

01:54:57: Japanese community also uh like they run

01:55:00: like events and they run like a this

01:55:02: like you know car thing like where like

01:55:05: racing around the map. Um

01:55:10: um so it's like

01:55:14: you know and they've gotten like much

01:55:15: much better performance like they were

01:55:17: saying it's like much lighter. So like

01:55:19: it seems generally people are quite

01:55:21: happy so far. So fingers crossed.

01:55:26: I haven't like heard like too many

01:55:28: complaints.

01:55:30: Um, next question is from Zach Marus.

01:55:32: Uh, how much of a headache would it be

01:55:33: to make Protolex updates run

01:55:35: multi-threaded? So, there's a problem

01:55:38: like

01:55:40: making Protolex in theory run

01:55:42: multi-threaded. It's easy. You just run

01:55:44: in multi-threaded. The problem is that

01:55:47: the code that people make with it is not

01:55:49: necessarily designed to be

01:55:50: multi-threaded. So if you have like you

01:55:52: know stuff like where you have bunch of

01:55:54: perflex that's modifying some things and

01:55:56: you have perflex is modifying the same

01:55:58: things. If you run it multi-threaded now

01:56:00: you get race conditions and it breaks.

01:56:02: So ultimately like multi-threading it

01:56:04: depends on the code you make with it

01:56:06: because perflex you know it's it's a

01:56:09: language and we can add features and we

01:56:12: will actually eventually add features to

01:56:14: allow you make multi-threaded code but

01:56:16: you still have to make multi-threaded

01:56:18: code. You cannot you know gen this is

01:56:21: not even specific to perflux you know in

01:56:23: general you cannot take single threaded

01:56:25: code and just run it multi-threaded and

01:56:27: just expect it to work without issues

01:56:29: most of the time that's going to like

01:56:30: you know end up like in corruption and

01:56:31: like really weird things. So

01:56:36: um it depends largely on the code. So

01:56:39: like the better better kind of like way

01:56:40: to think about it is like you know how

01:56:43: much is it going to be to like add

01:56:45: multi-threaded

01:56:46: like you know primitives for doing

01:56:48: multi-threading with perflex and doing

01:56:50: in a way that you don't end up like you

01:56:52: know shooting yourself in the foot

01:56:56: which is like pretty easy to do with

01:56:57: multi- threading.

01:57:00: Uh

01:57:02: okay found the tool. Um

01:57:07: uh might not have time because it's like

01:57:10: 2 minutes.

01:57:12: Uh

01:57:17: um asent which is asking what are your

01:57:18: thoughts on each returns of legacy

01:57:20: badges? Uh he's been doing some cool

01:57:22: work like I like the latest iterations

01:57:24: of the fruit badges. Um LC is also

01:57:27: asking honestly curious have you out

01:57:29: found a strange frame rate increase

01:57:31: after causing complex prior wondering

01:57:33: why that cause it's kind of funny

01:57:34: interesting I haven't had chance to look

01:57:36: into that one yet I had a suspicion but

01:57:37: like it wasn't correct so uh and I

01:57:40: haven't like really dug into it yet uh

01:57:47: so I'm kind of spinning through issues

01:57:49: like I we have like minute left so we

01:57:51: probably won't get like very complex

01:57:52: answers so I might recommend bringing

01:57:54: them to the next one if you want more

01:57:56: detail answer uh has I think a recent

01:57:58: oblivion master does this architecture

01:58:00: it's o game and plus and engine for

01:58:02: rendering I think it's a bit different

01:58:04: because like the specific architecture

01:58:06: with us is like running them as two

01:58:08: separate processes I don't know if

01:58:10: Oblivion I think they embed the engine

01:58:13: you know within Unreal so it's not

01:58:17: running as a separate process it's just

01:58:18: you know running within but I I haven't

01:58:21: like looked into it um

01:58:25: oops I keep grabbing this thing. I want

01:58:27: to grab this. Um and also

01:58:31: uh uh come guy, how much have memory

01:58:34: boundary requirements change to the

01:58:35: split thing release? We haven't really

01:58:37: measured that, but like um it should be

01:58:39: like since we're using shared memory um

01:58:42: it shouldn't really be like drastically

01:58:44: different. I would actually say maybe

01:58:45: even lower because instead of using

01:58:46: bunch of like classes, we're actually

01:58:49: filling like you know raw memory buffers

01:58:50: which are like more memory packed and

01:58:52: more efficient. So I would even say

01:58:55: It's probably lower, but we don't have

01:58:58: like numbers and like ultimately doesn't

01:58:59: matter. It matters is it faster like

01:59:01: overall.

01:59:03: Anyway, uh that's all the questions like

01:59:05: we're kind of at the time. So, thank you

01:59:07: very much everyone, you know, for

01:59:08: watching. Thank you for all your

01:59:10: questions. Uh and thank you like you

01:59:12: know for supporting the platform whether

01:59:13: it's like you know just being part of

01:59:15: the community building cool stuff uh you

01:59:17: know showing talking about it on social

01:59:19: media or supporting us financially

01:59:21: through Patreon or Stripe uh because

01:59:24: that helps you know pay the bills uh it

01:59:26: let's focus like you know on doing this

01:59:28: fulltime it us keep the lights on on the

01:59:30: servers. Uh so thank you much if you're

01:59:33: supporting on Patreon. Uh strongly

01:59:35: recommend switching cost because even if

01:59:37: we switch to the same tier um we get

01:59:40: about 10% more money out of it. Uh which

01:59:43: helps us a lot uh and we can kind of

01:59:44: invest that money you know in uh further

01:59:47: development of the platform. So thank

01:59:49: you very much for watching. I hope like

01:59:50: you enjoyed you know um I hope you like

01:59:53: enjoyed like watching this and answering

01:59:54: all the questions. Uh and I'll see you

01:59:57: with the next one. And I'm also going to

01:59:59: figure out if there's anybody to raid,

02:00:02: so give me a sec. Uh

02:00:07: I don't see anybody streaming on it,

02:00:10: unfortunately.

02:00:12: Um

02:00:14: yeah, unfortunately there's nobody to

02:00:16: raid, so we have to end it here. So

02:00:19: thank you very much and you know, see

02:00:22: see you next week. Bah.

02:00:28: Bye.