Page MenuHomeFeedback Tracker

[Information] Rigging and its behavior in Enfusion engine
Reviewed, NormalPublic

Description

A lot of developers from our community are faced with the same issue from time to time trying to import new models with their skeleton to DayZ. Most of us still can't figure it out, the rest know how to fix it but don't provide an answer.

All I am asking for is comprehensive documentation or an answer about what exactly leads the model to this behavior (vertices weights, their amount, anything else?)

I spent a lot of time trying to find any regularity of this issue but I still can't put all the pieces together. I've tried many different ways to get it to work or localize it somehow, but it doesn't help at all. From my observations, I can clearly say that vertex weights and their amount are not the only reason that causes this issue and even having a model where every single vertex has weights not greater than 2 the issue is still reproducible. Also, I am sure that I didn't reach any bones limitations (if they even exist) because of another Burer model with the same bones, bonenames, anims and selections exists and works fine. Thanks a lot! Here are the screenshots of the problem

(@Hunterz 's dragon)

Details

Severity
Text
Resolution
Open
Reproducibility
Always
Operating System
Windows 11 x64
Category
General

Event Timeline

MARSAN added a subscriber: MARSAN.Apr 29 2024, 11:50 PM
vadymbabii updated the task description. (Show Details)Apr 30 2024, 12:04 AM

DayZ is mix of old RV engine and new Enfusion engine. This is problem of artifacts of old RV and his limitations.

Hi @Hunterz I am not sure what exactly RV means. Also about any limitations, what exactly can cause those limits? I have 2 very similar models (the first is broken, the second is fine) they use the same skeleton, same xob, same anims, same selections, same bones, their names, and their amounts. The difference between them is the 3D mesh and vertex weights. The broken one even has fewer polygons and vertices. For me, it doesn't look like I reached any limitations but the issue still persists

I just googled that RV is old Real Virtuality Bohemia's engine, but it still doesn't explain anything) I understand if something works and something does not there is some difference between the two. But I can't find it and want to know what exactly we have to do to avoid this issue

Just read something about history of dayz and arma. RV is name Real Virtuality engine which was used in arma2, arma3 and his artifacts are still in dayz. Dayz is mix of both engines. Issue you have is coming from old RV engine and his limitations. Thats why are all fine in anim editor, which use enfusion only.

@Hunterz as I wrote above definitely the issue persists because of something, and I agree that it can be related to RV implementation. But for me as a developer, some aspects are still unclear. Why do those two models have different behaviors, what exactly causes it, and how can I avoid them? I mean understanding the problem is half the way to solving it

It would be so nice if people from BI would say "Guys do not do it this way, make sure you've clicked on that button and check if you ... bla-bla-bla" :)

Those models just reached limits of old RV engine.

@Hunterz What do you mean by saying reached limits? Which exactly limits? And no, one of them hasn't reached any limits and works fine. That is what I am talking about. Two pretty similar models and the first works, but the second doesn't

Everything have limits, for example 8bit computers can have 65536 bytes of memory. RV engine have limits you met with that model/skeleton. I am not dayz developer, so i dont know which limits you reach. Its life, nothing is unlimited.

vadymbabii added a subscriber: Geez.May 1 2024, 2:19 PM

@Geez We still hope you will share any tips with us

Geez added a comment.May 3 2024, 10:17 AM

@Geez We still hope you will share any tips with us

Hello vadybambii.
Unfortunately the information you have provided is not enough for us to understand what goes wrong. What would help is to upload the files with the modded content.
Regards,
Geez

Hi @Geez Thanks for your reply. I attach the model along with the .xob and model.cfg, but p3d with model.cfg is still enough to reproduce the issue.


This model has been exported from S.T.A.L.K.E.R Call of Pripyat "as it is" without any additional changes. We've tried to export it several different ways regarding your documentation Blender -> export FBX, Object Builder -> import FBX, and using community-made tools such as Arma 3 P3D export/import plugin for Blender but the final result is the same. I've removed all the lods to simplify the investigation, the model doesn't act normally with or without them, seems like it doesn't matter at all.
The steps to reproduce are pretty simple:

  1. Open the model in Object Builder
  2. Run Buldozer

I also attach the raw blender model in case it will be useful for you.
Please, let me know if I need to provide more info.
Thanks for your patience!) We appreciate it!

Geez changed the task status from New to Reviewed.May 3 2024, 11:17 AM

Thank you.
According to the devs there are some bones our AI does not have, therefore it will not work with our animations.

In addition, I want to say that I am sure that the amount of attached weights is not higher than 4 different bones/vertex groups on every single vertex. Every single vertex is also attached and normalized. We've made some investigation in this direction and tried to limit the number of simultaneous weights per vertex. It didn't really help until we reached 1 weight per vertex group

vadymbabii added a comment.EditedMay 3 2024, 11:26 AM

@Geez Yeah, we use different skeleton with its own bones, animations, nodes and etc. I can share the full pack with you if it would help. But the problem still exists only with p3d and model.cfg

Also, I know about the cases when a model has been attached to the DayZ native zombie skeleton with the same broken behavior. Unfortunately, I can't provide the p3d because I don't have it. The screenshot is all I have

Geez added a comment.Thu, May 23, 12:04 PM

Hello vadymbabii.
We seem to get it to work by commenting out a few bones in skeleton -

Maybe that will help?

Geez added a comment.Thu, May 23, 12:05 PM

Its not these bones in particular that are the issue however, there is nothing special about them.
Any 3 bones we comment make it work in Bulldozer at least

@Geez funny part is that I did the same at the start and it was a good point to start investigating. Okay, by the way, I figured it out and can clearly say that bones ain't an issue but mesh-related. I can provide more info in case your team is interested in this and will explain what is going on :)