This avoids getting all overridden objects from said collection
instantiated in master collection, totally untidy!
Note that there is still an issue when 'active' object (i.e. the
armature usually) is in hidden sub-collection, since you have to make
that whole hidden collection visible again to see it.
We'll need to support moving objects into overridden collections am
afraid, arg. :(
Very dummy mistake (someone forgot to increment one of the variables in
one of the loops in that spaghetti nightmare that is nurbs shapekey
code), took half an age to spot it... :/
The only difference from 2.7x is that we were using glLineWidth(2.0) before,
which is not supported reliably in the latest OpenGL.
Big thanks to Clément Foucault for helping with this, on the design as well as
debugging the implementation.
For the records, I'm creating and destroying batches for the path geometry at
every draw. The pipeline is as follows:
1. Create GPUBatch with all the points
2. Create new shgroup with simple shader
3. Add call with the gpubatch
4. Save it in a linked list in stl->g_data
5. Free it after all drawing is done
The function must be static. The error was the definition in header file must be removed. This error was not detected by Microsoft compiler but Linux compiler fails.
This operator clean any stroke below a defined number of points. This is used because sometimes when use eraser some points keep missing.
Also some changes in the UI menu.
The initial design assumed that there was only one object for each unique name, but that was not the case when instances were created.
Now, instances are supported and speed has been greatly improved when repetitions are used.
As a result of this change, the option to create objects has been removed in the Instances modifier. This option was strange and was also against Blender's design rules, since a modifier should never create objects. The old functionality of the modifier can be achieved with instances.
Also, several memory leakage problems that were not previously detected have been eliminated, and especially in the grid and in the drawing process
Onion Skin is not supported in multi-user datablocks. Support this, makes incompatible with instances. We need find a solution in the long term, but now it's better keep disabled and make instances work. Anyway, the new instances makes unnecessary to use muli-user datablocks.