SDK Feature Comparison
Compare features and development status across PlayKit SDKs
| SDK | Version | Status |
|---|
| Unity SDK | v0.2.62 | Production-ready |
| Unreal SDK | v1.0 | Production-ready |
| JavaScript SDK | v1.3.0 | Production-ready |
All three SDKs provide the same two-client model for AI conversation. Understanding the split makes it easier to choose the right SDK and the right client within it.
A low-level building block. You supply the messages, it returns a response. History, context, and output format are entirely yours to manage. Best for developers who need full control: custom pipelines, structured data generation, tool calling.
A complete character system. Set a characterDesign prompt; the SDK handles history, memory, action dispatch, and reply predictions automatically. Intentionally no structured output — use the Actions system instead for game logic triggers (faster, no JSON parsing, preserves character voice).
| Chat Client | NPC Client |
|---|
| Unity | PlayKit_AIChatClient | PlayKit_NPC |
| Unreal | UPlayKitChatClient | UPlayKitNPCClient |
| JavaScript | ChatClient | NPCClient |
| Feature | Chat Client | NPC Client |
|---|
| Text generation | ✓ | ✓ |
| Streaming responses | ✓ | ✓ |
| Structured output | ✓ | — (use Actions) |
| Tool / function calling | ✓ | — (use Actions) |
| Auto history management | — | ✓ |
| Character design | — | ✓ |
| Memory system | — | ✓ |
| Reply predictions | — | ✓ |
| Actions system | — | ✓ |
| Save / restore history | — | ✓ |
| Multimodal (image input) | ✓ (Unity) | — |
| Feature | Unity | Unreal | JavaScript |
|---|
| Basic chat | ✓ | ✓ | ✓ |
| Multi-turn conversation | ✓ | ✓ | ✓ |
| Streaming responses | ✓ | ✓ | ✓ |
| System prompts | ✓ | ✓ | ✓ |
| Temperature control | ✓ | ✓ | ✓ |
| Tool calling | ✓ | — | ✓ |
| Structured output | ✓ | ✓ | ✓ |
| Reasoning / thinking models | ✓ | ✓ | ✓ |
| Token usage stats | ✓ | ✓ | ✓ |
| Multimodal input (images) | ✓ | — | — |
| Feature | Unity | Unreal | JavaScript |
|---|
| Text-to-image | ✓ | ✓ | ✓ |
| Multiple sizes | ✓ | ✓ | ✓ |
| Batch generation | ✓ | ✓ | ✓ |
| Seed control | ✓ | ✓ | ✓ |
| Background removal | ✓ | ✓ | ✓ |
| Image-to-image | — | — | ✓ |
| Native asset conversion | ✓ (Texture2D/Sprite) | ✓ (UTexture2D) | ✓ (HTMLImageElement) |
| Feature | Unity | Unreal | JavaScript |
|---|
| Audio-to-text | ✓ | ✓ | ✓ |
| Built-in microphone recorder | ✓ | ✓ | — |
| Voice Activity Detection (VAD) | ✓ | — | — |
| Multi-language | ✓ | ✓ | ✓ |
| Segment timestamps | ✓ | ✓ | ✓ |
| Feature | Unity | Unreal | JavaScript |
|---|
| Text synthesis | ✓ | — | ✓ |
| Word / sentence timestamps | ✓ | — | ✓ |
| Voice selection | ✓ | — | ✓ |
| Speed control | ✓ | — | ✓ |
| Voice mixing | — | — | ✓ |
| Native audio integration | ✓ (AudioClip) | — | ✓ (Blob/ObjectURL) |
| Feature | Unity | Unreal | JavaScript |
|---|
| Auto history management | ✓ | ✓ | ✓ |
| Character design | ✓ | ✓ | ✓ |
| Streaming responses | ✓ | ✓ | ✓ |
| Memory system | ✓ | ✓ | ✓ |
| Reply predictions | ✓ | ✓ | ✓ |
| Actions system | ✓ | ✓ | ✓ |
| Save / load history | ✓ | ✓ | ✓ |
| Voice integration (TTS) | ✓ | — | — |
| Context auto-compaction | ✓ | ✓ | ✓ |
| Feature | Unity | Unreal | JavaScript |
|---|
| Developer token | ✓ | ✓ | ✓ |
| Device auth flow | ✓ | ✓ | ✓ |
| Headless / server auth | — | — | ✓ |
| JWT exchange | ✓ | ✓ | ✓ |
| Player info & balance | ✓ | ✓ | ✓ |
| Token auto-refresh | ✓ | ✓ | ✓ |
| Cross-game token sharing | ✓ | — | — |
| Feature | Unity | Unreal | JavaScript |
|---|
| Text-to-3D | — | ✓ | — |
| Progress polling | — | ✓ | — |
| Feature | Unity | Unreal | JavaScript |
|---|
| Steam auth & payments | ✓ | — | — |
| WebGL support | ✓ | — | ✓ |
| Node.js / server-side | — | — | ✓ |
| Browser CDN (UMD) | — | — | ✓ |
Unity — Most feature-complete. Recommended for production Unity games. Includes Steam integration, full speech pipeline (record → transcribe → speak), and voice-enabled NPC conversations. Use PlayKit_AIChatClient for custom pipelines; use PlayKit_NPC for game characters.
Unreal — Component-based, Blueprint-friendly. Best for Unreal Engine projects. The only SDK with 3D generation support. All clients are ActorComponents wired via Blueprint events. Use UPlayKitChatClient for text generation; use UPlayKitNPCClient for game characters.
JavaScript — Ideal for browser and web-based games. The only SDK with server-side (Node.js) support and headless auth. Most flexible for custom frontends. Use ChatClient for custom pipelines; use NPCClient for game characters.