The latest update to the WRLD Unity SDK allows you to customize your own 3D indoor maps for any projects in Unity. We’ve included new features for you to use real-world environments in Unity to create digital twin experiences. These indoor/outdoor virtual experiences are available on a global scale, for both gaming and digital building applications.
For example, with an indoor map of your office and the WRLD map design tools, you can create a smart workplace to:
- Locate employees and track assets in real-time.
- Understand and monitor workspaces in real-time to optimize meeting room bookings.
- Monitor energy usage.
- Connect 3D indoor maps to smart building systems, IoT technologies, and occupancy control systems for a more centralized experience.
You could gamify your new virtual office world for new or existing employees, or create location-based games that go indoors, all while using Unity’s material systems to customize your indoor environments.
New 3D Indoor Maps Features
The new IndoorMapsApi allows developers to query and manipulate building indoor maps, along with associated examples. To get started quickly creating your 3D indoor map, watch our indoor map tutorials.
- Seamlessly move from the exterior of a building to look inside, floor-by-floor.
- Customize the appearance of indoor maps using Unity’s Materials system.
- Provide an “indoor GPS” experience for users. WRLD’s 3D indoor maps are geo-referenced to their real world position so you can use them in conjunction with third party Indoor Positioning Systems such as Indoor Atlas (who have a Unity plugin).
- Easily position Unity GameObjects inside buildings to bring them to life.
- Highlight the individual objects inside a building with the entity highlight features.
Improved Unity GameObject Positioning
We’ve added PositionerApi to simplify locating GameObjects within the WRLD environment, which makes it easier to position Unity GameObjects relative to features in the WRLD map. See the updated “Fly Object Over Map” for example usage.
You can now set the height of GameObjects above the terrain. An example of usage for this feature might be to position game pickups at a set height above the terrain so that they are just in reach for the player to jump for.
You can also position Unity GameObjects relative to buildings. This is great for drawing attention to key buildings by placing GameObjects over them. You might do this to show ratings for the top hotels in area, or help the player see which building their army should attack next.
Positioning works seamlessly with both Unity (local) and ECEF (global) coordinate systems so you can position objects anywhere around globe. Whether you are trying to build a capture-the-flag game in your local town or recreate Missile Command on a global scale, the positioning feature lets you place your objects precisely at geographic positions.
The new SpacesApi allows you to create rays from either screen or geographic coordinates, finding the positions that intersect features on the WRLD map. These positions can then be used as parameters provided to other API points to query WRLD objects. For instance you might trace a ray through the player’s touch screen point to find out which building they have tapped, and then use the building highlight API to highlight the building that they tapped on.
This feature is great for allowing the user to pick objects. You can also use it to create your custom collision interactions outside of the Unity physics. This is useful for simple collision detection tasks that don’t require the expense of full physics. For instance, acoustic effects or AI pathfinding.
The EnvironmentFlatteningApi, allows you to flatten the WRLD environment along its vertical dimension, effectively letting you switch into a “2D mode”. This is great for when you want to highlight geographic content, without it being obstructed by buildings, trees or hills. For instance, you could use this feature to flatten the area around a building to look inside it using the IndoorMapsApi above.
Updated Input Options
Users on touchscreen desktop devices such as Microsoft Surface can now use touch and mouse input simultaneously.
New 3D Virtual Reality Support
We’ve added experimental support for Unity VR, with an associated example. This has been successfully deployed on Oculus Rift, HTC Vive, and Google Cardboard. Other VR platforms supported by Unity VR are also likely to work, with some minor configuration.
With our VR support you can immerse your users in the WRLD environment, allowing them to get a first person view from any position, both inside and outside buildings. You can take in the scenery from the top of Empire State Building or see what the view will be like from your hotel room before you arrive!
New Augmented Reality Support
We’ve added experimental AR support for using the WRLD Unity SDK with AR platforms so you can stretch out a city block on any flat surface. Get started quickly with full projects that show you how to integrate Google’s ARCore and Apple’s ARKit with the WRLD Unity SDK. Great for team collaboration, city planning, playing multi-strategy games, and more!
New Custom Label Support
We’ve introduced support for displaying labels for road names, place names and indoor map entities which is currently an experimental feature. Labels can be displayed inside and outside buildings, and smart occlusion culling removes overlapping labels to reduce visual clutter. You can customize labels with your own font or a completely different text renderer for more exotic text effects.
Get Started Building Virtual Outdoor to Indoor Worlds
If you’re updating your current version of the WRLD Unity SDK, please apply the update to your project before running scenes, and restart the Unity Editor after the update has been applied. We recommend backing up your project beforehand.
We look forward to seeing what you build. Please share with us on Twitter @wrld3d!