Locomotion

@andybak Sorry I wasn't sure how to ask. I think SDK is actually too broad a term because it seems like pretty much any tool kit of any kind can be called an SDK. I've been looking around trying to see if there is an interaction kit that can help create movement like the fly mode in Openbrush. I may have to stick with a more basic idea though. It's starting to look like movement like that is way beyond my understanding.
101 Replies
andybak
andybak3y ago
I'm still not entirely sure I understand what you want to achieve. Are you trying to add new ways for the user to move around inside Open Brush itself?
Cattasraafe
CattasraafeOP3y ago
Not in open brush itself. A friend of mine made an art piece in open brush. I've been working on importing into unity so it can be accessed as an application. The application is to provide a user with a free roam or on rails experience of the art piece. I've got the piece imported in. And I've got locomotion with XR interactive toolkit working. I assume it's possible to get movement like the fly mode in open brush to work with the XR toolkit. I was just wondering if there are any other locomotion assets or packages that may be setup for movement like that already. I've been looking for tutorials on creating flying movement, but I haven't found much. I'm not looking to have this done for me. Do you think it's possible to mimic the fly mode in open brush with the XR interaction toolkit? Or is there something better I could be using that might be more intuitive for some inexperienced like me. Also, I apologize for my poor communication. I never realized how bad I was at asking questions or trying to find information.
andybak
andybak3y ago
No - I think you've mentioned this before - I just have a terrible memory for past conversations! I don't much experience with the XR Interaction toolkit but mimicking our "Fly Tool" would be pretty simple. Just take the vector from the controller direction and add it to the current player position. We should consider adding some locomotion options to our official SDK/Toolkit I keep hoping someone else will contribute stuff like that!
Cattasraafe
CattasraafeOP3y ago
You think something like this could be done with visual scripting? I've practiced some C# but my code writing non existent.
andybak
andybak3y ago
Yeah but don't ask me how! I've not got my head around Unity visual scripting
Cattasraafe
CattasraafeOP3y ago
Who knows. If I play with this stuff long enough to figure out how to contribute maybe I can add a feature or two one day. lol
andybak
andybak3y ago
One idea that's floated around is for the Open Brush Toolkit to support camera paths - and use them for animating the user.
Cattasraafe
CattasraafeOP3y ago
Aren't camera paths already in open brush?
andybak
andybak3y ago
Yes but I don't think they export to the SDK/Toolkit
Cattasraafe
CattasraafeOP3y ago
Right, so you're talking a path system like I want to make, but built in and actually exports out?
andybak
andybak3y ago
Camera paths are already saved in the tilt file. Just need some code that reads them back into Unity.
Cattasraafe
CattasraafeOP3y ago
I see. Is open brush made with unity? If not is open brush still C#?
andybak
andybak3y ago
Open Brush is all Unity
Cattasraafe
CattasraafeOP3y ago
I hadn't look at that yet. I'll have to do some digging and see what steps I need to take to do what you said about matching the controllers vector and applying it to the camera. I was thinking you had told me that there are better options than the XR Interaction toolkit when working with locomotion.
andybak
andybak3y ago
There are other libraries but if you are a bit new to Unity/C# you should probably find the simplest and most "code-free" solution. I have an idea. There's a framework that might be ideal - I've just not had the time to try it out. One sec.
andybak
andybak3y ago
VR Builder - Open source toolkit for VR creation | Visual Scripting...
Get the VR Builder - Open source toolkit for VR creation package from MindPort GmbH and speed up your game development process. Find this & other Visual Scripting options on the Unity Asset Store.
andybak
andybak3y ago
Chat to @davidlahner - he is on Discord and would be happy to tell you a bit about it
Cattasraafe
CattasraafeOP3y ago
ooh yeah I actually saw this one. I wasn't sure how it work or if I could import the Openbrush sketch the same way. I don't see why it wouldn't though.
andybak
andybak3y ago
If you combine that with our SDK then it should work fine Our SDK handles the import - VR Builder handles the interaction
Cattasraafe
CattasraafeOP3y ago
Makes sense. When it comes to importing openbrush sketches into unity is there only one way? Which is using the SDK and pulling in the GLB folder into assets? I was trying to recreate a texture error I was running into. But when I made a new project and imported the art piece in again.. the brush stroke that was giving me trouble was still set to the new texture I had changed it to in the old project.
andybak
andybak3y ago
Sorry. Not sure I understand "open one way"? Ah - "only one way"?
pulling in the GLB folder into assets?
That's the recommended way
the brush stroke that was giving me trouble was still set to the new texture I had changed it to in the old project.
That shouldn't be possible. Are you sure it was a separate project?
Cattasraafe
CattasraafeOP3y ago
I'll have to double check. I was pretty sure I had started a totally fresh project. I started a new project loaded in the openbrush sdk brought the glb folder in loaded xr plugin management and enabled open xr Converted the main camera to xr rig loaded the project into HMD and the texture still shows that off white color it changed to when I messed with it originally. I need to reorganize some files so I'll scrap all these project folders and try again, but its still not giving me that same render error.
andybak
andybak3y ago
loaded the project into HMD and the texture still shows that off white color it changed to when I messed with it originally.
So forget about XR for now. You've got a glb that you modified in one project and the modification shows up in a brand new project? Exactly how did you change the texture?
Cattasraafe
CattasraafeOP3y ago
its this brush
No description
Cattasraafe
CattasraafeOP3y ago
I had changed it here under the shader option
No description
Cattasraafe
CattasraafeOP3y ago
in another project I had changed the material to Brush/DiffuseDoubleSided and it made it stop showing in pink at least.. but now when I load the sketch into a new project it just shows like it did when I changed it... but its still under the brush/special/DiffuseNoTextureDoubleSided
andybak
andybak3y ago
Did you copy anything from the old project to the new? Wait. Why is it showing in pink? Are you using experimental brushes?
Cattasraafe
CattasraafeOP3y ago
I don't think my friend used any experimental brushes. I had asked her about that and she said she just used what was available. No I haven't copied anything over.
andybak
andybak3y ago
weird. DoubleTaperedFlat is only used by "Pinched Flat" - which isn't experimental. So not sure why it was pink. That's usually "error loading shader" color. Unless of course it was just a pink stroke!
Cattasraafe
CattasraafeOP3y ago
No it wasn't a pink stroke. This was definitely the error loading shader pink. I'll have to delete my old projects and try and recreate some steps.
andybak
andybak3y ago
Send me an example glb and i'll take a look
Cattasraafe
CattasraafeOP3y ago
I'll try and make one. I've been meaning to load into open brush and make a sketch with a few of the brush strokes with different colors to see how they all load. I think I figured something out I think everything is loading from Openbrush. In my friends sketch she did use a grey pinched flat brush but it looked like a different color because of some of the brushes that were used over the grey brush. My only guess is that effect is not carrying over into unity. ok So detail that was not carrying over was the world light in Openbrush. When I changed the main light in unity to a similar color to what my friend has in open brush things are looking better. One thing I've been seeing though is details from certain brushes are not able to be seen from as far away in unity as they can be in open brush.
andybak
andybak3y ago
are not able to be seen from as far away in unity as they can be in open brush.
Have you tried changing the camera far clipping value?
No description
Cattasraafe
CattasraafeOP3y ago
I looked into render distance and some others. I didn't think of looking up the term clipping. I'll look at it now. What is the brush name for brush_CoarseBristles It's not the clipping plane. Some of the brush_Dots and brush_CoarseBristles only show up when getting close to them.
andybak
andybak3y ago
Google Docs
Open Brush: Brushes, Materials and Shaders
List Brush Name,Audio Reactive?,Manifest,Experimental Flag,Material,Shader,Script(s),Export Name,Potential Fallback,Prefab,Priority Bubbles,Default,Bubbles,Particle/Bubbles,GeniusParticlesBrush,Bubbles,-,GeniusParticle Cel Vinyl,Default,CelVinyl,Special/CelVinyl,QuadStripBrushStretchUV,CelVinyl,...
andybak
andybak3y ago
brush_CoarseBristles is... "Coarse Bristles"!
Cattasraafe
CattasraafeOP3y ago
lol. I wasn't sure since the DoubleTapered was the pinched flat brush Ok so I just made a new sketch in OpenBrush with some coarse bristles and dots brush.. and they aren't falling off the same way they are with the other art piece. Is there anything about a really complex sketch only loading at so much at once?
andybak
andybak3y ago
We fixed a bug in the beta recently. You could try making sure you're on the latest version and re-exporting?
Cattasraafe
CattasraafeOP3y ago
on open brush? I'm at the current steam version.
andybak
andybak3y ago
Beta or the regular version?
Cattasraafe
CattasraafeOP3y ago
Regular. Have not learned enough about the program yet to need to look at betas
Cattasraafe
CattasraafeOP3y ago
I reimported recently and was getting the same effect of the Coarse Bristles fading away on this project piece but not fading away on what I made recently to while testing.
OpenBrush
No description
Cattasraafe
CattasraafeOP2y ago
Hello. I was troubleshooting some with my friend, and we found a few things that might be interesting. We were messing with the "save selected strokes to model catalog and the Merge Brush strokes. The save selected stroke was producing a strange result and I'm not sure the merge brushstrokes was actually doing anything. What I have been noticing is anything new that I make seems to load fine in unity or works with the save selected strokes to model catalog. But strokes from this current project do not work right. If my friends sketch was started in tiltbrush before openbrush was a thing and was eventually finished in openbrush cause any issues?
andybak
andybak2y ago
There was a recent discussion about merge brush strokes having issues but I can't find it right now. Remind me what you're using: PC/Standalone? Beta/Standard release?
Cattasraafe
CattasraafeOP2y ago
Currently beta experimental, but a few days ago we were looking at the features on every version on steam beta, beta experimental, experimental, ect.
andybak
andybak2y ago
OK. Pretty sure the merge strokes bug is in the beta only but I've forgotten everything over Xmas so I'll have to retest it.
Cattasraafe
CattasraafeOP2y ago
How is the merge strokes supposed to work? Are you supposed to select the brushes then run it, or do you run it from the sketch menu without loading the actual sketch?
andybak
andybak2y ago
You press the 3 dots, choose "merge" and then it's supposed to add all the strokes from that sketch to the current sketch Found my write-up from before Xmas: https://github.com/icosa-gallery/open-brush/issues/350
Cattasraafe
CattasraafeOP2y ago
Ah so it's not meant to merge strokes together? Just bring strokes from one sketch to another?
andybak
andybak2y ago
Yes. It's "merge sketch". I see know that the wording is a bit unclear.
Cattasraafe
CattasraafeOP2y ago
We'll it actually has been working then. I just misunderstood it's use. The tool that may have been giving us issue was the "save selected strokes to model catalog" When you use that is it supposed to save a sketch as a whole model or are the brushes still individual when you save selected brushed to a model?
andybak
andybak2y ago
I'm hoping to retire that and replace it with a "save selected strokes (as a normal sketch)" feature so don't worry too much.
When you use that is it supposed to save a sketch as a whole model or are the brushes still individual when you save selected brushed to a model?
The former - which is why I'm not keen on it.
Cattasraafe
CattasraafeOP2y ago
Do you think an older project started on tiltbrush then later moved to and finished on open would end up having some sort of issue with exporting?
andybak
andybak2y ago
Exporting what? If you're talking about "save selected strokes to model catalog" then I can't vouch for that feature. It's experimental and hasn't had much usage so I don't know how solid it would be
Cattasraafe
CattasraafeOP2y ago
When exporting a sketch via labs for import into unity or blender. When I make doodles and play with imports. The things I made seem to work fine, but the models from my friends older sketch unity seems to not like. I thought it might have been a scene complexity issue. So we isolated and exported a dog model and even by itself unity seems to handle the strokes the dog is made of strangely with brushes fading away as you move away. We messed we with the clipping distances but the clipping does not interact with sketch in the same way. If you ever have time at some point I could screen share what I'm trying to explain. I may just be describing what's going on poorly
andybak
andybak2y ago
My broader point is that we probably won't spend time fixing the old "export selected strokes to model catalogue" feature. And if you're taking stuff from one sketch and bringing it into another then use "merge strokes" (with the caveat that the current beta has a known bug)
Cattasraafe
CattasraafeOP2y ago
when I asked about an older sketch started in tilt brush. I was referring to the export feature in general unrelated to the "export selected strokes to model catalogue"
Cattasraafe
CattasraafeOP2y ago
Found out what was causing the course bristles to fade away.
No description
Cattasraafe
CattasraafeOP2y ago
It was the alpha cuttoff
andybak
andybak2y ago
Can you send me an example sketch that shows the problem (and some numbered "steps to reproduce" - this convo is quite long now and I keep losing track of where you've provided details!)
Cattasraafe
CattasraafeOP2y ago
Sure. Sorry it was so lengthy I might need help though. You seem to be way better at break things down than me. The over all issue (to my knowledge) was never anything to do with Openbrush.
Cattasraafe
CattasraafeOP2y ago
Every version when I used Openbrush and exported a sketch to get the GLB to import into blender. The course bristle brushes on this sketch would look like this
No description
Cattasraafe
CattasraafeOP2y ago
I was looking at the shader properties of the course bristle and found the alpha cutoff and turn it to zero. and now they are all showing up.
No description
andybak
andybak2y ago
One sec How are you editing the shader?
Cattasraafe
CattasraafeOP2y ago
what I see in unity to look like what I seen in Openbrush. The first picture is Openbrush the second is unity
No description
No description
andybak
andybak2y ago
are you exporting to a new project using the Unity Toolkit/SDK and then reexporting? I'm stuck at your "edit the shader" step.
Cattasraafe
CattasraafeOP2y ago
Yeah sorry you asked while I was making that one So I export from Openbrush using the option in the Labs menu
andybak
andybak2y ago
and then you open in the Toolkit/SDK? and edit the shader there?
Cattasraafe
CattasraafeOP2y ago
Toolkit/SDK being in unity?
Cattasraafe
CattasraafeOP2y ago
same as these?
Cattasraafe
CattasraafeOP2y ago
No description
andybak
andybak2y ago
yes ok. now i follow.
Cattasraafe
CattasraafeOP2y ago
ok unless I'm using an old version that's what I have,
andybak
andybak2y ago
it's fine. i just wanted to understand your broad steps Open Brush > Export GLB > Open using Toolkit
Cattasraafe
CattasraafeOP2y ago
Correct and Just the GLB folder is needed right?
andybak
andybak2y ago
yes
Cattasraafe
CattasraafeOP2y ago
Or is the folder even needed?
andybak
andybak2y ago
You just copy the glb into your unity project
Cattasraafe
CattasraafeOP2y ago
the .glb itself inside the glb folder? Or could I just copy over the contents of the glb folder in general if I wanted. I've been copying the whole glb folder over.
andybak
andybak2y ago
Just the glb. The toolkit will have copies of all the other files so you don't need them
Cattasraafe
CattasraafeOP2y ago
Ah do you think unity would render in the sketch differently without the other items?
andybak
andybak2y ago
no. they just aren't needed in this case they are only needed by other apps such as blender
Cattasraafe
CattasraafeOP2y ago
Ah I see how they are all packed into the glb now. I'm not sure I've hit the play button on the glb in unity yet.
andybak
andybak2y ago
they aren't packed into the glb as far as i remember - it's just that the Toolkit already has them
Cattasraafe
CattasraafeOP2y ago
I see. that was just my interpretation of what I saw here.
No description
Cattasraafe
CattasraafeOP2y ago
but yes Open Brush > Export GLB > Open using Toolkit>Edit Course Brush Bristle Alpha cutoff to zero
andybak
andybak2y ago
OK. Now I'm up to speed, what's the next part of your question?
Cattasraafe
CattasraafeOP2y ago
Getting what I see in OpenBrush to come close to what I see in unity
andybak
andybak2y ago
Earlier I thought you said the other way round. Which is "correct" for you? Unity or Open Brush?
Cattasraafe
CattasraafeOP2y ago
Oh sorry I may have mixed up words. From the start I've been trying to get Unity to look like what I see in open brush. Figuring out the Alpha Brush cutoff was the first step in getting close to that goal.
andybak
andybak2y ago
ok. and what's your goal after that? What will you do with the Unity project?
Cattasraafe
CattasraafeOP2y ago
my friend wants to publish the program as an interactive art piece that you can fly around in (similar to Openbrush) or be on a guided path. So the user can explore the art piece or be guided to parts the artist would like the user to see.
andybak
andybak2y ago
ok. so you will build an executable in unity that you will distribute to end-users? (or run your self at an event)
Cattasraafe
CattasraafeOP2y ago
Correct
andybak
andybak2y ago
Now - the screenshots above showing differences between OB and Unity are quite complex. There's probably multiple reasons for the differences and you'll need to tackle them one at a time. It would be helpful if you could DM me a sample .tilt file so I can see for myself and offer some suggestions
Cattasraafe
CattasraafeOP2y ago
Ok. I will have to talk to my friend about that. My friend is ok with me showing screen shots or even doing screen shares, but does not want me to give the file out.
andybak
andybak2y ago
I'd rather not have the whole file. Just a small minimal sketch that shows the issue clearly
Cattasraafe
CattasraafeOP2y ago
Ok. I will do some doodling and see if I can recreate what I'm working on and go from there. If I can't I'll see if my friend is ok with me sending small parts of the main project.
andybak
andybak2y ago
Tell him we often need .tilt files to help diagnose issues. But if you DM them then I won't ever pass them out.
Cattasraafe
CattasraafeOP2y ago
I'm sure its alot easier that way especially not having any kind of communication barrier. Not sure I've said this enough, but thank you for helping me with this troubleshooting.
Want results from more Discord servers?
Add your server