Jump to content
h4wek

limit of bones per model and animations per lod

Recommended Posts

Hello everyone, who tell me what is the limit (or rulez to change limit) of  maximum bones in model beacouse i probably reach it  and i think it is about 233 or 256?? ,  (exactly is hard to say beacouse config have in skeletonBones[] about  233 lines and some of them are with depedencies ), if i add any new bones after that number buldozer crashing, other limit is on animations per lod when i have too many of them in one lod some of selections start to twisting in strange shapes (no error is displayed so i spent lot of hours to discover why this happen and result was when i add animated selections to lod and on last over limit this happen (number or rule for that is not described in model description on wiki so it is unknown data)

https://community.bistudio.com/wiki/Model_Config#Animations:

?imw=637&imh=358&ima=fit&impolicy=Letter 

https://steamcommunity.com/sharedfiles/filedetails/?id=2462593883

BTW if any BIS memeber read it - wil be possibile to define non linar animations? (selected and animated the same like it is in "LINEAR DEFORM" on O2?  it would be perfect for deforming blades of rotor in helicopter or wings in planes during  G-forces and many more (now I must spent 4-7 animations and many selections for one blade to make similar thing - and with those limits (described  previous) nothing left for other animations in model.

Share this post


Link to post
Share on other sites
On 6/2/2021 at 2:17 AM, h4wek said:

BTW if any BIS memeber read it - wil be possibile to define non linar animations? (selected and animated the same like it is in "LINEAR DEFORM" on O2?  it would be perfect for deforming blades of rotor in helicopter or wings in planes during  G-forces and many more (now I must spent 4-7 animations and many selections for one blade to make similar thing - and with those limits (described  previous) nothing left for other animations in model.

Yes bone limit should be 255 or so. You cant go above it. To me it looks like you have many unnecessary bones and animations.
No its not possible to make nonlinear deformation via model.cfg. However - you can do nonlinear deformation by "weighting" to bones - the same method that is used in characters.  So you can make a bone move by 100% the  distance of a translation. And  another point moves only 50% as far as the bone moves, if it is weighted 0.5 to that bone .  That means for all blades you can get by with just 1 bone. What program do you model in?

Share this post


Link to post
Share on other sites

This method already I am using now but this cause (as you wrote) too many unnesesary animations - at fact they are  necessary beacouse istead of using one bone with non linera animation I must use many more to take similar effect (as I explain it in begining) so this limit makes some thing impossibile to do at last.

nuber of bones is a hard limit (buldozer hang if it is exceeded), but number of animated selection is not known for me, if I add to one LOD too many of them buldozer still works but effect from picture occurs. This problem cause also to shadow lod view in buldozer and in game, model is visible but shadow is  not working (when visible LOD have too many named selections used in animations) - problem is that is not show any error due to this.

I use oxygene 2 only on this stage so no problems with import are caused - but anyway sometimes selections what I made before in other LOD after move to next LOD are mishmashed with other elements of model and i must chaeck this carefully - this picture was not from this kind of situation all selections was clear only their number was huge and number of animations is quite big.

If I made simple model of animation main rotor you have right but my rotor model make something similar to real blades so every blade have his own animations to make it and this cost lof of it to reach this effect - so main rotor and rear rotor takes at last about 130 bones and many more animations for them. At last if I want to use other animations  in model I will must cut this feature off....... or use poxies models - but this is not so nice method beacouse smoothnes of anims with sources in model like rotor_rpms or cyclic taken to another model not work so nice and need special scripts - so without direct take of sources for animations by proxies from parent object it is impossibile to do in that way.

Anyway poxies connected to model is not possoibile to use like ProxyRetex but beside textures it could merge animations from parent object - it would be  great solution for extend this limit- this is my wish for BIS.

Share this post


Link to post
Share on other sites

you are definitely doing animation very wrong if you use that many bones on those parts.

Also proxies dont have separate animations so you can bypass the limit with them.

Share this post


Link to post
Share on other sites

Probably you don't understand the core of the problem (read about proxies models above again if You are able to animate shapes inside proxies connected to model tell me how to do this beacouse in actual version of arma it is no possibile - I am not telling about attached objects, only proxy), So if i do it wrong, tell me master  what is the way for example to animate proxies connected to parent model (beacouse this will trully solve any type of this problems)?? Just simple example I have blade on main rotor and this blade is done by proxy (how you can manage twisting this blade inside this connected proxy model if it is connected to your main model in P3D file only not by attachto command? - anyway attachto command not working the same like proxy in p3d for engine - it cost lot of fps an is not smooth like proxy, especially when rotor rotate with 5 blades in 120rpm).

 

 I know method to retexture proxies - by retex definition in cfgnonAIvehicles clasess but how to animate it if you dont know target id or name and this target is outside any animated class definition? 

 

I found the reason of twisting animation selections - exceeded 255 bones in model.cfg (in DEV version of arma buldozer not react by exit with hang error) - my fault, anyway I had 260 bones and model work under DEV until i not use too many of them on single LOD - but it not work correctly any way bones defined as bigger than 255 not work at all.

Share this post


Link to post
Share on other sites

 

On 6/12/2021 at 5:47 PM, h4wek said:

This method already I am using now but this cause (as you wrote) too many unnesesary animations - at fact they are  necessary beacouse istead of using one bone with non linera animation I must use many more to take similar effect (as I explain it in begining) so this limit makes some thing impossibile to do at last.

I dont understand what you are trying to say here, i dont think you understood what i was suggesting. How many bones and animations do you actually use per blade ?


If i needed to make blades bend downward from gravity/lift,  i need exactly 1 bone and 1 animation. Not per blade, but for all blades together. No matter how many blades. If you need more, then you are not doing what i suggested to you.

 

10 hours ago, h4wek said:

it cost lot of fps an is not smooth like proxy, especially when rotor rotate with 5 blades in 120rpm).

At 120rpm you cant see individual blades anyway IRL. Thats why most people replace modelled blades at higher rotation speed with a blurry texture representation that rotates a lot slower, saving performance

Share this post


Link to post
Share on other sites
15 hours ago, h4wek said:

Probably you don't understand the core of the problem (read about proxies models above again if You are able to animate shapes inside proxies connected to model tell me how to do this beacouse in actual version of arma it is no possibile - I am not telling about attached objects, only proxy), So if i do it wrong, tell me master  what is the way for example to animate proxies connected to parent model (beacouse this will trully solve any type of this problems)?? Just simple example I have blade on main rotor and this blade is done by proxy (how you can manage twisting this blade inside this connected proxy model if it is connected to your main model in P3D file only not by attachto command? - anyway attachto command not working the same like proxy in p3d for engine - it cost lot of fps an is not smooth like proxy, especially when rotor rotate with 5 blades in 120rpm).

 

 I know method to retexture proxies - by retex definition in cfgnonAIvehicles clasess but how to animate it if you dont know target id or name and this target is outside any animated class definition? 

 

I found the reason of twisting animation selections - exceeded 255 bones in model.cfg (in DEV version of arma buldozer not react by exit with hang error) - my fault, anyway I had 260 bones and model work under DEV until i not use too many of them on single LOD - but it not work correctly any way bones defined as bigger than 255 not work at all.



you can not animate proxies in parts, only the whole proxy model. Basically how I see it, you are designing your model in wrong, non Arma compatible way.

Arma is game engine with "best practice" methods to do things like vehicles and there are solid limits to some things that you just can not bypass. 

  • Like 1

Share this post


Link to post
Share on other sites

So only solution for this topic  is simple........ people just don't exceed 255 bones per model - (goat - you are partially right - I try to done too complicated model for arma - but anyway on actual stage I done about 80% of my target so is not bad even with those 255 bones).

Share this post


Link to post
Share on other sites
7 hours ago, h4wek said:

So only solution for this topic  is simple........ people just don't exceed 255 bones per model - (goat - you are partially right - I try to done too complicated model for arma - but anyway on actual stage I done about 80% of my target so is not bad even with those 255 bones).

This. Its an engine limitation so other than using proxies (which wont help in your case as you can't animate parts of a proxy) using more than 255 bones isn't an option...

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×