>> Hello everyone and welcome back.
Hopefully, you had a chance to tune in to the panel that just
finished on the developer communities,
and I would say we spoke a little bit
about communities yesterday Kathy,
and I feel that community is
really how I got here into this space.
>> Totally. I love how they talked
about the inspiration side of it and
how they were inspired to start
a community and then they wanted to also inspire other people.
That's what got him into it
>> That's what it's really all about.
Joining now is one of
my most favorite friends in the mixed reality team,
the creator and maintainer StereoKit,
Nick Klingensmith. How are you?
>> I am fantastic.
It's been an exciting little event so far.
>> Oh, perfect. I'm so happy to have you here.
For the folks at home who are tuning in virtually,
Nick has delivered three awesome StereoKit sessions
yesterday in person and they will be available on demand.
However, we invited him here to join us today to actually speak
more to what StereoKit is
as well as some new things that he's added.
To start off, Nick,
could you let the folks at home know what is StereoKit?
>> StereoKit is pretty cool.
It's a mixed reality library that's based on OpenXR for C Sharp.
I spent a lot of time trying to make
sure that this is a really easy to
use thing and it's just a succinct.
Even better, it's part of the C Sharp ecosystem,
so it's something that
C Sharp developers can get comfortable really fast,
it works really well with the rest of
the tools that you already have available to you,
and just makes your life easier from that perspective.
It's code first, so it's not for everybody,
but if you're a programmer, it's great.
>> Yes. I would say just was it last year or this year,
we worked together on some videos for StereoKit?
>> Oh, yeah. You made some fantastic intro videos for StereoKit.
I don't actually remember when that was
>> Yeah, I can't remember when.
>> They're wonderful.
>> All the time is just blurring together.
But Kathy, this is
your first time learning about StereoKit, right?
>> Yeah, and I haven't seen any of the video.
What are the key features they've had?
What are my first things that I'm going to do with it?
>> The big thing is,
it is specifically for creating a mixed reality application.
If you want to create something
that you just have some user interface,
you're doing something productive,
it's really fast to create that experience.
It has less of a focus on
graphical fidelity like games might want,
and emphasis on productivity
and getting started with an application right away.
It simplifies a lot of the setup,
you don't have to configure things for mixed reality
because it's already there for mixed reality,
and just the iteration time is really
quick as well because it's a much lighter weight tool.
>> That's cool. Does it have some templating in it then?
Is that what makes it quick to start out,
you start out with a template that has the base things that you
need in the project and then you can build on it from there?
>> Yeah, I have a couple of templates up on
the Visual Studio marketplace that allow you
to just get started right away,
it gives you a nice little environment to work in.
But the big thing is that,
the latest and greatest.NET tools are so good.
They're really fast,
Oh man,.NET watch is amazing
and StereoKit pairs really well with all of those things.
If you're iterating on desktop, it's instantaneous.
I've even streamlined the HoloLens deploy time.
It takes about 20-30 seconds,
which is pretty great
>> That's really fast. Wow.
>> It's fast.
>> I guess it's all done at versions then and done at core of
the latest features and things as well?
>> I think I originally started with,.NET core 2.0 and up to six.
Those are the range of what I've tested.
I've also used.NET framework.
The library itself is actually a.NET standard 2.0.
It has a pretty wide range of compatibility.
>> Nice.
>> Cool. Just recently there was another release. What's in there?
>> This was version 0.3.6,
and I worked on this one for about four months and it actually
contains contributions from at least nine other different people
so I'm really pleased.
This is a real community effort,
I'm really excited about all of those.
But the big feature,
the headline thing was asynchronous asset loading.
This is the idea, if you're loading a glTF,
there's 300 megabyte glTF that you have to
decode and it takes a little while to load up,
and so the new feature allows you to just say load it,
and it just starts rendering it right away,
and in the background it'll just progressively load
in the details and just play it as it comes in,
which really unblocks the application
and just lets you load it
without having to worry about your assets much.
>> That is super powerful.
So I definitely know when I've gotten into
different apps I've created and then also waiting for them
to kick off because they have all of
these different assets they need to load in order
to even use the application,
that you can make it more dynamic and load
it when you need it and then also
continue moving forward with your experience as well.
Having that built into async in a way used to be really hard,
and I feel like the more useful APIs
are ones that are just building it and making
it really easy to make the call and then being
able to integrate that type of functionality in.
>> Then you had mentioned that there are
additional folks who contributed to the most recent release.
This is definitely community driven project.
If there is someone at home who does want to contribute,
what exactly are the steps that they need to follow?
>> I've done a lot of work on the GitHub repository.
There's a contributing guide, there's building guides.
I check the GitHub issues every morning right as soon as I get up.
>> Told you-all yesterday, he does that.
>> We've got a nice Discord Channel as
well with a lot of lovely people on there.
If you want to pop in and chat and say hi,
ask for help with something,
always happy to hangout.
>> Cool. It definitely sounds like a very much viable solution.
I know you can do a lot with a little bit of code.
>> Yes.
>> For sure. Just from a projects perspective,
what's something that you've been working on you've created?
>> I like to every once in a while create these test projects to
just push the features a little bit, stress test them.
My latest has been something called photogrammetry explorer,
where I basically grab models off of sketch fab,
load them up and then allow you to walk around in them.
It's this interacting with these rest APIs,
working with really heavy glTF models,
and then interacting with them moving around in them.
It's nice for the async assets stuff,
it's really great for some of
the collision intersection and stuff.
>> Then I recall, I think last year
there was a StereoKit Hackathon.
Do you recall any projects that really caught
your eye from the Hackathon?
>> Yeah. There is actually
a lot of really wonderful projects that we
had, multi-user collaboration stuff.
I think my favorite one that came out of there
was [inaudible] idea engine,
which is this mind mapping software.
He's he's on Twitter and you should check that out.
It's really cool.
>> Oh, cool.
>> Mind mapping software.
>> It's more than just that.
>> Is it EEG signals or how does it-
>> More like a brainstorming thing.
>> Brainstorming.
>> Not like mind reading
>> We were talking about little bit of that yesterday.
>> I was watching this documentary on BCI,
brain computer interactions, and so,
I'm very interested in everything
that's happening around that and there's a lot of cool things.
I was like, how are they doing this in mixed reality?
>> More sensory inputs. Absolutely.
>> Yeah, exactly.
>> Then there's also some StereoKit involvement with
this year's Hackathon that's happening that
was announced yesterday as well.
Are you one of the judges for-
>> I am going to be one of the judges.
I'm going to be helping out with the office hours,
I'll be around if you need features during the hack,
surface them up and I will work on those for you.
It's going to be an exciting month of hacking
>> You're pretty good,
I would say,
with keeping up with the contributions and the feedback.
I think for something that
is Open Source that's really important,
and I really like that about it.
I would say working with you is also a delight as well.
>> Working with you has been wonderful too.
>> I feel like a lot of people feel that about you though.
>> Yes.
>> Yes. You're magical.
I would say for those of you interested in StereoKit,
documentation is available at
stereokit.net and that's where you can go find all documentation.
I think the videos happen to also
potentially be somewhere linked in there as well.
Coming up soon, we do have
another session that will be starting just shortly,
and we also have Ivannah joining us.
We're going to talk a little bit more with her about community.
But I would say overall,
things have gone well so far.
It's been going well in terms of the event,
and let's see what else is happening.
We do have Cameron coming on later. I did mention Cameron.
Cameron will be joining us for
our conversation with regards to graphics tools.
That'll be pretty cool.
Then later today, joining us will also be Andrew.
Thank you-all and we hope you enjoy the next session.
>> [MUSIC]