Web-based 2D and 3D visualization has become more popular, and with the wealth of utility it provides, it is easy to see why. When done well, developers can enable users to share designs from a plethora of markets with clients, other devs, and anyone else in a simple, user-friendly manner.
When developers look at the cost of third-party ways to provide this service, a common question appears: Why not do it ourselves? This leads to a follow-up discussion of doing it entirely from scratch or taking advantage of a software toolkit to ease the development burden.
After speaking with several people, including one of the principal developers of HOOPS Communicator, an SDK that does exactly what many teams are looking for, we can explore this topic.
In this post, we give our perspective on the pros and cons of purchasing HOOPS Communicator and building out your own visualization system with or without Three.js.
Who is HOOPS Communicator Right for?
HOOPS Communicator is a 3D streaming server and web-based rendering engine, designed to offer a variety of visualization capabilities primarily for engineering application developers.
The first and most important consideration when compared directly to DIY options and Three.js is cost. HOOPS Communicator is not going to be a good fit for everyone, and there are cases where DIY options may be better suited to your use case. This is not a cheap, discount option for the vast majority of visualization needs. With that said, there are potentially huge costs associated with DIY options as well. We will start by discussing what your money would get you with HOOPS Communicator.
The vast majority of people who choose HOOPS Communicator do so by purchasing its platform version, pairing it with HOOPS Exchange for a more comprehensive feature set. This package is called HOOPS Web Platform. We will give a broad overview of what this offers, and then discuss how this contrasts with Three.js and DIY.
HOOPS Communicator is well-suited to those looking for a premium, easily scalable option for comparably fast web visualization capabilities. The toolkit enables the handling of massive models, as well as processing a huge number of files in quick succession. Ease of Navigation through complex multi-part assemblies, intelligent streaming, and server-side rendering are all highlights of this SDK. You can check out a demo of these capabilities with the demo viewer offered by Tech Soft 3D.
HOOPS Communicator comes out of the box equipped to handle engineering-specific workflows, including building data, model trees, and other features key to engineering applications. A DIY option is as capable of doing this as your team is capable of making it do so, but you will obviously have to build them yourself.
As an analogy, Three.js is a prebuilt engine, Communicator is an entire car. While the possibilities of what you can do with just an engine are near limitless, the work required is extensive.
Compared to many other paid alternatives, HOOPS Communicator is fast. Its strong graphics capabilities and deep customization options allow for performance even on dated systems.
Tech Soft 3D does not host the data for you. While this does allow you to retain full control over your data, something many organizations will value, you will need to set up cloud infrastructure of your choosing.
When paired with HOOPS Exchange, as it often is, users gain access to the leading data translation technology. This will allow your application access to over 30 CAD file formats. The ease of integration with Communicator is a big selling point. You can view a full product overview for HOOPS Web Platform here, for far more details on the features and capabilities of this toolkit
Finally, one of the biggest things to consider when discussing a product offering versus DIY options is support. The latter simply will not have the developer support that any commercial offering can give. HOOPS Products are not sold and forgotten: Tech Soft 3D creates a strategic relationship with its partners, and you can expect reliable development support that simply isn't possible with DIY options.
HOOPS Communicator is an engineering-focused SDK that supports comprehensive engineering features out of the box. It comes with a partnership model, dedicated to quickly resolving development issues. HOOPS Communicator is not hosted by Tech Soft 3D but on your own infrastructure. This is not a low-cost option but can often effectively pay for itself through saved development time/costs.
Who is Three.js/DIY Right For?
For those looking to save costs, for an utterly customizable product, and who have the right development teams, DIY options for 3D web visualization can be tempting. Here, we will focus on the from-scratch, entirely DIY option (usually using WebGL) and the more practical choice of Three.js. We will focus predominantly on the latter.
Full DIY/ WebGL
To get it out of the way: building entirely from scratch, even with WebGL, is rarely done for many reasons. The big three are cost, time, and skills. Going this route will take a skilled development team a long, long time, and cost a huge amount of resources. In many cases, the full build-out time of building an application form the ground up can be years, and this does not come cheap.
Very simply, this is probably only suited to those with extremely niche use cases, long to-market times, and/or huge organizations that can dedicate the time and money to making this happen. The benefits include absolute control, customization, and optimization as well as being free from a licensing perspective.
While HOOPS Communicator is specifically focused on engineering applications, Three.js is more of a blank slate from which to build web visualization tools for other industries.
Three.js is a fantastic resource for developers in the gaming space. The library offers a host of features including shadows, advanced rendering, and effects common in this area.
There are many use cases where developers may want to go with a DIY solution, and this is a popular direction to go. Developers looking to save licensing costs and have deep customization will find this a great option.
As with any choice here, there are downsides. This option is not going to be as fast at getting to market as a licensed option. While the Three.js forums are fantastic and there is a wonderful community, paid developer-to-developer support can quickly resolve issues and accelerate development.
If you have the team to create what you need, Three.js is a flexible, popular tool to help developers make a customizable, powerful product. Teams should consider their to-market timelines and expectations, as well as their budget at team experience.
Three.js is a flexible pedestal for a host of 3D visualization use cases and offers a level of customizability beyond even what an SDK can offer. It is free to get started with and has a strong community to aid your development. It will not have the bells and whistles for engineering applications ready-made, you would have to develop these from scratch yourself.
Licensed Options vs. DIY and More Resources
Overall, comparing the different options available to developers for web visualization is essential to understanding which may be best for your use case.