<div dir="ltr"><div><div><div><div><div><div><div><div><div><div>I just wanted to bring this up as for the fact that I&#39;ve written a program because of blender&#39;s complexity...<br></div>and that was back with the B24x release...<br>
<br></div>after playing around with a B26 release and trying to build an importer for it, I couldn&#39;t wrap my head around the complexity of things, and just decided to continue working on my program...<br><br></div>with enough experience on this issue, I can boast that you need a good 70% less code for my scripts than you would for a Blender script...<br>
<br><br></div>I&#39;m achieving this with user-interrupted automation where needed,<br>and providing single-level functions to do the dirty work of the interface management...<br></div>(the only thing I&#39;m providing a class for is my switch/case/default implementation, because python needs this.)<br>
<br><br></div>the whole implementation for my program follows an interruptable fixed-function implementation.<br><br></div><div>also, the setup for the script involves calling a single function for each case this script is used in.<br>
</div><div><br></div>I hope to get you guys to improve on this with better ideas... :/<br></div><div>70% is alot of unneeded code for what your program does...<br></div><div>and my program only does a small fraction of it.<br>
<br><br></div><div>one thing I could suggest is that for import/export scripts you automate the transactions given to the interface.<br><br></div><div>for an example, I&#39;ll use my interface:<br><br></div><div>    SID = ugeSetScene(&quot;base_scene&quot;)<br>
<br></div><div>    #here&#39;s the interruptable part:<br>    OIDs = [ugeSetObject() for i in range(ObjectCount)]<br>    for OID in OIDs:<br>        ugeSetObject(OID)<br>        ugeSetObjectName(&quot;Object_&quot;+OID.__str__())<br>
        ugeSetObjectLoc([0.0,0.0,0.0])<br></div><div><br></div><div>notice a similarity between my interface and how OpenGL runs?? :)<br></div><div><br></div><div>one thing wrong with my interface though is a single object can only hold just 1 type of data.<br>
</div><div>in my case, meshes...<br></div><div>where I&#39;ve recently seen how a blender object can hold multiple meshes...<br></div><div>I&#39;m not sure if this applies to anything else with blender, but I can adapt my interface to match. :)</div>
<br></div>(I&#39;m trying to follow the modern guidelines)<br><br></div>if you guys would like to know more about my interface as to how you could adapt simple methods to your interface, please let me know. :)<br><br><br>
but yea, I think blender would benefit much better if the scripting interface was made ALOT simpler. ;)<br></div>