Back in 2003, Konami released the Game Boy Advance title, Boktai: The sun is in your hands. The physical cartridge included a light sensor that you needed to expose to sunlight in order to charge your in-game weapon. Now, using light estimation in mobile AR frameworks like ARCore 1.0 for Unity, it's possible to create gameplay just like that without the need of additional hardware -- giving you access to millions of users with AR-enabled devices!
Today, Unity developers can bring new forms of user interaction to life leveraging not only light-estimation, but features like motion tracking and environmental understanding.
ARCore 1.0 for Unity makes it so much easier for you to create mobile AR experiences for Android by leveraging Unity's tools and community.
We want to share some functional ideas that demonstrate the capabilities of ARCore 1.0 for Unity SDK, which we hope will inspire you to create your own use-cases and share them with our community. Start building today to reach millions of users with Android AR-enabled devices and unleash the creative potential of AR gameplay and user interaction.
How will you leverage Unity and ARCore to unleash your creative potential? Join the Unity Connect Mobile AR channel and share what you've been working on with a gif or video. Mobile AR is still very new and there's lots of room to explore and build unique applications. We'll be watching for the best ideas!
The following are some of the features that help you get creative with AR.
ARCore 1.0 for Unity provides a default grid that changes color for each new plane that it finds. You can easily modify the plane rendering by swapping out the TriGrid material texture.
If you want to modify the rendering further, you can change a single line of code in the PlaneGrid shader, you can also change the texture to one with transparency by returning the _GridColor * col. The colors are chosen randomly from an array in TrackedPlaneVisualizer.cs, so check that out if you have specific colors you want to use.
fixed4 frag (v2f i) : SV_Target
fixed4 col = tex2D(_MainTex, i.uv);
//return fixed4(_GridColor.rgb, col.r * i.color.a);
return _GridColor * col;
Don't only superimpose digital objects, modify and change the planes to give your app a unique look!
With oriented points, objects can be stuck to all different types of surfaces at any angle. You can take ARCore outside and start to liven up the world.
Another unique use-case takes advantage of the way we render AR by lining up objects on either side of a wall to create an x-ray effect.
ARCore returns an ambient light value based on overall intensity of the pixels in the current camera frame. The SDK has special shaders that allow you to easily make any object's shading adjust to its current environment. You can use take advantage of this to create a unique effect in which characters react to their current environment, as shown below.
Motion tracking will play an increasingly important role in mobile AR apps. Imagine using proximity and motion as key drivers for minor interactions in your application, as demonstrated below.
Motion tracking is not limited to a small space, either. The device moves through the world understanding its own orientation and position. You can allows users to record motion paths simply drop markers behind them to retrace their path (as shown below).
ARCore resources and how to share your ideas
Share your ideas with the community and use ARCore 1.0 for Unity to create high quality AR apps for more than 100 million Android devices on Google Play! Here's how.
- Setup ARCore 1.0 for Unity.
- Join the Unity Connect Mobile AR channel for an opportunity to meet, chat, and learn from other community creators working on AR apps.
- Share a short use-case video or a gif with a description on the channel.
- Unity will be actively engaging in the channel and watching for the most creative ideas!
In San Francisco during GDC?
Attend one of our ARCore for Unity free hands-on workshops to learn how to master the SDK (Pixel devices will be provided/BYO Laptop). For more information, visit Unity at GDC.