VTS P.O.G. can connect to vnyan props nodeless through OSC protocol. All 3d props pets exported in the ways we detail bellow are ready to go out of the box to be imported and used in VTS P.O.G. , you can find some of them ready to go over at our itchio page.
If you want to export your own, here’s the process for the two supported methods for vnyan prop pets.
Preping the project #
First you need to create a new unity project. We recommend unity 2020.3.48f1 for best compatibility with vnyan. Once done, import UniVRM-0.109.0 and Vnyan SDK in its more up to date version.
Once everything is ready, import your 3D pet to the scene.
Pet Blendshape link #
First method links blendshape in the model to the OSC data that VTS P.OG. sends directly. While more precise blendshapes will be acquired with this, it can be a bit blocky or choppy depending on the audio and connection.
To link the prop that way, search for Vnyans blenshape param link and add it to the pet.
In here we have two params to configure.
V Nyan Parameter Name will be the blenshape name that VTS P.O.G. sends to vnyan through OSC, by default you want M_a to be in here.
Blenshape Name will be the mouth blendshape rigged to the model, by default most of the time it will be either M_a or A. If doubtful check in unity the models blendshape list to see whats the apropiate.
Once done it should look something like this.
Pet Animation Param Link #
The other method links the unity animator to the OSC parameters, this gives a bit more control on how the mouth movement will look but by loosing some more precission on the mouth movement.
To use this method, first search for anim link in unity and add it to the pet.
In here, we have two fields to fill.
Vnyan Parameter Name will be the blenshape name that VTS P.O.G. sends to vnyan through OSC, by default you want M_a to be in here.
Animator Parameter Name which will correspond to an animation param which will be set next. Lets call it M_a for simplicity sake.
After this is done, create now two new animations called M_a and Mouth Closed in unity and drag and drop em on top of your pet. After this is done, go to the Animation tab in unity.
M_a clip will be our speaking animation. For this you will want to set up at least 3 keyframes (close, open, close) in a short time and making sure it loops. You can add more frames to it so that it has a bit more variation too.
And make sure you enable the animation to loop!
Mouth Closed should be left as is.
Once done, while clicking on the pet go to the Animator tab.
In here we will create a new float Parameter Called M_a , which will be what will be linking the animations and OSC data together later once exported.
To the right on the Base Layer we will set up the nodes so that Mouth Closed is the default animation and make connections back and forth to the M_a animation.
For the transition from closed to M_a we will set up condition to be greater than 0.1 and set up the exit time and durations as so.
For the transition back to closed, we will set condition to be less than 0.1 and exit time and durations as so
And with this pet should be ready to export as prop!
Exporting pet as prop #
With either of the methods ready, we just need to export the prop for vnyan by going to VNyan SDK > Export Prop
Give it a proper name and its ready to import to Vnyan!
Make sure your OSC port in vnyan matches the one in VTS P.O.G.
Then just import the prop and with 3D mode enabled in VTS P.O.G. you should see its mouth moving right away. No need for nodes!