All those solutions allows you to draw some 3D content so if you don't have more specific needs you can look at other details:
Game Engine (e.g.UNITY) :
+Easy to start with
+Many components already done (like terrain, sky, water, GUI)
+Multiplatform - UNITY supports iOS, Android, PC, web out of the box.
-It's often hard to modify the working components for you own needs.
-Everything should be done in an engine-specific way.
3D API :
+Most universal - what you learn here is general 3D knowledge, useful in different engines/APIs.
+Full controll - you do everything by hand
-You need much of work for a decent project
-Platform specific
Web app :
+DEPLOY!!! - no installation, web storage and client/server architecture out of the box, access through the web, simple updates for all users.
-Will (probably) not work on mobile browsers.
-You don't have some cutting-edge features.
If you really need mobile, then I'd go for UNITY, the rest depends on your specific needs.