I think this is not an issue with non-DNA structs in RNA: you can make RNA struct types that have no relation to DNA whatsoever (although it's a lot more cumbersome because every property has to use getter/setter callbacks).
What this code seems to do is 1) define the 'EditMuscleData' RNA type 2) define a property 'data' of EditMuscleData - which is supposedly also of EditMuscleData type! (2nd argument to RNA_def_struct_sdna_from) This would require a nested RNA struct type, which is not possible afaik. I guess the 'data' property is of a different type anyway. If you need more help please paste the full DNA/RNA code to www.pasteall.org and post a link here (to avoid excessively long mails). Cheers On Mon, Aug 10, 2015 at 2:17 AM, Rohan Smith <[email protected] > wrote: > Hi, > I'm working on a physically based animation system using Blender and > Blender's real time engine. To this end, I've modified my version of > Blender to split Bones and EditBones up into three sections, > ArmatureElements which store spatial information and a pointer to > specific data structs, BoneData which stores bone specific data such as > mass and physics properties, and MuscleData which stores muscle specific > properties. These are all in the DNA system, but the Edit version of > these structs are not. > > When trying to setup the RNA code to work nicely with this setup, the > non-Edit structs work fine, but I get a "RNA_def_struct_sdna_from: > EditMuscleData not found." error in makesrna when I try to use > RNA_def_struct_sdna_from with the Edit versions. Without this the code > in the generated .c file does not do the proper dereferencing. > > static void rna_def_edit_muscle(BlenderRNA *brna) > { > StructRNA *srna; > > srna = RNA_def_struct(brna, "EditMuscleData", "EditArmatureElement"); > RNA_define_verify_sdna(0); > RNA_def_struct_sdna(srna, "EditMuscleData"); > RNA_def_struct_ui_text(srna, "Edit Muscle Data", "Edit mode Muscle > specific data of an Armature Element"); > > RNA_def_struct_sdna_from(srna, "EditMuscleData", "data"); > > rna_def_muscle_common(srna, 1); > > RNA_define_verify_sdna(1); > } > > Is there any way to make the RNA system able to use a non-DNA struct in > this manner? > > -- > Cheers, > Rohan Smith > > > --- > This email has been checked for viruses by Avast antivirus software. > https://www.avast.com/antivirus > > _______________________________________________ > Bf-committers mailing list > [email protected] > http://lists.blender.org/mailman/listinfo/bf-committers > _______________________________________________ Bf-committers mailing list [email protected] http://lists.blender.org/mailman/listinfo/bf-committers
