Since the beginning of 2009, we’ve been busy working on a new product to increase dramatically the realism of real time 3D simulations. I think it is now time to start showing the first preview of this new product… In today’s post we’ll talk about the driving ideas behind the product, why we created it, and the early conception choices we have made.
Realism is more than just nice looking 3D
Since we have launched our company, our mission has been to bring the most realistic 3D simulations to our customers. 3D simulation consists of creating a virtual model of a real life (or hypothetical) situation, usually to study it (there are other uses of 3D simulation technologies that we will discuss in another post). Realism is of course the goal of anyone who develops or uses a simulation.
3D graphic realism can be stunning nowadays but it represents only one element of realism. 3D is only a tool, which should be made as useful as possible for the real aims of the software application. When we decided to create our simulation engine, we had of course graphic realism in mind (and I think the screenshots tells enough of what we have done on that point) but more importantly we had identified other essential aspects of realism for our product.
The SimplyEngine is what we like to call a “3D simulation engine”, that is the core software on which any real time 3D simulation can be built. We decided to call it a “simulation engine”, because it is not only a nice looking 3D engine, but it includes important elements for physic realism and for software and hardware interactions.
Our first 3D simulations were made for robotic simulation. Testing and validating the behavior of a robot in a 3D software application is a challenging task. One essential aspect of this challenge is physics realism: creating a simulation where objects behave realistically, where they are liable to physic laws.
When we created our product, physic realism was one of the key priorities. We have created a full software library dedicated to it, with among other thing the ability to use any of the physic engines available on the market (NVidia PhysX, Newton Game Dynamics, Havok, ODE…).
Interactions with software and hardware
As I was saying above, we really consider that 3D technologies should be a tool. A tool that can be applied to many problems and that therefore should have the ability to interact easily with many other elements (software, hardware or human beings) to create a solution.
Our 3D simulation engine is based on a service oriented software architecture that has been designed to make every part of our product easily compatible with any other software application. We’ll discuss in an upcoming post the benefits of our service oriented software architecture.
Ease of use
Finally, we believe that the user should always be the main focus of any software application. That’s why our developments are focused on the ease of use of our products. Our goal is that any software developer should be able to use 3D technologies in his applications, and in ways relevant to his business needs, without any specific formation. Again it will take another post to tell you more about the efforts we made on the ease of use… stay tuned! :)