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...
Anything World Changelog for new features and general improvements
Sign up for our Anything World Newsletter to stay up to date with the latest updates!
SIGN UP 📰
The brand new early access package for Anything World is finally here! Dive in and try our brand new animation system and revamped UI.
We're kicking off with the launch of our animated quadrupeds, and will be expanding our range of models over the next few months. If you'd like to see our roadmap for animation categories, check it out on our website.
Please note: The new version of Anything World is not compatible with the legacy version of the package. If you want to upgrade an existing project please contact us on discord or via email.
Some features and resources of the legacy package are missing at launch (Eg. voice creation). These will be added back in later updates.
New rigged animations for quadruped animals!
New sample animation controllers to allow you to easily play and blend animations out of the box.
Likes and collections panel: organise and find your favourite models easily.
Expanded search results with better filtering.
Revamped vehicle and shader animation.
Behind the scenes object maker factory reworked for better performance and reliability.
Hotfix to patch some issues with scale.
Tweaked scaling calculation after database change.
Fixed compilation error in AWObj.
This update extends the features of the creation panel as well as improving performance and fixing bugs across the front and backend of the package.
In this version we added model serialization as a feature, allowing you to download assets to the Asset Database at point of request.
We've also included new animation controllers for the flying insect classes that have recently been added to the database, as well as improving and extending the default behaviour scripts we offer users.
Known Issues: Mac users may have issues adding to collections through GUI in this version.
Please note: The new version of Anything World is not compatible with the legacy version of the package. If you want to upgrade an existing project please contact us on discord or via email.
Some features and resources of the legacy package are missing at launch (Eg. voice creation). These will be added back in later updates.
Fixed bugs in creation.
Fixed bugs in My World panel.
Fixed bugs with collections.
Fixed compilation issues.
Fixed some bugs with sign up panel.
Added collider options for models.
Added details panel.
Added featured models to the browser.
Added extra default behaviour classes.
Added extra example behaviour scripts.
Added settings panel.
Added serialization for models.
Added transform panel as separate window.
Updated editor GUI for random movement.
Learn how to build and deploy real-time game applications using Anything World in minutes! We support Unity, Android, iOS and Web!
Anything World is an innovative platform that combines AI, voice computing and 3D rendering with layers of behavioural intelligence. We enable users to request and play with any object imaginable. It’s the easiest and fastest way for developers to create AI-driven 3D experiences powered by voice.
At Anything World we provide unity SDK where you can browse the collection of many different 3D characters which are fully textured and animated with our own custom set of behaviours!
Anything World is a platform that enables developers to build interactive 3D experiences up to 40% faster and more cost-effective than anyone else. Thanks to the power of AI. As a developer using our platform, you can browse an extensive collection of many different 3D assets and integrate them directly into your projects.
Head over to the Quickstart section to begin developing with Anything World.
Anything World allows you to bring your projects to life with 3D characters ready to be used for games, interactive experiences and immersive tech development such as augmented reality and virtual reality, where 3D is at its core.
Take a look at our showcase and get inspired!
Check out our Tutorial section or our website.
If you have any questions, join our Discord, send us an email at hello@anything.world, reach out on Facebook, connect on LinkedIn, or Tweet to say hello.
This release brings in a ton of new features such as support for model serialization, extending our material loader to support more complex runtime material loading and as always performance and stability improvements across the board.
Introduced batched loading for models.
Updated habitats.
Better scaling for animation shaders.
Improved cloning for models.
Various bug fixes in the creation process.
26/11/21
Brrr! We've got a brand new patch update just in time for festive season!
This patch completely overhauls the search panel and makes it super easy and intuitive to find the models you need, we've also added UI scaling so you can browse models in whatever size is most comfortable for you.
New Anything Creator panel UI look.
Scalable thumbnails.
Minor grid bug fix.
Fixed voice example scene.
Fixed some animation bugs.
25/08/2021
This release brings in a ton of new features such as support for model serialisation, extending our material loader to support more complex runtime material loading and as always performance and stability improvements across the board.
Added interface to define default shaders for AW model creation (Anything Settings)
Added extended support for different types of texture maps in material loader, shaders.
Added session logging.
Added model serialization.
Added tiling offset support for base maps.
Error logs for missing URP/HDRP when opening Creator/trying to create a model.
Optimized and consolidated editor textures.
Updated various interfaces in the Anything Creator, Settings and Login/Sign Up panels.
Changed default shaders from HLSL to Shader Graph.
Changed some joint parameters for quadrupeds and quadruped-ungulate.
Default Anything World shaders now automatically load in when not defined in the settings panel.
Fixed bug that caused voice panel to break under certain conditions.
Fixed problem with winged waddling creatures' wings to migrate away from the body.
Patched Unity bug that prevents transparent materials from being instantiated at runtime correctly.
Fixed model attribution generation to prevent duplicates and update more quickly.
Fixed issue where Anything Setup would be duplicated on deletion and undoing action.
Platform dependent compilation for Unity 2021 editor compatibility.
Fixed and improved flocking generation.
Fixed habitat generation.
Fixed bug with grid system.
Fixes to bugs when loading some OBJs with non-decimal scientific notation.
Fixes to voice.
Fixed transparency handling in MTL loader to prefer D over Tr (3ds Max specific
Anything World's Unity SDK is supported and tested with Unity Version 2020/2021 LTS with URP.
11/11/2021
This update brings a huge graphical and performance overhaul to the Anything Creator panel, we've added new UI elements and optimized serving search results to make your development process smoother.
Additionally, we've fixed bugs across the animation and creation processes so creating with Anything World is better than ever before.
Added new cancel/clear search button in Object Creator panel.
Optimised search algorithm and thumbnail loading for object creator search panel.
Migrated to new API endpoints.
Fixed issue with character encoding when requesting some objects.
Fix issues with some prefab animations.
Fix to attribution management.
Fix to grid serialization.
Minor patch addressing some bugs in signup and login.
Please note: The new version of Anything World is not compatible with the legacy version of the package. If you want to upgrade an existing project please contact us on discord or via email.
Some features and resources of the legacy package are missing at launch (Eg. voice creation). These will be added back in later updates.
Fixed bugs with signup panel.
Fixed style not found bug when opening browser panel.
Fixed floor positioning bug.
Resolved issue where searching for "tree" would not return results.
Frequently asked questions about Anything World
You can start using our SDK for free.
Anything World works on any device capable of WebGL rendering, that is all modern web browsers.
For developers, we provide integration guidelines & SDKs for integrating Anything World into the web and Unity.
We're working towards opening Anything World for 3D model submission from the community.
We're open to discussing custom content with select partners! Reach us at hello@anything.world.
You can reach us via support@anything.world or connect with the community on and we'll help out!
3.1.14
27/09/21
This module allows developers to access the Anything World TTS (Text-to-speech) engine.
delegate void
AWSpeechHandler (string testResponse)
delegate void
AWSpeechDoneHandler (string testResponse)
void
StartListening
(
AWSpeechHandler
responseCallback,
AWSpeechDoneHandler
doneCallback)
void
StartListening
(
AWSpeechDoneHandler
doneCallback)
void
StopListening
()
void
Speak
(string thingToSay, string voiceName="none")
void
ListenForInterval
(float time,
AWSpeechDoneHandler
doneCallBack)
void
ListenForInterval
(float time,
AWSpeechHandler
responseCallBack, AWSpeechDoneHandler doneCallBack)
delegate void AnythingWorld.Speech.AnythingSpeech.AWSpeechDoneHandler (string testResponse)
delegate void AnythingWorld.Speech.AnythingSpeech.AWSpeechHandler (string testResponse)
void AnythingWorld.Speech.AnythingSpeech.ListenForInterval (float time, AWSpeechDoneHandler doneCallBack)
Listen for a specified amount of time and receive a string to a callback.
void AnythingWorld.Speech.AnythingSpeech.ListenForInterval (float time, AWSpeechHandler responseCallBack, AWSpeechDoneHandler doneCallBack)
void AnythingWorld.Speech.AnythingSpeech.Speak (string thingToSay, string voiceName = "none")
Use speech synthesis to say input string.
void AnythingWorld.Speech.AnythingSpeech.StartListening (AWSpeechDoneHandler doneCallback)
void AnythingWorld.Speech.AnythingSpeech.StartListening (AWSpeechHandler responseCallback, AWSpeechDoneHandler doneCallback)
Activates voice input and starts listening to the user.
void AnythingWorld.Speech.AnythingSpeech.StopListening()
Deactivate voice input and stop listening.
AnythingSpeech AnythingWorld.Speech.AnythingSpeech.Instance
time
Time in seconds to listen.
responseCallBack
Callback handling any detected changes to the input string during listening.
doneCallBack
Callback handling the final detected string once listening completed
thingToSay
String to vocalise
voiceName
Name of voice
You can use the Anything World's API in your application to request 3D models and other data based on different search criteria.
After generating the API key in our Dashboard, the API key can be used to authorize requests to the Anything World's API.
Bear in mind that many endpoints require the API to generate results.
The API is currently experimental and is subject to change. For use in a critical production environment, please reach out to us at hello@anything.world.
GET
https://api.anything.world/anything?key=<API_KEY>&name=<NAME>
Retrieve a single model (JSON response) based on its name. If there is an exact match it will be returned, otherwise a similar result (if found), or no model otherwise.
key*
String
API key
name*
String
Name to search, e.g. dog
fuzzy
Boolean
Whether to enable approximate matching (true by default)
GET
https://api.anything.world/anything?key=<API_KEY>&search=<QUERY>
Get a JSON array representing all models that matched the query string, which can be anything, such as a name (e.g. "cat"), a tag (e.g. "Christmas"), a habitat (e.g. "jungle" or "desert") or a taxonomical category (e.g. "animal" or "object").
key*
String
Your API key
search*
String
Search query
fuzzy
Boolean
Whether approximate matches are returned (default is true)
Setup your Unreal project
This page introduces the Anything World plugin for Unreal Engine 5 and gives indications on how to install it and start using it. This plugin allows you to browse for static and animated 3D models in Unreal and spawn them directly in your Unreal projects.
The Anything World plugin for Unreal Engine 5 is currently in early access and its features should be considered experimental and may change significantly in later updates. Please take this into account when considering using this plugin in your specific use case.
Requirements:
Unreal Engine 5.0 or above
Visual Studios 2019
Anything World Account Details
Anything World SDK
If you're completely new to Unreal it might be a good idea to learn a bit about the Unreal interface. The documentation provided by the Unreal team is a great place to start learning.
Once you've got the basics down, follow this guide and see how to get started with creating 3D content in Unreal!
Create an account through the Anything World website to get access to the Anything World SDK for Unreal.
Our REST API requires a unique developer API key for authentication in order to allow make APIs calls.
Download the latest version of the Anything World plugin for Unreal Engine 5 (not the Unity package) from your account page in Anything World’s website.
In your file browser, extract the “AnythingWorld” plugin folder from the zip file.
In your file browser, copy the “AnythingWorld” plugin folder and paste it inside the “Plugins” folder of your Unreal project.
Example: if your project is called “Example”, it should have a top-level folder called “Example”, with folders like “Content”, “Plugins”, etc., and “AnythingWorld” needs to go inside “Plugins”. If you don't have a “Plugins” folder, create it first.
Open your Unreal project in the Unreal Editor of Unreal Engine 5. In the main menu bar, navigate to “Edit” → “Plugins” to open the plugins available in your project. In a section called “Other”, you should see the Anything World plugin and tick the plugin’s checkbox.
You will then see an “AnythingWorld” section in the main menu bar of the Unreal Editor. You can click it to show “Settings” and “Anything Search”. Click “Anything Search”.
Log in to your Anything World account. Internally, this action will grant the plugin access to your Anything World API key, which is necessary to interact with our server.
Now you should be able to see the landing page of the Anything World browser, which you may want to dock. You can see the featured models on the top, and other relevant sections of models below, such as those with the highest number of likes and the most used models.
You can search for specific models by entering a query in the text bar and pressing enter. After a small time, results will appear, and you may want to filter and sort them with the available options if you want.
Clicking on any model will add it to your current level, where you can manipulate it as any actor. If the model’s thumbnail in the browser had a play icon in the top left corner, it means it is an animated model, so you will be able to see it playing animations when you play in the level.
You can access the animations, mesh, materials and textures in the “DynamicAssets” folder within the plugin’s content folder, via Unreal’s content drawer.
If the Plugins Folder does not appear automatically you can enable the Plugin folder to display by selecting the settings option on the Content Drawer and enabling 'Show Popup Content'
For the model to be able to move through the model with a simple default random movement behaviour, you need to add a NavMeshBoundsVolume to the level.
Adjust the location and scale of the volume to cover the walkable surface of the map. You may want to turn on the navigation visualization option pressing “P”.
If you now press the play button, you will see how the model moves around!
After you clicked to place the first model, you may notice a “AWMeshManager” was added to the scene. It controls the placement of models in a grid-like fashion, and exposes as editable properties the number of columns and the spacing between rows and columns, that you may edit based on your preferences, as well as the grid origin location.
This class allows you to make generated habitats using the Anything World habitat engine.
void
MakeHabitat
(string habitatName, bool createCreatures)
void
MakeHabitat
(string habitatName)
void AnythingWorld.Habitat.AnythingHabitat.MakeHabitat (string habitatName)
void AnythingWorld.Habitat.AnythingHabitat.MakeHabitat (string habitatName, bool createCreatures)
AnythingHabitat AnythingWorld.Habitat.AnythingHabitat.Instance
This class allows you to access the Anything World creation engine to make objects in runtime using code.
List<
AWObj
>
MakeManyObjects
(string objName, int quantity, bool hasBehaviour=true)
AWObj MakeObject
(string objName, bool hasBehaviour=true, bool hasCollider=true)
AWObj MakeObject
(string objName, Transform parentTransform, bool hasBehaviour=true, bool hasCollider=true, bool positionGlobally=false)
AWObj MakeObject
(string objName, Transform transform, Transform parentTransform, bool hasBehaviour=true, bool hasCollider=true, bool positionGlobally=false)
AWObj MakeObject
(string objName, Vector3 objectPos, bool hasBehaviour=true, bool hasCollider=true)
AWObj MakeObject
(string objName, Vector3 objectPos, Quaternion objectRot, bool hasBehaviour=true, bool hasCollider=true)
AWObj MakeObject
(string objName, Vector3 objectPos, Quaternion objectRot, Vector3 objectScale, bool hasBehaviour=true, bool hasCollider=true)
AWObj MakeObject
(string objName, Vector3 objectPos, Quaternion objectRot, Vector3 objectScale, Transform parentTransform, bool hasBehaviour=true, bool hasCollider=true, bool positionGlobally=false)
List< AWObj > AnythingWorld.AnythingCreator.MakeManyObjects (string objName, int quantity, bool hasBehaviour = true)
AWObj AnythingWorld.AnythingCreator.MakeObject(string objName, bool hasBehaviour = true, bool hasCollider = true)
AWObj AnythingWorld.AnythingCreator.MakeObject (string objName, Transform parentTransform, bool hasBehaviour = true, bool hasCollider = true, bool positionGlobally = false)
AWObj AnythingWorld.AnythingCreator.MakeObject (string objName, Transform transform, Transform parentTransform, bool hasBehaviour = true, bool hasCollider = true, bool positionGlobally = false )
AWObj AnythingWorld.AnythingCreator.MakeObject (string objName, Vector3 objectPos, bool hasBehaviour = true, bool hasCollider = true)
AWObj AnythingWorld.AnythingCreator.MakeObject (string objName, Vector3 objectPos, Quaternion objectRot, bool hasBehaviour = true, bool hasCollider = true)
AWObj AnythingWorld.AnythingCreator.MakeObject (string objName, Vector3 objectPos, Quaternion objectRot, Vector3 objectScale, bool hasBehaviour = true, bool hasCollider = true)
AWObj AnythingWorld.AnythingCreator.MakeObject (string objName, Vector3 objectPos, Quaternion objectRot, Vector3 objectScale, Transform parentTransform, bool hasBehaviour = true, bool hasCollider = true, bool positionGlobally = false)
AnythingCreator AnythingWorld.AnythingCreator.Instance
Dictionary<string, List > AnythingWorld.AnythingCreator.MadeThings
21/02/23
28/11/22
09/11/22
05/09/22
02/08/22
12/04/22
13/01/22
26/11/21
11/11/21
Sometimes luck just isn't on your side. Luckily, we are. Here are a few troubleshooting tips if you're seeing compiler or linker errors while trying to build Anything World.
Set up your Unity Project
Unity 2020.3 or above
Anything World Account Details
Anything World SDK
Please note: This package is not compatible out of the box with the previous (Classic) versions of Anything World. Contact us on discord or email if you have a project that needs migrating.
If you're completely new to Unity it might be a good idea to learn a bit about the Unity interface. The first 6 videos in the Unity essentials series are a great way to pick up the basics.
Once you've got the basics down, follow this guide and see how to get started with creating 3D content in Unity!
Create an account through the Anything World website to get access to the Anything World SDK for Unity.
Our REST API requires a unique developer API key for authentication in order to allow make APIs calls.
Step 1: Download the latest Unity Anything World SDK from the My Account page on the Anything.World website.
Step 2: Open the project with version Unity 2020.3 or above. Open the Package Manager panel and change the Package dropdown option to “Unity Registry.”
If using Unity 2020: Install the Editor Coroutines and NewtonSoft Json Packages.
In some cases the Newtonsoft Json package can fail to appear in the Unity Registry Package Manager. If this is the case select the "+" icon in the top right corner of the package manage and select the "Add package from git URL" option. Enter com.unity.nuget.newtonsoft-json in the search bar then select the add button. This will automatically install the necessary nuget package required for the Unity 2020 version.
Step 3. For all versions install Universal RP packages using the Unity Package Manager.
Step 4: Import the AnythingWorld.unitypackage file into the project.
Step 5: Create a URP Asset (with Universal Renderer) in the Project. Open Project Settings and navigate to the Graphics section. Add the new URP Asset to the Scriptable Render Pipeline Settings.
For Unity 2020 Versions the Universal Pipeline Asset is labeled as Pipeline Asset (Forward Renderer)
Step 6: Select the Anything World dropdown menu and open the Anything Browser. Log in using your Anything World account with your email and password. Two new panels will appear after signing in, the Anything Browser and the My World panels.
The Anything Browser allows you to find animated and still models. Search for a 3D model by typing the keyword in the search bar and press the enter key to find the results. The filter options gives you control over the types of models that are displayed in the search results.
You can also save these models for later by either selecting the My Likes or the My List icon on your favourite models.
The Don’t Animate Model option allows you to choose if you want the model to have animations when moved to your scene.
The Enable Maker Debug Messages option provides unity console messages about the models status when moved to your scene.
Parent Transform allows you to input a parent object for your model when it is placed in the scene.
Position enables you to select the starting place for your model based on the inputs given for the X, Y, and Z coordinates.
Rotation gives you the ability to alter the orientation of the model when placed in the scene for the X, Y, and Z parameters.
Scale Multiplier increases the size of the models on all coordinates by the input value that you provide.
The Animated Behaviour option allows you to attach scripts to the models directly from the Anything Browser. This option comes with a default Random Movement script to help you get started.
The Vehicle behaviours option can be used for providing functionality to cars and other four wheeled vehicles. This option comes with a default RandomFlyingMovement script to help you get started.
The Flying Vehicle behaviours option is useful for adding functionality to planes and other forms of aviation models. This option comes with a default RandomFlyingMovement script to help you get started.
The Static Behaviour option allows you to apply a mono script to the model that is static.
The Shader Behaviour option provides a way to attach custom shader scripts to the model.
Grid Gizmos: Button that displays the origin point in relation to the grid.
Grid Origin: The starting position of the grid placement feature.
Cell Width: The distance between each placed model.
Grid Width: The row size of the grid.
The My World panel allows you to find your favourite models quickly. There are two ways to save the models in the My World panel.
Search for a model in the Anything Browser, then select the heart or “My Like” button on the best model. These models can be viewed in the “My Likes” view on the My World panel.
Search for a model in the Anything Browser, then select the list icon button on the right side of the model result box. When selected, the “My List” button will open a window that allows you to add the model to a pre-existing collection or create a new collection.
Once a model is added to the collection, the model can be found in the “My Lists” view within the My World panel.
The reset button that is displayed next to the Grid Off button allows you to reset the scene, reset the creator, or reset all.
This option will remove all assets that were provided by Anything World SDK from your scene. An additional pop-up box will appear to verify if you are sure you want to reset the scene.
This option will remove all search results, filters, and Make Option parameters applied for the Anything Browser and My World panels. An additional pop-up box will appear to verify if you are sure you want to reset the creator.
This option will remove all assets from the scene and return that Anything Browser and My World panels back to default. An additional pop-up box will appear to verify if you are sure you want to reset everything.
The plugin uses Unreal Blueprints for UI and C++ classes for the rest of the logic, including the dynamic loading of meshes and related assets (textures, materials, animations) and actors and characters, as well as their behaviours. The Unreal coding conventions are followed and every class is well documented in code, but it is a good idea to start by having a look at some of the main classes in the following class diagram, followed by a brief explanation of their purpose.
A logged in user interacts with the Search Panel to browse for models, connecting to the Anything World web API via the AW API Manager singleton. The information from models is stored in a model entry map, where values are of the Model Entry struct, containing basic information and metadata of 3D models, as well as URLs pointing to their asset files. This information is visualised in the UI as Model Buttons, depicting a thumbnail of the model and some additional information.
If the user then clicks the button of a certain model, it triggers the downloading of its files and the model spawning and setup into the world. This process is done with the help of another singleton class, the AW Mesh Manager, which is added to the map unless you had one already there. The AW Mesh Manager checks the type of model that is present (static, animated or vehicle) to select the suitable loader (with Mesh Loader as abstract parent), that will create the actual actor that is placed into the world in a grid fashion:
Static models for which the FBX file is available are loaded using the Fbx Mesh Loader (which internally uses Unreal Engine’s Fbx Factory). The resulting actor is a AW Static Mesh Actor, having a Static Mesh Component.
Static models for which only an OBJ file is available are loaded using the Obj Mesh Loader, which also yields an AW Static Mesh Actor. OBJ support may be deprecated in the future and requires the parsing of a material file. Here the Fbx Factory is also used, but support for OBJ has less coverage so the Fbx Mesh Loader should be preferred when possible.
Rigged animated models are loaded using the Anim Fbx Mesh Loader, which inherits from the Fbx Mesh Loader but loads a skeleton and animations in addition to the mesh. The resulting actor is an AW Character, a type of Character that gets an animation Blueprint automatically created by default, as well as a simple random movement behaviour assigned (which requires a navigation mesh to work).
Vehicle models are loaded using the Vehicle Mesh Loader, also based on the Fbx Mesh Loader, but in charge of importing and setting up a hierarchy of multiple static meshes that form the parts of a vehicle, such as the chassis (main part or “body”) and each individual wheel (children components).
The content of 3D models are loaded to the “DynamicAssets” folder under the plugin’s “Content” directory. By default these Unreal assets are not persisted, but to do so you just need to select them in the content drawer and save them, like you would do for any regular asset that you imported manually. This way, they will be persisted if you restart the editor, meaning you can also save maps containing the assets. Note that the only assets that do not fully support saving options at this time are those loaded from OBJ meshes.
Ok, so you want to use our models without using our UI. That’s fine (just note there’s support for editor-time spawning only for now), you can follow this process:
Create an AW API Manager, to be able to request models. If you don’t want to use the login UI, pass your AW API key (available in your account page in Anything World’s website) to the function “GetAWAPIManagerInstance”.
Make a query to the AW API. You can use the function “StartModelSearch” from AW API Manager to make a search for all the models matching the query and fill the “ModelEntryMap” with the search results. If you are only interested in one model at a time, consider switching to using the “name” parameter of the “anything” endpoint of our web API, by implementing your custom function following the web API documentation.
Use the “StartLoadingMesh” function of AW Mesh Manager with the name of the mesh that you want to load, which should be one of the keys of the “ModelEntryMap” of AW API Manager resulting from the most recent search. “StartLoadingMesh” in AW Mesh Manager shows how the functions to load a mesh from URL need to be called, selecting the right loader and leading to spawn the right type of actor. If you don’t want to use the AW Mesh Manager, you can call these loaders in the way you see fit, as long as you provide them with the Model Entry struct obtained from a previous search to the API, or if you also modify how that is handled, to match your particular preferences.
Note that a “Callback” is passed to the loaders to decide how to set up the actor once the loader has spawned it. The AW Mesh Manager adjusts its pivot and position in a grid fashion, but you could potentially override that or pass an arbitrary function if you want to place the actor in a specific position or add any custom logic.
Not yet, but this is planned for a future update.
No.
The models that are animated have a play icon in the top left corner of their thumbnails in their Model Button on the Search Panel. The others simply don’t have animations at this point. Some of them (for example some animals which aren’t animated yet) will be animated in the future, but others (for instance static objects) are likely to remain static. Vehicles will be animated using per-part rotation instead of rigging animation.
Set up your Unity Project
If you're completely new to Unity it might be a good idea to learn a bit about the Unity interface. The first 6 videos in the Unity essentials series is a great way to pick up the basics.
Once you've got the basics down, follow this guide and see how to get started with creating 3D content in Unity!
Sign-in to the developer portal to get your API Key! Get your unique developer API key from the dashboard.
Our REST API requires a unique developer API key for authentication in order to allow make APIs calls.
Step 1: Download the latest Unity Anything World SDK
Anything World currently provides Unity SDK. Unreal SDK will be coming soon.
Step 2: Open the project with Unity 2019.4 or above.
Step 3: Install the Editor Coroutines and Universal RP packages using the Unity Package Manager.
Step 4: Import the Anything World.unitypackage file into the project.
Step 5: Add the API: Anything World > Settings
Step 6: Open Test Scene: Assets > Anything World > Scenes > TestArea to get your creativity going!
You can also add the AnythingSetup prefab directly to any existing scene. Find the prefab: Assets > Anything World > Prefabs > Resources > AnythingSetup.prefab drag it out to Hierarchy Panel.
Step 7: Find a 3D model you like to see: Anything World > Anything Creator > Object Creator type in the name of the model for example: "Zebra" and select the one you like to see.
Looking for ideas on what to search for? How about: "Cat", "llama", "plane", "snake", "shark", "bee", "car"!
Step 8: Hit Play and see it come to life!
With Anything World you can make 3D objects stream even at the runtime. Try it out!
Setup Voice Integration
Step 1: Ensure that Speech recognition is enabled on windows
Step 2: Ensure that Input devices such as microphones are configured and working
Step 3: Open Test Scene: Assets > Anything World > Scenes > TestArea
Step 4: Open Anything World > Anything Creator > Voice Creator and activate the microphone and speak naturally to request the object from the Anything World.
You can request objects inside the editor or during the runtime! Try requesting objects by saying: "Make me a Sheep!" or "Make 20 Sharks"
Step 5: All your creations should be now live!
Reference to of the object being made. Objects are generated asynchronously, make the status of your object attached to AWObj can be queried using the ObjectMade bool property.
habitatName
createCreatures
Parameters
Type
Definition
objName
string
Name of object to be requested from server.
objectPos
Vector3
Position in scene to be applied requested object.
objectRot
Quaternion
Local rotation to be applied to requested object.
objectScale
Vector3
Local scale to be applied to request object.
parentTransform
Transform
Transform that new object will be parented to.
transfrom
Transfrom
transform to be applied to object after creation
hasBehaviour
bool
Will object receive default behaviour & animations.
hasCollider
bool
Will object receive automatically generated collider around model.
positionGlobally
bool
Will object be applied globally? (Default: false, locally)