Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Learn how to get started with the Sinespace SDK
A manual for the Sinespace virtual world platform
Sinespace is a virtual world platform for everyone. Create and customise your avatar to give it a unique look, make your home region yours by customising with thousands of furniture options or create your own content like clothing, furniture, regions and games for others to enjoy.
This documentation is split into sections; there are sections for the Sinespace Viewer, Sinespace SDK, Curator Dashboard, Grids and Templates. Each of these sections has an Overview or Basics page. It is advised to read these first before diving into the subsections.
The documentation is easy to navigate, but we have added in a few highlights here and there to make it easier for you to spot things that might need extra attention. Here's how this documentation describes highlights:
A green highlight is used for best practices.
An orange highlight will inform of something that might lead to an error or confusion.
A red highlight is a critical message - Read with special care!
Find the information you need below:
If you want to set up NPCs to show off your clothing brand in Sinespace, find the Outfit ID and attach it to an NPC statue.
The outfit ID is the number at the end of the outfit name in the Outfit window –
Note the outfit ID number down for the outfit you want on your NPC. In Unity, add this to the Player Outfit ID box on the NPC statue component, then upload the NPC like you normally would.
How to change various settings in the viewer
There are quite a few settings you can change on the viewer; You can change Graphics, UI, Controls, Sound, Misc and VR. You can access the Settings from the Settings button on the login screen or from in-world via the Settings icon in the bottom right.
Under the Graphics settings you can choose from our graphics presets; Fastest, Fast, Medium or Quality. These are fast ways to adjust the overall graphics quality to suit your system.
We have also included Advanced Options, so you can adjust certain graphical components individually, such as Bloom, Depth of Field and Quality lighting. Disabling these can improve your framerate but at the cost of visual quality.
The UI settings allow you to change the size of the interface. You will need to restart the viewer for the scaling to take effect.
The control settings allow you to change certain control aspects like 'Click to walk' or 'Use Gamepad'.
You can also change the mouse sensitivity with the slider to change the look speed in-world.
Here you can change the volume for music, sound effects, voice volume and also change default devices like microphone, playback and webcam as well as the mic sensitivity.
Here you can clear cache, change the cache location and disable/enabled other options.
You can also change the framerate and toggle vSync on/off from here.
This is where you can enable VR, choose your preferred VR device, choose your dominant VR hand and change other options for VR.
Enabling or changing the VR device will require a viewer restart
All about the basics of the Sinespace viewer
Please see our system requirements for desktop and VR here.
To see all of our setting options see .
Here is an overview of our UI:
(image)
To edit your profile, change to full-screen or exit the viewer, click on the three lines in the top right of the viewer. For more info on each UI tab along the bottom of the screen, please see the following:
To move your avatar around, you will need to use these keys:
W = Walk forward
A= Walk Left
S= Walk backward
D= Walk right
You can fly using R to start flying and to fly higher, and use C to land, or use Pg Up and Pg Down and WASD to change direction. You can also enable the option to ’Click to Walk’ under Settings.
F1: Help
F9: Toggle UI
Ctrl+T: Toggle Chat
Ctrl+F: Toggle Friends
How to install our viewer on Windows, Mac and Linux OS
For Vista and Windows 7 please install Microsoft .NET 4.5.1 first.
After downloading the viewer installer for your respective OS, you will need to install it.
Find the Sinespace_Windows_Installer.exe in your Downloads folder.
Click on it to start the installation process.
On the Setup Wizard, click Next.
Review and accept the License Agreement.
Find the Sinespace_Windows_Installer.exe in your Downloads folder.
Click on it to start the installation process.
On the Setup Wizard, click Next.
Review and accept the License Agreement.
Unpack the viewer.
From inside the viewer directory, run sudo ./install.sh to install. Depending on your desktop file manager, you may also try right-clicking this file and running it as root/admin.
Run sinespace to launch the viewer.
All you need to know to get started with the Sinespace viewer
The Sinespace viewer is needed to get into the Sinespace virtual world. Our viewer runs on Windows, Mac, Linux, VR, iOS and Android. For system requirements and how to install see:
System RequirementsViewer InstallationOnce you have downloaded and installed the viewer, you can choose to either log into to live or preview.
Logging into the live server will log you into our public server which all of our users use. The preview server is used by creators to review their items before pushing them to the live server.
To log in to our live server, all you need is the username and password you created on sign up through our website. You can also register for an account through the log in screen of the viewer, login as Guest or click on the 'Lost Password' button to reset your password.
You can choose whether to log into the default region which is our Welcome Centre, Home region or the last visited region under the 'Arrive At' drop-down.
To log into preview, you will need the username and password you created when signing up to Sinespace, and you will also need to have accepted our EULA terms on Curator. This is needed to be able to review your items on the viewer as a creator. Please make sure to check the ’Preview’ box to log into preview.
You're all set up to check out Sinespace! To learn the basics of our viewer see:
All about audio streaming in Sinespace.
This could be some software on your PC or tablet or phone. It could also be an external music player such as an iPod or a record player with it’s output going to your PC’s Line-In socket. So long as Windows is playing it then that’s what will be streamed.
Typically a DJ would use VirtualDJ software. This is free for non-commercial use.
That’s covered briefly how to play the audio.
Something needs to convert it to a true MP3 radio stream and then send it up to the internet. This is where software such as comes in. WinAmp should be set to “Soundcard Input”.
The other software needed is a DSP Shoutcast plugin, that converts the audio to be shoutcast compatible.
The DSP Plugin runs inside WinAmp, so install both - they are both free to use.
So we’re sending sound up to the internet, but where do we send it?
For this you will need to either use a free service (not recommended) or a paid service for a shoutcast radio stream. There are a few pieces of configuration information that you will get from here. This info will need to be entered into the DSP plugin above.
Crucially this will be login information to connect from your audio source (your PC’s sound) to your stream and the settings you need to play your stream in Sinespace.
There are a number of ways. Firstly the ability to set your own region to a specific stream is now built into the viewer. Secondly, you might elect to just buy a furniture prop from the in-world shop that is a radio stream player. Third option would be to actually script your own radio player inside Unity using our SDK and making your own. Format of MP3 stream URL. The general rule is:-
Stream ip address : port number such as 203.432.32.345:7589
203.432.32.345 is the IP address and
7589 is the port number
Separated by a single colon. (:).
Sometimes the url supplied by the radio streaming company might not always conform with our players but we can usually find a way around that by restructuring the URL.
Our viewer system requirements for desktop and VR
Minimum specifications:
Operating System: 64-bit Windows 10 or MacOS 10.92 (Linux available but unsupported).
Memory (RAM): 8GB or more.
Storage: 4GB available space (2GB installed size, 2GB cache).
CPU/GPU:
Please note that these specifications assume that Sinespace's graphic settings have been customized to the lowest available option ("Fastest," with the detail slider dragged to the far left, as pictured above). These recommendations also assume that the system is in good condition, with minimal background activity while using the application.
Medium specifications:
Operating System: 64-bit Windows 10 or MacOS 10.92 (Linux available but unsupported).
Memory (RAM): 16GB or more.
Storage: 4GB available space (2GB installed size, 2GB cache).
CPU/GPU:
High specifications:
Operating System: 64-bit Windows 10 or MacOS 10.92 (Linux available but unsupported).
Memory (RAM): 32GB or more.
Storage: 4GB available space (2GB installed size, 2GB cache).
CPU/GPU:
Some features may not work in MacOS clients older than OSX 10.11. We recommend updating to 10.12 or 10.13 if possible.
For users accessing Sinespace via VR-capable viewers, the following hardware is recommended.
Operating System: 64-bit Windows 10, MacOS 10.92, or Steam OS (Linux available but unsupported).
Memory (RAM): 16GB or more.
Storage: 4GB available space (2GB installed size, 2GB cache).
CPU/GPU:
STRONG DISCLAIMER: Your VR experience will be heavily affected by the region or event in which you are located.
Minimum:
Unity version: 2018.4.35 or better.
Sinespace SDK: Available through the .
How to create and edit outfits
The Outfit window is where you can create new outfits, edit an outfit or delete an outfit. You can open the Outfit window by clicking on the Outfit button at the bottom of the screen.
To create a new outfit, first go into the Outfit window by clicking on Outfit at the bottom of the screen, then at the top of the Outfit window, click on Create New Male or Female.
When you click on one of these, a pop up will appear asking you to name the outfit. Once you have named it, click on OK to create the outfit. This will give you a default avatar which is customisble. You can see which outfit is active by opening the Outfit List (the active outfit will be in grey).
The Copy ID button can be ignored; this is generally used for developers who want to use their live outfits to make NPCs.
Other than creating new outfits, there are a few more options along the top of the Outfit window.
Save As - You can have any outfit active, and after customising it, you can then choose to Save As to save it as a separate outfit with a different name.
Delete - This will delete the current active outfit. Only click this if you are really sure you want to delete the outfit, as you won't be able to restore it.
Outfit List - This is where you can see a full list of all the outfits you have made.
There are a lot of customise options for avatars in the Outfit window; You can change what clothing your avatar is wearing, choose a preset, customise the head and body, change the skin or use morphs. You can find all these options down the left-hand side of the Outfit window.
Choose an Installation Directory.
Choose a build - we recommend choosing the release build as this is the most stable. Preview builds are for creators and testers only; please report any bugs you find in the preview builds to our bug tracker.
Choose if you want to create shortcuts.
The Wizard will now download and install the viewer. This may take a few minutes depending on your internet speed.
When it's completed it will ask you to Launch Sinespace; you can launch Sinespace at a later date from the installation directory if you don't want to launch it right away.
Choose an Installation Directory.
Choose a build - we recommend choosing the release build as this is the most stable. Preview builds are for creators and testers only; please report any bugs you find in the preview builds to our bug tracker.
Choose if you want to create shortcuts.
The Wizard will now download and install the viewer. This may take a few minutes depending on your internet speed.
When it's completed it will ask you to Launch Sinespace; you can launch Sinespace at a later date from the installation directory if you don't want to launch it right away.
Ctrl+E: Toggle Explore
Ctrl+H: Go Home
Ctrl+Q: Toggle Quests (This shortcut may change)
Ctrl+I: Toggle Inventory
Ctrl+O: Toggle Outfit
Ctrl+S: Toggle Shop
Ctrl+U: Toggle Auction
Ctrl+`: Toggle Snapshot Mode
Ctrl+/: Toggle Settings
Alt+Left/Right Arrow: Move Chat Tab
F11: Toggle fullscreen
F12: Show avatar profile
Ctrl+M: Toggle Mail
Ctrl+Space: Start a search
Intel: Intel i3 at 2Ghz+, with Intel UHD Graphics 620.
AMD: AMD Athlon 3050U with Radeon Graphics, or better.
DirectX: Version 10.
Network: Broadband internet connection.
Additional: Microphone required for voice chat.
Quad core or better Intel i5, or AMD equivalent.
Discrete non-integrated GPU (may work with higher end integrated GPUs, such as AMD Radeon APUs).
DirectX: Version 10.
Network: Broadband internet connection.
Additional: Microphone required for voice chat.
Quad core or better Intel i5, or AMD equivalent.
Discrete GPU, nVidia GeForce 1050M or better. (GeForce 1650 recommended.)
If using VR, an NVIDIA GeForce GTX 1080 Ti or better is recommended. (See below.)
DirectX: Version 10.
Network: Broadband internet connection.
Additional: Microphone required for voice chat.
Intel i5-4590, AMD FX 8350 equivalent or better.
NVIDIA GeForce GTX 1080 Ti or better.
Software: Requires SteamVR (Windows, Mac, Linux) or Oculus (Windows).
VR Headset: Quest 1 or 2 strongly recommended. Support for Vive, Rift/Rift S.
Once downloaded click the next button and follow the install instructions. A standard install of Unity is all that is required to begin creating in Breakroom.
In order to start using Unity you will have first needed to register for an account using the Sign In button or visit the Unity website.
Create a new project by clicking the create button and give your project a name. Make sure the 3d button is clicked and click create to startup Unity.
Inside Unity locate the Asset Store tab located along the top of the main window. Type Sinespace into the search box and click on the Sinespace icon that appears.
In the new window that appears click on the blue download icon to start downloading the SDK. When the download has completed click the blue import button to start the install.
Click the install button at the bottom of the Import window that is displayed. You are not required to uncheck any of the boxes in this window as our SDK will determine what version of Unity you are using.
The next window to appear are the assets that are installed with our SDK. Click the import button again to continue the install.
Now that the install has completed click on the Sinespace drop down menu at the top of the screen and select install editor pack settings.
Click on the Sinespace drop down menu again and select sign in to sign into the SDK. As a new creator you will be required to sign up for a creator account, you can do this by clicking the create account button in the inspector window on the right. Fill out your details in the website that appears. If you have already signed up for our creator account you can login using your username and password.
Mac users are required to use the native mac uploader. To install the click the Sinespace menu at the top and select tools/install/native mac uploader.
How to install our SDK on Windows and Mac
To install our SDK you will need a compatible version of Unity, this can be obtained from https://unity3d.com/get-unity/download/archive. After download a base install of Unity will be fine, no special features are required.
For production use we recommend 2018.4 or 2017.4 current releases.
From inside a fresh Unity project click on the asset store tab, type Sinespace into the store search box and click on the Sinespace image. In the new window that appears click the blue download icon to start the download.
When the download is completed the download button will change to a blue import button, click the import button to start the install. On the window that appears in the top left click import again, you do not need to deselect any of the packages in this window as our installer will determine the correct Editor Pack install.
The install will now begin, Unity may ask to restart during the installation this is normal and you can proceed by clicking the restart button. The next window to be displayed are the assets that are included with our Editor Pack, click the import button once again to continue the install.
Now that the install is completed you will notice two new folders in your assets named Sinespace and Spacepack, you will also see a new drop down menu called Sinespace. To complete the install you will need to select the Sinespace dropdown and click on install editor pack settings, this will install the graphical settings required by our editor pack.
Mac users will need to install our native Mac uploader, in the Sinespace drop down menu select tools/install/Native Mac uploader.
In the Sinespace drop down menu select sign in, in the inspector on the right you will see a login panel, if you have previously signed up as a creator you can sign in using your username and password to complete the install.
In the Sinespace drop down menu select sign in, in the inspector located on the right click the create account button.
In the window that appears select a desired username, enter your email address and select male or female starter avatar, continue to fill out the form these details are not shared publicly. Once completed you can return to Unity and enter your username and password to start creating.
This component is used to animate a vendor console when the avatar comes closer.
In addition to animations and camera paths, there are a number of other components you to can add to speciflc points on the the timeline of a gesture, allowing you to create sophisticated and complex multi-person performances that can be deployed instantly anywhere.
Props might include;
Furniture;
space has both options of attachments and skinned clothing which you can use for uploading items and clothing to space.
There is a few differences between the two, and here are the details of the differences for you!
Attachments are just that- Attachments.
They attach to your avatar on a specific bone, for example, to the neck bone if you have created a necklace. You cannot attach the attachments to multiple bones.
Attachments also don't support deletion zones or advanced clothing features.
Attachments are much faster than skinned clothing performance wise, and they are much easier to upload and create as there are no rigging steps.
Skinned clothing are the normal full clothing items with rigging/weighting, and also with the addition of settings such as skin deletion and skin preservation.
Skin deletion is good to use if you have items of clothing which have areas cut out, such as trousers with lace up sides, or a dress with cut out side panels as you can select certain areas of the skin you want to delete.
Skin preservation works in a parallel way to the skin deletion - the areas of skin you select will be preserved.
This is good to use if you are also adding cloth physics to your clothing items as you can choose to preserve areas that might be shown when the cloth is moving around - e.g, you can choose to preserve the legs from the knee up if the cloth item is a skirt with physics, as you don't want the avatar's legs to disappear when the skirt is moving.
While making regions for Web GL, there are a few things you need to bear in mind. Web GL is specifically made for running applications in browsers, so it has a lower standard for graphics than the actual sinespace client. This means the regions you create will need to stick to a few rules to make sure it runs smoothly in the browser.
1. Regions need to be a light build. Anything up to 30MB is fine to run in a web browser.
2. Test the region to make sure it can hold 10-12 avatars without crashing.
3. Try to make objects plain, or add low resolution textures. Maximum resolution for normal textures needs to be 512x512. For billboards, this can go up to 1024x1024.
4. Use the Unity Legacy shader instead of Unity Standard shader.
5. Use baked lighting if you want to add shadows. These shadows will be static shadows, but this will stop lag in the region.
6. Special effects and animations can be used in the region, but keep the count to 4-5 of them.
If you already have an account with Sinespace you can sign up for creator access by visiting https://curator.sine.space/login, in the page displayed enter you username and password and click sign in.
Once signed in you will be shown our End-User License Agreement, read through and at the bottom of the page click the I Accept button.
Finally to complete the sign up process click on the settings button and fill in your creator details, these are not shared publicly.
You can now return to Unity and enter your username and password to start creating.
Weapons;
Costume accessories;
Particle effects;
Floating text;
Other complex compound objects, up to and including entire sets.
To add a prop to your gesture, add the "Create Object, Attach" component.
You can add as many separate props as you want, each with their own attachment points or location, and each with their own start and end times.
Drag the prop itself into the Object field.
Use Start Time and End Time fields to set when your prop spawns and despawns.
For single person gestures leave the Participant field as Initator.
For multi-person gestures you can select the Initiator or Recipient for each prop; so you can put a gun in both avatar's hands simultaneously, or set both their heads on fire...
Use the destination drop down to attach your prop to any bone on the skeleton of the avatar.
Place the buy button object/canvas here.
Place the avatar to animate here.
If unchecked, the animation will always play.
Enter the item ID here.
Once you have imported the sinespace Editor Pack into Unity, you will find a Gesture Preview Scene.
This scene contains two rigged character models and is set up to allow you to assemble and test your gestures.
Add only one gesture into the scene at a time.
The sinespace virtual world uses the Unity game engine and supports animation files imported as part of a 3D Model file (such as FBX). If you are used to using BVH files there are utilities online that can convert from one format to the other.
When you import an animation into Unity you will then add that animation to a game object. You can find samples for single person gestures and multi-person gestures in your project window. Go to Sample Art>Gestures and there will be two sample prefabs. Sample 1 is for single person and Sample 2 is multi-person.
That game object has scripts added to it, depending on what you are doing with your gesture.
Please see the page and page for more information on how to set gestures up.
Your gesture will also have a Virtual Goods Script attached, which allows you to add product information and submit the item to the store and / or your inworld inventory.
For more information on the virtual goods script;
The First Person Shooter system has been scripted by dotEnterprise, one of the Sinespace community developers, using the Sinespace SDK.
You can take these components and build your own projects with them. You can collaborate with other artists and developers building content with these components on the public Sinespace servers. They also provide a useful frame of reference for developing your own unique games and game components using Sinespace and Unity.
The open source FPS components enable developers and artists to create a wide range of highly customisable mutli-player shooting games and maps on the Sinespace platform.
They were created by Ulli at DotEnterprise and can be downloaded here; https://github.com/Sinespace/Shooter
Demonstration templates are also found in the Shooter folder in the Sinespace editor pack.
This video provides an overview of the FPS system and how it’s core components can be used to build an FPS in such a way that players have unlimited options for building, customising and sharing their own unique playable maps;
See the pages below for more information on the different components:
If you are selling several items in the marketplace, use this component to open the marketplace to your items.
Name or your brand
Tagline for your brand
Drop UI/3d text for your brand
Drop UI/3d tagline text for your brand
Select a category to be displayed
You can attach this component to an NPC or an object, in your region and it will open the Shopping window to your brand name and items can also be selected by category.
Brand Name Enter your brand name or brand name of the creator your wish to display. The shopping window will be filtered by this name.
Tag line You can set a tagline of your brand here.
Brand Text you can set a 3D or WorldUI brand name text by dropping the item here.
TagLine text you can set a 3D or WorldUI Tagline text by dropping the item here.
Category Select category you wish to display. If not category is select, all the items under your brand name will be shown.
The avatar animation effect is used for choosing the gesture or animation you want to add, plus other settings for the animation.
Add the animation clip here
sets the participant to initiator or receiver
Sets the starting time of the animation
Force sets avatar height to standard
Click on Add Component under the Inspector window, and search for Animate Single Avatar.
You can chose whether the participant is an initiator or receiver.
Drag the animation taken from within your Animation fbx file into the Clip field.
You can use the start time to delay the start of the gesture.
If your gesture involves interaction with fixed position prop (e.g. a door handle) or with precise two person gestures (e.g. shaking hands) you may wish to tick Fix Avatar Height. This will set the user's avatar height to the standard height for avatars in Space.
For details, check and .
This is a sub component for Avatar Effect component, to use this, a Avatar Effect component attach to the same object is necessary.
When preparing a clothing item for upload, you need to make some choices in where the item will go and how the item will fit on the avatar. This allows users to easily change clothes as well as mix and match outfits from different creators to create their own unique looks.
Space allows users to wear one item per clothing layer in each slot, on their avatar's skeleton. You set this up in the Clothing Item Settings component on the Item -> Clothing -> Fitting tab (see the pc below). When creating an item to be worn, you start with the skeleton, leave the second drop-down menu at the default of Rigged Clothing when creating clothing items, and then choose the clothing layer and which slot (or slots) to use.
Note: The Chest(include Upper Chest) and Pelvis slots are a little special, they control whether the avatar will be masked if the necessary slot is empty, i.e., male character need at least wear a pants and female need pants and top wear, or the avatar will be blue masked. So if you're creating some clothing items not covering the sensitive parts of human body, you shouldn't pick the chest, upper chest and pelvis slot, or it will cause the item against the Review Policies. Actually, you can leave those slots blank if you have no idea where to put your items on, especially for the attachment-type clothing items.
The process for setting up a multi-person gesture is the same as that for , BUT;
Enable the trigger in the Avatar Effect Script. Set the trigger radius to 4.
Users can initiate a two person gesture inworld with a visible circle around them.
Please note that no animation or other prop, audio file or VFX, will be launched on any individual's desktop until all the components of the gesture have arrived and can be launched collectively; guaranteeing that multi-user gestures play in sync for every participant and all other observers in the region.
To submit a range of items based on a single clothing mesh but with varied materials and textures, follow the steps on the ; BUT leave "Keep Material Always" unticked.
When you click the Prepare button you will see the materials removed.
Submit the item and you will see an ID is assigned to the item;
You can use PostZone(Post Processing)Component to add/change postFX in your region. PostZone can be applied to a part of the region or the entire region.
To create a PostZone, create an empty object in your scene, then click on add component, search and select PostZone.
If you want part of a region to have different postFX, then add a box collider to the EmptyObject with PostZone and size according to the area needed.
For example you can have different postFX for interior and exterior areas of a region by adding different postZone and sizing the collider to the size of the area.
This component/script is accessed from the Unity Component menu, then Avatar Effects then select "Color Filter - LUT".
You can add colour treatments to your gesture using the Avatar Effect LUT script.
When you import a texture to apply as a LUT you should apply the following settings to your .png file;
Texture Type: Advanced
Mapping: None
Import Type: Default
Bypass sRGB Sampling: ticked
Generate Mip Maps: Off
Wrap Mode: Clamp

Choose the relevant skeleton for your clothing item. Please note Space supports multiple third-party skeletons as well as its own native male and female models. Your item will only appear in the store or the wardrobe for a user wearing that particular skeleton.
Clothing Layer
Set the clothing item to one of five sorting layers.
Mesh deletion and tucking of clothing items is applied dynamically in accordance with this layer.
So if a user wears a pair of boots set to "Close Fitting" worn with a pair of pants set to "Skintight," the pants mesh will be deleted inside the boots.
If the user then changes to a different pair of pants set to "Loose Fitting" the same pair of boots will then be deleted inside the pants.
Slots
Tick the slots your clothing item should occupy. When a user puts on an item, it will automatically remove other clothing items that occupy the same slot. Be careful not to select slots unnecessarily; for instance, a normal jacket would cover chest and uppper chest. But selecting back as well would prevent users from wearing the jacket with a backpack or wings.
Below is a list of some of the clothing items that are typically worn on each clothing layer.
Stockings, Socks
Panties
Layering Lace Tops
Glitch Pants
Tattoos
Collar Shirt (tucked in)
Bodice
Bikini
Boots & Shoes (worn under pants)
Pants
Skirt
Shorts
Corset
Waistcoat/Vest
Shirts (untucked)
Coats
Boots (worn over pants)
Belts
Jackets
Below is a list of what slots some of the SineSpace creators are standardizing for different types of clothing. Following this guide can not only take away some of the guesswork, but also make it easier for your customers and friends to wear your creations with other parts of their wardrobe. This list will grow over time, as more designers discover what works best for them.
Neck - cravat, scarf, neckwear
Chest - shirt, waistcoat/vest, corset, jacket/coat
Back - backpacks, wings
pelvis - stocking, skirts, pants
right/left hand - gloves & mittens
right/left foot - shoes, boots

Drag the receiver animation here
Set the distance between avatars
Sets avatar height to standard
Fixes discrepancies in avatar sizes and shapes
Avatar Multi Animation is set up the same as Avatar Effect, but, you will need to set the trigger to 4 under the component settings.
Click on Add Component under the Inspector window, and search for Animate Multiple Avatars in the search bar.
Enable the trigger in the Avatar Effect Script. Set the trigger radius to 4.
Users can initiate a two person gesture inworld with a visible circle around them.
The component has a few settings:
Clip A / Clip B
Drag the animation takes from the fbx files for each of your two characters into these fields.
Clip A will play on the initiator of the gesture. Clip B will play on the guest.
Distance Apart
You can offset the characters here if you have not already defined the offset in via the root nodes of your models in your animation editing tool.
Fix Avatar Heights
If your gesture involves both characters engaging in a very precise interaction, for instance shaking hands, you can align them using Fix Avatar Heights. Gestures played by tall and short avatars may not look correct otherwise.
Start Time
You can delay the initiation of the animations.
IK Targets
You can select one or more nodes on the avatars and impose an IK through the animation to correct for discrepancies in avatar sizes and shapes.
You can get more informations and examples at here.
Attach the Avatar Multi Animation Effect Script instead of the Avatar Effect Script;
Clip A / Clip B
Drag the animation takes from the fbx files for each of your two characters into these fields.
Clip A will play on the initiator of the gesture. Clip B will play on the recipient or guest.
Distance Apart
You can offset the characters here if you have not already defined the offset in via the root nodes of your models in your animation editing tool.
Fix Avatar Heights
If your gesture involves both characters engaging in a very prceise interaction, for instance shaking hands, you can align them using Fix Avatar Heights. Gestures played by tall and short avatars may not look correct otherwise.
Start Time
You can delay the initiation of the animations.
IK Targets
You can select one or more nodes on the avatars and impose an IK through the animation to correct for discrepancies in avatar sizes and shapes.
For more information on on FBX settings and setting up gestures;
Fill out the product details in the Virtual Goods Script and submit your gesture to the staging server for review.
for more information on the Virtual Goods Script go here;
Create an empty game object in your project.
This component applies to any furniture item also.
Attach the Clothing Extra Pattern component to it.
Enter the ID of the mesh object submitted above to the Item ID field.
The default settings allow for one material per item. If you need more than one material per item change the materials index from 0 to how many additional ones you need for that item.
Select or drag in the materials for the base item. For example, if all your different versions make use of the same normal or height maps, you do not need to put them into the Extra Pattern component, they will get that information from the master pattern. If a map does change from one version to the next (a leather boot versus a metallic one, for example), then select or drag in the materials that are specific to that version in the element material slot/s.
Shader path - (do not touch this setting)
It is worth mentioning that clothing variations will inherit the Product Name, Description, and Price from the Parent Clothing Item.
Add the virtual good script and submit.
See here for more on the Virtual Goods script.
For multiple variations you can duplicate and modify this object in the project folder (ctrl + d), though do make sure to clear out the Resume ID if the item you are duplicating has already been uploaded to the server.
Please note that if you duplicate a virtual good that has already been submitted and has an ID, you need to wipe the ID in the Virtual Good script and change the product name before resubmitting as a new item.
Lets user choose Nominal gender
Lets user choose Nominal gender
Allows you to choose area radius
Lets you enter radius; this needs entry radius checked
Sets animation to be looped.
When you import an animation into Unity you will then add that animation to a game object (there are templates in the Gestures folder in your project).
That game object has scripts added to it, depending on what you are doing with your gesture.
click on Add Component and search for AvatarEffect in the search bar to add animation effects to your avatar.
The settings under this component include:
Participants- This allows to change from 1 to 2 participants
Is Gendered- This allows you to choose whether or not the gesture is gender specific
Nominal Gender- You can choose which gender is nominal, but it will still play with both genders.
Trigger:
Uses Radius: This means the gesture will use a radius of an area
Entry Radius: You can set the entry radius amount for the gesture area
You can learn more technical Details on Post Processing here.
Aniso Level: 0
For more information on creating LUTs, see Unity's documentation here; [1]
This component/script is accessed from the Unity Component menu, then Avatar Effects then select "Play Audio".
You can add audio effects, synchronised with other events in the gesture, using the Audio Effect component;
For more information on audio files and Unity see here; [2]
You can upload items as furniture items to place in room templates with the 'Edit Room' button. These furniture items can be dragged from your inventory and placed in your room. The items don't necessarily have to be furniture such as chairs, and they can be game items (like the Greedy Greedy table in the Welcome Center), a presentation tool or pieces of a structure which users can use to build a larger item (e.g. pieces of a race track).
If you want to make the furniture item sittable, you will need to add the SeatImproved component to an empty child object and parent it to the furniture. Here is a tutorial on how to do that.
1. Have the item object you want to upload as a furniture item in your scene in Unity. Once it is in the scene, click on it in the hierarchy.
2. In the Inspector window, click on 'Add Component', search for Furniture and add the 'Room Furniture' component.
3. Once added to your object, you can change the settings to best fit what the furniture will be used for. Tick the Place on Floor box for objects such as chairs, sofas e.t.c, tick Place on Walls for things such as paintings and tick Place on Ceiling for things such as ceiling fans. If you are uploading furniture which will be placed on the floor or ceiling, make sure that the Y axis (green arrow) in Unity is facing outwards. If you are uploading furniture which will be placed on walls, make sure that the Z axis (blue arrow) points outwards (away from the wall).
4. In the Collider section of the Room furniture component, drag in the furniture items main collider. This should be done for all furniture uploads. If your furniture item does not have a collider, you can add a box collider to it by clicking on 'Add Component' and search for 'Box Collider'. You can then adjust the box collider to fit around the item. There is also the option to 'only enable collider during editing'. This should be checked if normally the collider should be disabled, e.g for particles or lights.
5. Next is Transform Controls. In here, you can check the 'Allow Scale' box if you want users to be able to scale the furniture once they place it in their room;if not, leave it as it is.
6. In Appearance, there is the Icon Position. This is the position of the blue arrow (action tag) which hovers above the furniture for users to click on to enable them to sit on the furniture.
1. Underneath the Room furniture component in the hierarchy, you will see an 'Add Component' button. Click on this, and search for Virtual Good. Add this.
2. Once the virtual good component is added, under Basics, set the Type to Furniture then the Category to the appropriate category.
Fill in the rest of the virtual good component with the information for your item and then upload the item to Sinespace.
Sinespace has some powerful tools when it comes to creating clothing. You can create anything from bikinis, to skin tight jeans, to dresses, to trench coats. Check out the pages below and get creative!
drag animation here
name of camera in FBX
Name of the target camera
tweaks orientation of the imported FBX in unity
Tweaks position of the imported FBX in unity
Ignores rotation of FBX
Sets the start of animation
Sets the end time of the animation
You can apply animation from an fbx file to the camera using the Avatar Effect Camera Movement Script.
Click on Add Component under the Inspector window, and search for Camera Follow Path in the search bar.
This component has a few settings:
Legacy Animation Clip
Drag the fbx file containing your animation into the Legacy Animation Clip field. See below for FBX settings.
Child name
The name of the camera in your FBX file
Target name
The name of the camera target in your FBX file
Tweak Axis
Unity's orientation is;
Y+ = Up
Z+ = Forward
If your files export from your animation editor with a different orientation you can align to achieve your desired orientation using the Tweak Axis fields.
Offset / Ignore rotation
Use these if you want to make universaal adjustments the animation in the editor.
Start time / End time
Set the end time to the same as your animation file.
For more info and examples, check .
set the gender of the NPC
Set the name of the NPC
Sets the outfit of the NPC
Sets the material of NPC skin and outfit
Skips material change for outfit if set to 1
Sets the scale of the NPC
Toggles shadows on/off
Sets the culling distance
Disables culling
Select the animation NPC should Play
Sets random start position for the animation
This component is used to add props or objects to a gesture, for example, you could add in a chair to fall into after a crazy dance animation.
drag the prop here
Spawn time of the prop
DE spawn time of the prop
Set the participant type initiator/receiver
Choose the bone on which the prop attaches to
Click on Add Component under the Inspector window, and search for Create object attach in the search bar.
You can add as many separate props as you want, each with their own attachment points or location, and each with their own start and end times.
Drag the prop itself into the Object field.
Use Start Time and End Time fields to set when your prop spawns and despawns.
For single person gestures leave the Participant field as Initator.
For multi-person gestures you can select the Initiator or Recipient for each prop; so you can have them sit down simultaneously, or have them both drop on the floor.
Use the destination drop down to attach your prop to any bone on the skeleton of the avatar, for example, if you wanted an avatar to be holding a whip, you would attach it to the hand bone.
You can animate the camera in concert with the character animations in your gesture.
There are two options;
Avatar Effect Camera Script - create an animated path from a start and end point in Unity
Avatar Effect Camera Movement Script - import an animation for the camera from another application.
Occlusion Culling is a Unity function which can disable rendering of objects when they are not currently seen by the camera if they are occluded by other objects, which can save time from rendering.
You can get the details of advanced operation from the .
Here we only use a simple example to show you how to use this function in Sinespace.
This is the overview of a new created region. You can see there is a big cuboid and a small cube, where the small cube is occluded by the big cuboid from the view of camera, and the big cuboid is combined by 3 big cubes.
Now in menu, click Window -> Occlusion Culling to open the Occlusion window(In Unity 2018, it's Window -> Rendering -> Occlusion Culling).
There are 3 tabs in this window, object, bake and visualization.
In Object tab, you can set objects Occluder static and Occludee static. Occluder static means this object can occlude other smaller objects which has occludee static parameter checked.
Boots and shoes with heels require a little more work to set up properly in space. Fortunately, it's easy to do and you should be able to get great results in no time.
First things first. If you have not already familiarized yourself with the basics, check out the Clothing Basics tutorial video below.
Now that you're familiar with the basics, try your hand at a pair of high heels or boots with heels. After loading the Space avatar into the scene, add your boots. You should see something that looks like this:
It's okay, this is perfectly normal!
Notice in the picture that the boots are lined up so the heel of the foot is aligned with where the heel would go in the boot? That's important - your boots should be at an x/y/z position of 0, 0, 0 and be similarly aligned.
Here you can find the hair resource files for female avatars. All of the below resource file zips include a .PNG files for the patterns/textures, Unity package and an FBX. All of these hair files are owned by Sinespace. We will be adding to the list when more Sinespace clothing is released.
This a step by step tutorial on how to upload tattoos to Sinespace.
1. In Photoshop or similar, open the sinespace skin texture file you want to work on (male or female) from this pack -
2. Create a new layer (in Gimp make sure the layer is set to Transparency) and add your tattoo image to that layer.
3. Place the tattoo where you want it on the skin texture file
4. Save this layer as a .png or another file format that saves as transparent such as a psd file in Photoshop. In Gimp you will have to hit ‘File, Export’ then save it as ‘Tattoo_Chest.png’ for example.
5. Once saved, open Unity.
6. In Unity, create a new folder called Tattoo so you know where to find the png for the tattoo. You can do this by right clicking in the project window and hit ‘Create’ then ‘New Folder’.


This component is accessed via the Unity Component menu, then select Avatar Effects and then "Camera Follow Character".
Start position and Duration
You can set a start position and duration for the camera here.
Rails Type
Linear will move the camera straight from start point to end point. Rotation will move around the avatar.
Interpolation
Choose either Linear or Smooth.
Offsets
The offsets allow you to place the camera in relation to the avatar. Y+ is up. Z+ is forward.
So; X0, Y1, Z2 will put the camera 1 meter above ground, 2 meters in front of the avatar.
Tracking Options
The tracking options will animate the camera in line with the selected bone (Tracking target).
Tracking Target
Start / End Avatar - For two person gestures you can move the camera target from one avatar to the other.
Start - End Target - You can move the camera's focus from one bone to another over the duration of the gesture.
This component is accessed via the Unity Component menu, then select Avatar Effects and then "Camera Follow Path".
You can apply animation from an fbx file to the camera using the Avatar Effect Camera Movement Script.
Legacy Animation Clip
Drag the fbx file containing your animation into the Legact Animation Clip field. See below for FBX settings.
Child name
The name of the camera in your FBX file
Focus name
The name of the camera target in your FBX file
Tweak Axis
Unity's orientation is;
Y+ = Up
Z+ = Forward
If your files export from your animation editor with a different orientation you can align to achieve your desired orientation using the Tweak Axis fields.
Offset / Ignore rotation
Use these if you want to make universal adjustments to the animation in the editor.
Start time / End time
Set the end time to the same as your animation file.
Add keyframes at start and end
Before you import your fbx file it needs to contain two animated objects; a Camera and Camera Interest.
Please ensure that for both objects there is a keyframe at the start and end of the track;
Copy Field of View data to Camera Scale X
Before you import your fbx file please copy the field of view information into the Camera object's X scale track.
The Legacy Animation rig that sinespace uses to apply the animation to the user's camera inworld, does not pick the data directly from the Field of View track in your animation editor.
When you import your FBX file, open the Rig tab in the Inspector.
Set the Animation Type to Legacy Animation Clip.
Set Generation to Store in Root (new)
You can also use the option "static" in the right-top of the Inspector window. Set the objects Occluder static and Occludee static here:
It's same as the operation above. Choose the method which you prefer.
When you finished setting the objects occluder or occludee, you can bake the scene to calculate the occlusion data.
The default settings here normally is enough for most situations. If you want to adjust them, check the Unity documentation(link mentioned above) for the details of each parameter.
The occlusion volume will show after bake.
Then you can test the result in Visualization tab, if every thing is correct, when you focus on the camera, the small cube behind the big one will be invisible.
A region with occlusion culling is complete. Remember delete the camera for test before uploading your region.
Does it really work in Sinespace?
Yes, the occlusion culling in your region will be the same as the result you tested in Unity. It may be hard for normal user to find it out, so here I present some images from the developper:
The image above is the game view of the client. And switch to the scene view(image below), you can see the small cube is invisible in visualization mode, proving the occulision culling does work with Sinespace.
If we move around, to the side of one big cube, where we can see the small one, like in the image below:
As you can see, the small cube can be seen now, but 2 other big cubes are invisible because of occluded by the one close to the Avatar.
As a conclusion, if you want to make your region more friendly to low-end PC or webGL, mobile platform, use occlusion culling to your region -- just set the static objects occluder and occludee, bake it with default settings, that's all.
A summary of the objects and scripts in your scene which will notify you of potential issues.
Info
This shows how many objects, root objects and colliders your scene has. It will flag potential performance issues.
Script List
Space currently has a white list of approximately 120 scripts you can deploy in your regions. The script list shows all the scripts in your project, flagging the ones not currently white listed, which will be stripped out when submitted.
You can submit scripts to your account manager for inclusion in the white list. When the platform's SDK is released (scheduled for September 2016) the white list will be maintained in parallel.
Click this button to apply the Region - Platform Settings to the assets in your scene.
Once the automated compression has run you can manually adjust individual files before publishing. You might, for instance, apply 512 as a maximum image size for the WebGL version of your region but then revert one or more specific important textures back to a higher resolution.
Click this button to automatically assign every asset in the scene to one of four draw distance layers, according to their size; larger objects are set to be visible at greater distances.
The draw distance for each user is determined by the quality settings they select inworld;
(Performance setting range: Fastest < Fast < Simple < Good < Beautiful < Fantastic < Ultra)
Default = 20 to 75m
Important = 80 to 320m
VImportant = 240m to 900m
NotImport = Max 30m (60m in Beautiful~Ultra)
NotImportLandmark = Max 60m (120m in Beautiful~Ultra)
If you do not apply Sort into layers button everything will be left in default layer.
After applying you can manually review and modify;
Once your scene is ready to submit, click Automatic submission. This will create a zip file containing the region and will send it to the Space servers.
Here the assets will be unpacked and compiled for each of the different platforms you have specified. You will receive three automated emails; confirming the content has been received, has started processing and has been released for you to log in and review.
If you are making boots or shoes that have an exposed foot or open toe design, then you need to adjust a couple settings in order to make the Space avatar's feet fit. If your boots/shoes are an enclosed design, you can skip ahead to the Clothing Item Settings section below.
The first thing you're going to want to do is inspect the Space avatar in your Hierarchy panel. Open up the 2017 Female (or 2017 Male) object, and then open the Geo_grp sections by clicking on the triangle to the left. Now select the femalebody (or malebody) object.
Next, in your Inspector panel, click on the triangle to the left of Skinned Mesh Renderer and then click on the triangle next to BlendShapes to expose an avalanche of settings. These let you control various aspects of avatar positioning and shaping, and you are going to scroll to nearly the bottom of that long list to find three specific sets of controls, two of which are important for setting up your footwear:
Slider.high_heel accepts a value of 0 - 100 and affects the shape of the foot in the heel. A value of zero means no lift, and a value of 100 is an extremely high heel. Play with a setting here to find a number that works best with the shape of your boots or heels.
Slider.archoffeet also accepts a velue of 0-100 and affects the offset (or crunch) of the arch. A value of zero means no effect, and a value of 100 is severely crunched.
Make a note of the numbers that work best, and then you can change both values back to zero so that your Space avatar base is at its default values. Next, move on to the Clothing Item Settings below.
Now go to your boots/shoes object, and look in the Clothing Items Settings script. Click open the triangle for Extra Settings, and then click on the triangle to the word Heel to expose the Extended Heel Settings.
Make sure to tick the box that says Use Heel Settings.
If you have Morph Target settings from the section above, enter your Slider.high_heel settings under Heel Amount, and Slider.archoffeet under Arch Offset.
For Avatar Center of Mass, enter a number to represent how high the avatar should be raised above the ground. A value of zero is no lift at all, and may result in the bottom of the shoes or boots going beneath the floor or ground terrain. A value of .01 equals 1 centimeter, and a value of 1 equals 1 meter.
Once you've entered those settings that are specific to boots & heels, you can fill out the rest of the info in your Clothing Items Settings and Virtual Goods scripts as you normally would, and everything should look great in-world!
Rave Dancer
Striped Hair with Bow
Womens' Ponytail
Wavy Bob
Blunt Fringe Bob
Bob
Emo Bob
Womens' Emo Hair
Mobile / tablet - Android or iOS
WebGL - Chrome, Explorer, Firefox and Edge
Console - Sine Wave Entertainment is an accredited developer for Xbox and Playstation. The company is planning to release on these platforms later in 2017 after building a user interface for game controllers.
The default settings are designed to work for most regions.
Scene adjustment
Remove lightmaps / light probes / reflection probes
Removing lightmaps and probes can significantly reduce download speed but will also impact on the runtime performance.
More information;
Lightmaps Light probes Reflection probes
Static bake meshes / colliders
Ticking these boxes will prebake data before export. This improves loading performance but the region download will be bigger.
More information;
Static bake meshes Static bake colliders
Strip occlusion / navigation data
Occlusion data holds information about what areas are visible from other areas; it allows the viewer to make intelligent decisions about optimising a scene, however it can add several mb of size to both runtime memory use; and download size. Keeping it improves performance but can result in higher memory use in big scenes.
Navigation data is used for showing waypoints, and moving NPCs around in a scene; it uses a little bit of extra memory, and can be stripped out if you are under severe memory pressure.
Texture size reduction
Max texture resolution
All textures will be reduced to a maximum of the defined size for each build.
Texture reduction levels
Reduces textures all by a multiple of the original, in line with Max texture reduction above.
So; if your scene contains large textures at 1024x1024 and you set the max texture reduction to 512 those large textures will be reduced by a factor of 4.
If you then set Texture reduction levels to 1, smaller textures in your scene will also be reduced by a factor of 4; so a 512x512 texture, which otherwise would have been unchanged by the Max texture reduction, would also be reduced by 4, to 256x256.
If you set the Texture reduction level to 2 it will multiply the Max texture reduction scale by 2; so in the case above reducing the smaller 512x512 texture by a factor of 8, to 64x64.
Normal reduction levels
This will apply a further multiplicative reduction on normal maps on top of the reduction already applied by the Texture reduction level above.
Texture compression
Allow crunch / Crunch level
Allows JPEG compression to be added to all textures in addition to DXT compression. This will degrade the quality of your images as the compression is lossy; but significantly reduces download filesize. It does not improve runtime memory size except during loading. Crunch level runs from 0 (very lossy) to 100 (lossless).
Compress textures
This applies a further quality reduction, comparable to the quality slider in Photoshop when saving a jpeg file.
True color As 16
Interprets images stored as 'True Color' to 16-bit colors. This applies compression to the colors, without introducing the blurriness / artefacts that DXT compression can introduce; at the expense of being slightly larger. With this ticked, any image with 'True Color' compression, will be packed at 16 instead of 32-bit on this platform.
Audio settings
Force audio to mono
Converts stereo files to mono for that platform.
Audio bitrate
This is a percentage field. So whatever the bitrate of your original files, you can reduce by X% for each of the different platforms you publish to. For instance a set of 128 bitrate original files, left at 100% in the Standalone build can be reduced to 64 in Mobile and WebGL builds by setting this field to 50.
8. In the Unity hierarchy, right click and hit ‘Create Empty’or click on 'Game Object' and choose Empty at the top of Unity. You can name this empty object to something like ‘Chest Tattoo’ or whatever you want to name it as.
9. Make sure in Transform the position is set to 0,0,0.
10. Add the ‘Clothing Item Setting’ component to the empty object by clicking ‘Add Component’ and search for ‘Clothing Item Setting’
11.In the clothing item settings, choose the right base avatar skeleton (this will be the same as the skin texture)
12. Check the Tattoo and Makeup setting under the clothing item settings. Set the settings to these:
For the albedo, drag in the .png of the tattoo.
13. Once done, add the ‘Virtual Good’ component. Once this added, drag your empty object from the hierarchy to the project window to make it a prefab.
14.Click on the prefab in your project window, then fill in the virtual good information.
15. Set the Type in Virtual good Basics to Clothing, and Category to Clothing/Skin/Tattoos then fill in the rest of the virtual good information and click auto submission to upload to Sinespace. You can check on the progress of your upload at curator.sine.space
add the audio file here.
Sets the volume of the audio.
You can add audio effects, synchronized with other events in the gesture, using the Audio Effect component.
Click on Add Component under the Inspector window, and search in the search bar for Play Audio.
You can set the trigger time of the audio, for example, if you had chosen a high five animation, you want to trigger the time of the clap sound to the gesture animation. Effect is where you add the sound clip for the animation. Volume is used to set the audio volume.


Here you can find the hair resource files for male avatars. All of the below resource file zips include a .PNG files for the patterns/textures, Unity package and an FBX. All of these hair files are owned by Sinespace. We will be adding to the list when more Sinespace clothing is released.
Mens' Combed Back
When you upload a region, the region will go through the upload process. You can check on it's progress on Curator. When it's uploaded, it will be on our preview server.
Regardless of your subscription level, you can upload as many regions as you want to the preview server.
Once on the preview server you can preview your region. If you are happy with it, you can 'Send it to Review' via curator and it will be reviewed by our review team. This review is to ensure the maturity ratings are appropriate and that nothing in the scene could crash the servers or severely impair performance for other users.
If you have a Level 5 subscription you can bypass this manual review and push directly to the live servers yourself.
Your subscription level determines the number of regions you can release concurrently on the live server.
When you are logged in to any region you can click the minimap in the top right corner to open the Region info panel for that region.
If you are the region owner you can then modify the access permissions;
You can set the region to be public, limited to your friends or limited to specific individuals who you approve.
Any user can request access to one of your private regions;
You can approve or reject their application.
In the members panel you can see who currently has access to the region and you can modify their permissions on an individual basis.
Your subscription level sets the number of concurrent regions you can deploy on the live servers.
You can upload as many regions as you want to, and then enable or disable each region to set which ones are live at any time;
The NavMesh function in Unity can help you define your region where is walkable and where is not, so if you have an auto-walk function for player or NPC, it can automatically calculate the routes.
If you are interested in how to fully use the NavMesh function, please check official tutorial of Unity.
Here, we will only introduce some basic methods.
As an example, I created a region with some simple objects as obstacles.
First, Click the menu Window -> Navigation to call out the Navigation window(In Unity 2018, it's in Window -> AI -> Navigation). There are four tabs in Navigation Window: Agents, Areas, Bake and Objects.
The Agents tab is a place to record profiles for different parameters, when you attach Nav Mesh Agent component to a character, you can choose the agent profile you set in the agents tab.
The Areas tab is for define the layers of navigation. There is already 3 built-in layer: Walkable, Not Walkable and Jump. You can always add new layer if you need. The Cost defines whether the layer is hard to walk or not -- more cost, much harder. Normally, the Auto-walk will always choose a path with lower cost.
The Object tab is to set the navigation parameter for the objects in the scene. The 3 filters, All, Mesh Renderers, Terrains can help you to find the objects, and if we need to set an object walkable or not, pick the checkbox Navigation Static, then choose its layer. If you want set it jumpable, for example: jump across a gap between two platform, of jump down from somewhere high, you should also pick the Generate OffMeshLinks checkbox then choose the Jump layer for Navigation Area.
The Bake tab includes all detail settings here. The Agent Radius defines the width of character and how narrow the path it could pass. Agent Height stands for the height of character, so if there is a height limitation area, the character shall not pass. Max Slope defines the maximum angle the character can move on, and objects lower than the step height will not be considered as an obstacle. Drop Height is the maximum height which the character can jump off, and jump distance is a horizontal distance which the character can jump across.
When all the settings are done, you can click the Bake button to generate the NavMesh Map. When it's complete, the Scene window will display the Navmesh map.
The NavMesh jumpable with off-Mesh links will have an arrow and circle like this:
You will need a lua script to set an object moving through the NavMesh. Here, I'll show you a simple example.
First, create a capsule as the character we want to move in the baked scene, then add the component "Nav Mesh Agent" to it.
Choose the profile you set in the Navigation window, and set other parameters as you want or just leave it as default -- if you wonder each parameter is for, check the link of tutorial above.
Create an empty object and move it to the destination you want to set for the move. Change the object's name to something easy to find in script, like here, I name it as "dist".
Now add the lua script to the capsule. Add the "Scripting Runtime" component to it, then write the code like the image below:
The line "Space.log(agent);" isn't necessary, it's only a log to make sure the script is working.
You can add an clickable activator to active this script when click the capsule, or it will start moving automatically.
Here is a GIF which shows you the result of NavMesh move.
Cloth Physics needs a skinned mesh, follow the steps in until "convert to skinned". See for more detail on how to add clothing item setting component and to convert to skinned.
Attaching Cloth component
Once you have the skinned mesh attach the cloth component to the skinned mesh. To do so click on add component and search cloth and select it.
The Cloth component provides a physics-based solution for the simulation of fabrics. Following are the various settings you can adjust.
Stretching Stiffness: Changes the stretching stiffness of the cloth.
Bending Stiffness: Bending stiffness of the cloth.
Use Tethers: Apply constraints that help to prevent the moving cloth particles from going too far away from the fixed ones. This helps to reduce excess stretchiness.
Use Gravity: Should gravitational acceleration be applied to the cloth?
Damping: Motion damping coefficient.
External Acceleration: A constant, external acceleration applied to the cloth.
Random Acceleration: A random, external acceleration applied to the cloth.
World Velocity Scale: How much world-space movement of the character will affect cloth vertices.
World Acceleration Scale: How much world-space acceleration of the character will affect cloth vertices.
Friction: The friction of the cloth when colliding with the character.
Collision Mass Scale: How much to increase mass of colliding particles.
Use Continuous Collision: Enable continuous collision to improve collision stability.
Use Virtual Particles: Add one virtual particle per triangle to improve collision stability.
Solver Frequency: Number of solver iterations per second.
Sleep Threshold: Cloth’s sleep threshold.
Capsule Colliders: An array of CapsuleColliders which this Cloth instance should collide with. Sine Space avatars already have capsule and sphere colliders. You do not need to attach any more.
Selecting Edit Constraints will enter the editor into a mode to edit the constraints applied to each of the vertices in the cloth mesh. All vertices will be coloured based on the current Visualization mode to display the difference between their respective values.
Max Distance: is the distance a vertex is allowed to travel from the skinned mesh vertex position. The SkinnedCloth component ensures that the cloth vertices stay within maxDistance from the skinned mesh vertex positions. If maxDistance is zero, the vertex is not simulated but set to the skinned mesh vertex position. This behavior is useful for fixing the cloth vertex to the skin of an animated character - you will want to do that for any vertices which should not be skinned, or for parts which are somehow fixed to the character’s body (such as the waist of trousers, fixed by a belt). You can either select or paint constraints and set max distance. For example in a dress you don't want the top to move at all. The bottom below waist to move slightly and the near the legs to move most. You can select the distance for each part as shown below.
You can now add deletion zones and prepare the clothing. See for more detail.
Attach the virtual goods script and complete the submission process.
See for more details on the virtual goods script.
This component is used to trigger an event when user click the object with this component.
This can be used to open/close doors, lights and all the things you need to activate with a click.
Click the add sign then drag the item want to activate into the slot, then choose an action you need.
The Network options define whether the action will be synchronized with other users in the region.
If you want to control an object which has already got a network ID(for example, defines in Room Floor component), you should use that ID and pick "Override Network ID" to avoid conflicts.
Here is an example to create an object with Open/Close animations:
The component supports play 2 animation like this, to realize a door open/close by clicking it.
Note: you should untick the Loop Time checkbox for each animation or it will cause problems.



Two step quests are usually used for creating quests which give out Silver, making item hunts or giving gifts. Here we will be showing how to set up the quest and how to place a quest like this is a region you upload and also how to make the quest into an item you can upload as a virtual good.
The Unified SkinClothing HighEnd shader is a shader used for adding depth and substance to your clothing and skin (metal and tessellate feature). This shader is best used on high end machines.
You can use the basic Unified SkinClothing shader if you have a PC with lower performance.
To use this shader on your clothing and skin items, search for "Unified" in your Unity project window. Create a new material by right clicking in the project window and select 'Create>Material'. Drag the Unified SkinClothing HighEnd shader on to the new material and this will add the shader to the material.
Now to work with the settings. NOTE: The name of the shader will now show as Unified Clothing And Skin (Metal and Tessellate)








The clickable object is the object the user will click on to receive the gift or silver. You can use any item you want for this.
You need to set up this object so it can be clicked on. The clickable object needs a collider on it, and a Box Collider is fine most of the time for this. Click on the object, and then click on Component, Physics and Box Collider if it isn't already on the object.
Next thing you need to do is add the Quest NPC script to the object. Make sure you have the object selected, and click on Add Component, then search for Quest NPC and add it. This will add the script to the object.
You can check Hide Dialogue for hunts and gift giving quests. Hide Quest Bang can make the quest a little harder as it won't show the quest '!' mark above the quest items.
Next thing to do is add the Quest Designer Script to the object. Make sure it is selected, click on Add Component and search for Quest Designer then add it. The quest designer script is where you can set the settings for the quest.
Quest Name - This is where you will add the name of the quest.
Description - This is where a small description of the quest can go.
Type - This is what type of quest it is. The options for type of quest are:
Daily Quest - This is a quest which will be active daily, so users can complete this every day they log in.
Main Quest - This is a quest which will only be available once for the user to complete.
Side Quest - This is a side quest, which will only be available once.
Activity Quest - This is a quest used for activities, such as an in-world game or a hunt quest and can be repeated.
Temporary Quest - This is for a quest which will be temporarily available to users.
Quest ID - This is the ID of the quest. You need to click on Reserve to get the quest ID.
Quest Dependency IDs - You can ignore this for a two step quest.
Suppress reward and end dialogue - Again, we don't need this for this type of quest, but this just stops the reward from being granted.
Reward ID - This is the important thing to note: The reward ID is where you will enter the ID of the reward item. If you are making a repeatable quest, like an activity quest, leave the reward ID at 0, as this will give the user Silver. It will give Silver again after a cool-down period.
Fill in the quest name, description and type. If you want users to be able to get the reward only once, set the type to Main Quest. If you want the quest to be repeated, set it to Activity.
Click on the Reserve button next to the Quest ID to get the ID of the quest.
Click on the Open Canvas button. This will open the quest canvas, and this is where you will add all the details for the quest.
As said above, this is where you actually add the details for the quest.
As you can see, it has copied over the information from the Quest Designer. But, you still need to add steps to the quest.
Click on the Add Step button, to make the first step in the quest, and then click on the Add Step button again to add the second step. Move the second quest step box over so you can see both boxes.
In the first quest step box, copy the name over from the Quest Name box to the Name box.
In the Dialogue box, type out the dialogue you want the Quest UI to say, for example, if you have set it up to be a hunt quest, you might put something like 'You have found the Easter Egg!'
If you need to put a hint, you can, but this is usually used for longer stepped quests.
In the second quest step box, name it something like Give Prize, then go back to the first step box, and choose the Next Step to be the Give Prize step.
In the second quest step box, check the Supress Nav Line because the user does not need to go to a different location to finish the quest.
In both of the step boxes, set the Destination NPC to be the clickable object you made at the beginning.
You can do this by dragging the item from the hierarchy to the Destination NPC boxes.
Note: Leave the Reward item ID box at 0 if you want the user to get Silver. Leave it blank in both the Quest Designer and Quest Canvas for now if you want to reward the user with an item, as you need to get the ID first.
If you are making a quest which only gives users Silver, in the Quest canvas and Quest Designer, leave the Reward Item ID at 0.
If you want to give the user an actual item as a reward, you will first need to upload this item. Upload it as you usually would, for example, if it is an item of clothing, upload it using the clothing item settings and the virtual good component. If it is furniture, upload it as a furniture item with the Room Furniture component added to it. If you want it to be spawnable, set it as a Generic upload in the virtual good component.
Once the item is uploaded, take note of the item ID. This is the ID you will need to put in the Reward item ID box.
You only need to put the item ID in the Quest Designer, as it will automatically copy it over to the quest canvas.
To upload the quest as a virtual good which can be placed anywhere, you need to set it up as a Furniture item. To do this, add the Room Furniture component to the quest object.
You can set the placement of the item to be placed on the floor, walls or ceiling. Under collider, you want to drag the Collider of the object into Main Collider.
Once this is set up, you can add the Virtual good component. Under basic, set the content type to furniture, then give it a furniture category. Usually Decoration is a good category for this.
Fill in the rest of the virtual good, and then upload the item to Sinespace.
To upload the quest within a region, you need to only add the Quest Designer component to the quest clickable object. The Quest NPC can then be any other object in the scene. You can upload the region as you normally would, and the quest will be uploaded in the region.
In the top menu in Unity go to Space / Scene Settings.
This will add a Virtual Goods component to your scene. You will see a set of fields in the Inspector.
You can return to this component any time via Sinespace / Scene Settings.
In the Inspector set the Content Type to Region.
Add the name, description and brand identity of your region as you want it to appear in the explore and discovery panels of the Space platform.
You can add slots for as many different languages as you want to.
If you are uploading items that will be sold as virtual goods to other Space users, add the store icons and imagery here. It is not necessary if you make the region not for sale.
Tick the "Not for sale" checkbox will not put the region in the shop and you can set an amount of the maximum one player could own. 0 by default sets the amount unlimited.
Otherwise, leave it unchecked and you can set the price of the region. You can also make it enalbe for promotion, so you can offer a discount easily instead of modify the price then reupload.
If your region is going to be for sale, allowing other users to buy it as a template they can then customise as a private region for themselves, set it for sale and set your gold and silver prices.
For more infomation on gold and silver currencies;
Choose an appropriate content maturity level;
The creator information should show the details of the legal entity holding the account; whether that is an individual or a company.
Main Color - Sets the overall color of the skin.
Specular Color - Tints specular highlights of the skin.
Shininess - Sets the shine amount of the skin.
Rim Power - how rim lighting spreads around the edges of the model.
Rim HDR - Adds a boost to rim lighting, to enable it push into HDR values (i.e. Brighter than white) for bloom.
Normal Power - controls power of normal map (allowing them to be more/under represented)
Tessellation - allows DX11 Tessellation which smooth's geometry when camera is up close.
Specular Amount - Sets the specular amount.
Gloss Amount - Sets how glossy the skin should look.
Smoothness - controls specular highlights on PBR platforms (higher = tighter highlights), correlates with Standard shader.
Occlusion - controls ambient occlusion.
Loading color - For internal use. PLEASE IGNORE THIS SETTING.
But has the addition of a few more settings:
Height Map:
- Single channel (R) texture with height distances encoded on it, you can use a heightmap exported from your 3D package (either Quixel/Substance Painter or from Maya/Max/Blender) - should be derived from the same thing building the normal maps.
Use the height map for encoding fine details (such as for example complex textured fabrics) that are too small or high poly to justify using actual geometry.
Height:
- How much in meters to scale the model details by the heightmap. A value of 0.01 is 1cm. Typically you want 0.005 or so.
Height Offset:
- This will subtract this value from the heightmap values uniformly; you can use for tweaking the visual appearance. Note: resulting values less than zero are treated as zero.
Tessellation Edge Length:
- This defines the maximum size of a triangle on screen in pixels. If a triangle is larger than this many pixels on screen, it will be subdivided. Do not go below 15.
Tessellation Phong Strength:
- This defines how "smooth" the surface should become, values larger than 0.2-0.3 will often create weird balloons. Typical values range from 0 (no smoothing corners/edges) to 0.1 (slight smoothing)
NOTE: When using this shader, make sure to tick "Generate Lightmap UVs" and disable Mesh Compression on your model in the Unity Model Importer screen ( R ) = (R)
Start time of LUT effect
End time of LUT effect
Click on Add Component Under the Inspector window and search for Color LUT in the search bar.
This has the settings;
LUT Image- This is the image used for the LUT.
Start time- Start time of the image playing along with the gesture.
End time- End time of the image playing along with the gesture.
For more information on how to create the images for the LUT, please go to this page Gestures/FX
Mens' Ponytail
Mens' Side Fringe
Let Hair Rule
Treat Me
Mens' Bandana
Mens' Emo Hair









This page lists particularly common functionalities, and describes the best tool for the job with a focus on commonly used terms in other popular virtual worlds.
Use Mecanim, you can animate anything - objects, materials/textures, texture scrolling, skinned animation (including mocap imports). Can be used on any object (Clothing, Gestures, Regions, Vehicles, etc.) See
Cutscenes: Use either (built-in), or (supported paid addon)
Use Mecanim (see above) and one of:
World Space UI Canvas (Unity Feature) -- use to make buttons.
Check for details.
See:
- base NPC component
Music, see:
- for linked MP3/OGG files.
- for Shoutcast/streaming music.
SFX and Environmental Audio:
See Unity Manual, all parts work (including Reverb Zones and other audio filters and effects like low/high-pass, distortion, echo, etc.)
Use Shuriken, the
See:
See:
- intraregion teleports with UI
- intraregion teleports
- interregion teleports
See:
This is built-in. See
Use a UI Canvas (Unity, see ). Screen Space or World Space, can be embedded in regions.
You probably don't need these.
See:
You can upload your own avatars to sinespace to wear as a full body costume. This tutorial is only for uploading your avatar to Sinespace without custom animations .
1. Import your avatar into Unity. At the top of Unity, click on 'Assets' then 'Import new asset' and import your avatar. Make sure you have saved your avatar from the 3D software you use to model as a FBX file type.
When you click on this, you will see an Import Menu. Click on the Import button at the bottom.
2. Click on the avatar FBX in the Project window. Under the Inspector window on the right, make sure that the 'Rig' settings are as shown here:
Set the Animation Type to Humanoid.
Set Avatar definition to Create from this model.
If you are uploading anything other than a humanoid, please see the page linked at the top of this tutorial.
3. Drag your FBX into the hierarchy and click on it. In the Inspector window, you should see this:
Make sure that Root Motion is unchecked .
4. Drag the FBX back into the project window to make a prefab.
5. Once you have the prefab in the project window, click on it. In the Inspector window, add the 'Clothing Item Settings' component.
Pick the skeleton you want the costume to fit to.
Under clothing, change the clothing type to Rigged clothing. The fitting slots layer should be set to underwear, and Chest and Pelvis should be checked under the fitting slots.
Under Materials and Patterns, check the 'Keep Materials always' box.
Check the Costume settings by clicking on the circle on the left of the Costume name.
Under the Costume settings, there is a setting called Referenced Prefab. Drag the prefab of your avatar into the Root Template box here.
If you have LOD variants of your avatar, you can add them here.
6. Hit the Prepare button. If it is successful, the prepare button will say Re-prepare after a second.
7. Add the virtual good component underneath the clothing item settings.
8. Under Basic, set the information to this:
9. Fill in the rest of the virtual good component as you normally would to upload items and hit auto submit to start the upload process. If you are not familiar with the virtual good component, you can see our page for more information.
You can check on the upload progress at .
In the project folder called Gestures (search for "Gestures" in project search) you will see a selection of templates you can duplicate, rename and modify.
Highlight the "Sample 1 person template" file and click ctrl D to duplicate.
Rename your new prefab in the project window, then drag it into the scene.
If you don't want to duplicate the template objects, you can also create an empty game object and then add the "Animate Single Avatar" or "Animate Multiple Avatars" components (which will automatically add the two scripts required) and then you also have to add the "Virtual Good" component.
When you import the .fbx file containing your animation you need to rig it.
Click the rig tab in the inspector. Set the type to Humanoid. Set the Avatar Definition to Copy From Other Avatar Select the relevant sinespace avatar as the source (click the small circle to the right of the Source field.)
Now click from the rig tab to the Animations tab.
You should be able to see your animation in the preview window in the Inspector.
You may wish to crop or modify the animation using Unity's tools in this panel; see here for more information on Unity's animation tools.
Set the number of participants to 1.
If your animation is specifically for a single gender then check "Is Gendered" and select Male or Female from the "Nominal Gender" dropdown.
Leave the Trigger fields empty; these will be used with multi-person gestures.
Tick loop if required; e.g. for dances. The user will be able to stop looping in-world by exiting the gesture..
Other Avatar Effect Scripts
Drag the animation take from within your fbx file into the Clip field.
Leave "Participant" set to Initiator.
You can use the start time to delay the start of the gesture.
If your gesture involves interaction with fixed position prop (e.g. a door handle) or with precise two person gestures (e.g. shaking hands) you may wish to tick Fix Avatar Height. This will set the user's avatar height to the standard height for avatars in sinespace.
Once you have added the animation track to the Clip field in the Avatar Effects Script you can click play in Unity and see the gesture performed by the model in the scene.
Fill out the product details in the Virtual Goods Script and submit your gesture to the staging server for review.
for more information on the Virtual Goods Script go here;



This is in the middle of an update. Please ask for any help needed. Discord fashion and clothing.
This tutorial does require needing to be setup with the .
You can make clothing for your avatars in Sinespace by using any 3D software of your choice. You can use the avatars from the editor pack as a reference for your clothing; Just import it into your software and start making your clothing! Once your clothing is made, you can export the clothing as obj or fbx files, save it anywhere you want, and from there, you can setup your scene ready for importing your clothing item for upload.

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.
Animation
Gender-Specific Overrides
Action Tag (Optional)
Network Adjustments
Events
IK Targetting
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.
IK targetting is used to override the default placement of the hands and feet in the animation. This is particularly useful to make sure that the avatars' feet don't go through the floor e.g, if you have placed a chair on a rock and you don't want the avatars' feet to fall through the rock.
If you want to use IK targetting, you will need to create an Empty Object. Name it with reference to the IK targetting such as LeftFoot or RightFoot e.t.c Place the empty object at roughly the same height and placement as the avatars' ankle (this will make sure that avatars' of different height don't have their feet going through the floor). Drag this empty object into the Transform box on the IK targetting.
You can test the placement by clicking on the 'Play' button at the top of Unity and switch to the 'Game' tab. If the positioning is not correct, you can move the empty object until it is in the right place.
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:
Animation Type
Avatar Definition
Source
The animation type will want to be set to Humanoid.
If you are setting the animation up to be used with our default avatars, 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 .fbx files.
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 into the rightful animation slot under the Inspector Window. Remember to place the specific animations for female and male overrides if this is what you want to do.
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. When you hover over the furniture, a hand icon will appear. (In-world, this will be a blue arrow action tag). 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.
To upload the furniture item with the SeatImproved script, click on the parent object of the furniture item in the hierarchy, for example, a chair with the SeatImproved component on it. In the Inspector Window, click on 'Add Component' and search for 'Room Furniture'. Add this component and set it up. If you need to know how to do this, please see here. Once this is set up, you can then add the virtual good component to the furniture item, then drag this from the hierarchy into the project window to make a prefab. When you have made the prefab, click on it, and fill in the virtual good component. For furniture items, the Type must be set to Furniture. The category should be Furniture, then choose the appropriate category. Fill in the rest of the details on the virtual good component, then you can hit the Automatic Submission button under the Upload tab to start the process of uploading to Sinespace. You can check on the progress of your upload at curator.sine.space
Make sure you put the same reference avatar (male or female) you used to make clothing into your scene, just in case you need it for resizing your item or any other changes.
You will need to import your clothing item into the scene as well. First, go to Assets at the top of Unity, and then on the dropdown menu, choose Import Asset. This will open up your Explorer, and you can find your clothing item which you saved as an obj/fbx file. Once found, you can click on Import, and the item will be dropped into the main Assets folder. You can create a new folder and name it for organisation of your items.
If you are importing manually rigged clothing, make sure your mesh is exported with a Location of <0.0,0.0,0.0> and Scale of <1.0, 1.0, 1.0> and Rotation of <-90,0,0>, and to tick "Experimental" and press apply transform in Export Settings.
Open the folder you put your item in in Unity, and find the obj/fbx file. Drag this file into the Unity hierarchy. The Space avatar should be listed there too.
This should automatically fit your clothing to the avatar, but if it doesn’t, you might have to change the scale of the item under its Import Settings to 0.01. You can access the Import Settings by clicking the item in its Unity folder. If you used Blender to make the clothing, then the clothing should be the right scale already.
2. Click on the clothing item in the hierarchy, and under the Inspector window on the right hand side of the screen, click on Add Component and search for Clothing Item Settings and add it.
This will add Clothing Items Settings under the Inspector window. Please see the Clothing Item Setting page to see what each part of the clothing settings does.
Skeleton Selection
The skeleton selection needs to be set to the same skeleton you used for making the clothing, so if you chose the female Space avatar, you will need to set this to Base Female, and if you used the male avatar, you will need to set this to Base Male.
Fitting and slots
You can choose the layer of your clothing here and also set the slots for the item. If you set the layer to 'Underwear' for example, this means other clothing with different layers can go over the top of your clothing. If you set the layer to 'Outwear', other clothing can go underneath it. For items like jeans and t-shirts, 'Close Fitting' is a good layer to set it to.
You will need to check the slots of the item. The avatar slots are where the skeleton will be deleted under the clothing. If you have a t-shirt for example, and don’t want it to be worn with other items, you will have to check the upper chest, chest and back slots
Skin and Cloth Deletion
This is where you can add deletion zones, preservation zones, recalculate bounds and also change the settings for deletion and tucking, fitting and obscuration tuning.
Deletion Zone Settings - The deletion zones are used for selecting an area of the avatar which you want to be deleted under clothing. This can be used for certain types of clothing which need a little extra deletion underneath.
Preservation Zone Settings - Preservation zones are used for selecting an area of the avatar which you want to keep under clothing. This is useful if you have clothing with holes in, e.g, a dress with a slit or a corset with a lace-up back.
Materials and patterns
You will need to check this option so the material on your clothing will be visible when you upload your item. Please leave this unchecked if you plan on adding pattern variations.
Level of Detail
This setting is optional. If you want to include high, medium and low detail you can do so here by dragging in the game object containing the SkinnedMeshRender component. If you do not want to include these, the default LOD for your clothing item will be medium.
Automatic Skin Weighting
When you have hit 'Prepare' on your clothing item, you can come back to this setting and re-weight the item or change the advanced weighting settings.
Feet Settings
You only need to use this setting if you are uploading high heels and need to adjust the heel height and avatar placement.
Clothing Settings - Customisation tab
Here you can restrict other users from customizing your items.
To prepare the clothing, all you need to do is click the big blue prepare button to get the clothing ready to upload. This will add all of the weighting settings and all of your other settings.
A prefab of your item is needed for uploading. To make a prefab, simply drag your item from the hierarchy into the project folder.
The prefab will be selected already from dragging and dropping into the project window. With it selected, you will see it has all the same information under the Inspector window as the original obj/fbx file. Underneath the clothing item setting component, you will see another Add Component button. Click on it, and search for Virtual Good and add it. Adding the Virtual Good will allow you to set your clothing item as a salable good in Sinespace.
Once you have added the virtual good component, you can go to our Virtual Goods page to see how this component works. This is used to upload your item to Sinespace.
For clothing, under the Basic tab of the virtual good component, set the Type to Clothing, then choose the appropriate category. The rest of the virtual good component you can fill out how you want to.
To check on your items' upload progress, go to our curator site.
This tutorial shows you how to set up clothing and import clothing into Space.
You can make an attachment the same way as any other 3D model you would make and import into Unity, or you can use assets from the Unity Asset Store and import them into Unity to use as your attachment.
You can follow our guide here on how to import 3D meshes.
Setup your scene
The first thing you want to do is add your avatar skeleton into your unity scene. You can use either the default space avatars or your own avatar.
If you want to have the attachment available to all avatars and for it to look correctly placed, you might to need to repeat these steps a couple of times for each avatar.
Set up the attachment item
When you have the avatar in the scene, you need to also drag the item you are using as an attachment into the scene from your project window.
When it is in the scene, you will want to place the item in the area of the avatar in which it will placed, for example, if you have a necklace as an attachment, place the necklace around the neck.
If you have a sword, place the sword in the hand of the avatar. I have an eyepatch as an example, so I have placed it where an eyepatch would usually sit on the head.
With the item selected in the hierarchy, click on Add component in the inspector window and search for Clothing Item Settings. Add this component.
Once this is added, you will see the clothing item settings. For attachments, there are a few things you need to check for the attachment to work correctly.
Fitting
In the fitting section, you make selections for the type of item you are creating, the skeleton it uses, and the layer and slots it occupies (for more information about layers and slots, see this page). First, you need to select the skeleton. If the item is going to be rigged to the avatar and move with the body, then you need to choose the avatar skeleton that the item will be rigged to fit. Note: if you rig an item to a particular skeleton, then the item will only be available for users to buy or wear if they are wearing that avatar skeleton (ie male or female).
If your item will not be rigged to either a female or male skeleton and can be worn by either, then choose Unisex from the drop-down menu for Skeleton.
Next, since you are setting the item up as an attachment, you would choose Attachment from the drop-down menu for Type.
Now you must choose a clothing layer. There are 5 to choose from, in order of distance from the skin. SineSpace users can wear one clothing item per layer, per slot on their avatar (for more information about layers and slots, see this page). On the eyepatch example, we will use Close Fitting.
And finally, you select which slot the item will occupy. Whichever option is closest or most appropriate (and feel free to ask in one of the group chats if you are unsure). For a necklace or scarf you would choose a neck, you would choose head for a hat, and for the eyepatch we will choose face.
Materials
On the Materials tab, there is one choice to make. If the item does not have any different color variations (that is, if you are not going to make the item in different colors), then check the "Keep Materials Always" box. If you are planning on doing different color variations, then uncheck the box and see this page for more information once you have set up and uploaded your main item.
Attachment Setup
On this tab, you will select the bone on the avatar's body that the attachment will be attached to. This will affect the axis or pivot point on the body when the user wears and adjusts how the item is worn, so make sure to choose the bone that makes the most sense for that item. The empty form is pictured below.
You can either click the circular button at the far right and start entering the name of the bone you want to attach to (in this example, head) and you should see it appear on the list below.
Or you can open up the avatar in your project hierarchy until you find the bone you want to use, then just drag that into the slot.
Whichever route you choose, once it's filled out your form should look something like this.
At this point, you click on the Prepare button, and in moments the process will finish and you will see a message underneath "Attach To This Bone" that tells you what it's attached to. If you make a mistake or do not get the results you want, you can change this by repeating the steps above and clicking the Re-Prepare button.
After you have prepared the item, drag the item from your hierarchy into your project window to make it into a prefab. Make sure the prefab is selected for the next step.
To upload the attachment, make sure you have the prefab selected in your Project folder. Scroll down in the Inspector window until you see the Add Component button.
Click on it and Search for Virtual Good and click on the virtual good script to add it.
For more information on the virtual good component, see this page.
For attachments, you want to select the Clothing content type under the virtual good script. Fill in all the other details, and when you get to the Category option, choose the appropriate category.
Usually for attachments this will be under the Accessory sub category.
After all the details have been filled in, you can auto submit your attachment to space.
There are different ways to build regions in space.
You can build region assets in other software packages and import into Unity.
You can use Unity's mesh shapes and terrain tools, and you can grab third party assets from the Unity Asset Store.
All of the pages linked here all refer to the Scene Export Settings/Scene Save Settings component:
If you want to upload a region quickly, click on 'File>New Sinespace Scene' in Unity to instantly create a quick-start region.
You can upload any scene you create in Unity as a region in Space.
Once your scene is assembled you have two housekeeping tasks;
When you create a new scene in Unity it will by default have a light and a camera.
You need to delete the camera (by selecting it in the Hierarchy window and clicking delete).
You need to define where users arrive when they log in to your region; and what direction they are facing. To do this, once your scene is set up, from the top menu in Unity select Game Object / Create Other / Landmark.
OR;
If your Scene Heirarchy menu does not include Create other / Landmark, then;
Create empty object, then in the Inspector, add "Landmark behaviour" component.
This will place a new landmark item in your scene. In the Inspector window, set the type to Landing Zone and tick Spawn Point.
The in scene object is a yellow edged transparent plane which you can position anywhere in your scene.
The yellow arrow points in the direction your visitors will face when they arrive.
Be careful to position the landing zone slightly above the terrain; if a tall avatar's feet arrive below the terrain they may fall through.
This does not apply if you are using Multi-Scene Mode & Multi-Scene Editing.
You can have more then one scene in your region. 1 - Create a new scene in your current Sine.Spaces project. 2 - Double click the new scene in your Assets to load it into the Hierarchy. 2 - Design your scene. Be sure to save it. 3 - When ready to upload to the server click on 'Space' Scene Settings. 4 - Fill out the needed information, map pictures, and click Automatic Submission. To teleport between one scene to another see []
If you want to make your region as a home type, which could be edited by the users themselves, you need to attach a component which is called "Room Floor" to one of the item in the scene, usually the terrain or the object used as a field. With at least one room floor component, the region will show "Edit Room" button when you in it. You can add several Room Floor components to different objects, each floor can be shared to another user, gives him/her the authority to edit. In your inventory, you will also find an item with same name of the region. This is a home template. You can use it in "Edit Room" -> "Design" function, to change the whole set of a region. Of course you could set a price for it when upload, so other user can buy it in the shop.
Please see our page for more information on the Room Floor component.
Please pay attention that ALL the room edit info, like where you put some furniture is recorded in this "Room Floor" script. When you update your region, try not to remove this component in whatever situation. If you remove an old one then attach a new one to another object, the region update will cause all the users who are using your region template to find their region has gotten reset. If you must do that, try to let users of your template know this and be prepared for the overhaul updates.
If you want to add a day/night cycle to your home region/template, please do see our page for more information.
After placing your landmark, go to 'Sinespace' at the top of Unity, and choose 'Scene Settings'.
Follow these instructions on how to set the scene/upload settings: or watch this video tutorial:
For export settings, follow these instructions: or watch this video tutorial:
For platform settings, follow these instructions: or watch this video tutorial:
For how to submit your region, follow these instructions: or watch this video tutorial:
For more advanced settings, you can see our post zones page and also our lighting an interior page .
You can also see how Navigation Bake works , and we also have information on Occlusion Bake/Culling .
There are also some handy lighting tips .


The space platform provides virtual world creators with lighting tools that can create a huge variety of amazing, atmospheric spaces.
Mirage Scene Download
There is no one right way to light a region. Getting the right lighting can take a few attempts. This How To looks at the combination of different light types, both realtime and baked, in the Mirage demo scene.
Using the browser surface script in Unity, you can set up an object to become a media surface to stream content in Space from a URL.
Examples include using a music video URL for a club, and a training video streaming for business purposes.
The browser surface script can only be used for streaming from URLs in the desktop client.
For making a media surface, first make the 3D object you want to use as a screen.
In the inspector window, add the browser surface component to the item you are using for the screen.
This will bring up the browser surface script in the inspector window.
Width
Use to set the width of the screen.
Height
Use to set the height of the screen.
Aspect ratios for width and height:
1920x1080
1024x720
3840x2160 (4K)
Zoom
This sets how far the zoom is on the screen.
URL
Place the URL here for the video you want to stream.
Background Color
This is the background color of the screen, which is defaulted to black.
You can set YouTube videos to play in two different ways, depending on how you want them to be viewed.
You will need to use specific URL addresses for these two different functions.
You can choose to set the video to play defaulted at full screen. To do this, choose the YouTube video you want, and copy the video ID.
The video ID is the last component of the URL.
Then, to make the video default to full-screen, you have to use this URL: , and replace the VIDEOID part with the actual video ID.
You can choose to set the video to autoplay. To do this, first choose the YouTube video you want to stream,then set the autoplay button to autoplay then copy its' URL by righting clicking on the video.
Copy this URL into the browser script URL space, and then add '?rel=0&autoplay=1' at the end of the URL.
The media surface works well with screen-sharing applications that stream to the browser.
If you want to use screen sharing, you can use or to screen share.
The recommended shader for the screen is a custom shader made by Sine Wave.
Download the file above and drag it into any folder in your Unity project.
Create a new material in your project window by right-clicking and choosing Create>Material in the pop-up menu.
When the new material is in your project window, click on it, and you will see its properties in the inspector window.
On the shader drop-down menu, choose Sine Wave>Emissive Screen.
For the best results, turn the smoothness and metallic sliders down to 0.
When you use media surfaces, you are using them so you and other users can view the streaming content. You will need to set up a couple of things to make viewing the content easier.
The focus camera script is used to create a focus camera. This script needs a target to focus on, and this is where an empty object comes in.
You will need to create a 3D object with a collider attached to it and add the focus camera component to it by choosing the object and clicking on Add Component in the inspector window.
You need to place this 3D object close to your screen but not too close.
Search for focus camera, and add it.
Once it's added, you will see these settings in the focus camera script.
Target Camera Position
The target camera position is where you want the camera to focus on.
Depth of Field
If you check this, depth of field will be used.
To align the camera, first, you need to add a camera to your scene (delete the main camera and add a new one). To do this, right-click in the hierarchy and choose 'Camera'.
Now you want to move and rotate this camera so the screen is shown fully in the preview window. The easiest way to move the camera is to use the transform tool and set the position to 0,0,0, then move it until you are satisified with the view.
Here is an example:
As you can see in the preview, the whole screen is in the camera's view.
With the camera selected, in the inspector window, you will see the transform information. The transform information has a small settings button resembling a cog.
Click on this, and it will open up a menu.
In the menu, choose 'Copy Component'. This will copy the transform values of the camera.
Create an empty game object by right-clicking in the hierarchy and choose 'Create Empty'.
Click on the empty game object in the hierarchy, and go to the transform information in the inspector window.
As before, click on the cog, and in the menu, choose 'Paste Component Values'. This will paste the transform values of the camera to the empty game object.
Doing this will ensure that the same view from the camera is now on the empty game object.
Now that the empty game object has the correct view of the screen, you will need to set that empty game object to be the focal point of the focus camera.
To do this, click on the 3D object with the focus camera script attached. In the inspector window, you will see the focus camera script settings.
Where it says 'Target Camera Position, drag the empty game object from your hierarchy into this box.
It should look like this.
You can choose whether or not to use depth of field.
Choosing to turn on depth of field will blur the areas of the surface which the camera is not immediately focused on.
After you have finished with these settings, you can either add the surface into Space as a virtual good or use it in a region and upload the region.
Avatar Effect Camera script will allow you to add a start and an end for your camera.
set camera rail path
Sets camera in relation with avatar
Click on Add Component under the Inspector window, and search for Camera Follow Character in the search bar.
This component has a few settings:
Rail
Type - linear will move the camera straight from start point to end point. Rotation will move around the avatar.
Offsets
The offsets allow you to place the camera in relation to the avatar. Y+ is up. Z+ is forward.
So; X0, Y1, Z2 will put the camera 1 meter above ground, 2 meters in front of the avatar.
Tracking Options
The tracking options will animate the camera in line with the selected bone (Tracking target).
Tracking Target
Start / End Avatar - For two person gestures you can move the camera target from one avatar to the other.
Start - End Target - You can move the camera's focus from one bone to another over the duration of the gesture.
For more info and examples, check .
(Redirected from )
Since Editor Pack 7, all space users now have the ability to create a full body replacement costume. The costume allows you to replace the space avatar base mesh with any object you want, such as another human avatar, an animal or an object; You can even use particle systems as your avatar!
There are two parts to getting a costume working in space. You will need to first create or import your replacement costume, and then you will need to build an animator for this replacement costume. For the animations, you will need to create your own custom animations if you wish to use an object or creature as your replacement costume, but if you are using a humanoid as a replacement, you can use the default space animations, but more in detail on this later on in this guide.
The audio reactive components listen to the audio in your region (including music streams and audio clips), and can alter and animate objects, materials and lighting within the region in time with the
Racing game components are easily accessible for everyone. Racing game furniture items can be found in the Sinespace Shop. When in the Shop, click on the Furniture tab, then use the search-bar to look for dotEnterprise, and you will see all of the below items listed:
You will need all of these items to create a racing game.
A brief survey of various tools with humanoid avatar animation capability
There are a variety of solutions available for producing humanoid animations, both paid and free. We'll accumulate a list here, and hopefully everyone with the knowledge can pitch in with instructions, pointers and tips.
1. QAvimator ()
This older opensource application does one thing and one thing only, and does it fairly well. It allows you to pose an avatar model for keyframes on a timeline, and output the resulting humanoid animation as both a proprietary file and as a mocap motion file (BVH). Version 0.1.1.426 is what has been used successfully with Unity/Space so far.
This component sets an ATM interface for users to purchase gold in a region.
Add this component to an ATM mesh / NPC statue.
Any user that clicks on it will get the Purchase Gold interface
The interface loves to get clicked. Click and drag on the background in the scene to move the camera; click on body parts to select them for positioning. Drag the sliders around to change the position and orientation of whatever bodypart is selected.
When you start an animation, never use the first frame. The animator uses that for stuff. Otherwise, clicking to the right of a bodypart listed on the timeline graph will also select that bodypart, at that point on the graph. Any bodypart, once selected, can have it's current position and orientation changed via the sliders.
On the lower right, beneath the sliders, are various parameters pertaining to the actual animation clip, e.g., number of frames and frames per second. Adjust these according to your needs.
There is support for a range of props and prop workflows in this version, but these came a bit after my time and so I will leave it to you all or perhaps another time to describe that set of tools and techniques.
2. Blender ([2])
3. Poser
4. DAZ Studio
5. 3DS/MAX
6. Maya
7. AVASTAR
8. Photoshop
9. Mechanim

For region management, see this page: Region Management
Each light in a scene is either baked or realtime. Most light types (with the exception of Area lights) can be either.
Realtime influences inworld performance. Baked increases upload size.
In the Mirage demo scene the creator has used a combination of real-time and baked lighting.
When you create a new scene in unity it will have two light sources by default;
Directional light
Ambient light
Directional light
A directional light which is an object in the scene you can rotate like any other object.
The directional light will cast shadows in the direction you rotate it.
For the Mirage scene in this How To the directional light has been deleted from the scene. Directional light is often used as the source of sunlight in an exterior scene. In the Mirage scene shadows are cast by the point lights in each room.
Ambient light
The Ambient light has no source in the scene and is modified via Window / Lighting from the top menu bar.
In this scene the ambient source is the skybox; the color range of the skybox informs the color range of the ambient light in the scene. You can also use either a flat colour source, or three gradient options. The skybox option works well in the Mirage region but doesn't always look good, depending on the skybox itself.
You can add lights and light probes to a scene by clicking create / light in the scene hierarchy window. Leaving light in the name of all your lights will allow you to search for them in the hierarchy.
Area lights are used in this scene to project different tinted light from a plane into each room.
Area lights are very efficient but do not cast shadows. They are baked only.
The direction of the light from the plane is indicated by the yellow line.
The hanging lights in the Mirage scene are mesh lamps, on the walls and ceilings, with point lights attached to them.
Point lights emit light in all directions at once over an area visible as a wire-frame sphere.
The point lights in this scene are set to real-time and are the source of dynamic shadows on avatars and other non-static objects in the scene.
The hanging lights also have a halo component added to give a simple visual indication of their status as light source.
The Mirage scene also contains one baked point light, called “CenterLight.”
The creator used a wide area baked point light here because an area light on ceiling would have undermined the shadows cast by the other ceiling and wall lights in the scene.
Spot lights project light from a cone point and are used in this scene to illuminate the NPCs showcasing clothing items. They are set to realtime and project the shadows of the NPCs onto the back wall.
The Light Circle in the centre of the main room has meshes where the Standard Shader is set as Emissive; the mesh radiates light.
If the emission value is between 0 and 1 the mesh surface will appear to be a light source but does not actually emit light.
If the emission value is set above 1 for one or more color channel the mesh suface will emit a faint HDR light.
This can be very good for LEDs and small light piping. It also contributes to light bounce off shiny surfaces.
Emissive surfaces are only applied to static objects, and only for baked lighting.
NOTE
Emissive surfaces may generate some artefacts on materials with detail maps when viewed in webgl.
Light probes sample the combination of light sources in the scene and allow moving objects in the scene; most obviously visiting avatars; to be well lit by the baked light sources that otherwise would only have an impact on in the static components of the scene itself, via the lightmap textures.
You can lay out as many or as few light probes as you want. You should aim to place light probes at the places in the scene where different light sources obviously overlap.
In this scene the creator has focused on light probes at head height, with a particular grouping around the intense light conditions of the fashion studio.
NOTE
You can toggle the light probes to be visible nor not via the Gizmo menu above the scene window.
Once all your light sources and light probes have been laid out and all the static objects that will form the fabric of the scene are in place, your final act before submitting the scene to the server is to bake.
This function is a once click process, triggered from the Build button at the bottom of the Lighting window.
It may take a while for the bake to complete. It will take longer the higher the baked resolution you set. Unity defaults to 50 texels per unit but this scene was run at 20 and could probably have come down to 10 without any significant change in the result.
Once the bake has completed you will have lightmaps for your scene which will automatically be uploaded when you submit to the server.
The lightmaps are then blended with the textures in the scene to give you the look and feel you have created.
Baking probes
When you bake the scene Unity will also apply the light information to the light probes and the reflection probes in the scene.
You can also bake ambient occlusion and reflection probes as part of the same process.
You can create whatever you want to be your replacement costume, whether it be a unicorn, a wrestler or even a fire particle, anything is possible! You can create your own costume in your chosen 3D software and import it into Unity.
If you have made your own costume, you will need to export the costume from your chosen 3D software as an FBX file and save it somewhere for importing into Unity later.
If you have decided to download an object/model to use as your costume from the Unity Asset Store, then you probably won’t have to change the format of the model as most models on the asset store are already in FBX format.
Once the asset has downloaded, it will ask you to import the model into Unity. I am using a warrior princess model for this guide.
Make sure you have selected all of the assets by clicking on ‘All’ then click on ‘Import’. This will make a new folder in your Assets folder with all of the items needed for your costume.
Note: Please make sure you have the rights to use the model from Unity Asset Store.
After the above step of exporting from the 3D software as an FBX file, you can import this into Unity by clicking on ‘Assets’ and choosing ‘Import New Asset’ at the top of the Unity screen. Then choose your FBX file. This will place the FBX file into your Assets folder.
If your costume is a humanoid model, and you want to use it with the default space animations, you need to set it up to work with the animations.
Uncheck the ‘Apply Root Motion’ box. You can do this by clicking on the FBX in your hierarchy and finding the ‘Apply Root Motion’ box in the inspector window. If Apply Root Motion is greyed out, drag the FBX into your scene, then back to the project window to create a prefab.
Click on the FBX file you have imported in the project window, and under the Inspector window, choose ‘Rig’, and set the animation type to ‘Humanoid’. This will enable you to be able to use the default space animations for the replacement costume.
If you have chosen to use an object or animal as your replacement costume, or you want to create your own animations for a humanoid, you will need to create an animator.
Animators allow you to upload completely custom animations with the replacement costume.
Making A Controller for the Animator
Animators need a controller to work, so you need to create a controller. To create a controller, right click in your project window, and choose ‘Create’ then ‘Animator Controller’ and begin laying it out.
This is a complex step, but you can use the space editor pack controller as a template for laying out the animators; Just search for ‘Player Controller’ in the project window.
An animator controller transitions animations based on input variables - we let you insert a few variables in here (we may add more over time). Your animator needs to have all these variables listed - even if it does not use them.
These variables are:
Magnitude: runs from 0.0 to 1.0 - 0.0 is standing still, 0.5 is walking, 1.0 is running (approximately. These values may deviate from these general bounds.)
Angle: Runs from -1.0 to 1.0, 0.0 is not turning. -1.0 is turning left, 1.0 is turning right.
Vertical: The users key input - moving forward/back shifts this value from -1.0 to 1.0
Horizontal: As per above, except for the left/right keys.
Fly Vertical: 0.0 is not moving up/down in flight, -1 is descending, 1.0 is ascending.
Floor Angle: The normal angle of the floor - used for angling feet to match angled surfaces. Currently disabled.
Is Falling: On/Off - is the user in a falling state
Is Jump: On/Off - is the user currently jumping
Is Flying: On/Off - is the user currently flying
See example:
After setting the rig type to humanoid, you can go ahead and upload your costume. To upload it, first create a new empty gameobject in your scene. Click on the gameobject in the hierarchy, and click on ‘Add Component’ in the Inspector window. Search for ‘Clothing Item Settings’ and click ‘Add’. This will bring up the clothing item settings. Make sure to expand the ‘Costumes’ segment for the next step.
Costumes
For costume uploads. make sure the Costume setting is ticked under Clothing Item Settings. You do not need to use the "Clothing" setting as this will automatically be set.
Costume Settings
Under the Costume settings, there will be a setting called Referenced Prefab. Drag the prefab of the costume into this box to use this as the root template.
There is also LOD Variants listed here. You can put in a High Detail template and a Low Detail Template here. The default is Medium.
Finalise
Before preparing, you may need to rename this empty gameobject to something else, otherwise it won’t prepare. You can rename it by scrolling to the top of the Inspector window and clicking in the box right at the top. I renamed mine to ‘Warrior Princess’.
After renaming, click on ‘Prepare’. If it is successful, it will say ‘Re-Prepare’ after a couple of seconds. Save this as a prefab by dragging the gameobject into your project window.
Uploading
Now you are ready to get the costume uploaded to space. Click on the prefab of your costume in the project window. In the Inspector window, click on ‘Add Component’ and search for ‘Virtual Good’ and add it.
Set the content type to ‘Clothing’ and fill in the rest of the information as you see fit. You can pick any category of clothing for the costume, it doesn’t matter which category it is under.
After it’s all filled out, you can click on ‘Automatic Submission’ to get it uploading to space.
To upload a costume with custom animators, follow the upload steps as above, but check ‘Animator’ under the ‘Slots’ segment.
Scroll down to custom animations, and drag the animator controller you made into the ‘Controller’ slot.
You need to insert the names you used for the variables under the Parameters section into the various fields. These are case and syntax sensitive, so copy them exactly as they are.
Note: If you want to create new transitions in the controller, remember to uncheck the "Has ExitTime" in each transition. It is picked by default.
After doing this, follow the steps above to make your costume a virtual good with the virtual goods script, and your costume will get uploading to space.
For more information and tutorials on animations, see below:
This component can be attached to the 3D object you want to react to the music and then used to transform the 3D object in time to the audio.
You can transform the object within the component, so you can set the object to scale, rotate or move in certain directions.
To add this component to your object, select the object in your hierarchy and under the Inspector window on the right, click on 'Add component'. Search for audio reactive and choose 'Audio Reactive Transform'.
There are different types of bands for the different frequencies in audio. For example, if you want the object to move to only the bass of the audio, you will need to set the band min slider to 0, and the band max to 1. You can play around with the different values until it matches the audio band you want the object to move to.
The BPM Window Limit defines how many seconds to analyse for determining the BPM. So, for example, if you set this to 3, it will listen to the last 3 seconds, if you set it to 10, it will listen to the last 10 seconds.
The limit increase/decrease determines how quickly the values can change. If you have fast paced music and want the object you have to react faster to the audio, you can change the limit increase/decrease to 10,000+ to make the object move very quickly in time to the audio.
These determine how quick the reactions are, so you might want to set these values to your liking.
This sets the mode to BPM or Band.
This will change the objects position when checked. You can set how far the object will move and in which direction on the Z,Y and X axis in time to the audio.
This will change the direction in which the object is rotated when checked. Again, this will set which way the object will rotate on the Z,Y and X axis in time to the audio.
This will change the size/scale of the object when checked. The object can be scaled in any direction on the Z,Y and x axis separately, or you can set the same value in all of the axis's to make the object scale uniformly.
Audio reactive lighting will enable lighting to react to the audio you choose. Audio reactive lighting will work with lights which don't need to be baked, such as spot lights, directional lights and point lights.
To add the audio reactive lighting to your light, click on the light you want to use in your hierarchy, and under the Inspector window, click on 'Add Component'. Search for audio reactive and choose 'Audio Reactive Light'.
There are different types of bands for the different frequencies in audio. For example, if you want the object to move to only the bass of the audio, you will need to set the band min slider to 0, and the band max to 1. You can play around with the different values until it matches the audio band you want the object to move to.
The BPM Window Limit defines how many seconds to analyse for determining the BPM. So, for example, if you set this to 3, it will listen to the last 3 seconds, if you set it to 10, it will listen to the last 10 seconds.
The limit increase/decrease determines how quickly the values can change. If you have fast paced music and want the object you have to react faster to the audio, you can change the limit increase/decrease to 10,000+ to make the object move very quickly in time to the audio.
These determine how quick the reactions are, so you might want to set these values to your liking. When working with lighting, you might want to lower these values so the lighting colors blend quickly together.
For example, setting the min value to 0, and the max value to 0.1, will mean that lights react quickly to the audio and they also blend and change colors faster.
This sets the mode to BPM or Band.
When range is checked, this will change the distance range of the light. For example, set the min range to 1 and max to 5 for a small circle of light.
When this is checked, this will enable the light to blend the min color and max color you have chosen.
This will change the intensity of the light. The lower the values, the dimmer the light will be, and the higher the values are, the brighter the light will be.
Audio reactive animation will enable a 3d object of your choice to move to audio.
This component has a bit more to it than the other audio reactive components, but it is still a simple process to set up.
Click on your object in the hierarchy, and under the Inspector window, click on ‘Add Component’ and search for ‘Audio’ then choose ‘Audio Reactive Animation’.
When this is done, click on ‘Window’ at the top of Unity. On the drop-down menu, choose ‘Animation’. This will add an Animation tab at the bottom of the screen.
Click on ‘Create’ in the animation tab, and when the Explorer opens, save the animation anywhere you want to save it.
Now in the Animations tab, click on ‘Add property’. This will open up a menu with three options; Transform, Mesh Renderer and Box Collider. For audio reactive objects, the best option to choose are Transform and Mesh renderer.
Transform has more options on the drop down menu. To expand Transform, click on the arrow next to Transform. You will see three more options.
This will allow you to change the position of the object along the X,Y and Z axis.
This will scale the object along the X,Y or Z axis, but also let you scale uniformly.
This will rotate the object.
Mesh renderer is used for changing the object’s color or material. When you click on the arrow next to mesh renderer, this will show a lot of options, but they are all related to materials and color.
Choose from either one of the transform options or mesh renderer options, and then click on the ‘+’ sign next to the option.
You can add more than one transform option or mesh renderer option to make the animation more complex.
I have chosen to scale to my object, so I clicked on the plus sign, and two diamond shapes will now show in the animations tab on the timeline. These diamonds are key frames for the animation. The timeline is measured in frames and in seconds.
Click on the key frame at the beginning of the timeline, and you will that it highlights blue. To make sure that the scale values you put in show up in your animations, put the scrubber (red line) over the key frame.
There is another key frame at the end of the timeline. Drag the scrubber to this key frame, and then change the values of scale again. I am changing mine to 2,2,2.
If you want to add more keys, move the scrubber to the position on the timeline where you want to add it, and right click near the scrubber and choose ‘Add Key’.
The more keys you add, the more precise the movements will be.
Here is my finished timeline.
I have just made a very simple scale transition from 1,1,1 at the beginning to 2,2,2 at the end.
To make the animation work with the audio, you now need to click on ‘Window’ at the top of Unity and choose ‘Animator’.
When the Animator window is open, it will look like this, with the name of your object and the animation type in an orange box.
Click on your animation in the orange box. On the left hand side, you will see ‘Layers’ and ‘Parameters’.
Click on Parameters if it isn’t already selected, and then click on the ‘+’ sign underneath.
When menu appears, choose ‘Float’. This will show a ‘New Float’ directly underneath the plus sign.
Rename this float ‘Audio’, exactly as it is shown here, with a capital A.
Now, click on the orange box again, and in the Inspector window, you will see these settings.
You can change the speed of the animation if you want it to be faster or slower, but for this example I am keeping mine on the default of 1.
In the Multiplier setting, click on Parameter next to it, and this should automatically choose ‘Audio’.
The animation is set up to work with the Audio!
Go back down to your Animation tab, and un-check the record button, then click on your Scene tab.
Now you can click on ‘Play’ and see if the Animation is working with the Audio.
You will need to select the band you want the object to react to in the Audio Reactive Animation component in the Inspector window.
You can adjust the settings in the Audio Reactive Animation component until you are happy with the result.
Note: Audio Reactive Material is working in the experimental editor pack
Click the Scene Export Settings in the hierarchy, and in inspector, find the Scene Save Settings(Script) component.
You can set a splash image and an icon for the loading or preview screen, and also some other settings which affect the base environment of the region.
Here is some basic function settings which you can disable, like fly, run, and value like edge of bottom ,limit of vehicle speed. You can leave it as default if you don't have specific demands.
The Region Mode defines how your region content is received by your visitors; all at once before they log in, or progressively after they arrive.
Please note that except Single scene option, all the other options are still experimental, they may have strict limits to make them working.
Single scene
Single scene delivers the entire region to the user as a single file which downloads before their avatar spawns. For regions with download sizes up to 100 mb, Single scene is likely to be an acceptable download time for your visitors. Recommended sizes are around 30-50mb.
Multi bundle
Multi bundle is a form of dynamic loading control (content streaming). It splits your scene into smaller components that are streamed to the visitor progressively.
The multi bundle algorithm examines every root object in your scene and compares each with every other root object. It then bundles objects where there is more than 40 kbytes of overlap in shared data between them. These will be delivered to the client together.
How you group into root objects has a big factor on how we create bundles; for instance grouping all vegetation or grouping one particular building where users will arrive is a good practice.
Too many bundles (i.e. hundreds) will cause brief stuttering for the user while they are unpacking after loading. A reasonable target is 20 – 30 bundles. You can control this through the number of root objects in your scene when uploading.
Note on inter-object links: Inter-object links between objects loaded at different times may break in this export mode - if objects are linked together (e.g. proximity components) make sure they have the same root object
Requiring elements before scene is entered
When you are using Multi bundle mode you need to select one item in your scene, usually the terrain, and add a component to it called Manual Loading Control or Dynamic Loading Control. Then tick Required Download. This will ensure that the item is sent to the user before their avatar spawns. Without this there is a risk users will arrive and drop through space before your scene loads above their heads.
Additive scenes
Additive scenes is a Unity utility that allows you to organise a single region into multiple scenes. You can manually split content, creating a root scene containing occlusion, lightmap and navigation data, with additional scenes loading the content progressively. You will need Unity 5 multi scene tools to manually set this up. You should have your 'Scene Save Settings' in your root scene when packaging for upload - additionally the currently active scene at time of upload, is treated as the root scene.
For more information, see;
Note: currently the Additive scenes only support 3 scenes at most.
Single Scene Streamed
Currently still under testing. Closed to public by server side.
If your guest's device has less memory (RAM) than this, they will be given a performance warning when entering the region. This mostly affects clients logging in via WebGL or Mobile.
The world map allows users to search and browse regions. The Preview Image you supply will be used as a background to preview your region in the World Map. It will also be used as the background while the region itself is loading.
Preview image
The image you provide should be a .jpeg file. A 2:1 aspect ratio is recommended. Because the image is stretched to fit different screens it will distort slightly for some users.
Loading logo
The Loading Logo Image appears on top of the Preview Image and is not stretched, allowing you to present your brand logo or a region specific title without distortion.
The image you supply should be a .png file with 512x256 dimensions. When you import the .png file, ensure the Alpha is Transparency box is ticked;
The platform settings are some performance related controls for different platforms. If you want to make your region has a better support of some low spec platform, like mobile and webGL, you may need to limit some options to improve the performance.
Check here for more info about platform settings: Regions/Platform Settings
The reports show some statistic info and script used in this region, and the tools offer some little functions to optimize or control the files needed to upload.
For more informations about these tools and reports, check this page: Regions/Submission
The Racing Item Bundle will need to be unpacked before you can use the items. To unpack the bundle, click on it in your Inventory, then click on Use.
When you have clicked on 'Use' there will a pop up for the bundle.
Click on the 'Get' button, and this will add all the listed items to your inventory.
You will need a large region to set up a race track. You can either make your own race region in Unity and upload it, or you can use a home template from the Shop. If you are making your own region for the race track, you will need to upload the region as a home template. To see how to do this, please see our Room Floor Component page and our Regions page. To find a home template in the Shop, go to the Regions tab and you will see all of the home templates we have.
You can set up these racing items to make a lap race in your region.
You will need to place the Start Gate where you want the race to start. The racers will start on the side of the gate that has the green marks:
Once you have placed the start gate, you can then place the first checkpoint. This is the Racing Lap Checkpoint furniture item. This will need to go after the Starting Gate. Here is an example:
Each checkpoint you place down will be labeled Checkpoint 1 to begin with. You will need to change the checkpoint numbers for the race laps to work correctly. To change the checkpoint number, walk up to the checkpoint you want to change, and you will see a cube. Click on it.
When you click on it, it will open a UI. Here you can enter the checkpoint number.
Click on the Update button to update it to the number you entered.
You can place as many checkpoints as you want in your region, but if you want the race to be more than two laps, make the race shorter by placing less checkpoints. Here is an example of a small lap race:
Once you have finished placing all of the checkpoints, you will want to add the Racing Display.
The racing display shows a list of the racers, their lap times and how many laps they have done. You can click on Laps to change the number of laps and click on 'Start' to start the race. You can click on 'Reset' after starting the race to reset the times and laps. You can change the race type on the display by clicking on the mode switch button:
The modes are lap mode and race mode. Keep this on race mode for a lap race. If you click on the magnifying glass on the top left of the racing display, this will focus your camera on it so you can read it clearly. You can also see the information on the display by clicking on the yellow arrow:
This will open up the UI on the screen so you can see it while racing.
That is how to set up the furniture as a lap race; Please note that at the moment these racing furniture items only work with modular vehicles. We are currently updating older cars to this new system.







Sine.Spaces uses Deferred rendering. So you can use as many lights as you wish.
Space also implements dynamic environmental lighting and effects, using a custom skybox shader and day/night cycles.
Below is the Unity5 documentation for scene lighting. It's a bit long but worth the read.
Here is a video on the basics of light.
Baking your lighting will help with overall performance. 1. Make sure any objects that are not moving are set to static, you will find the tickbox upper right corner of the inspector when you select an object. 2. If the object moves in any way leave it unchecked. 3. Go to Window > Lighting Be sure the following are checked:
To have lights show on moving objects and avatars you will need to use Light Probes. 1. Create and empty game objects. 2. Add the Probe Drop Plane component. 3. Move this grid with globes to the top of your scene, the object is to scale it so it covers the overall area of your scene. So over buildings, larger objects. 4. Adjust the Density Setting in the Drop Plane so the globes are evenly covering your scene. If its darker add a bit more then if a scene is well lit. 5. Click Update and the drop plane will expand. Note: If you have additional dark corners, you may wish to add more manually using an empty game object attach the component Light Probe Group moving one probe into the dark area and one nearby in the lit area to reflect off each other. When you have everything set up click 'Build' this can take quite awhile a suggestion is run it overnight.
A zero-cost animation production workflow. This is FAIRLY EXPERIMENTAL, please do update if possible!
Animation production for Sine Space has been a bit of a neglected topic. Here is a fresh end-to-end process and toolchain for getting animations/poses together for your furniture, vehicles, and etc.
1. QAvimator ()
This older opensource application does one thing and one thing only, and does it fairly well. It allows you to pose an avatar model for keyframes on a timeline, and output the resulting humanoid animation as both a proprietary file and as a mocap motion file (BVH). Version 0.1.1.426 on Windows 10 is being used in this workflow.
We wont get into how to use QAvimator; it is simple, and if you've ever made a paper flipbook and used a computer, you should not have a problem working out how to use QAvimator. One note though regarding storage: It'll try and save to the directory in 'Programs (x86)' where the executable lives. That's bad. That way lies madness. Make a data directory somewhere and use it.
2. Blender ([2])
Blender is exactly the opposite of QAvimator in scope; it does *everything*. Including provide for the production of animations. However, blender is a highly complex tool with a steep learning curve and a user interface made by aliens from alpha centauri, so we will use it only for converting from BVH to FBX. Blender version 2.78 is being used in this workflow. Doing so is fairly straightforward: Click 'File->Import->Motion Capture(.BVH)'. You should not need to tweak any settings here; just import it according to the defaults. Next, export it as FBX (File->Export->FBX(.fbx)).
If you've never used blender, pay careful attention to the file saving dialog, it's a bit different. I'd recommend fiddling with it a bit and gathering some confidence that my files were being saved.
3. Unity/Space
Finally, we're getting the animation into Space. This is where the important tweaks come into play. The process is not unlike that of importing any other FBX, excpet for a few notable ddifferences.
First, you'll want to click 'Assets->Import Asset...'. This will take you into the file selector dialog; browse to your data directory (you did make one and use it, yes?) and select the FBX version of your animation saved from blender in the previous step.
Your FBX is imported now, but there are various tweaks that need be applied to get it into a proper working state for Space. First, click the 'Rig' tab on the import properties pane. Set the anim type as 'Humanoid'. Click apply. On the 'Model' tab, untick 'Use File Scale'. Click the Apply button. You should be set; there will be a folder generated in your unity project's assets named after the file you imported. Within that will be the clip(s) (animations). These should be ready to use in your vehicle furniture sits or animation controllers in Space.
Good luck and happy animating! ANIMATE ALL THE THINGS!!
Tutorials
We recommend following current game character modelling practices; specifically using PBR texturing tools and low poly models with a high detail normal map.
This brilliant set of four short tutorials are a fabulous start to learning how to create detailed clothing.
The Vlad outfit was created with a set of high detail models (totalling 1 million polygons) to create normal and tangent maps and a set of low detail models (totalling 12,000 polygons) for upload to the Space platform).
Tutorial
Watch the tutorial for creating detailed clothing here.
Tessellation shaders allow you to create multi-million polycount details across your model with almost no performance impact. They are fantastic at creating ultra-smooth surfaces that you can zoom in to as close as you like.
Upload a low poly, high performance model
And transform it inworld into a high detail, super smooth, high poly but low performance asset using the custom built Space tessellation shader;
Using tessellation shaders means you no longer need to sacrifice inworld performance to achieve a high quality product.
Tessellation shaders create dynamic multi-million polycount level of detail, controlled by camera distance. They use Phong Tessellation to ensure that hard edges are rounded by tessellation processes.
The phong strength setting has values of 0.1-1.0; 0.1 being the minimal smoothing, and 1.0 being the maximum smoothing. We recommend setting the phong strength to between 0.1 and 0.3 for the best results; higher values may introduce artefacts (especially when animating the model).
Please make sure your renderer is 'skinned' when adjusting these settings otherwise the values you set will look different in world.
Please paint red all vertices that run along UV seams.
Phong Tessellation can fail on UV seams where the vertices are not connected. This will create gaps in the mesh around UV seams.
Our tessellation shader has support for excluded zones - to exclude a vertice from tessellation, paint the vertex colour in your 3D modelling tool pure red (255,0,0). This will tell the shader to avoid separating the mesh on this area.
Best Practice – where does it make sense to to use tessellation and where to use geometry?
Tessellation height maps can introduce complex patterns that would otherwise require extreme polygon counts; such as fabric ruffles, distressed or wrinkled items. They work best with organic patterns that do not contain hard edges - unless they are slightly rounded.
As a guiding principal, set the Tessellation Edge to between 5-15. Higher is exponentially better performance (so 15 is 9x better performing than 5). Unless you are using a heightmap there should be no reason to go below 15 - as that will appear generally perfectly smooth.
This means no triangle with an edge shorter than 15 pixels will be created.
Setting the edge length shorter than this offers marginal visual benefits but may start to impact on performance. Avoid setting Tessellation Edge to 1!
Hard edged non-organic shapes should have a basic geometry rather than in tessellation - as bitmapping of the heightmaps can introduce undesired noise on the model.
Basic tessellation with smoothing is excellent for rounding off ultra smooth surfaces (think shoes and other elements which want ultra smoothed corners).
Unified Shader Page
Space supplies a custom shader to handle the tessellation on clothing items which is available free in the Space editor pack. Search for Unified Clothing & Skin (Metal and Tessellate) and add this shader to you clothing material.
Use skin weight transfer if you have non-skin tight clothing (dresses, baggy items). Then reweight by hand as appropriate.
You can use our automated skinning system built into the clothing component if your clothing item is skin tight.
PBR Info
PBR allows you to accurately simulate a huge range of materials. It carries through energy conservation, so avatars will look better across a wide range of lighting environments, maintaining a realistic look throughout.
Our PBR maps follow a Metalness/Smoothness workflow (based on the Unity 5 Standard Shader) - however as a general note, Specular/Smoothness workflows work just fine too.
Software for PBR Textures
These are the tools we recommend for creating PBR textures.
Marmoset is used to preview the PBR texture in Photoshop as you can't preview in Photoshop, but you can edit in Photoshop and see the results update instantly on your model in the Unity editor.
For adding additional patterns to your clothing, see Creating Clothing Patterns for more details.
Please notice there are two versions of script for Vehicles: the old ones are the scripts like "car physics", "car vehicle", which are obsolete; the new vesion is one script called "Modular Vehicle", it combines all kinds of vehicle together(land, hover, boats) so you can adjust this one script for all types of vehicle settings. The new version resolved many bugs of the old version, so we recommand to use the new one. We will still keep the tutorial of old version in other pages, you can always check them if you need.
Note: This page is still updating so there may be some place incomplete during this moment.
To start create a land vehicle, you should find yourself a vehicle model. To prepare a model for vehicle, whether you want create one using MAYA or 3DMAX or Blender, or find a model from Unity asset store, there are somethings you should pay attention to: Make sure the wheels are splited from the vehicle body. Some vehicle in asset store has a single FBX file combined all the things together, which makes the next steps quite impossible if we don't do something to the model.
As an example, we choose a simple low-poly car in the asset store(which the server can proceed faster) like this:
You can always choose a vehicle more realistic and complex, but there may be more details need to adjust on your own.
Preparation: Create and organise the objects for the vehicle like this: Carbody is the body of the car, not including the wheels. Seat is an empty object here, and it defines where your avatar sits in the car. The wheel group contains the 4 wheels, and the wheel collider group contains the wheel colliders for each wheel. The positions of the wheel colliders need to adjust individually, so they should be created separately from the wheels. You can do it by creating an empty gameobject then adding a wheel collider component, duplicating 3 more, and renaming them.
Choose the parent object of the whole car, then add a script named "Modular Vehicle". A rigidbody component will be added automatically as well. As a simple guide, it will only show you how to make a car which can be driven in the game. There are a few more stuffs in the script settings but we will ignore them here.
Set the "Seat Root" with the seat gameobject, and Ride Animation you can get it from freely. The Mass will be the weight of your car, the value here only shows an example. Note: there is also a Mass property in Rigidbody component, change it to the same value. The Center of gravity concerns the stability of the vehicle. If you want to create a big truck, making it a little lower may be better(like (0, -1.25, 0)), otherwise just leave it to default. These are the 'core forces' settings. They configure the vehicle 'overall'. Everything else is pretty much 'per wheel'.
Our example is a regular 4-wheel car, so we set the number of wheels as 4. If you are creating a vehicle with a different number of wheels, just enter the wheel number here -- and make the same number of wheel colliders.
This is a representative front wheel. The other uses the same values with its own transform and collider.
This is a representative rear wheel. Same for the values, it's just on the other side.
In this example, the front and rear wheel is in different size(it's a race car, somehow), so the mass and radius are different. For a normal car, they might be the same value. This is the collider for the rear wheel. It will be the same on the other side. Differences are in the name and position on the model. This applies generally to all the wheel elements.
This is the collider for the front wheel.
After set the values, you should adjust its position and size manually. Make the radius match the size of wheel then modify the collider's postion to the center of the tire. Like this:
If you want to add tire track, here's a image from the old version, but it's always the same way.
Finally, add a box collider in the parent object, make sure it doesn't have conflict with the wheel colliders.
Forget this will make your vehicle cannot trigger the clickable events(which equals cannot drive it).
Now you can add a virtual good component to the parent object to upload and test it.
The hover points and boat forces are for hover type and boat type, which is still under testing now.
The example below is only a prototype, it can float and move, but the performance is not very satisfied. The value settings may be complex here, which may need you to adjust by yourself. Feel free to update this part if you find a more simple way to create a hover car. Same as the land type, we found another model from asset store, and just turn the tires 90 degree, like this:
There won't be other collider, so a box collider covers the whole car body is enough. Its parts could be organized like this:
The four wheels here will be the 4 hover points, which will be defined later. Like create a land type vehicle, just add a modular vehicle to the parent object.
It seems there is a little bug that the mass in modular vehicle doesn't override the mass of rigidbody, so we use the mass value in rigidbody instead. These basic settings are same as the land type. Core force settings:
These values are experimental. Feel free to update it if you find a better example. Hover points:
Here need some physical tricks and calculations. The Unity physic system defines the Gravitational acceleration is 9.81 m/s², we set the rigidbody mass is 100(the unit is kg, normally), so the weight is 9.81 * 100 = 981 N. We have 4 hover points, so we seprate a up force of 981N to these 4 hover points, that is, each hover point take a 245.25N in up direction. This should keep the hover car float in the air. Of course, if you want to increase or decrease the number of hover points, you shoud modify the force each hover point too. Add the virtual good component and upload it, now you can test it on the preview server.
PENDING
If you want to add some additional functions to your vehicle, like the speed meter and rear-view camera which introduced below, please make sure that you've add the events control for them. For example if you want the function only active when the player drive the car and deactivate them when the player leave, you need to add events in the On Player Activate/Deactivate function block, like the image below:
There is already a script called "speedometer" in the Editor Pack, all you need is create a UI Text Component under your vehicle object, and another empty game object with this speedometer component. Attach the rigidbody of the vehicle and the UI Text component to the slots of the speedometer, you can leave the rest option as it was, or fill it on your own request. Change the position and style of the UI Text as a normal UI element as you wish. And, remember, disabled the Canvas object at the beginning, and activate it by the events function as I present above. A simple example here, is a meter with blue text in the right-bottom corner:
Sometimes you may want set the camera for vehicle by yourself, or have several cameras to switch(you may need add custom script by using scripting runtime for the switch function though), like far view behind, close view behind, driver view, etc. To do this, you need to use the plug-in which is already contained in the Editor pack: Cinemachine Virtual Camera. Simply create an empty game object in the vehicle object, and add the component Cinemachine Virtual Camera to it. Drag it to the Primary camera slot in Modular Vehicle, just like this:
If you want to add a second or more camera, just set the number of the Secondary cameras then drag the cameras to each slot, like the example above. Don't forget to adjust the parameter of your virtual camera or it won't work, here is an example:
For the details of how to adjust the virtual camera and how to set those values here, check this . And you also need to disable all of the Cinemachine Virtual Camera at the beginning, or it will bind your camera to them as soon as your vehicle is spawned.
You may also want add a rear view to your vehicle, so the driver can take a clear look of his behind. The method is simple: First, in your assets folder, right click the mouse and create a new render texture.
Leave the settings as its default if you don't have any other request. Second, create a new camera in the prefab. The normal camera, not the virtual one we used above. Then rotate it horizontally, make it face to the behind of the vehicle, and move it to the end of the car, make sure there is nothing block the camera. Drag the render texture we create to the Target texture slot. And disable the camera component.
Now in the canvas we used to show the speed meter, add a raw Image and attach that render texture into the slot:
And Finally in-game, we can get a simple rear view of the behind:
You can use image mask to add a form of rear mirror to make it look beautiful, for more information, take a look at this .
Skin is a texture image that replaces the default skin of your avatar. Skins can be re-made and uploaded in Sine Space using the Virtual Goods component.
You can download the default avatar skin template from the following link.
Sinespace avatar Skin:
Once you have created the Skin save the PSD and import it back to Unity.
Unity uses a working folder called the "Assets Folder" - anything in this folder is accessible in Unity in the 'Project' panel. You can right-click in the 'Project' panel, and select 'Show in Explorer' (or 'Show in Finder' on MacOS) and view the files. To import the texture into Unity, simply save it into this folder. Unity will detect and import the texture when you tab back into it.
Attention: Do not store the edited Skin in the 'Artist Project' folder, it will not be uploaded. (That folder is ignored during uploads)
A skin is a special type of Clothing Item - as of Editor Pack 12, we strongly recommend uploading skins using the new 'Tattoo System' which is documented below.
Video Option: This topic is covered under
Create a new blank gameobject using GameObject->Create Empty from the menu
On the right hand side of the screen, locate the "Inspector" panel, and add a Clothing Item Settings component to this new empty object
Locate the Tattoo section on this component
You now need to adjust the settings to indicate this is a skin; the key settings are:
Skeleton: Make sure to set this Male or Female
Enabled: Make sure this is ticked
Type: Set this to Base Skin
Albedo: Drag the base diffuse/albedo texture into this slot from the Project panel
NOTE: If you are using an older Editor pack, you will also need to tick 'Only Contains Skin' to get it to process correctly, you can find that on the Skin tab. (Newer editor packs such as 12p13 should not require this; however if you encounter an error during processing, you may want to try it.)
The next step is to format it as a item - fill in details on the name, pricing, etc.
Add the virtual good component from the 'Add Component' button
You will then need to adjust some settings - fill in the form until all the red exclamation marks have vanished.
Finally, to save this to disk (so that it is stored as a file, versus simply an object in your scene), click the 'Fix Now' button to convert it to a prefab; be aware the objects name (at the top) will be used in the filename, so you may want to rename the object prior to clicking this button.
You may now upload the item from the Upload tab, this will upload it to the world directly.
If you wish to preview it, prior to uploading; you can use the Clothing Previewer to test an item
Create a new GameObject
Add the Statue and Clothing Previewer components to the object
Now, in the Project Panel, locate your object
You can then drag the object into the previewer slot. Set the appropriate gender on the 'Statue' component (note: the Statue component can be used for NPCs, or previewing against a specific avatar - see more in the NPC pages of this wiki)
Hit the 'Play' button in Unity, and the avatar should preview, while wearing the item.
If you need to use a custom shader or material for your skin, follow this procedure. Note this method may not be as compatible with tattoos and makeup layers.
you can create a new material and drag skin texture and normal map in normal map slot.
Once the material is created you can chose the material shader for skin from built in unity standard, custom shader or SineWave skin shader.
SineWave Skin Shader
Main Color - Sets the overall color of the skin.
Specular Color - Tints specular highlights of the skin.
Shininess - Sets the shine amount of the skin.
Rim Power - how rim lighting spreads around the edges of the model.
Once the skin material is created, it needs to be converted to fit the skeleton.
Create an empty game object in the scene and add the Clothing Item Settings Component to it.
Skeleton Selection
Chose the relevant Skelton for the clothing item. Please note Space supports multiple third party skeletons as well as it's own native male and female models.
Slots
If you are creating only skin, select Skin Base slot. If you want the skin to have more than just skin select other applicable slots.
Skin Setup
Select Only contains skin if you are uploading skin only. If you are doing a combined outfit Don't select this.
Note : if you are not making just skin you will have to click on Convert to skinned button later. if you are creating just skin this step is not needed and the button will disappear as soon as you select Skin only.
Replacement Skin
Set the number of material the skeleton you are using has.
Sine Space male and female skin only has 1 material; if you have selected that as the skeleton Set the size to 1.
After the size is set. Drag the skin material in the material slot.
Attach the virtual goods script and complete the submission process.
See for more details on the virtual goods script.
To know more on how to create and upload skins watch the tutorial shown
The clothing item setting component is used whenever you want to upload clothing to the sinespace shop.
The clothing item setting component is split into different subcategories. Each sub-category has different settings for the clothing and the uploading of the item.
When you have imported your clothing item into Unity, make sure it is selected, go to the Inspector window, click on ‘Add Component’ and search for Clothing to add the Clothing Item Settings component to your clothing item.
As you can see in the above image, there are four main categories: Item, Customisation, Submission and Review; Under each of these main categories are sub-categories.
Item is where you can change the skeleton of the avatar to match the clothing you are uploading, and you will also see a list of categories to choose from. The list of categories is:
Clothing
Costumes
Skin Material
Tattoos and Makeup
Underneath is an explanation for all of these categories and their sub-categories.
There are six sub-categories of clothing settings under the clothing category. These categories are:
Fitting and Slots
Skin and Cloth Deletion
Materials and Patterns
Level of Detail
At the top of the clothing settings, you can change the type of clothing you are uploading. The types are Rigged Clothing and Attachments.
This is where you choose if your clothing item is a Rigged Clothing or an Attachment.
Rigged clothing -
Attachment - Tick if your item is an attachement. Then select the appropriate bone from "Attach to this bone."
Fitting and slots is where you will find all the settings for the fit of the clothing and the clothing slots.
Layer - This is where you can choose the layer of your clothing. For example, underwear would be under the Underwear layer, and a coat would be under the Baggy and Outerwear layer. If you set your clothing as an Underwear layer, it means other clothing can go over them. If you set your item as baggy and outerwear, it means that other items of clothing can be worn under it. For a guide on layers, please see this page.
Fitting Slots - The avatar slots are where the skeleton will be deleted under the clothing. If you have a t-shirt, for example, and don’t want it worn with other items, you will have to check the upper chest, chest and back slots.
This is where you can add deletion zones, and preservation zones, recalculate bounds and also change the settings for deletion and tucking, fitting and obscuration tuning.
Deletion Zone Settings - The deletion zones are used for selecting an area of the avatar which you want to be deleted under clothing. This can be used for certain types of clothing which need a little extra deletion underneath.
Preservation Zone Settings - Preservation zones are used for selecting an area of the avatar which you want to keep under clothing. This is useful if you have clothing with holes in, e.g. a dress with a slit or a corset with a lace-up back.
Skip deletion - Tick to avoid all skin deletion being applied.
Materials is where you can set to keep the material always of the clothing or attachment. If you plan to use the pattern system which allows for color and texture variations, leave the ‘Keep Materials Always’ unticked.
This is where you can add in the high, medium and low LOD objects of the clothing. If you do not add any, we will set it to medium by default.
This is where you will find the settings needed for auto-weighting the clothing.
Automatic Skin Weighting - This will automatically do the skin weighting for you without you having to do anything manually when you press the button. You can also add in a Custom Template here. This custom template is used if you have manually rigged and weighted clothes to a model in 3D software. You will need to drag the model into the Custom Template box.
Advanced Weighting Settings - You can change settings for weighting here for better outcomes manually under the advanced weighting settings.
When the 'Use Heel Settings' is ticked, you can alter the heel and avatar placement. You can check the blend shapes on the character archetypes to precisely line up shoes.
Morph Targets is where you enter the data for the Heel Amount, Arch Offset, and Height Offset.
Here is more information on how to set up shoes with .
Prepare/Re-Prepare - Once clicked, this will show the results of the skin deletion and weighting.
This is where you can add the options for a full body replacement costume.
Referenced Prefab - This is where the root template of your costume will be. You will need to drag the costume into the Root Template box. For example, if you have a self-made avatar you want to use in sinespace, you will need to drag this avatar game object into this box.
LOD Variants - This is where you can drag the low and high poly variants of your costume/avatar.
This section should only be used if you are adjusting the skin shader with a custom material. If you are just making a skin, we recommend using the tattoo and makeup system.
This is where you can add tattoos, make up e.t.c as layers.
Enabled - Check this box to enable the layers.
Type - Here you can choose from different types of layers. Overlay will be an overlay layer, Tattoo will be for a tattoo, Make up is for make up, Skin is for a skin overlay layer, and Base Skin layer will replace the original avatar skin.
Blend - You can choose from a range of blend options here such as darken or soft light, they work a bit like layer masks.
This is where you can paste the shape data from the client to add a shape preset to your clothing.
This is where you add the information from your animation controller.
Animation Overrides - This is where you will state the number of animation overrides, then add the element slot and humanoid animation clip.
Controller - This is where you drag in your animation controller.
This field has been replaced by the new ‘Customisation’ field on the Virtual Good component.
It is recommended to use that customisation field, but this method will also work.
Restrict Customisation - If this is ticked, it will restrict customisation of the clothing from other users/creators.
This is where the final settings for uploading the clothing item are.
Finalise - You can either click on ‘Prepare’ to finalise the settings on the clothing, or you can click on ‘Recalculate Occlusion’ to recalculate the occlusion.
This is where you can see the performance score, which is a quick estimate of the GPU and CPU power required to render the item. You can also change the Type Override to see an estimate of GPU and CPU power for similar items such as shorts, dresses or jackets.
Once all of these settings have been set, you need to add the Virtual Good component to the clothing item to upload to Sinespace.
The clothing item setting component is used whenever you want to upload clothing to the sinespace shop.
The clothing item setting component is split into different subcategories. Each sub-category has different settings for the clothing and the uploading of the item.
When you have imported your clothing item into Unity, make sure it is selected, go to the Inspector window, click on ‘Add Component’ and search for Clothing to add the Clothing Item Settings component to your clothing item.
As you can see in the above image, there are four main categories: Item, Customisation, Submission and Review; Under each of these main categories are sub-categories.
Item is where you can change the skeleton of the avatar to match the clothing you are uploading, and you will also see a list of categories to choose from. The list of categories is:
Clothing
Costumes
Skin Material
Tattoos and Makeup
Underneath is an explanation for all of these categories and their sub-categories.
There are six sub-categories of clothing settings under the clothing category. These categories are:
Fitting and Slots
Skin and Cloth Deletion
Materials and Patterns
Level of Detail
At the top of the clothing settings, you can change the type of clothing you are uploading. The types are Rigged Clothing and Attachments.
This is where you choose if your clothing item is a Rigged Clothing or an Attachment.
Rigged clothing -
Attachment - Tick if your item is an attachement. Then select the appropriate bone from "Attach to this bone."
Fitting and slots is where you will find all the settings for the fit of the clothing and the clothing slots.
Layer - This is where you can choose the layer of your clothing. For example, underwear would be under the Underwear layer, and a coat would be under the Baggy and Outerwear layer. If you set your clothing as an Underwear layer, it means other clothing can go over them. If you set your item as baggy and outerwear, it means that other items of clothing can be worn under it. For a guide on layers, please see this page.
Fitting Slots - The avatar slots are where the skeleton will be deleted under the clothing. If you have a t-shirt, for example, and don’t want it worn with other items, you will have to check the upper chest, chest and back slots.
This is where you can add deletion zones, and preservation zones, recalculate bounds and also change the settings for deletion and tucking, fitting and obscuration tuning.
Deletion Zone Settings - The deletion zones are used for selecting an area of the avatar which you want to be deleted under clothing. This can be used for certain types of clothing which need a little extra deletion underneath.
Preservation Zone Settings - Preservation zones are used for selecting an area of the avatar which you want to keep under clothing. This is useful if you have clothing with holes in, e.g. a dress with a slit or a corset with a lace-up back.
Skip deletion - Tick to avoid all skin deletion being applied.
Materials is where you can set to keep the material always of the clothing or attachment. If you plan to use the pattern system which allows for color and texture variations, leave the ‘Keep Materials Always’ unticked.
This is where you can add in the high, medium and low LOD objects of the clothing. If you do not add any, we will set it to medium by default.
This is where you will find the settings needed for auto-weighting the clothing.
Automatic Skin Weighting - This will automatically do the skin weighting for you without you having to do anything manually when you press the button. You can also add in a Custom Template here. This custom template is used if you have manually rigged and weighted clothes to a model in 3D software. You will need to drag the model into the Custom Template box.
Advanced Weighting Settings - You can change settings for weighting here for better outcomes manually under the advanced weighting settings.
When the 'Use Heel Settings' is ticked, you can alter the heel and avatar placement. You can check the blend shapes on the character archetypes to precisely line up shoes.
Morph Targets is where you enter the data for the Heel Amount, Arch Offset, and Height Offset.
Here is more information on how to set up shoes with .
Prepare/Re-Prepare - Once clicked, this will show the results of the skin deletion and weighting.
This is where you can add the options for a full body replacement costume.
Referenced Prefab - This is where the root template of your costume will be. You will need to drag the costume into the Root Template box. For example, if you have a self-made avatar you want to use in sinespace, you will need to drag this avatar game object into this box.
LOD Variants - This is where you can drag the low and high poly variants of your costume/avatar.
This section should only be used if you are adjusting the skin shader with a custom material. If you are just making a skin, we recommend using the tattoo and makeup system.
This is where you can add tattoos, make up e.t.c as layers.
Enabled - Check this box to enable the layers.
Type - Here you can choose from different types of layers. Overlay will be an overlay layer, Tattoo will be for a tattoo, Make up is for make up, Skin is for a skin overlay layer, and Base Skin layer will replace the original avatar skin.
Blend - You can choose from a range of blend options here such as darken or soft light, they work a bit like layer masks.
This is where you can paste the shape data from the client to add a shape preset to your clothing.
This is where you add the information from your animation controller.
Animation Overrides - This is where you will state the number of animation overrides, then add the element slot and humanoid animation clip.
Controller - This is where you drag in your animation controller.
This field has been replaced by the new ‘Customisation’ field on the Virtual Good component.
It is recommended to use that customisation field, but this method will also work.
Restrict Customisation - If this is ticked, it will restrict customisation of the clothing from other users/creators.
This is where the final settings for uploading the clothing item are.
Finalise - You can either click on ‘Prepare’ to finalise the settings on the clothing, or you can click on ‘Recalculate Occlusion’ to recalculate the occlusion.
This is where you can see the performance score, which is a quick estimate of the GPU and CPU power required to render the item. You can also change the Type Override to see an estimate of GPU and CPU power for similar items such as shorts, dresses or jackets.
Once all of these settings have been set, you need to add the Virtual Good component to the clothing item to upload to Sinespace.
Precomputed Realtime GI
Baked GI Setting
Select the Baked option under Ambient GI drop-down box.
Set your Baked Resolution between 8 - 15, the larger the scene the lower the number here.
Rim HDR - Adds a boost to rim lighting, to enable it push into HDR values (i.e. Brighter than white) for bloom.
Normal Power - controls power of normal map (allowing them to be more/under represented)
Tessellation - allows DX11 Tessellation which smooth's geometry when camera is up close.
Specular Amount - Sets the specular amount.
Gloss Amount - Sets how glossy the skin should look.
Smoothness - controls specular highlights on PBR platforms (higher = tighter highlights), correlates with Standard shader.
Occlusion - controls ambient occlusion.
Loading color - For internal use. PLEASE IGNORE THIS SETTING.
Shapes
Animations and Controllers
Automatic Skin Weighting
Feet Settings
The default distance is 1 cm. The affected vertices are highlighted in yellow when the item has been prepared.
Red squares indicate skin that will be deleted. Blue indicates skin that will be deleted if more than two adjacent vertices are red. Yellow indicates skin that will be squeezed in line with the Obscuration distance.
Mask Mode - You have two options here, you can choose Use Albedo Alpha, or Use Albedo Alpha ignoring Albedo.
Albedo - This is where you drag the texture for the albedo.
Metal Smoothness - This is where you drag the texture for the metal smoothness.
Normal - This is where you drag the texture for the normal map


















Shapes
Animations and Controllers
Automatic Skin Weighting
Feet Settings
The default distance is 1 cm. The affected vertices are highlighted in yellow when the item has been prepared.
Red squares indicate skin that will be deleted. Blue indicates skin that will be deleted if more than two adjacent vertices are red. Yellow indicates skin that will be squeezed in line with the Obscuration distance.
Mask Mode - You have two options here, you can choose Use Albedo Alpha, or Use Albedo Alpha ignoring Albedo.
Albedo - This is where you drag the texture for the albedo.
Metal Smoothness - This is where you drag the texture for the metal smoothness.
Normal - This is where you drag the texture for the normal map


















Gesture Related
Scene Related
Quest Related
Merchant Related
Common & Creator Related
Vehicle Related
Avatar Related


Here you can find the clothing resource files for male avatars. All of the below resource file zips include an FBX of the item, TGA files for height map, normal map and occlusion and .PNG files for the patterns/textures. All of these clothing files are owned by Sinespace. We will be adding to the list when more Sinespace clothing is released.


Beige Suit Pant
Black Brogue Shoes
Black Dress Shoes with Buckle
Black Suit Jacket
Black Suit Pant
Boardshorts
Brown Slip on Dress Shoes
Checkered Suit Jacket
Checkered Suit Pant
Flip Flops
Flippers
Hooded Jacket
Longer Boardshorts
Mens Baggy Cutoffs
Mens Bomber Vest with Shirt
Mens Emo Drainpipe Trousers
Mens Emo Spiked Vest
Office Pants
Open Collar Suit
Scifi Male
Substance Files:
Shirt with Woolen Vest
Snorkel
Street male
Track Pants
Beige Suit Jacket


The quest system allows users to build narrative structures in space.
Usually driven by interactions with NPCs in your regions, quests can lead users through gameplay or learning and training modules, or through tours, stories or other step-based user engagements.
Quests are depicted by a blue exclamation mark above a Quest Giver which can be any type of clickable GameObject (with a collider component). Clicking on the Quest Giver shows the first Quest Dialog Box (the first Step, numbered 0 in Unity) with a Start / Cancel option.
Quest Dialog Box shows the Name and the Description of the Step (see below). As soon as the user accepts the quest, next steps are shown as a blue question mark. On the left of the screen, below the radar, The Quest Name () appears with the number of steps and the hint to reach the next step.
Hints are related to a future step the user needs to reach (usually the next step). So the hint needs to be written on the Step the user needs to reach. For that reason, there is no need to write a hint inside step 0 (the opening step), unless for some reason the quest brings the user back to the Quest Giver.
More to come ...
The Quest Giver
All quests are started by the user clicking an object, the so called Quest NPC which presents the quest. The user opts-in to the quest.
To turn any object in your scene into the Quest NPC, add the to it. You can use a humanoid NPC. Use the object, rendering the NPC as a character. Then add the QuestNPC component to that. You can add the to any object with a collider on it. The user clicks on that object to start the quest.
Quest NPCs are placed into the Destination NPC field in any Step Inspector of your quest (see below).
Quest Manager
Create an empty game object in your scene, set it to location 0,0,0 and add the Quest Designer game component to it. Give the quest a name and a description.
Quest type
Daily : users can play it once every day.
Main : users can play the quest only once.
Side : can only be triggered by another quest.
Activity : users can replay continually.
Quest ID
Click the reserve ID button in the inspector to assign a unique id to your quest. The quest ID is generated automatically when you click reserve. Warning: DO NOT delete the Quest ID Inspector field. If you don't remember that number, you will need to reserve a new one. If this quest is a used in a dependency list, you will have to edit all the quests that depend on it...
Quest Dependency IDs
You can chain quests together using dependency IDs Set the size to the number of quests that need to be completed before this quest is available. Hit 'enter' and that number of fields will appear. To each field, add the individual quest ID of one of the quests that must already be completed by the user. This allows you to have multiple quests initiated by the same quest NPC, in a series.
Reward ID
Add the curator ID for any virtual good item you have uploaded. You can get this from the virtual goods component attached to the reward object (once it has been uploaded), or from the item list in your account at curator.sine.space. The reward virtual good object must be live before it can be given by a live quest.
Open Canvas button
This button opens an Editor Window which allows you to build your quest, adding steps. Add the first step and reference the Quest NPC object (place the object into the Quest NPC field).
You can add quest steps one at a time, building your story. Each time you add a step it will duplicate your last step.
Open the Quest Designer Canvas. Clic Add Step button.
You can delete a step within a chain; its child will be reconnected to the parent step. You cannot delete the first step.
Click on the little arrow visible at the top left corner in the step inspector window. You cannot reorder the first step. If there are only 2 steps in your quest, you won't see the arrow from the second step.
The NPC step type is mandatory for starting the quest. The step 0 will be of type "NPC" and you cannot edit it to make it a different type.
Other steps can be of type NPC: use a GameObject (or any object) and attach the to it, placing it in the Destination NPC field.
The activity step is a general step which you can use to deploy a wide range of activities which the user must complete before the next step initiates.
Activity
You can drag any “Startable” component into into the Activity field in this step.
The space quest system includes a range of standard startables you might want to use; for example, you might require a user to wear a particular clothing item or sit on a particular furniture item.
For more information on startables go .
Scripting your own startables
You can also write your own startables, which can be full game rounds or learning modules; the user has to complete each one before moving on with the quest.
Autoplay
Tick autoplay if you want this step to start immediately as the prior step completes. If you leave autoplay unticked the user will need to click the quest NPC to start the step.
You may need to leave the Autoplay unticked if your prior step is one that is registered as complete at the start of the step and the user will still engaged in an unrecorded activity before needing to move on.
For instance if the prior step was an activity step using the StartableGestureRequirement, the quest system will register the user as having completed the step when they initiate a gesture but that gesture may take 30 seconds to play, during which you may not want the next step to initiate.
Replay Discussion NPC
The Replay Discussion NPC is the object in the scene the user needs to click if they have failed to complete the quest step. This may be because the quest step is a game component which can be failed; or a learning component with a passing grade. Or it may be because they logged out or were disconnected half way through the deployment of the startable.
The replay NPC can be your original Quest NPC but if that is geographically some distance from the relevant quest step you may chose to put another object near the quest step activity which the user can click to restart the step.
This can be any object with the Quest NPC component added to it, dragged into the Replay Discussion NPC field in the step.
Area Hint
If you are using a navmesh to guide your users around the quest, the area hint will tell them where to go. It might usually be the same object as the Replay Discussion NPC but it can be any game object you drag into the field.
The quest step allows you to embed one quest inside another. This is a great way to move users from one region to another. (You can also use the Quest Game Object component to spawn teleportation portals at the right moment in front of the user, leading them to the next region.)
Subquest ID
Paste the ID of the child quest here.
The visit location step requires the user to go to a specific place in your region to continue the quest.
Area to Visit
Drag any game object including any NPC into this field to require the user to visit this location before the quest continues.
This step can be used in conjunction with the navmesh to lead them there via a visible path.
For more information on setting up the navmesh in your region go here. (need link)
Proximity (meters)
Set the proximity in meters to the selected game objects.
The collection step requires the user to click on and collect a specific game object in the scene.
Collectible Item
Add the Quest NPC component to the object you want the user to click on and collect. Drag the object into the Collectible Item field in the quest step. Make sure it has a collider on it so the user can click it.
Area Hint
If you want the navmesh to lead the user to the collectible, you can drag it into the Area Hint field. If you want them to have to search without a hint leave it empty or add your original Quest NPC to guide users back to the quest area in the event they leave the region during this step.
Counter
The counter step requires users to collect a defined number of counters.
Use this step in conjunction with objects in the scene that have either the Quest Counter Clickable or Quest Counter Proximity component attached.
You may also want to use the Startable Timed Counter which offers similar functionality to this step, when added to the Activity step, but on a timed basis.
Number required
Specify the number of counters the user needs to collect. This can match the total number available in the scene or there can be far more in the scene than the required number, depending on the nature of your game.
Quick ID Picker/Token ID
Add whatever ID you have manually applied to the Counter ID field of the Quest Counter Clickable or Quest Counter Proximity component attached to your counters.
Area Hint
Use this in conjunction with the navmesh feature to guide people to an area, or drag your Quest giving NPC here to guide users back to the start of the step should they relog before completion.
The conversation step allows you to build cut scenes in the quest, with successive combinations of dialogue, camera, audio and animation on the NPC and the player.
To edit the conversation step open the Quest Canvas (from the button at the bottom of the quest chain in the inspector window).
Conversation Actors
The conversation actors can be one or more NPCs and the play themselves.
Add an actor and drag any object with the Quest NPC component attached to it to the NPC Object field.
Actor Name
This will appear in dialogue panels during the conversation.
Is Player
Tick this to use the player as your actor. Add %PLAYER% to the Actor Name field to use the username in dialogue.
Move to location
Add an empty game object in the scene to this field to move your player to this location for the duration of the conversation.
This allows you to align the player with specific camera shots defined by you during the conversation.
Conversation dialogues
Once you have defined the actors in your conversation you can add as many steps to the conversation as you want.
Actor
Choose the actor narrating the dialogue step.
Text
Enter the text as it should appear in the dialogue panel.
Animations
You can add an animation to the NPC or the player during the step.
Wait for continue?
Tick this if you want the dialogue step to remain on the screen until the user clicks continue.
Wait timeout
Define a time in seconds if you want the dialogue to end and the next to start automatically without the user clicking continue.
Camera angle
Create an empty game object in your scene and position it so that it looks where you want the user's camera to look during the dialogue.
You can position your view in the scene view in the Unity editor and then highlight the game object and in the top menu go to GameObject / Align with view to move the position and rotation of the game object to your view.
Dialogue Audio
You can add audio clips to the dialogue by dragging an audio file from your project to this field.
Use Lip Sync
Tick this if you want the mouth of the actor to be animated by your audio file.
Cutscene Dialogue Canvas
To use the conversation step you need to drag the Cutscene Dialogue Canvas prefab into your scene.
This screenspace canvas displays the dialogue during cut scenes and offers the continue button to users if you are using that function in your dialogues.
Make sure the Panel, which is a child of the Canvas, is disabled (the tick box in the top of the Inspector).
This ensures the panel will only be visible to users during the conversation steps of a quest; left on it will be permanently applied to the screen of everyone in the region.
Avoid putting the Cutscene Dialogue Canvas into a parent object, or if you do ensure the parent object is located at 0,0,0 in your scene or the canvas will be offset or invisible to the players.
Branch NPC allows the user to setup several option for player to choose. It will lead to different quest steps based on the user's choice.
Startables are components you can drag into the of a quest.
You attach the startable component to the relevant game object; it some cases it might be an empty game object created just to house the startable; and then drag that object into the Activity field of an Activity type step in your quest.
Startable Components:
Add the Quest Counter Clickable component to counters the user must click on to collect.
Counter ID
Enter an ID of your own creation to the Counter ID field and add the same ID to the Counter ID field of the Counter quest step or the Startable Timed Counter component.
Add the Quest Counter Proximity component to counters the user must be within a certain proximity of in order to collect.
Counter ID
Enter an ID of your own creation to the Counter ID field and add the same ID to the Counter ID field of the Counter quest step or the Startable Timed Counter component.
Trigger Distance
Specify the distance from the object that will trigger a successful collection.
This allows you to rez and and derez items in your scene during specified quest steps.
Configurable parameters:
QuestID
MinStep
MaxStep
Attach to other objects (preferably a parent group, if you're updating multiple in a single step)
It enables or disables the object it is on, based on whether the user is inclusively on any step between Min and Max.
Objects can only be seen by the player.
This will place an object at the origin of the avatar; 0,0,0 relative to that avatar, non-attached.
To offset, place empty parent object with PlaceAtOrigin script and then offset visible object from invisible parent.
Use in quest text fields to add player name to dialogue.
If it's possible to fail an activity step drag the quest NPC into the “Replay NPC” field. It will show a "!" asking the user to repeat the step.
Apply to NPCs designed to automatically accept gesture invites.
Temporary : ?

Here you can find the clothing resource files for female avatars. All of the below resource file zips include an FBX of the item, TGA files for height map, normal map and occlusion and .PNG files for the patterns/textures. All of these clothing files are owned by Sinespace. We will be adding to the list when more Sinespace clothing is released.
These resource files can be used to make different pattern variations of the clothing.
50s silk neck tie
Air hostess outfit
Beach skirt
Beach top
Bikini Shorts
Bikini Top
Bikini with sarong top
Bikini with sarong
Cardigan with top
Fitted shirt
Flip flops
Flippers
Full swimsuit
Leather pants
Mary Janes
Pant suit jacket
Pant suit Open Jacket
Pant suit open pants
Pant suit Pants
Patent court shoes
Patterned pants
Sexy Outfit
Silk scarf front knot
Silk scarf one tassle
Skirt suit jacket
Skirt suit skirt
Snorkel
sequined pants top and bottom
street female
Studded leather vest
Suede ballet flats
Thick heeled shoes
Tied jacket with vest
womens camo capris
womens emo vest
womens polo hoodie
womens shorts with cat belt
yoga pants
Vlad Outfit


































































































































































































































































































