This page provides information about 4D digital humans in Chaos Anima.
What are 4D Digital Humans?
This is a new type of model that gathers the best features of the two classic types of models, the realism from the static Ready Posed and the animation from the Rigged, in a mix that elevates the whole to a new category of unmatched realism.
They are made using state-of-the-art technology capable of capturing the performance of real live people during a period of time and translate it to an animated 3D geometry with animated textures. The basic concept is the same that the one used to create static Ready Posed models but adding time to the equation, which brings the whole process to a whole new level of complexity.
This new capture process is capable of preserving all the details of the clothing and offer facial animations that provide unattainable realism.
All this is possible thanks to a new 3D scan capture over a period of time and a new post-process technology developed by AXYZ design that allows us to apply a lossless compression that reduces the captured data from ~5GB to only 200-400MB while preserving absolutely all the detail of the source animated mesh and textures.
We have created our own native Anima 4D format file to package all the animation data of each actor, and this gives us several advantages over any other alternatives available.
Geometry Optimization
First of all, as mentioned before, no other alternative is capable of storing that much information in such little space. For example, our format can store 100 Mb of animated meshes in what another industry-standard format like Alembic can only compress up to 400 Mb. That means up to 4x times smaller sizes for each actor, and that’s only for the geometry!
Texture Optimization
When using the Alembic format, all the textures used by the model must be stored separately as an image file sequence. So, for ~800 frames of animation, you get about 2 Gb of data using an optimal lossless image format like PNG. But we take a totally different approach, we convert the sequence of textures to a state-of-the-art high-quality video format that optimizes all the pixels that don’t change between frames and keeps all the details. The result is a huge optimization in size down to ~40-100 Mb, which means 20-50x times smaller for each actor’s texture!
Lots of Benefits!
This new format also brings all the commodities that Anima already has in its native plugins for 3ds Max, Maya, Cinema 4D, and Unreal Engine 4.
For example, when using Alembic you must do all the material setup manually. On the contrary, Anima will take care of this and all the shaders of the models will be automatically configured to match the render engine that you are using in your scene. Most of the industry standards are already supported and the list is growing with every update.
Our technology is compatible with motion blur effects in most platforms and render engines. At this moment, our 4D Digital Humans are the only ones of this type that are compatible with this highly demanded feature for photorealistic renders.
Even more, Anima also optimizes the streaming of the 4D Digital Humans taking advantage of multi-core CPU systems. We take advantage of the CUDA GPU capabilities making it possible to use many models in the same scene at the same time while keeping a real-time playback performance.
For example, the following Demo was made to showcase the GPU capabilities of Anima. It was rendered using an Nvidia 3090 RTX, with Ray Tracing enabled on the reflections of the UE scene. It runs at a stable 90 FPS and includes +200 actors (16 4D Digital Human and 190 Ambient):
The introduction of GPU video decoding represents a big improvement for everyone using compatible Nvidia GPUs. In supported systems, a new option will be visible from the preferences panel to choose between CPU or GPU video decoding.
Choosing GPU decoding will give significant performance improvements when playing 4D actors in the anima viewport while reducing CPU usage overall.
Many other tweaks have also been implemented to handle a larger number of 4D actors in the viewport at the same time without the need to turn them into boxes.
If you want to try this out, make sure to increase the previous limit of visible 4D actors in the viewport’s graphics panel.
Showcases of 4D Models
Limitations
As with everything in life, not all about the new 4D models is perfect. The new 3D sequence scanner technology used to capture the 4D models is a very recent cutting-edge that still has room to improve.
These are some of the known issues that you may find when using these models:
- Fixed and limited animation:
Each model has about 30s of animation, but this is always the same, it cannot be adapted to the environment nor other actors. And also is not loopable. We made the captures long enough to let them fit multiple shots, which usually take about 3-6 seconds. Also, you can set a custom offset of each actor’s animation inside Anima to improve the diversity of the performance. - Artifacts and mesh vibrations:
At a close distance and depending on lighting conditions, some models have visible vibrations in their mesh that can be distracting. This is a limitation of the source scanned processing, not a product of the compression (which is lossless), and it will improve in the future as the scan tech evolves. This issue is improving a lot quicker than we initially thought and our latest releases have far fewer problems than the first ones. - IPR problems:
The production render mode works great but, on some combinations of 3D application and render engine, the interactive render mode (IPR) does not process correctly the change in the automatic update of the textures that our plugin does when the frame changes. That happens mainly because some renderers use huge optimizations on this render mode that don’t take into account the new 4D stream model paradigm. We are already in contact with the render developers to find a solution to this, and it is already working fine on the majority of render engines that support this feature. - No MotionBlur only on Cinema 4D:
Our plugin can generate motion blur for the 4D models in 3ds Max, Maya, and Unreal Engine, but in Cinema 4D we don’t have it due to an incompatibility with the architecture of this application. We are in contact with Maxon to find a solution. - No normal maps:
The current 4D scan technology does not provide detailed normal maps as the ones we can generate for the other 3D scans. That’s why we must generate pseudo-bump maps on the shaders we use for these models that are actually based on the diffuse texture. As soon as the scanner technology evolves to support it we will include that information in our models too because our Anima format already supports it. - No color variations:
A common feature in Anima is that all the models have 5 color variations in their textures. Unfortunately, due to the nature of the source texture data, at this point, it is still not possible to generate color variations on the 4D models. - Blocked Export:
The 4D models cannot be exported from Anima. Please, read the section below for more details.
Why 4D models can not be exported from Anima?
It is possible to export Anima scenes to 3 standard formats: FBX, VRScene, and Open Collada. However, it won’t work for the 4D models because none of those formats support the technology needed to store or play the animated mesh and textures that the new 4D technology captures.
There is one standard format that does support dynamic meshes and animated textures, which is Alembic. So we could potentially reprocess the model to unpack all the data that has been compressed into our Anima format, so why we don’t do that? The answer is that our Anima format has been specially crafted to handle 4D models while the Alembic format has been made so support a very wide variety of requirements, therefore, we have been able to optimize our format far better than the possibilities available in Alembic. Also, we have added many features that focus on the management of people assets that bring a whole new level of functionalities thanks to our Anima plugins. Now, let’s see those features in more detail.
These are the features that our 4D models provide, thanks to using our own Anima native format, which would not be available using the Alembic format:
- Alembic can’t generate native shaders adapted to your renderer.
- Alembic can’t automatically define the texture paths, because they must be set up as animated sequences of images and this depends on each particular combination of render engine and 3d application. There is no simple way to do this and it is a process prone to cause problems that can often be seen only after rendering a sequence.
- Using the model in Alembic format, the renderers would not be able to generate Motion Blur for this type of geometry with changing topology.
- There are some 3D applications that support standard models in Alembic but don’t support this type of streamed model yet because it has not been added yet in their particular implementation of this format.
- The same model in Alembic would have a huge size (25-55x times bigger than the Anima format). If we include the textures, this means up to 8 Gb per model. So, for example, if you have a simple scene with only 5 4D models, in our highly optimized Anima format they have a size of ~750 Mb. That means that those 5 models exported to a standard format like Alembic could require about 20 to 40 Gb, which would cause a lot of problems in any production workflow.
- Alembic does not support multiple Levels of Detail (LoD), so the playback performance is always the same when having multiple actors in a real-time application (like Unreal Engine), even if the model is not appearing in the shot or if it is very far away from the camera.
- Our plugin makes use of the latest hardware accelerations available in modern NVidia GPUs to take the optimization and realtime-performance even further, making it possible to play up to 50 different 4D models in real-time in the same scene, while using Alembic you can hardly get a few.
There are so many things that can go wrong when using the 4D models in Alembic that we think that it is just not worth the trouble, that is why we decided to offer them only in the Anima format.
Our mission has always been to provide the best product that can be easily and quickly used by our clients, and a product with that many pitfalls clearly does not match that vision. This is also the main reason that pushed us to develop our own solution to this new 4D technology. Soon in our tests, we found that using them in Alembic format just wasn’t production ready, so we focused on creating our own 4D Digital Human technology. Then we added it to our software Anima and now we have a new product that solves all these issues providing a production-ready human asset that perfectly fits our vision.