asp.netasp.net-mvcasp.net-mvc-33d-modellingvirtual-tour

3D modelling for Virtual Tour type web application


When I was developing for realtors, we referred to a service that would photograph the inside of a listed property, run overlapping images through their process, and produce a '3d tour' of the property, where Joe public viewing the listing could experience the images as if they were inside the property, using their mouse to rotate their viewpoint fully 360 degrees in two planes. Here is an example of such a Virtual Tour service.

I would like to develop a similar application, but less detailed, and using less real imagery in favour of textures and artificial, injected imagery, to allow the placement of posters, menus etc. inside the model of the venue, on walls etc. I suspect using a 3D gaming engine here would give me more control of the content than the total virtual tour type setup, but I need to be able to fairly easily create a large surface texture, such as a wall, from a photo of that wall.

Where do I start if I want to enable my web portal to offer such modelling for my clients, in my ASP.NET MVC3 application? I know I'll be making extensive use here of third party libraries, but I would prefer recommendations on those that don't offer a total solution, just the tools to for me to assemble a total solution.


Solution

  • Unity3d (unity3d.com) is an affordable but powerful game engine that might be a good fit for you for these reasons:

    1. It offers a web plugin so you could host it via your mvc project and inject data into it from your mvc controllers when pages are requested.
    2. Its native language is C#, so the virtual tour/game engine parts of your project will be in the same language as the mvc backend (and presumably other parts of your ecosystem).
    3. It is capable of stunning visual quality with features such as its "Beast" light mapping engine. Rendering virtual venues should be a home run.
    4. You can use your photos as textures easily.

    They have a free trial and an active community at forum.unity3d.com, so give it a look.