OfficeHours:ProbablePrime:2023-01-03
Audio
Description
In this Office Hours, Probable Prime talks about:
- Happy New Year
Transcription
(Please note that the transcriptions will not be 100% accurate)
Alright, so welcome to office hours. It's been a little bit of a gap before the last one we had
That's because I was away for the holiday period but I'm back and we're back to regular scheduled broadcasting with the office hours
Tuesday at 4 p.m. My time zone which is a Pacific. You can check the office hours wiki page for it in other time zones
So this is the AMA
Office hours where you can ask questions about Nius and we go through them in the order that is shown in the thread
Which I just created. I see some questions in there. So we'll get started on those questions
So we have a question here from a rigorous who says how does Nios handle my composition?
Actually, I can't answer. I think I know what's going on, but I don't want to be unauthoritative
the netcode
Code being the sort of stuff that glues together the synchronization and the way that Nia speaks to other people in the session
Isn't something I've taken a good look at I'm aware of sort of parts of how it works
I'm not aware of
How all of that works if you expand your question with additional sort of like elaboration or areas you're looking at
I'm about to help further. Otherwise, I'm sorry. I can't answer that one move forward to unnamed cyborg cat who asked
What's Nios achieved in 2022?
You can check the newest updates channel or the answers channel for stuff that we have done in 22 that is published again
If you expand or elaborate a question into additional areas or avenues, it might be easier to answer
But that's a really broad question moving forwards to
This is second question, which says is there any updates for Nios planned for this year or next year?
And there are always updates planned. We just can't do them currently see announcements, etc, etc
And with that unfortunately, we're out of questions. So keep them coming. Otherwise, we'll be set here and unimaginable unending
tormenting silence
Waiting for questions. I do think I could probably take the gap in questions
There's an opportunity to wish you the very best for the new year. I had many difficulties typing the word 2023 today
I had to put it into the thread. I had to put it into the
Various other things as well. So we have another question here from Jack who says how was New Year's?
I spent it at Geens's house Geens throws a sort of almost annual tradition now, which is a party his house for New Year's
It was great. Saw a lot of Nios people there
Met some new faces saw some old faces
Lots of fun was had
Chikal girl says how is your own personal work on medical insulation thing? It's it's going well
There's not really much to say
On top of the videos I produce sort of in November December last year
That's sort of where we're at right now are doing some additional exploration into sort of what's going on there
But to share right now
Okay
So check a girl says if you're very old you might refer to January's check your area the month we accidentally write the previous year
on your checks
Checks I am aware that like some
businesses and
Landlords and my rental places still don't understand direct deposit but like you don't need checks anymore. You just use what's called direct deposit
So your money can go straight in your bank and the rent can come straight back out again
I've heard many a story about landlords who don't understand direct deposit and they want their like rent in cash
No, just like are they filing taxes on your rental? Is it a legal rental?
Paying cash. It's a bit weird
You should at least get paperwork if you're paying a rent in cash
Make sure you get paperwork invoice for rent the fact that it's been received and signed and stuff like that like crazy
Sometimes they want checks that's like okay ish
But you should encourage them to use direct deposit
The way does I have is like if they don't need cash or if they won't accept cash or sorry
They won't accept direct deposit which means cash or check then they have to come visit you and you have to talk to them
I don't want to talk to my landlord
It's not a desire I have if I talk to them it means something is wrong
So direct deposit the rent just goes straight to them
I don't know when it just does when I see it, you know
It's not something I do manually moving forwards to a reverse this question
Who says it's possible make a web server in logics in Neos with logics? No
logics is a language ish the
interacts with the Neos world and the Neos
data model and the Neos engine
So it's limited in what it can do
There are some things it can do the sort of exceed the bounds of Neos for example the HTTP or web socket nodes
But remember that it is running within a another engine. So you can't do it to you. You can't use it to solve generic tasks
It's sort of the equivalent of saying can you make a web server in redstone in Minecraft?
Like I hope that helps you sort of picture in your head moving forward to another question abysmal says is there currently a maximum?
Maximum of users that can join a session
Do you know how many avatars Neos is aiming to support once can expect Neos to be usable for MMO player counts?
Um, there isn't a maximum which is enforced by anything that is decision-based
so the only maximum would be like technical and so it's probably something close to one of the
binary numbers
But I wouldn't know which one it was without looking a nose in high as 50
I'm pretty sure I can go higher than that. Like there's no there's no real like limit that we have made a decision about
As for what we're aiming for we are aiming to make that better to get that number up
Particularly to get that number up to sort of you know, be more of sort of VR chat style levels
I don't know if we're aiming or able to get it to the MMO player count would need much more culling there pretty
Automatic culling I know that the community are great and putting all the culling systems into their world
But you shouldn't have to we should have a native solution
So once we have that it should make every world able to be called as well as the the cold sessions that you see from
The systems that people are making and installing in them and then a reverse also asks is it possible to make auto load?
Sort of the problem level of detail is it depends on what you mean? So in games
Level of detail is you just sort of like stuff will look less detailed the further away you are from you can sometimes see that
Pop in which is where they've done lots slightly incorrectly
where you know
You'll sort of like go over the threshold of a doorway or something and the contents of the room inside will turn from sort of shit
Tier to like amazing tier graphics. That's an example of log being done incorrectly to do it in a way where it's not noticeable
You can absolutely do some mod systems there, but the limitation is
that the LODs are
Always loaded in so for example if you're a high poly one or a low poly one, that's still loaded into the world
You're just swapping between them for rendering. So while you do maybe get a little hit for rendering which is better
You'll lose that on the sort of model being in memory in the games thing
They you know, they try and load only the details that you need
So if you never visit an area, they don't load the high poly version of that area for example
There is a gap issue for more LOD related stuff. Yeah, the inbuilt LOD one is like a little you have a lot component
I just it's weird. So we have another question here from Marubus who says
How do I measure distance from a player to an object in logics?
so the easiest way to do that would be to
Grab a slot reference to both the player and a slot reference to the object
Make sure they're both in global by using the global transform node
That's just easier and then plug both of their positions the global position of the player and the level position of the object
Into the distance node which exists in an operators or math at large that will calculate you the distance
We're gonna do it automatically. There are various things
Use a distance value driver
And stuff like that. They'll handle the whole like global cool mess for you, but that's how you do it
It's just a mathematical thing the distance between two objects is just the difference in their position and then you
normalize everything and the distance node also
Magnitude because it's a three-dimensional thingy. Jbot says question similar to the surgical visual planning
Where are there other projects for Neos focused on building digital workspaces be it for dialing manufacturing?
Not that I'm aware of but probably I mean there's like God knows what going on. Not that I'm aware of
Moving on to Rigibus who says can Neos interface with a drawing tablet?
Depends on what you mean
You can put the Neos screen on a drawing tablet and then the pen will work with it
As in when you push if it's like, you know, if operates as a mouse like where you put the pen will push
We do not interface with the drawing tablet sort of pressure sensors
Smoothness angle sensors or anything like that. It would literally just be a click touch screen like one of those really bad touch screens
You know like an airport touch screen. Yeah, one of those I was on a lot of planes over the holidays and
In-flight entertainment systems god damn their touch screens are bad. Specs are answering their question though. I think
Wraith, what ID do you use these days? I am on a mixture of Visual Studio code for anything that is not like
Compiling if it needs compiling I should try to go to Visual Studio hate to be boring, but I need stuff to just work and
Once it works, I don't really have like much inkling to change it
So getting Neos compiling in Visual Studio was like a two-week effort and now it works. I'm like cool
Let's not break. Rigibus says how smooth does
Neos run on the Raspberry Pi 3? I don't know. I don't own a Raspberry Pi 3
I own a Raspberry Pi 4, a Raspberry Pi 0 and a Raspberry Pi 2 so I don't know. I skipped the 3
You're more than welcome to try that is what's called an empirical question
Rampa says that it's not boring with the community vs license being pretty good. It does it is good
What I meant by that is like some people expect on a cool tools or better workflows, etc
I'm like so ask would you know what causes the loading indicator for a world to stay open and never finish?
I don't know. There's a bug open for it though. Alright, so we have
another question here from Rigibus who says
How does Neos multiplayer architecture work? Is the Neos backend just a big database with reference to IP addresses that contain the public instances?
Again, your question is it's more focused. Got that. It's more focused, but it's still unfocused
So there are two parts of the multiplayer architecture
So there's the stuff where we communicate to the cloud and then there's the stuff where we communicate to the session host
And those two different things they do overlap in some cases, but those are two different
So again, it depends what you mean based on the second part of your question, though
I'll assume we're talking about session listing in that case
Session listing is just a big database with a reference of where to connect there might not be an IP address
It might be like some other route or some other thing
Sometimes it's a bit more complicated than that. But yeah, that's the session list. It's big database keep the questions coming
Yeah, the river says how do I switch between sessions and desktop?
I know the session list facet thing that requires it in the dashboard has been put up
You can't all tab as far as I'm aware
Jack said you could troll tab shift look at that on the
Troll tab and okay guys make sure to read the basic controls wiki page
Which has a lot of sort of shortcuts which aren't documented anywhere and tell you how to use this
That's our bad. We'll fix that as soon as we can
Additionally to that the original way that you are meant to transit between sessions
without the facet which I made and without the legacy world switcher is if you go to the
Active sessions tab of the world browser you'll see the sessions that you're in there at the top and you can select them there and
Then click focus world on the pop-up that appears
So those are a variety of ways to do it. I thought that that was
Potentially confusing and not like a short path. That's why I made that facet. There's lots of praise for the world's are invested
That's the one I made I like I just got annoyed and I solved a problem and everyone else was like I'm annoyed by that
Too and they just like everyone installed it. It was great. Yeah, we are investigating making it into some default facet
Puddle Nexus world so Lex is talking about a world I made where there's an active sessions ball for each world
Yeah, I just I hacked the world browser apart to make that work
So that world is technically a world browser where I've convinced it not to make UIX stuff
I never intended it for it to work or people to enjoy going there
It's just sort of like this is asking what portals are and how they work since some people mess with them
I can understand what they did. How do you mean?
Camera portals or well, let's make a second screen arampa. That's why I did camera portals. Okay, so camera portals are
Somewhat similar to and it's kind of like good to view them like this
Having another headset in the world that you can sort of look through
So what it does is it makes a camera like a traditional camera, but it renders it stereoscopically
so
The you know, the left eye is different from the right eye and it does that according to your headset your your rendering, etc
But only when you're looking at that camera portals like rendering pain
So it's like having like another headset camera, you know with the two left eye right anything in the world
That's really all it is. It's just like a rendering trick
We get sort of a stereoscopic camera another word for it literally would be stereoscopic camera
the bit that makes it cool and more portal like though is the ability to move the
Camera location separately from the rendering location, which of course you can technically do have a camera as well
It's just really confusingly named
But it is like a portal to another part of the world or another
Area, there's really not much to them though. You just like create a new object portal there
You're done. You can make them different shapes different sizes. They don't need to be square
You put them on like rings and stuff. That's always cool. That's how the portal guns usually work. The camera says
What kind of optimizations can I do for big worlds?
For big worlds, you need to make sure that you are culling so grab one of the culling systems already exists or make your own
Not only culling objects, but also culling players. Make sure that's happening
You need to balance your sounds so that you don't have more than 32 sounds running or like some of them will like not work
You can make sure your assets are optimized effectively. For example, I once had to help a
Game design student who was trying to do a project at university and their unity project wouldn't compile
And I found out that they had a million trees in their scene because they wanted a forest and so they put a million
individual trees in their scene and
No
That's not how you should do it
So do keep an eye on that. The way you do it is you should have up close some trees
As you go further and further away, you should transition to lower and lower poly trees and at a certain point
Just a picture of trees and that's what you do. Other than that. It's like the contents low
You know, do you need 8k textures on this piece of concrete? Probably not. Everything on the dash can be resized. Everything
So the world browser itself, so I'm jumping around a little bit. There's comments about the world browser going on
The world browser is composed of essentially four facets
There's the filter list on the left which has you like everything, active sessions, features, etc
There's the the grid in the middle
which is all the sessions and then there is the search bar at the top middle and the
pagination bar on the top right. Those are all facets. You can move them around exactly like other facets. As for questions
Specs says are there any plans to update the content hub in the future? I would love
I kind of love the place and it would be a little sad if it got left in dust in a favour and made it more convenient dashboard UIs
I do believe that the content team have plans to update it
For anyone who's not aware of what the content hub is, that is the space station
satellite space station thingy
Which was used in a lot of streams
until the twitch house got created and then we
It's meant to be like a content hub. It's meant to be I guess a little bit like the VRChat home
You know, there's like you can go discover what's out there. It just has been it was deprioritized for the MTC and you know
Busy working on other stuff. So I hope it returns. Ray said that be kind of more of a question for the content team
Yeah, if the content team had an office hours, maybe that would be cool
I mean you can ask them questions at workshop Wednesday. That's usually where I catch them
I can catch them whenever I want, but you know, if you're a user you want to ask the content team questions
Try the workshop Wednesday stream. Yeah, I understand that workshop Wednesday is on hiatus
That's usually where I can. Moving on to Rigibus' question when importing assets from blender
Is there any don't @ team members at me? If you need to @ team member at me, I can take it
I'm weird like that. I can like just process notifications quite well
Is there any kind of thing I need to do in a blender project to make it work better?
I've tried importing some models from blender, but the scale would always be wrong
Scale is one which is actually kind of easy to do. So if I default blender scale is in meters
So when you import a model from blender or any other source that you know has been in blender
Usually what you say and what I say in my tutorials is I go 3d model and then auto size, right?
I always say select auto size if you know, it came from blender and you know that blender was using meters for it
It's like scene units like this the units of the file
Select meters rather than auto scale and then it will come in at the exact scale
Which it was in in blender. If you export to FBX or other things then you'll have oddities generally
I'm trying to sort of advise going away from FBX these days head was GLTF if you need to do avatars and animations and stuff
Blender works well as well. Blender it'll just turn into an FBX and a GL whatever
Try it though. Um, I will be making a tutorial on at some point
until then go into blender make a one meter by one meter cube in blender import it into
Neos until you get a one meter by one meter cube in Neos you can use the meter tip for that
And that will allow you to sort of see what size it is
And then you'll know what works and the reason why I'm telling you to do it
Even though I will make a tutorial at some point is it'll give you a feel for what's going on
Like if you import a one meter by one meter cube and it comes in a hundred meters, you know
Oh, I understand what's happening here Neos or blender or something in the middle here for some reason
It's making everything a hundred times bigger like get a feel for your workflow spend time on your workflow as well
I know sometimes the temptation is like well if I do three hours work on each model
Then I don't have to work on the workflow or you can just work on the workflow and then you don't need to spend that
time every time
It was it for the blender question. If you have any other blender issues you add more questions
Arukabha says it's possible to make a mod to lower the resolution of all active mirrors in Neos
It is please ask the modding community for that on the mod you've scored. Just a quick reminder here
Because people are talking about map makers not adding, you know, things like mirror options stuff like that
You go to Neos Essentials Mirrors
There is a wide array of mirrors the ones to the right usually have those menus and the ones to the left don't
So you pick one on the right and then you can have automatic
mirror resolution modifiers
Additionally, remember that we have the community sort of standards thing that is able to happen
We were able to do it with the colors for music that was done. Most people use the same
Variables for that these days your avatar just works someone could write up a standard for
cloud variables and stuff for
resolution right and then it could be hey, I am telling you the
cloud variable
resolution
Scale on off state of mirrors in the world and then you can say you could do that
Perfectly, you probably need to do that via group and go to like I don't know G standards or something
I don't know whatever but like you could do it is within your power to do it. Should we Neos maybe have some standard
Cloud variables that you can hook into probably but we don't currently
Where are we? Fuzzy ask is there a page about the non standard standard stuff? Yeah, I mean
It's a complete mess but like
I've been meaning to tidy up if I tidy up it starts looking like official and I don't want to be official because it's not
official
There's some stuff there that has just got it's mostly audio and like audio color stuff. So alright got some more questions
Does these supports playing SVG files?
Don't remember gonna say no
Make an issue on the gap if you'd like to see that
This also asks how variables work in logics again that really does depend on the avenue that you're after so, please
Try a lab ring on the questions. See if you can make it any sort of more
Detailed and be able to answer that one. Otherwise, it's a bit sort of too vague
You know that could be how do variables synchronize which is a 20 minute explanation or how do you write a variable?
Which is like a 30 second explanation like it you expand your question
I can I can help you out better how to read and write the variables. Ah, yeah. Okay. There we go
Um, so there's there's various ways to do that and it depends on the type of variable that you're using the thing
that you need to remember is
The most fields like every time for example, every time we see a number that's probably an int or a float field
Sometimes it's a double and some other weird ones. Don't worry about it
But it's usually a float or an integer and that is a variable and you can write to it if it's part of a component
You'll need to use the logic interface card
If it's in logics, then you can use the nodes for that those are in variable storage value register
And then into a float whatever type you want there and then you can use the right note to write to those
But you can also use the right note to write to logic interface cards
They're all variables and you can all write to them
If that didn't make sense, then I would suggest taking a look at the introduction to logics. There's a very good video by a business
Basement nerd. Sorry. There is also one by
Business law is a little bit older now so you try both of those triple yeah like pretty much every single time you see a text
Box of some kind where you can type in a number or a letter or a type or anything like that
It's a variable in those various ways to do. Jackal asks if you import vector files. Does anyone understand what it is?
No, we don't. With that we are at half past so I'm gonna go ahead and say
777Faku if you have a question, please continue typing it. Rigibus if you have a question continue typing it
But the only two additional questions I take for this office
I'll just make noises. Rigibus says how does the newest database I had the database corrupted yesterday and I was wondering how Neos
Stores something like a SQLite database. It is a SQLite database. I believe it's NoSQLite
I don't remember. The point being is that there is a local database lightdb. That's the one. It's a NoSQL
SQLite style thingy
It's basically a file and the file is a database that can be queried by Neos and it
And what we do is we say hey database, where is
Rafe's face text?
Where is the texture for Rafe's face and the database goes it is here and that here that I'm talking about is usually a file path
On your computer and then it picks up from the computer and goes here you go
I'm now rendering Rafe's face and we don't need to redownload it from the internet because we had it stored locally in the cache
When the database corrupts it means that file that light database has corrupted and we can't read from it
And therefore we don't know what's going on. You know, we can't figure out where those files are
And that's what happens when it gets corrupt
That's why we need to repair when we repair it we switch from sort of interrogating as a database. We switch to interrogating it as
A file that has a problem we fix that problem if we can and then we go back to interrogating as a database
It is time. I will allow a reverse expanded question because it is related to the previous one
And I said I would allow some of the vacuus stuff. So I'll read that even though I haven't I don't know
I don't think it's a question. I don't see a question mark at least I'll read in just a second
Um, so they say how does neo store the local cache? Yeah. Yeah. Thank you. I understand. Thank you
How does neo store the local cache? The local cache is stored as a bunch of you can go just look at them
There are much of files. They are sort of encrypted, but it's not like encrypting encryption that would be used for anything security related
It's it's more sort of partially organizational partially encryption. The light database itself is also encrypted
But again, it's not military-grade encryption
Just a sideline by the way, if you see a VPN advert that's talking about military-grade encryption
Yeah, your browser already uses it don't buy a VPN if you just want military-grade encryption. Your browser already does it. Anyway
Point being there is a little bit of encryption involved, but it's not strong. It's not designed to be strong. As for how it stores
It's just files on your computer and then 775 who said they had an idea in the back of mind for AI
Integrations for example having a fairy guy that can listen in on command and help out with things like logics and other radio functions
Do it I would love it
Lots of people talking about getting documentation into games
And into news being quite interest and stuff like that is one way that it could be done
We're not quite sure how we're going to do it. But when we do do that, we'll see what's going on
I'd love it if there was a way to click on a logics node and it popped up the information about it, videos, pictures, guides, etc
You could even directly like spawn examples of how to use it in the world all sorts of cool stuff like that
I'll come up with some. With that I believe we're at the end of office hours. I'll go ahead and leave off here and
I will speak to you later. Bye bye