Feature Overview
Needle Engine is a fully fledged 3D engine that runs in the browser. It comes with all the features you'd expect from a modern 3D engine, and more. If you haven't yet, take a look at our Homepage and our Samples and Showcase.
Shaders and Materials
Both PBR Materials and Custom shaders created with Shader Graph or other systems can be exported.
Use the node based ShaderGraph to create shaders for the web. ShaderGraph makes it easy for artists to keep creating without having to worry about syntax.
Read more about PBR Materials • Custom Shaders
Crossplatform: VR, AR, Mobile, Desktop
Needle Engine runs everywhere web technology does: run the same application on desktop, mobile, AR or VR. We build Needle Engine with XR in mind and consider this as and integral part of responsive webdesign!
Use Everywhere Actions for Interactive AR on both Android and iOS.
Lightmaps
Lightmaps can be baked in Unity or Blender to easily add beautiful static light to your 3d content. Lightbaking for the web was never as easy. Just mark objects that you want to lightmap as static in Unity, add one or many lights to your scene (or use emissive materials) and click bake. Needle Engine will export your lightmaps per scene and automatically load and display them just as you see it in the Editor!
Note: There is no technical limitation on which lightmapper to use, as long as they end up in Unity's lightmapping data structures. Third party lightmappers such as Bakery thus are also supported.
- Read more about Exporting Lightmaps
Multiplayer and Networking
Networking is built into the core runtime. Needle Engine deployments to Glitch come with a tiny server that allows you to deploy a multiplayer 3D environment in seconds. The built-in networked components make it easy to get started, and you can create your own synchronized components. Synchronizing variables and state is super easy!
- Read more about Networking • Scripting
Animations and Sequencing
Needle Engine brings powerful animations, state control and sequencing to the web — from just playing a single animation to orchestrating and blending complex animations and character controllers. The Exporter can translate Unity components like Animator and Timeline into a web-ready format.
We even added this functionality to our Blender addon so you can craft compatible animation state machines and export nla tracks as timelines to the web from within Blender too.
- Read more about Animation Components
Animator
The Animator and AnimatorController components in Unity let you setup animations and define conditions for when and how to blend between them. We support exporting state machines, StateMachineBehaviours, transitions and layers. StateMachineBehaviours are also supported with OnStateEnter
, OnStateUpdate
and OnStateExit
events.
Note: Sub-states and Blend Trees are not supported.
Timeline
We're also translating Unity's Timeline setup and tracks into a web-ready format.
Supported tracks include: AnimationTrack, AudioTrack, ActivationTrack, ControlTrack, SignalTrack.
Note: Sub-Timelines are currently not supported.
Note: It's possible to export custom timeline tracks.
- Read more about Animation Components
Physics
Use Rigidbodies, Mesh Colliders, Box Colliders and SphereColliders to add some juicy physics to your world.
- Read more about Physics Components
UI
Building UI using Unity's UI canvas system is in development. Features currently include exporting Text (including fonts), Images, Buttons.
See the ui component reference for supported component.
Particles
Export of Unity ParticleSystem (Shuriken) is in development. Features currently include world/local space simulation, box and sphere emitter shapes, emission over time as well as burst emission, velocity- and color over time, emission by velocity, texturesheet animation, basic trails.
See a live sample of supported features below:
PostProcessing
Builtin effects include Bloom, Screenspace Ambient Occlusion, Depth of Field, Color Correction. You can also create your own custom effects. See the component reference for a complete list.
Editor Integrations
Needle Engine comes with powerful integrations into the Unity Editor and Blender.
It allows you to setup and export complex scenes in a visual way providing easy and flexible collaboration between artists and developers.
Scripting
Needle Engine uses as component based workflow. Create custom scripts in typescript or javascript. Use our modular npm-based package workflow integrated into Unity. A typescript to C# component compiler produces Unity components magically on the fly.
- Read more about Scripting Reference • Npm Definition Files
And there is more
- PostProcessing → Bloom, Screenspace Ambient Occlusion, Depth of Field, Color Correction...
- EditorSync → Live synchronize editing in Unity to the running three.js application for local development
- Interactive AR on iOS and Android → Use our Everywhere Actions feature set or build your own
Where to go next
See our Getting Started Guide to learn about how to download and set up Needle Engine.
Learn about our vision or dive deeper into some of the technical background and glTF powering it all.