Welcome to Office hours,
we're gonna go ahead and get started here.
We only have one question in our question chat right now,
which is uh what the dog doing,
this is what the dog's doing.
I should start like recording these or putting them on Twitch.
I,
I just,
I,
I never get round to it and then it's too late,
right?
I'm like,
oh damn,
it's like
5:2,
I should
really get started.
Um,
Frooks does a lot of stuff,
even on the.
The non-IRL ones,
there's like a lot of work to
like produce that show.
Uh,
anyway,
I'm gonna go ahead and move on to a very big question,
which is,
it's fine,
uh,
like paragraph fine,
two paragraphs,
you're kind of pushing it,
3 paragraphs,
ooh.
Anyway,
uh,
this is from Neo Shadow 7366,
who says,
as a new user,
I've been working to learn the primary items that I
need to know to show people the potential of resume.
What kind of tooling or in-app tutorials can we expect
in the future to allow for users to learn in-app?
I've been working on a personal project that is basically a tutorial world
that I can use as an intro to get people interested in the app.
I'd really like to see a supported tab on the dashed.
I'd like to see a supported tab
on the dash to the wiki
to avoid
resolution issues one can get while using the desktop dash tab.
OK,
there's like uh a few questions in there,
so let's let's try and address each of them in turn.
Uh,
so,
uh,
what kind of tooling
or in-app tutorials can we expect to see in the future,
uh,
for users to learn in-app?
We have like a tonne of ideas
and like I could talk extensively about some of them,
but I'm not sure like which ones we'll do and in what order.
We want to do more video tutorials,
that's for certain.
Um,
those can be watched in.
Um,
in,
uh,
in Resonant with the video player and,
uh,
out of Resonite,
of course.
It's one of the reasons why,
uh,
there's still like a thing that we intend to do,
cos like there could be a world where we don't do that,
but,
um,
I think that's kind of like a miss.
Uh,
other platforms don't do that too,
you know,
they'll put all the editorial content inside the platform,
uh,
you,
you need to do both.
Other than that,
uh,
we do want to get some sort of
uh wiki documentation integration in game.
Uh,
that one will be more for sort of like reference style documentation.
Um,
when it comes to documentation,
there's really like three
key types.
There's reference,
which is
I kind of know what I'm doing,
but I kind of forget a few steps.
I need to sort of,
you know,
go to the equivalent of a dictionary,
and the dictionary will,
uh,
you know,
provide what I need.
Uh,
for engineering,
there's these things called like pocket notebooks or something.
And they've got like tables and formulas in them,
etc.
like that's,
that's reference material.
Uh there's tutorial material which is like,
you know,
getting started and,
and
learning
for it,
uh,
and then there's sort of guide or more detailed like overview or,
you know,
detailed,
which is sort of like
this particular thing is everything that you know about it.
So we've got like a,
a lot of those kind of brewing on the wiki and we kind of like wanna
sync them back.
Backwards and forwards,
uh,
there's a,
a wiki a
GitHub issue
for adding the cargo extension to our wiki,
which will enable us to sort of automatically import
protoflux nodes and stuff like that.
Uh,
it looks like it's gonna work really well.
Uh,
I played around with cargo on the Path of Exile
wiki.
Was Path of Exile one wiki or the two wiki?
No,
it was the one wiki cos I was playing around with the Pantheon.
Anyway,
um.
Yeah,
and then I,
what I also want to see is a,
is a bunch of sort of guided tutorials where we use
the uh the engine of resona itself to deliver the tutorial.
Um,
many,
many MMCs ago there was a really good attempt to do that,
uh,
that unfortunately didn't get very far due to limitations with sort of
motion capture and playback as far as I remember,
like it was really like
challenging to get it to work,
but it did work for this one video.
They had a more sort of like museum
approach to a tutorial,
you kind of walk through modules and like a,
a,
a little mascot,
I believe it was
uh
an actual user of resonate and one of their avatars
uh would load in and like uh you know,
gesture and point and stuff.
Feels very museum-esque.
I always like seeing those,
and the reason is because,
uh,
different people learn in different ways
and
we will
take a crack at it
and we'll call it like official or whatever.
Um,
but like if you do like the same thing for other platforms,
if you,
if you search their content
or you go to YouTube and search like tutorial for that or whatever it is,
you'll find like hundreds of cases.
Like take like any Microsoft technology for example.
They've got their official like documentation for like how to do stuff like in C
or Azure or whatever,
but
search around,
you'll find blogs,
you'll find articles,
you'll find paid courses,
like
the,
the documentation of tutorial space
isn't.
Isn't like
just our efforts at it,
so do keep trying and do continue.
There's like a Protoflux fortress I've been meaning to take a look at,
um,
that sort of tries to teach Protoflux,
um,
as far as I'm aware,
and I haven't seen it so I can't speak authoritarly on it,
uh,
that's a sort of,
um,
puzzle game,
almost like the Witness or,
or Portal.
I think that's really cool too,
like.
Tricking your brain into learning is,
is like great.
Uh,
and then the last part of their question
is,
I'd really like to see a a supported tab on the dash to the wiki,
so
that would be a
tab
on the dash that renders the wiki,
yeah.
Uh,
that's something we might do in the future,
but like I,
I still don't really know what format
or like how documentation will,
will exist in game.
Um,
and I don't know if like a
tab is the best way to do it.
I've often thought about like
we need some sort of UI and settings to sort of control tabs,
um,
particularly if we can have more than one.
that would also solve the problem of like,
you know,
why haven't you removed the migration tab?
Our options right now are to like delete the tab
or to,
um,
you know,
build a system where you can turn on and off tabs and settings.
I haven't spoken to this uh freaks about this yet,
I don't know what like uh his plans for that particular avenue was.
I even talked about
another office hours um like maybe turning tabs themselves into into facets.
uh you know like on the,
I don't know if the iPhones still do,
I'm on Android and haven't been for a long time,
but you know when um
you do like a long hold
to like reorder stuff on like the earlier.
Um,
Apple devices
and like all the app icons do a little wiggle and then you can move them around.
Like what if you did that or entered that mode and then
all the dash tabs were wiggling and you could drag them around,
that might be it,
that's like that's a more
like resonant
way of doing it
and it also like helps with the,
the whole like custom tab thing,
like oh you want this custom tab instead of it being like
the developer has to
like write a weird amount of like.
Like flux or component like gobbledygook to sort of inject a new tab into your dash.
What if we just had like a,
a drop area on the sort of right or left side of the dash bar when it was in edit mode
and you dropped a square in there and it was like,
would you like to add blah blah blah,
and then you're like,
yeah,
and then it just works.
Uh freaks,
uh,
I think,
uh,
Fox was talking about,
um,
an iPhone,
but the answer's correct for R UI edit mode,
um.
I think we've,
we've ran to the end of that question.
Oh no,
we've got another one from Neo Shadow here.
Uh,
have you all started working in preparation for the steam frame?
There's not really much we can do until we get it in our hands.
There might be like developer documentation like brewing,
but like it's just a lot like faster and more fluid to just like
touch the thing
whilst you're also touching the SDK.
Um,
that's really good cause like otherwise you have to make assumptions,
like say the SDK says like,
uh,
the steam frame
will scream
hi
every 4 seconds
down the like
communication channel,
and you're like,
OK cool,
you programme that into your like,
you know,
your big like SDK.
Integration,
you know,
resonate like class file or whatever
and then like you actually get the headset and you
find out it doesn't say like hey every 4 seconds.
In fact,
it says
hey intermittently,
sometimes 4 seconds,
sometimes 3 seconds,
sometimes it says potato,
and sometimes it just goes like there
and like you haven't coded the like code to handle that.
And that's just like a normal part of it as well,
um.
The issue of documentation is like,
much like
uh for us and and every other like
company.
Uh,
they are not always in sync.
So like the hardware team are like screaming probably as fast as they can
to like get the thing out.
So there might not be enough resources on documentation,
or the people that would work on documentation are
being repurposed to help get the product out,
so like maybe it's out of date,
and that's like natural,
that happens,
um,
but like what's the best substitute for out of date documentation?
Slightly out of date documentation
and the actual hardware.
The ones.
The sentence version of that is in Freke's response,
which for the benefit of the recording,
I will read.
Uh,
so Freke says it's really hard to develop for hardware you don't have
because you can't test your code at all.
Yeah,
exactly what they're saying.
We tend to iterate on code,
testing it piece by piece as writing it,
but for hardware we can't test.
We'd have to write a lot and hope that it works,
which it probably wouldn't and would fall apart when we try to run it.
Yeah,
a more practical or like grounded example might be like,
we implement the SDK because we don't have the hardware for
controller positioning.
And then we get it in and we found out,
oh whoops we got the left and right mixed up.
Like that that's something that easily could happen with like
an out of sync documentation on and stuff like that.
Uh moving on to Kuala's question.
Uh,
I'm hot on the trail of stupid,
intermittent but debilitating Linux-only memory leak in Renderite,
which is proving tricky because Renderwrite doesn't have the nice tracing tools
of modern.NET,
as far as I know.
Do you know if there's an easy way to sniff,
log,
and analyse the IPC traffic between Freak Engine and Renderrite?
Uh,
there probably is a good way to do that.
Uh,
I don't know if anyone's done it yet,
but,
um,
speak to the people who are working on custom renderers,
because something you could potentially create,
and I don't know if you could actually do this,
like I,
I have no idea how renderite works basically,
but you could do like a sort of
uh.
And in the middle proxy
on some of that stuff
that might help you.
Uh,
the other thing to look into as well is like
what options are available for debugging,
um,
Unity applications because Renderrite is essentially like a,
a Unity application.
Well renderite.
Unity is,
which you know,
that's the Uni,
that's renderrite.render.
Um,
there might be some tools there,
like most of that would like,
you know,
there would be
tooling that we can do,
like on our end we can use the debug tools in Unity.
Um,
but there may be some stuff on your end that you can do with the,
the Built project.
It's also weird because like,
there is a GitHub issue for this,
right?
Uh,
cos if there is a GitHub issue and you do come across something
and you're like,
ah,
I would,
I would need this additional information to figure this out,
like propose that on the issue,
just politely propose it,
like,
hey,
if you added more logging to this area,
I might be able to like help you figure it out more.
What you're essentially saying there is,
if you add this diagnostic information,
I'll do a bunch of work for you.
And it's like,
absolutely,
we love to work with you on that.
Like we do that sometimes anyway,
right?
We,
we add additional diagnostic information to stuff.
And they're like,
hey,
could you,
could you test this again,
it's like,
yeah,
and you always like,
well,
not always,
but like most people go,
sure,
we'll test it again,
and we get the information we need,
it's,
it's beautiful.
We've got people who are decompiling the render and recompiling it.
Yeah,
hell yeah,
if they're doing that,
they should be able to inject some stuff in to figure it out.
Uh,
if you narrow it down to the IPC layer as well,
um,
you might be able to just sort of like write a test or do some exploration
with the open source components of the IPC layer,
which is the cloud toy,
uh,
cloud,
cloud.
You know what it is,
for those who don't,
maybe,
maybe someone could grab a link.
I'm a little bit indisposed of a dog right now.
There we go.
Cloud to oid
intercess,
yes,
uh,
that's the library we use.
I do believe parts of that library are compiled OS specifically,
I'm not entirely sure.
I basically,
like,
I've been avoiding looking at it
because I know that like once I start looking at that library,
it's gonna be like 6
or you know,
5+ hours
of like
rummaging through it to understand it.
Like I can read the documentation of course,
but to like really understand it I'm gonna have to read through the source.
That's what I ultimately did with compressorator as well,
like I,
I was like,
I,
I can't
like restart resonate
500 times to figure this out.
Um,
so I
narrowed it down to compressorator
and I'm like,
hey,
let's just write some tests for compressorator.
And now if there's ever a problem with compressorator,
we can probably like formulate a test for it
that doesn't mean recompiling resonate 500 times.
Uh,
Fox says that it's actually a.
Pretty simple library from the little bit that I read.
Oh,
cool.
Maybe it'll take me a little while to understand it
and then a longer while to understand render it.
I know we also had to make some edits,
so make sure you're looking at our fork as well.
I'm just imagining,
and you could do this,
it would probably take a lot of effort,
but assume your proxy works.
You could like
write UI that sort of like displays
graphically the chunks of data that are going across
and like a a UI.
You know how like the old like defragging UI looked.
You could,
you could totally do that to sort of visualise the shared memory,
visualise the transfer of that like address it,
you know,
you could,
that would be really like,
that'd be a really cool diagnostic thing that's
like hypers specialised for just this problem.
Uh,
Fox says,
yeah,
it was fun,
uh,
staring at decompiled source for like two hours trying to stupid,
uh.
Do stupid IL patching until I was like,
what is cloudoid,
I googled it and realised it was open source.
We do want to,
I haven't checked the process,
like the status of it due to the holiday season,
uh,
the holiday season,
but um,
we were working on getting like a list of packages that we use into the dash,
and we can also provide the outside of,
of resonate as well.
Um,
there are some licences that we need to do that too,
to be sort of compliant with the licence.
Um,
but it's also just like a good thing to do.
They always like the good example of it that I
always point to is like even Spotify's app does it.
You go to like help
about Spotify,
no,
you go to
like hamburger menu
help
third party software and it's,
it's there.
And it is like the most useless document.
But like it's technically required and it might help out with stuff like that.
Something I've also thought about doing
is,
and I would probably automate this somehow,
is
like
syncing to the wiki,
like a a more user friendly like table with like maybe the
the logo and a link to their Nugat package like website,
um,
any packages that we do use.
cos that might be like useful for this,
like debugging.
But it also might be useful for people who are like trying to
explore the area from a sort of more technical point of view,
or like,
you know,
we say a lot,
like,
hey,
we use LNL
um
and like be frequently linked to it,
but like hey,
maybe like a a wiki page that says like,
hey,
here's a list of packages that
that Resonant uses that are open source,
um,
play with them,
contribute to them,
they're all great.
And then we have like LNL like front and centre there,
someone might go,
oh,
I'm looking for a library for my upcoming.
Indie game,
and I'm struggling,
you know,
to find a library,
I'll use L&L
or at least take a look at it,
and then maybe they come into the resonate community,
and they're like,
hey,
is there anyone I can talk to about L&L and everyone will go like,
Pull up an armchair
around this campfire
and let us tell you some stories.
Uh,
jumping around,
uh,
a bit to some comments,
uh,
Fox says,
uh,
going back to the wiki,
it would be nice to have stuff integrated into the inspector's stroke flux notes.
Yeah,
we can't get that sort of reported as tool tips,
and I believe like we've even got an,
like an,
an issue called tool tips.
Uh,
but like I'm never sure if like tool tips are a good way of doing it.
However,
um,
shout out to,
to Path of XL 2 here.
They do it in a really nice way.
Like could we could we could also do like a,
a fly out,
for example,
like where there's like a flyout panel
that you can appear and like it'll turn on,
um,
appear and have like flyout information.
I love that sentence,
I think I just said like fly out about 5 times in a row.
If I turn on,
um,
if I turn on on-screen keyboard,
I can still type.
If I don't have on-screen keyboard,
I literally cannot type.
Oh yeah,
um,
you always have to think about like the holistics of it.
I'd forgotten,
um,
yeah.
Uh,
Freak says it's less about tool tips and more about
having data for the tool tips in the first place.
We need a system to manage and query all that information,
which is a much bigger task than displaying it.
Agree.
And then they followed up with,
uh,
like we can show a little piece of UI,
but there's thousands and thousands of fields that need to be
written so it can't actually be shown.
Like VRIK is a good one.
Could you imagine if we were just like
turn on all tool tips for VRIK component.
Uh,
right,
I've got on-screen keyboard on.
I'm trying to see if there's a good,
a good example of the path of exile tool tips that I was talking about.
That's why I opened on-screen keyboard.
Yeah,
there it is.
That's a tiny picture,
cheap,
ain't gonna be handy at all,
picture for ants.
OK,
I guess I'll just explain it.
Um,
yeah,
we need to like
tie it into the like.
I've said this like multiple times,
we need to tie the like tool tips data
somehow into,
if not the actual wiki,
the the spirit of the wiki,
yeah,
where it allows community contributions.
Um,
the path of Excel 2 tool tips,
I'll try and explain it.
Um,
so in Path of Excel 2 you can,
uh,
there's lots of like complex terminology.
And you can mouse over some of that terminology cos it's got like an underline on it,
and it'll give you a tool tip.
But if you like push alt and click the tool tip,
it'll pin that tool tip and you can move it around.
And then it has something called nested tool tips where you're like,
you know,
you go from
um
what's a good example,
you go from like lightning to electrocute
to
like lightning damage or whatever,
and those can all be tool tips and they can all be pinned if you
need them pinned and you can sort of move them around on the UI.
Uh,
it's,
it's like,
it's really cool.
I think cargo might actually solve all of that.
Maybe I'll,
um,
maybe I'll see if I can like
chat with the Path of XL2 guys about like their use of,
of cargo,
see if they think it's suitable,
cause I,
I,
I think it like researching it would be a good idea.
I'll take a look,
it doesn't matter.
Not that I've got time to do it right now.
Uh,
do we have any other questions?
We've been talking about basically two questions,
which is like,
uh,
documentation and wiki.
Since's the start.
It's OK,
we can do that,
it's just
interesting.
Oh,
we have another Neo shadow question.
When it comes to avatar setup,
is there work to make that more user friendly for casual users?
Yeah,
a bunch.
Uh,
we wanna redo the avatar corder at some point,
um,
give it like a
20,
2025,
2026 lick of paint.
And um
we also
want to change up the,
uh,
I said the avatar builder,
yeah,
the avatar builder and the UI around it,
but also the UI around like managing avatars and and and doing things
which comes from sort of the inspector reworking and stuff like that.
A good example might be like
we'd probably do.
Something different from the like yellow spheres,
we'd probably see if we can like
remove or decomplicate things in that rework.
Freaks was talking about it on Sunday,
how we want to sort of maybe
take a more geometric look at your rig rather than a named one.
Uh,
so right now we'll sort of look for things like
leg to identify that it's a leg,
but if you geometrically
look at a,
like a bone hierarchy,
you can detect that it's a leg
because there are two of them,
and they're connected to the hips.
It's almost like a,
probably has a name,
but like,
like an X,
yeah?
Oh,
ages is asking,
could it be an optional thing to look at the names if geometric-based,
if it's geometric-based as a method too.
Yeah,
the two systems could like interact with each other and like fall back on each other
or like ask each other for like their opinion.
You know,
you could even like you probably wouldn't be like this,
but you could
you could split it up explicitly,
you know,
like,
given this rig,
figure out what it looks like geometrically,
given this rig figure figure out what it looks like
name wise
and then like run some code that sort of like
goes between the both of them and sort of goes,
yeah,
that makes sense.
Yeah,
fingers
already do geometry,
uh I need to look into that code more.
I know what like it means when when Fruit
says like we do geometric detection for fingers,
but I need to look at the code.
Yeah,
falling back to the names makes sense.
And if there's a problem there,
we could
throw a toggle on or something in advanced avatar settings like always
use name or for anyone who's thinking about the geometry of it,
like,
take a look at a hand,
conveniently
approached here.
The thumb goes in a completely different direction
to the fingers,
and that's a like geometric clue.
And then think about the,
the ratio as well,
like this little finger is much smaller and it's on the outside,
there are other fingers between it and the thumb.
And if you can like ideate
that
sort of thing that we can intuitively figure out because we're humans
into code,
then you can,
you can figure out how to get the bones
assigned.
Uh,
Neil Shadows says,
I heard there were talks for simple modelling in app,
how's that going?
I don't,
OK,
let me answer this twice.
Um,
yes,
at some point we'll have like modelling tools in,
in app.
Uh,
you can look at that on,
on,
on the GitHub,
there'll be a GitHub issue for it.
But I'm gonna answer it a second way as well,
when it's like,
when you see the words like I heard.
To me it means like
you might not be aware of where you can go to find out
what our roadmap is or what's on it or or what we're working on.
um,
modelling,
simple modelling is in there.
Like if you want something confirmed,
you can,
you can go
do that
that work yourself,
there's no like secret
conversations or anything.
Yeah,
a couple of people have taken what we already provide and
they've made simple modelling tools on top of what we provide.
Uh you can sometimes get like quite far with the brushes.
Like the first time I showed someone like a a
campfire with one of the brushes that's like default,
they were like,
oh that looks cool.
Oh yeah,
and then if you wanna just do it by triangles,
it's really difficult cos you have to like move around all all the trays at once.
Well like each,
sorry,
you have to move around each vertex at once to get the sort of shape that you need.
Um,
it just has got one,
it's quite old that one is.
But yeah,
we want uh we want more and better tools in there.
We also want um
more procedural tools.
So like procedural terrain
with procedural like,
you know,
textures on those terrains,
procedural plants,
procedural trees.
He's actually just adjusting position.
Deo is like commenting on how,
on,
on the,
on the sleeping.
I don't wanna say the word
because it'll wake him up,
but uh
no he's just adjusting,
he's gone back to sleep.
I can reach the keyboard.
Can I move my legs,
dog?
Are you gonna let me move my legs?
Oh.
No,
we are moving,
you,
you stay where you are.
If uh you're ever in a voice chat with me.
And I go completely silent and don't respond for a bit,
chances are this dog has crawled on top of me like this,
fallen asleep,
and then in response to them falling asleep and their body heat,
I've also fallen asleep.
Happens
every day at least once.
All right,
do we have any additional questions?
Doesn't look like it.
So we'll go ahead and leave off here
and I will speak to you guys
soon,
or maybe we'll wait a minute,
uh just in case if Neo,
if you've got a question I can still take it.
Um,
Feder bought you an extra sort of minute or two
by
incapacitating this hand.
Oh,
it was a,
it was a praise for all the work that we do.
Well,
thank you for trying us out.
Thank you for supporting us,
I see that you're a supporter,
and thank you for being patient as well.
Your questions were like well reasoned and well thought out,
and
thank you.
I will speak to you guys soon.
It looks like the next office hours will uh
be in the new year.
I can't remember the exact date,
it's something like the 6th or the 7th
of uh January.