anyway. Welcome to office hours. It's 4 p.m. We're going to go ahead and get started.
Uh, let's see, we've got some, uh, things we've got J four saying, How are you doing?
Not too good. I mean, that's just the same. Like the way it works.
Uh, right now,
um,
it's difficult for me to answer that question because, like, I,
I literally I won't lie
like most of the time when someone says, like, How are you?
Like particularly like, let's say it's like a a nice cocktail dinner or something
they don't literally mean How are you? They're doing like
an extension of what's called phatic responses where it's sort of like
and it's almost like caveman like, you know,
like you walk up to someone and you're like, uh
and then you're like, uh, back right. It's just like stuff you have to say,
um, in today's society and I Just a few years ago, I was like,
I'm I'm never answering that
untruthfully.
Yeah, you see, Yosh, that is not the standard.
So Josh said, If I ask someone how they are, I want to know how they are.
Um,
there's this amazing, obscure film
um,
which I will I will link, and I suggest you watch.
But of course, I know most of you will forget. Um, and that's totally fine.
Don't worry about it.
Um,
it's, like, difficult to explain the plot of this film without spoilers. But, um,
spoiler warning for this random film that you might not watch,
Um, in the film,
Um,
it's a different sort of world where everyone sort of has a innate frequency.
That sort of, you know, resonates with the world
and people who are on different frequencies.
If they come near each other when stuff happens,
like clumsy accidents and stuff like that,
Um, at
one point a really, like high frequency person.
Um, high frequency people also are, like usually geniuses in this film.
Um,
she gets asked,
How are you? And she responds, Genuine question or small talk
like that's that's her response to How are you?
Is like, Are you asking genuinely or are you making small talk? And
someone responds to her with like,
Oh, I don't know,
like, and then he goes like, Oh, let's try both, right.
So it's small talk, and then she'll, like she puts on like a fake smile and says, Fine,
thank you.
And then he goes like, I'm curious what's like, you know,
like if I answered the other way around and like, she actually tells him
how she is or something
Anyway, it's a It's a good film. Beyond that, I would be exposing spoilers.
Um, it's an interesting film anyway, moving onwards.
Uh, CRI
says Why are you doing? I don't know that either.
Like, I
I don't know.
And again, that's difficult, right? You know, cos uh as you're growing up, Um,
of course, you know, as you're growing up, you're like,
I wanna be a firefighter and stuff like that or
or whatever you want to be when you're a kid.
Um, but the underlying cut from that is like your parents saying, like,
do education, do education, do education,
and then you come out of, like, education system at the end
and everyone goes like,
What do I do now? And people go, Oh, just figure it out
like just figure it out.
So, like, suddenly, you've got, like, you know,
less of a direction when you get out of the educational system.
But so, like, I've just been floating around for, like, 1020 years now. I don't know.
Um,
Master
roster says where are you doing?
Uh,
I'm
in Washington State.
I'm on East Side, though not West Side for people who don't know what that means. Um,
there's like a big Is it a river or lake? I don't remember. I never remember.
It's Lake Samoas.
I don't know.
It's a lake, apparently.
Ah, yes. It's a lake cos it's in. No, it's not entirely closed.
Uh, it goes out by, uh, a river. What's that river called?
Sorry. This is like distraction. Central.
Oh, it's a canal. OK,
I don't know the names of various bodies of water.
Um, Lake Washington, Lake Samish
are in between, um, like, in the area. Actually, it's Lake Washington.
I'm I'm referring to.
So on the west side of Lake Washington,
in Seattle and on the east side of Lake Washington is, uh, like Bellevue,
where I am Kirkland.
Redmond.
Uh, factorials. It's just stuff like that.
Oh, if you want a really expensive property, by the way you look at Mercer Island.
Mercer Island is an island in between Seattle and the East Side
and has very expensive properties on it. Let's go forwards to next. What?
The dog doing The dog's at part of the day where they'd want to bark in their crate.
Um, they were really, really irritating the past couple of days.
Um, it's not their fault, But, like,
uh,
I mitigated it yesterday because, you know, I was like, Hey, you owe I owe it to them.
We had a lovely walk down to the park. I let them off leash in the off leash dog park.
They ran around until I had to stop them because they were, like, panting that much.
Chased after a couple of dogs. That was fun.
Um, they got jealous when a big, uh, Labrador decided to say hello to me and I pet it.
And then,
like fed, I went mad and was like, How dare you give attention to another dog and came
over,
Uh, so they should be like better today, like they had a long walk yesterday.
But I'll, um, I'll give them another walk today. Of course,
they get like, a good amount of walking like I looked it up and they need between like,
one and two hours exercise a day um,
they get it in sort of like half hour increments on most days.
And then some days I go for, like, hour long walks.
I also go around the corner to Walgreens a lot and buy Arnold Palmers.
So sometimes they put, like, you know, like an Arnold Palmer walk.
It's just like, Oh, I could do a pick me up and I go around the corner and get an Arnold.
Well, let's move on to actual resonant questions now.
Oh,
see how the relay's been going?
Um, I was very confused last night, Um,
because some of the stuff I wanted to do in the Japan relay wasn't working.
Um, this isn't documented anywhere, but I've I've recently gained access.
Well, this doesn't need to be documented, but like
the the configuration does I recently gained
access to our reserve subscription via the
azure portal. Um, fris finally set me up, and, uh,
that means that I can, uh, take a look at a bunch of things, and it turns out that two.
And this is why it's so weird. Only two
of our relay bridge nodes have, um, firewall rules configured on the Zs
end
to, um disallow a few things.
So if you look at the network node list right now,
you'll see that the Japan relay is up.
But no one can connect to it, because, uh, there's a, like,
obscure port range being defined for, um,
the incoming firewall that I couldn't see and now can see.
So I'll be fixing that up.
And then I also had to let port 443 and 80 through that firewall.
Uh, because metrics come over HDP
so fun. Fun, fun, fun,
fun. Hey, I can I can fix that. Now,
Uh, I do want to update the other ones. I kind of just, like need,
um, them to be, like, more emptier.
So I keep looking,
um,
like so,
uh, bridge EU right now has 18 people on it,
so I really wouldn't want to upgrade that one right now.
I want to wait till, like, the middle of the night.
Um, Australia I. I don't know why Australia always has so many people on it.
I'm hoping that'll settle down. Um, when I upgrade JP,
um, because that should balance it between a US and JP.
Uh, there's currently 262 people on that bridge.
So again, I don't wanna really restart that one.
Uh, US west is is is sorted.
Actually, where's relay? US west? The relay from
Oh, so at the top of the list. OK,
so there's three people in the
in US West, but US West is the one that's actually upgraded, so that's fine.
Uh, EE relay's got, like, six people on it.
It's weird cos like I can restart the
relay without kicking people out of their sessions.
Um, but I can't restart the bridge.
And because I combine them together in one app,
I don't have a choice so kind of like fun.
I was looking into, like, seamless migration for like, zero downtime deploys,
but I can't do that until we have, like, host migration.
Uh, because that's like basically a fact that would have to do. It's it's fun.
Let's move forward.
Which says it's like when someone of a coworker ask, how are you?
And they respond with living the dream.
But everyone knows it's code for I hate it here.
Uh,
yeah,
I would rather like, just tell them openly and honestly,
I've actually said that to a couple
of coworkers it leads to interesting conversations,
for those are unaware by the way it's been,
it's It's been irritating me for many years of my life.
But, um,
in the corporate scene,
there's this, like, thing like colloquially known as like the game.
It also exists in many other industries, but it's basically like
the unknown and unwritten rules that you have to do to get work done.
Um, there's this YouTube channel where a guy talks about it a lot.
Uh, I keep forgetting what? Because, like, he kept changing his name.
It'll be on my history list because a couple
of shorts came across from his channel last night.
Uh,
yes. Here,
if you want to. Um, if you wanna be disillusioned about what?
Working in in software is like, um
not disillusioned the opposite of that, if you want to see clearly, um,
in the world of software Dev like that, that channel's great.
Um,
all of his videos are about, like, how to survive. Um
and so he he talks about a lot of stuff there,
and, uh, there's a lot of the game elements in that. So there we go.
In fact,
if I've watched like all of the content of this guy's channel Before I joined Mixer,
I would have a lot better time.
Uh, let's move. Forwards. Uh,
Louis says,
Is there a way to check if any collider button in hierarchy is being interacted with?
No, But you might. You might be able to put, like, a touch event relay
on all of your buttons. I don't know if that will, like, disrupt or remove the,
um, the handler that you want.
So
maybe that'll work. I don't know.
Take a look at that.
If that doesn't make sense, maybe we'll do it at the end of the the office hours.
I'll book to resonate.
Josh says,
What's the difference between a continuation call than a normal call type?
Uh, I I'm sorry. I don't know.
Like when it comes to proto
flux like I? I don't know. I'm sorry.
I haven't used it enough.
Uh, Uzi says, uh, alright.
Speaking of really, is the performance improvement from D net eight still good?
I ask because 97%
increase is insane.
Yeah, So someone also asked about that down below.
So I'm gonna kind of combine those into one.
so Mr DAB says,
What are the performance upgrades for the net bridge going to.net eight.
So, um, the 97%
I think it was like, actually,
I didn't know you said I. I don't remember.
It's in Dev Lo the The number I quoted that was, like, just AAA quick.
Like, look at the performance.
It wasn't, um, like an extended bake or anything like that.
Um,
but you can see it there. Yeah. Uh,
93. I think. 93%. There we go
the wrong way around it, Izzy.
Um, but
that is just, like starting up and taking a look at it.
We've yet to see what that will do over the life cycle of that service.
So when people connect to it, of course, there'll be more resources taken.
Um, also, I was interested in taking a look at why, uh,
the CPU is so large on starting up.
I think that might be something to do with, um,
like Sky Frost because it does a bunch of stuff when it starts up,
you know, it's got, like, log in to resonate and a bunch of stuff,
and that's when it it dies down.
Um
But yeah,
it basically it's because we went away from mono like mono is just terrible.
There we go. That's that. Those questions answered. Both.
Um,
the biggest improvement there, though, is gonna be stability.
So, uh, it's a lot easier to manage them now that they're on.net eight.
we've got better logging. Better metrics. It's like it's it's beautiful. Um,
I tried to upgrade them to.net nine,
yesterday or the day before.net nine.
doesn't like visual studio, so we have to wait a few months on that one.
It is just like a it's called, like a take home, or like, a go a go live,
I think is the term.
And it basically means like, hey,
Microsoft would do production support on the.net nine release.
That's just been gone, but it still is a pre release. So some, uh, parts of it are
still
ropey and one of those being visual studio support.
Uh, I'm asked to ask, Can you tell us more about the I node interface type?
I've said this a few times. Um, I don't think like there are.
There are obviously, you know, um,
what's the word?
Uh,
exceptions to that
but,
like I don't think the wiki should care about interfaces
as much as like we might be heading towards,
Um,
there is, like logic that you could say that like that is relevant.
But
at a certain point you get so disconnected from what you're actually doing inside,
resonate with the tools and the techniques, et cetera,
and you start going towards more development side of things where it's like, Oh,
well, the reason that
this interface exists is for some technical C# reason.
And at that point, I'm like, I don't think that needs to be documented on the Wiki.
Uh, what it would be documented on is any, um, like,
plug in or or mod documentation that we might have in the future,
that that would be something that we would document.
But that's a different audience.
That's like a C# developer audience rather than a a user of resonate.
So it it it's it's It's challenging in that regard because sometimes
when we're asked about these interfaces, it's like really difficult to explain
how you might use them as a regular developer.
But I will take a look for you and see if there's anything I can I can provide.
Unfortunately, that means opening up the fruits engine solution,
which which takes a while.
Whilst that loads, you can even see that healthy Dev.
The channel has been renaming themselves for a while
cos I the the embed there says Thriving technologist,
which is like the name of their channel.
But that's not the name of the channel is healthy, Dev,
But then when I go to their channel,
it's thriving technology.
So
it's confusing, but they're a very good channel.
Uh, but
you will be, uh, what's the word?
Annoyed at what they're telling you?
Because it's right, but it it feels like it shouldn't be right.
Have we loaded enough that I can get to I node? Excellent.
Uh,
yeah. So here's an example. Right. So I node,
uh, inherits from
i proto
flux node
and I proto
flux
node
inherits from I worker and I worker is just a component.
Um,
I proto
flux node has no
attributes in it.
Um, so it looks like it might just be a tagging interface
or something to do with the bindings.
I can't find any reference to it that isn't in the bindings.
Um,
and like you don't need to document the bindings on the wiki.
They're like a really obscure thing that's automatically
generated that I still don't fully understand.
Uh, I hope that helps. Maybe just don't document that one.
it doesn't like It's not that it doesn't do anything. It does do stuff.
But most of the stuff it does do are to
do proto flux findings that we don't need to document
because those are huge, uh, moving forwards to,
uh, Nui's question. What exactly do IX canvases do?
Yeah, it's, um it's a difference in rendering. So,
um,
let's talk about first of all,
like the the standard renderer the resonate renderer, right?
So
unity, whatever source not gonna talk about that right now,
just generically a game renderer right.
It is as fast as possible communicating with as much of your computer as possible to,
like, basically send
lasers through the 3D scene and see what they hit and then put that on your screen.
So it's like, Oh, I hit a red cube. I will make that pixel of your screen red,
and that's called composition, rendering all sorts of stuff.
I'll get the terminology all wrong because I'm not a big terminology buff, but,
um, the point being like it's trying to figure out what to put on the screen,
and that's very complicated.
But when it comes down to, um, UAX, what we do is we say, Hey,
this isn't like a mesh or like a texture anymore.
This is a canvas, and on the canvas we can composite and move around rectangles.
Basically, um, and that's what UAX does. Um,
I'm trying to see if I can find
a good example of what I'm referring to.
Yeah.
Oh, it's Firefox. Of course it's Firefox that has that. I forgot that they had it.
Um,
so, like Firefox, I think still has it.
You can, like, turn on like a 3D renderer.
And it will show you what a website looks like in 3D. And it uses like, uh
um
three depth to to to render that and what that means is like when you have
in HTML, at least when you have, like, a bunch of stuff inside a bunch of stuff,
it could show it.
So in this case, I've got a div, which is a container, um,
and then a paragraph within it that would be
rendered as two squares on top of each other,
one containing hello and one containing the
container that the hello is contained within.
That's what UAX does. It just goes through the list of components,
uh, constructs a rendering tree from that and then draws a bunch of shapes to, uh,
a square.
And that square is your canvas.
And
that sort of it should explain partially or no, not fully like what?
The difference between rendering a UX canvas is, uh,
from rendering the rest of the world.
Um, at a certain point, yes, there is crossover,
and it uses the same stuff as rendering like a cube.
Uh, but it has to do a lot of work to get there, right?
That should be that question sorted.
So moving on to Nuys, we're trying to work with canvases, items someone made.
But when it gets scaled down into this other interface,
the element Z fight with their own background.
That might cause this, um, floating point.
So,
uh,
UIX canvases have to be small and everyone like, goes, Why do they have to be small?
And the reason is that
what that small transition is is usually,
like 100 times smaller or 1000 times smaller.
I can never remember which I just drink it till it looks good.
Um,
that is like a conversion operation that takes metres and converts them to pixels.
So,
um, if you have a default canvas at one by one by one scale
and you put a 500 pixel by 500 pixel picture on it,
what that actually means is 500 metres by 500 metres.
So the the reduction in scale
is what makes 500 pixels look like 500 pixels.
You'll notice that when a canvas is one by one by one scale,
it looks like a billboard or even bigger than that.
Like maybe just like a mural on the side of a building. That's how big it is.
Uh, but then when you scale it down, it resembles like a a computer screen.
And that's what we're doing there.
Um,
there is a slider on the canvas component that allows you to keep it a one by one by one.
not many people use that. I don't really know why.
Um, it might not just be not not documented.
But playing with that might help.
Cos then you'll be able to scale the canvas differently.
Um, depending on how small you're trying to get it,
you might wanna, like, integrate it in a different way.
Um, a good example of this, by the way, is you know, the the the facet grid
that you see on the home screen You can actually use that in worlds space. Um,
like, there's a little bit like tweaks to do it. But you can you can, like, do that.
Um, art says that there are no really way to de pixels they aren't.
But like it's a good like mental analogue, right?
It's like a mental analogue. Um,
uh, let's try both of those. Um,
red says, What's your opinion on killing mono
Reson
Nuk? I don't know what Reson
Nuk is, so we'll move on.
Sarah says, What are you doing?
That's also another interesting comment because, like,
I don't have to conform to a schedule.
I've got meetings, I've got deadlines, You know,
you heard about the animation deadline, et cetera.
But beyond, like, meetings and deadlines, I can sort of work when I want,
and I kind of like
I'm happier doing that.
So I will usually, like, wake up and do absolutely no work for a couple of hours,
and that's because I don't exist for a couple of hours.
Um,
tale
is the one who who realised that the most, um,
they really quickly figured out, uh, when we were, uh, both at a, uh, social event.
It was like, Hey,
don't don't speak to pride until he's had at least a glass of water and a mug of coffee.
Just don't speak to him.
Um, so that's that's always fun.
Uh, then I do a bunch of work.
Uh,
then I usually take a break around about now
and then I start working again at midnight,
and everyone's like That's not healthy.
It's like Go away.
Um,
the health of your sleep is defined by how much you have, not when it occurs.
So provided I'm still getting enough sleep, which most of the time I'm not anyway.
But like the actual time doesn't matter.
So that's another personal pet peeve.
And the reason behind that is like I
keep getting emails and YouTube videos where it's like
I wake up at 3 a.m. and I'm a CEO, and this is what you need to do,
and you boil down that feedback to
wake up
like 2 to 3 hours before your first meeting
is like what? That feedback should actually say.
It shouldn't communicate an exact time
frame because different people work better.
I work much, much, much better on, like,
really technical things when it's a little bit later in the day.
And most people have, like, asleep and stuff, uh, moving down towards, uh,
Red's next question. Do you think there's an easy way to get collisions in flux?
Absolutely.
I'll show you that because it appears that we're gonna be doing live tutorials,
for we've got, like, the the Touch event relay and we've got collisions now,
So we're gonna do both of those.
Let's move forwards. Uh,
nki says
fop,
which is more efficient in making your ex canvas with a background and some text,
or making a single quad with a text renderer
a single text, uh, single quad of a text renderer,
particularly if your background material is shared
between a bunch of text renderers.
Um,
because at that point you've only got one
like one material. Um And then the text would have a second material.
Uh, but they'd all they'd all share the materials, right?
They're treated as meshes. So
the like non UIX way would be, like,
equivalent of like if you had trees and you wanted to put 50 trees in, you know,
and you would instance them et cetera.
Uh, if you need to use UIX to use UIX like they're both perfectly performant
a lot of cases,
and I know that we we owe you guys performance tools and I understand that.
And when we get there, there will be a lot of conversations, maybe at office hours,
about how wrong I am about various things.
But until then, it's the The best I can get is like, Hey, probably about the same.
But if you really, really want to be hyper optimal,
I would say text renderer with a background that has a single material.
Uh, rale
says, uh,
why does the A of the dash get scrambled a
bit when travelling far away from the World group?
Floating point
depends how far away you are.
If if it's unreasonable, as in, you're not that far away from spawn.
Um do make sure there's an issue on that one because we
might be able to tweak that a little bit on our side.
Um, it shouldn't get that scrambled.
It should get scrambled as you head towards floating point.
There's nothing we can do about that.
But, um,
it it shouldn't get scrambled in a reasonable distance away from as well.
Uh,
nki says, how small are you trying to get it? Uh,
yeah. Uh, you'll have to take a look and experiment.
You can get them really small, like, you know, in my tutorials, I've got those like,
uh, input indicators on the left and right.
Those are ridiculously small because they're parented to the
camera and the camera is in perspective mode.
But I'm trying to position them orographic.
It was a very big challenge to get those aligned.
Uh, all right. I think I'm caught up.
I'm just gonna scroll back up, make sure I haven't missed anything. I have not,
as far as I'm aware.
Then port says, Do you have any cooler city projects in progress? No, not currently.
I was considering and I don't know, like, part of this.
Like we talk a lot about time and time commitment and how long things take. Uh, so
here's a perfect example of that,
um, the next target for my work on stability, which, by the way,
has always been like a priority that I'm trying to get back to.
It's just I've been on business work for, like, six months.
Um,
is the asset worker, so you'll notice if you go to the Alert channel, right?
The asset worker keeps going like I'm really busy.
I'm really busy.
And I realised that that's also running mono.
Um,
and I can probably quite easily make that run.net eight, at which point it would be
hypothetically,
I haven't measured it, but hypothetically,
uh, 93% more performant.
Uh, and to me, that seems to be a better way to make it faster.
So it seems to me like that might be a good thing to do.
Um, but I also need to make it work on on Linux
and and get it off windows, so that might be a silly from project,
um, outside of resume.
Um,
I got
early access to, uh, the development portal, like, specs stuff for, uh,
a new business that my, uh
the creator of mixer is now working on.
It used to be my manager when I was at mixer for a bit, So, uh, they were like, Hey,
do you want developer access to this thing?
And I'm like, Hell, yeah, I'll take a look. Uh, and, uh,
I'm taking a look at that. It's a, uh
uh, it's hard to explain. Two D roblox Would that make sense?
Uh, I'll I'll link it.
Um, and, uh,
it's like it's
It's like
roblox but two D, I guess. Um, I'm just helping him out.
Um, III I have the ability to take a look.
And, you know, we're still, uh, like, you know,
friends and also like coworkers in a sort of networking sense.
So we can I can provide them some feedback. So I'm going to do that.
But that also means, like, I get to make a little game. Uh, and I'm working on,
um, the
concept is cops versus robbers.
So the the point with all out,
um dot game is that you you make things that are basically like among us, right?
And the the the reason I among us wins,
um, or is popular. Is because a lot of the gameplay is emergent, right?
It's not static,
like if you play, um,
if you play,
let's say a story based game.
Maybe like an RPG like the latest final fantasy or whatever.
You're always heading towards a destination.
You're always heading towards a goal, and there's a storyline and there's,
you know, commitments, et cetera, all sorts of stuff there.
But with these, like smaller games, um, the story
and the content comes from what content creators add to it.
Um, and so that is, That's That's, uh,
that's what that platform is trying to do.
So you'll see a lot of sort of, um,
streamer or youtuber friendly games that they can play of their audience.
It's a little bit like Jackbox, I guess in in sort of goal, like
jackbox is a single player game.
Terrible. Jackbox is a game with a bunch of boring people.
Terrible jackbox with a bunch of friends. Fantastic.
Um, let's take a look.
Uh, electron says reite is upgrading to.net eight,
but you mentioned.net nine is a pre
release. Could we see an upgrade so that some
Yeah, um,
part of the work to get us on to.net eight,
is like shaking out a bunch of, like
sticks and stones and glue and
and junk and crud.
Um, and once that's all shaken up,
it should be easier to do subsequent updates to additional.net versions.
Um, there is always an upgrade process that might take some time or have some issues,
but it should be significantly less.
Um, and once we're there and are able to do it,
one of the things that that drives me mad at
sort of larger organisations is when they don't do upgrades.
Um, out of like, fear or something.
Uh, so part of that work if if you know, someone else does it on the team, great.
If otherwise it will be me is ensuring that we are capable of updating quickly
or at least trying to update quickly.
Uh, sometimes you get to the point where it's like, Oh, no,
we're not gonna do any updates because we're scared.
And I'm just like, let's let's figure out why. Let's let's figure out why.
Uh, if you're like a financial company, you'll see that a lot as well.
They're like, yeah,
we don't need to update this like dependency because
We're a financial company and we want stability.
And it's like But there's a security fix to do with money,
so we should probably update it,
and they go, Oh, man, it's gonna need, like, 50 layers of approval.
Like I never want that for updates to Our.net version,
I want it to be like hey.net nine released.
Let's try and upgrade it
as soon as we can.
Uh, moving forwards Red has actually, I'm gonna start launching Resonate.
So I'm prepared for those, um, live tutorials.
Oh, my God. That means I launched steam.
And there was a cool game on the on the front page of steam.
So I'm adding that to my wish list,
and that looks cool. That's already on my wish list.
Uh, my wishlist on steam is sort of, uh, infamous. It's got 202,558 items on it.
Uh, Anyway, let's
take a
look. Uh,
any idea why so red?
Ask any idea why something about inspector score hasn't been implemented. The mo
This is forever,
and it's a big thing a lot of people requested for for almost an entire past year.
And there's a
issue for it forever. Yes.
Uh, that is, um uh, caught behind inspector updates.
So if you look at an inspector,
we want to completely rework the inspector top to bottom to make it better for you.
When we do that, we'll add scrolling. Until then, we won't
Or we might
sort of just depends on the on the thing. Like we we wanna completely rework it.
And so adding additional code to
the inspector is problematic.
And for those saying, Yeah, but the mod's simple. You need to
think about the difference between mod development and software development.
Like we have to do a lot more work
to make sure that everything's OK and stable and productive and suitable.
Um, that a modern necessarily doesn't have to do.
Uh, Mr Zab, is there a way to put a bug? I don't know. I don't work for all out dot Game.
And so, with respect, I don't care.
Like, go to their website and report a bug or something like,
I'm just helping out by taking a look at their Dev.
Probably before
and when I say taking a look, I'm probably gonna throw them,
like five or six suggestions and then never touch it again.
Um,
but I do get to make a cool cops versus robbers
game with cars and stuff if I ever finish it,
which is unlikely right
here.
Says, what's the difference? Between.net eight and mono. Um OK, so a long time ago
The.net run time,
I'm gonna get terminology wrong here. So anyone's like a.net Andy, Like I get it.
I understand the terminology. Around.net is difficult.
A long, long time ago,
the.net runtime was closed source and owned proprietary by Microsoft.
And what this means is that people couldn't use it
as effectively and there might even be some licencing issues there.
I don't remember. It was before my time looking at this stuff.
But what that means is that people were
looking for an alternative to the.net run time,
but still had the familiarity of the.net run time.
And so the mono project was born. The mono project was a,
I say was more on that in a moment,
um was an attempt to create a.net runtime compatible runtime that
is not actually owned by Microsoft and is open source.
Um, Mono succeeded in that,
but mono is not Microsoft. And so mono fell behind the times and stopped updating.
Uh,
they still do updates.
It's just like the the scale of the updates
is like an open source team rather than Microsoft,
which is Microsoft.
You know,
um,
and then Microsoft. A little bit later,
they combined all of their.net stuff because
there was like.net framework.net core a sp.net
dot net and they sort of all combined them together into,
like, a generic.net runtime thingy.
Um, around sort of the time of.net 567 and eight they sort of do that.
And then they made that open source and they made it permissively licenced,
et cetera.
And so now everyone is able to use it as effectively as they would have used mono.
However,
we're on unity and unity because they're in another business. They couldn't get
the appropriate things at the appropriate time to use.net.
So they had to make the decision to use mono.
And that's a decision that they made.
Not that we made, so we kind of have to sort of deal with it.
Added on to that, we're stuck on a unity version that is down.
Rev from, um the release version of mono currently
so that means we've got extra bloat on top of that.
But what that did was then it made most of our code projects just be.net
472, I think
because of compatibility reasons, right, So we wrote the
til league libraries,
API libraries and stuff that needed to work in
resonate so they needed to work with mono.
So they were written in a way that worked with mono,
and in some cases, they didn't work with the NEW.NET.
So what we're doing now is we're looking at parts of our infrastructure and parts of
our code base that can work on.net and moving them there as soon as we can.
So we did it with the headless because the headless doesn't run inside unity.
So we can do.net eight on that.
Um, the LNL bridge and relay were also running on mono, and they had no reason to.
So now running on.net eight,
the asset worker is also running on mono and doesn't need to,
so it'll move over as well.
And there's probably some other stuff somewhere that we can move over as well. Um,
one of the important parts about it, though, is, uh, the depth of the upgrading.
Right.
So, uh, when I did the upgrade of the bridge and the relay to.net eight,
I did a bunch of other work to make it more performant.
Um,
the code for the bridge and relay I lifted from the
old version didn't pretty much didn't change much of that.
But what I did do is I set it up within a hosting environment.
That does make it more performant. If you're interested in that.
Take a look at the dot gen generic host.
If me continually saying the word.net and various numbers is confusing you,
it's just about to stop, so we'll move on
for anyone who fell asleep. Welcome back to the world of living.
Um, TLDR
software development hard,
uh, relegate.
Um, every single piece of U I
That is not the setting screen is due for
work, and the setting screen is also due for updates.
But but less so, like the setting screen is is pretty much the only one that, like,
is good. And that's because it's the newest.
The rest will probably updating them.
So, um, home will probably have some tweaks at some point.
Uh, we wanna put like the controller image back in.
Uh, we want to put a help tab on the dashboard as well, with lots of, like,
resources and links.
Um,
we wanna make an official worlds are in facet that will be
on that home screen of the dash by default as well.
Uh, the world browser is getting overhaul to be upgraded to data feeds.
Data feeds are just a better way of doing U I for us.
Um, the contact screen is still on old old old U. I So it's very old.
Um, So it's going to be updated
and the same with inventory. The same with session,
not with settings and not with the exit screen as well.
Cos that's just like two boxes. But But there you go. Everything is being
moving forwards. Uh, where are we
missing other questions? You got that one?
I didn't launch. Resonate, I got distracted. Um,
launch resonate.
Launch, launch,
launch
launch. Ok, uh,
nooky says have you ever seen a working computer
screen with its own window manager and resonate?
Nope. Uh, any tips to that system?
I personally wouldn't do that right now. I would wait for collections,
uh, and with that, we are out of questions. Um,
there's lots of things that I wouldn't do right now simply because, like,
I have to I have to make the judgement of, like, launching, Resonate,
building something or
closing Resonate or a F King a resonate world,
as some of you might be familiar with me doing
and and writing code like So
I could make a window manager in UIX and I could probably do
it and II I would have to think about it for some time.
And then I would probably have some tips, et cetera,
or
I could not think about it, and I could upgrade the asset worker to donate.
And it it's really difficult to to pick one versus the other.
Unfortunately doing it and
you're not doing it. U I
three OK, even even with that,
the reason why I say like collections might be a place to wait for it is that,
um
when you're talking about a window manager,
you're basically talking about a problem that has N in it,
uh, to explain that,
um, in
resina
if there's a static number of things,
so you know that there's always gonna be four windows, then
that's fine. That's that's defined. That's structured, et cetera.
But if there are N windows,
it means
collections. Because it's a dynamic structure, right?
You might have to loop over the windows, get a window by name, get a window by ID.
All sorts of stuff like that
is, is what requires collection like constructs.
And you can you can totally do, uh, like slot iteration. It's just
II.
I don't want to.
I
don't want to,
Right, Uh, with that,
I'm gonna go ahead and stop the recording and we'll go into reso and
we'll answer a couple of questions that we had there.