You can add poses to furniture to make the item sittable. This will add a blue arrow icon to the piece of furniture which a user can click on and then the avatar will sit on the furniture in the pose/animation you have added to it.
EDITING IN PROGRESS - If you need to know how to do this, please contact Sinespace staff on our Discord channel
Once you have the piece of furniture in the scene, click on the furniture item in the hierarchy, then click Create and choose Create Empty Child.
You can rename this to 'Pose' or 'Seat' to make it easier. Making a child for this is so you can move the pose independently from the main furniture mesh to help position the avatar correctly once animation is added.
With the child/Pose highlighted, click on Add Component in the Inspector window and search for Seat Improved.
When you have added the Seat Improved component, you will see a green box show up on your furniture item and also see the Seat Improved script settings in the Inspector Window.
Under the Seat Improved script, you will see a few options.
This is the slot for the animation clip you want the chair to play when an avatar sits here. You can have a static animation or a dynamic animation.
These will override the animation clip you have placed in the Animation slot with a gender specific animation. There is a slot for male animation, female animation and also a slot for NPC. The NPC override will make the animation static.
These are optional settings to change the location of the action tag. You can override the location here and also add a collider to hide the tag. Note: You won't be able to see the tag in Unity. You will have to check the tag position by uploading the furniture to staging and testing it on the preview server.
If you are placing your SeatImproved component on something that moves, e.g. a swinging chair, you will need to check the Slot ID box, and then add in a Seat Slot ID number. You can choose any number you like as long as it is unique, for example something like 403.
These are optional settings where you can set up an action to activate or deactivate when the user sits down or stands up.
The top two, On Stand Up and On Sit are global, so this means any action will affect all avatars including your own. The bottom two, On Player Stand Up and On Player Sit trigger locally for yourself. This is handy for HUDs, buttons and other such things. In the image above, this local event setting is being used to active the player camera to focus on the browser screen when the user sits, and switch back to normal player camera view when the user stands.
For this chair, I am going to use the Animation slot as I want this to be used by both genders.
Find an animation you want to use for the pose that your avatar will use on the chair.
Once you have the animation, click on it in the Project window. It's Import settings will be shown in the Inspector Window.
Under the Rig tab, there will be a couple of sub headers:
The animation type will want to be set to Humanoid.
If you are setting the animation up to be used with the avatars of Space, choose Copy From Another Avatar under the Avatar Definition header.
Go to Source and choose the fitting avatar for the animation. If you are using gender specific animations, please select the right gender from the 2015 Female and 2015 Male avatars.
Click Apply.
Go to the Animation tab and scroll down to Motion. You want to set this to None so you can independently move the avatar when playing the animation under the Game tab.
Click Apply.
Once this is done, click on the child of the furniture (Or Pose if you renamed it), and drag the animation (Will be named Take with numbers after it) into the rightful animation slot under the Inspector Window. If you can't see the Take animation, you may need to expand the animation by clicking on the little arrow next to it in the project window.
After doing this, you can search for 'PlayerChar' in the search bar of your project window, and drag it into the hierarchy. You will also need to add a Plane mesh if you are using an empty scene as the player-character will fall through the ground of the Unity scene without it. To add a plane, click Create under the hierarchy and go to 3D Object and choose Plane. You will want to place this underneath the furniture you are using.
Once this is done, you can click on the Play button at the top of the screen. This will take you to the Game tab, and you will see the Space UI, your avatar and the furniture. The furniture will have a small blue arrow on it; Click on it and your avatar will 'Sit' on the piece of furniture with the animation/pose you have chosen.
If the avatar is not in the right position, click on the Scene tab, but do NOT stop the Game. You might have to right click the Game tab to minimize it if it is maximized. Click on the child/pose in the hierarchy. You can move your avatar along with the animation to fit the furniture properly.
Once you have moved it, you will see that the new placement is marked under the Transform header in the Inspector window. Right click the Transform header, and choose Copy. This insures you won't lose the correct placement when you stop the Game tab.
Stop the Game tab from running by clicking the Play button at the top of the screen. You will see that the Transform position is back to 0,0,0. Right click the Transform header, and choose Paste Component Values. This will add the coordinates you copied to put the animation in the right position.
The furniture is now set up with the animation/pose. You can bake this into your scene to use in your region, or you can add a virtual good script to the item and mark it as a generic item for sale in Space Store.
|