Scripting - $20/30 Script to apply modifiers to all mesh objects

Hello,

You know what they say about a job, if its worth doing, its worth paying someone to do, well here we go. I have attempted making this script for myself, but failed. I tried learning how to do scripting in blender and failed on the first (out of date) tutorial. So at last I decided if i really wanted to do what i wanted to do I’d not be a sucker and pay someone else to do it.

Pay is either $20 or $30 (or equivalent in your currency). $30 will only be paid if the optional features of the script can be implemented

Background:
When importing scenes to blender, there are some initial things done to practically all objects (meshes) in the scene, which it would be nice to just automate. The script will help me accomplish an awful lot of the background optimizations to a newly imported scene, so I can move on to less laborious tasks.

Optional:
I would also like the script to look at an external .txt file which contains various Object.Name instances which may/may not be in the scene. There is one name per line of the txt file. If it finds an Object.name in the scene which is in that list, it does nothing to it and moves on.

Background - Things that happen before the script starts

  • OBJ object is imported, which contains many separate mesh objects, with different amounts of faces which make up a scene.
Special Variables for the script:

(optional) block_list = "c:\MCBL\block_list.txt
This is a text file which is read, in some manner, and which contains various object names (Object.Name) objects, upon which the script will not perform any actions at all (e.g. it will skip and move on to the next object). Note that this may change, so i would like it declaring as a one-off variable.

[B]Script’s Process:

[/B]

  • Script is initiated =
  • a loop starts which inspects all mesh objects in the scene.
    [LIST]
  • Check if the object is named in the block_list file, and if so, take none of the below actions and move on to the next object (optional)
  • Add a bpy.ops.modifier(type = Decimate) to the scene and select "Planar"decimate type. Default angle limit is acceptable.
  • Apply the modifier. Script must wait for it to finish before moving on (this may take some minutes on a few objects).
  • After this, move on to the next object.

[/LIST]

(End of script)

I hope this is enough information, feel free to reply or message me directly.

NOTE - payment can only be issued to a bank account with either a sort code / account number (for United Kingdom bank accounts) for all other accounts an IBAN number will be required. [B]I do not want to sign up for paypal!

Additional note:[/B]
I also run a (infrequently updated) youtube series, on showing people how to import their minecraft worlds into blender, render them and do various effects on them. Its pretty amateurish, but the playlist’s videos have mostly had over 100 views so far.

The last video was on face decimation, and if you are willing, I will include in the next video a demonstrated example of the script in progress, and link people to some sort of page/contact email address, at which they can get in touch with you, with a view to also buy the script (if they are lazy, like me). This may well get you some extra revenue for this one-time job. If you are agreeable to this, please advise.

This is in addition to my stated terms.

or you could just use the inbuilt function… select object, in object mode press alt c -> mesh from curve… Even though it is not a curve it will still work… it will also apply all the modifiers.

This works over multiple objects aswell

I went on and made it … it didn’t took long after all, but making this video that showcase it took the most :wink: (I wish there were an easy way to add text to the VSE without rendering the scene)

I’ve pm you my details and release it once paid

Thank you for all the replies everyone,

I have now marked this as solved as YHOYO has provided the code to me, and payment is in progress to them.

Thank you all very much for your interest,

Crayzcrinkle