STEAM GROUP
Crowbar [Source Engine Modding Tool] CrowbarTool
STEAM GROUP
Crowbar [Source Engine Modding Tool] CrowbarTool
1,318
IN-GAME
8,681
ONLINE
Founded
26 October, 2013
Language
English
Showing 31-40 of 122 entries
8
im keep getting a strange error.
2
cant compile HELP PLS
13
[REQ] Shorten VTA flex names for better import to Blender
@Zeq, FYI.

I've receive info in regard to the 63 character limit and this might be huge for both Crowbar and for BleST in future developments (maybe more on the DMX side because of long name).

Anyway, one of my contacts has a connection into the Blender Dev circle. He has had minor tweaks made to Blender during the past development and is alpha testing 2.83. He had made a suggestion to have shapekey names extended to be larger and this is the answer he got back.

This is not such a simple change.
It's not just shapekeys that have this 63 character limit.

All makesdna structs names have this limit set (#define MAX_NAME 64)

RNA functions often work with that defined name size.
For example, for some cases a hash for the name is created for quick access.
Also, saved files have a struct size defined for each datablock, so it is good to avoid changing this size between versions.

Therefore, unless it is an essential change, this request is unlikely to be accepted.


And they have avoided this all the way back to Blender 2.6x and maybe earlier. LOL

Anyway, it looks like add-on devs are going to have to start screaming for changes or have to find some way to program around the MAX_NAME limitation.

My contact has followed this response up with a formal change request and has also reached out on other unofficial channels as well, but I doubtful that anything will be done about it unless the voices of add-on and 3rd party devs who are creating software that creates content to be used in Blender join the plea for change.

Another FYI, my contact says this about 2.83...
"wow lots coming". So, one can only wonder what?

As Crowbar doesn't directly interact with Blender (yet anyway) I think you're safe, save long names being decompiled for use in Blender and limits exist. LOL
I just added this to the bug report on the BleST group, and not knowing how things pull together on decompile, import, export and recompile I can only make the suggestion.

I may have stumbled on something while comparing the QC to the VTA that might be the source of this dilemma and maybe a possible fix.

In the flex definitions of the qc, Flexpairs are being defined with flex names less than 63 characters.

For example In the Scout QC the flex #30 is defined as:

flexpair "OpenJaw_OpenLowerLip_OpenUpperLip_Platysmus_SmileFull" 1 frame 30

This is a flex pair and a corrective shape but the definition is only 53 character long, dangerously long but not over the 63 character limit. I believe this is the actual name of the flex used by the model (Corrective or Real) in game.

VTAs are not loaded onto a model in Blender until we import the VTA onto the mesh. Looking at the VTA now, we find Time 30# being defined as:

OpenJaw_OpenLowerLip_OpenUpperLip_Platysmus_SmileFullL+OpenJaw_OpenLowerLip_OpenUpperLip_Platysmus_SmileFullR

This is the name that is being give to the Shapekey on import. Is is 109 Characters long and is the name being truncated.

Not knowing how this all comes together on Import, export and compile I can only ask, is there some way for Cowbar (through some sort of written variable into the VTA file) or BleST (on import) to use the actual and real name vs the VTA name as the shapekey name in Blender when the VTA is imported as still have the flex work as intended?

Something like this would solve the 63 character problem. Not sure where it would have to happen though in the process or if it is actually doable.
The reason why I'm using TF_Movies is that the models are becoming more complex and these are the most complex models I know of at the moment. And as I stated, I thought this was leaning more towards BleST but none the less, the problem exists. As for shapekeys, we're looking at the corrective shapes for the most part. But if people are decompiling only to change something and recompiling for use in game, then the shapekey names have to stay intact so the model will recompile properly. They are part of the model.

Materials were getting out of hand, buried deep in folder structures with stupidly long folder names, but material paths can be handled via the QC with $cdmaterials statements which don't really have a limit, the only thing important from a blender blender point of view is the material names used on the mesh. Paths can be written out to the QC when they are found and forgotten about. If the string length of the path is greater than the coding limit that can be passed, concatenating multiple strings can be used to path them together.

Shapekey however, that's the killer. Just how many characters will the shapekey field hold in Blender or do we have to go back to the Blender Devs and ask for larger fields?
In the case of the Scout, the longest shapekey name (if quotes are included) is only 111 characters. Looking at the VTA, the names are not enclosed in quotes, so that is really 109 characters which is nowhere near a 255 character string or text box limit, but then again, as models develop who knows where that number will end up with the way they're throwing corrective shapes at them. I think the biggest problem would be coding to find that last character in the name.
Showing 31-40 of 122 entries