3D Engineering Animations: Development

3D Engineering Animation is the app made in Unity which features various engineering 3d models showing their working in and out. One of the best part of the project is that the 3d models don’t come with the app install; you need to download them within the app (Assetbundles used). This saves users mobile data as well gives him choice to download whatever he wishes to see. Currently the project has 50+ models in showcase. Project is huge, but we’ll discuss the crucial parts.

[Android App Link] [iOS App Link]

  • Pre-Unity Engine Phase

– Blender3D: Making of 3D Models. Rigging and Animating them.
– Information gathering related to the machinery for animation as well as data display purpose.

  • Frontend

Main Menu including two sections:
1. pre-downloaded models list
2. online library list
Once you hit the download button on any model in ‘online library’, it will get removed from there and put into ‘pre-downloaded models’ section. You can also view the model when offline.
– Settings: language selection; rotation, zoom, pan sensitivity; graphics quality; text-to-speech settings.
– Model View Screen: Includes various buttons and features to view the model. Also TTS reads out the information to you.

  • Backend (Unity side)

– Backend includes various functionality including camera movement around the 3D model, assetbundles, data consistency, in-app purchases, ads, etc.
Here is a part of Camera Movement script:

  • Backend (Server side)

– This involves how the mobile app interacts with the server to provide the required result. Network and HTTP errors are checked. All cases of data transferring with success or fail is considered.
For example: If servers are down (hosting service goes down) then the message of “Server is down. Please try again later” should be displayed.
– When the app start Unity asks for a .txt file (xml, json anything can be used) which is on the server. This text file has all the data of all the models. This text file is compared with the existing text file on the client side. If the client side text file’s data is different than the server file’s data, then the client side file is replaced by server side. So, when user has internet connectivity, the older client side file will be replaced with the new one, giving him access to additional models.

  • Achievements

– Currently has 1.5 Million+ downloads on Google Playstore
– Almost 10.5K ratings averaging 4.4/5
– Previously featured in “top500 overall” apps in different countries. Currently featured in “top500 educational” apps in different countries.

Leave a Reply

Your email address will not be published. Required fields are marked *