SFS2X Docs / ExamplesUnity / introduction
» Unity/C# examples
In this section of the documentation we provide a series of brief tutorials on the C# examples for the Unity platform distributed as a separate package on the SmartFoxServer 2X download page.
Most tutorials analyze a single example, describing its objectives, giving an insight into the SmartFoxServer features it wants to highlight and providing the direct link to download the source code, which includes all the assets required to compile and test it (both client and — if existing — server side). If necessary, code excerpts are provided in the tutorial itself, in order to better explain the approach that was followed to implement a specific feature. At the bottom of the tutorial, additional resources are linked if available.
The tutorials follow an increasingly complexity curve from basic server connections over chat messaging to full realtime games with authoritative server extension.
Specifically the examples will show:
- basic connection
- chat messaging and room management
- game rooms and extension messaging
- simple client side 3d object movement
- server authoritative first person shooter
» Usability on different Unity deployment targets
All examples *should* run seamless and be interoperable on
- PC and Mac standalone
- Unity Webplayer
The user interfaces have primarily been developed for standalone and webplayer usage, so might not fit 100% into mobile screensize without a little extra work.
All GUI code has been done with Unity GUI and a special SmartFoxServer skin.
» Usability on non-Unity platforms
The client API is fully usable on other .NET enabled platforms like ASP.NET or console applications and is thus not limited to Unity usage. The examples are not directly compilable on these platforms, but all relevant C# code is placed in Assets/Scripts and 99% usable via copy/paste in a different context.
When using the API on these targets you will have to either run the API in non-thread safe mode or process the callback events in a timer. Check this link for more information on non-thread safe mode.
Unless otherwise noted inside the tutorials:
- all examples are distributed in a single package and the same download link is provided in all the tutorials;
- example projects are provided as Unity packages: to import create a new empty project and import the given package;
- the main folder of each example in the downloaded package is referenced in the related tutorial using this icon: ;
- all examples require Unity 3.4 or later;
- all examples are developed with C#; UnityScript can be used as well with the API, but this is not documented or supported directly;
- the server-side Extensions of those examples which require one have been developed using IntelliJ IDEA, but you should be able to use any Java IDE of your choice, provided you use the JDK 1.6 or later.
All the examples make use of the latest version of the SmartFoxServer 2X C# API available as part of the server download itself. As the API evolve in time (bug fixes, new features), we strongly recommend that, after downloading an example, you overwrite the included API DLL file (SmartFox2.dll in the source code's Assets/Plugins folder) with the one provided in the latest SmartFoxServer package or patch available on our website.