Showing posts with label object. Show all posts
Showing posts with label object. Show all posts

Updated: Generate a list of Blender object information

A while ago, I created a tiny add-on the generate a list of object info as a comma separated file.

I found it useful when I wanted to keep track of a large collection of objects where the vertex count was important and I was simplifying them one by one.

However, the add-on only listed this information for meshes, while I also want this info for the effective polygon count of curves.

So I updated the add-on to convert any object object in the scene to a mesh (ignoring the ones that cannot be converted, like lights and empties etc.) and list the info of these converted objects. After these calculations these converted objects are deleted again, to you won´t notice them (although they will briefly use memory).

Installation and use

Download and install the file object_list.py * from my GitHub repository and once enabled it will show up in the Object menu:


If selected a new text block will be generated that will contain a comma separated list of object info with a header and one line for each object in the scene that is a mesh or can be converted to one.

For example, in a sample scene with a cube, a cone, a bezier curve, a light and a camera, the following list will be generated (note the absence of camera and light):

Name,Type,Tris,Faces,Edges,Verts,Datablock name,Users,Collection 1,Collection 2,Collection 3
Cube A,MESH,12,6,12,8,Cube,1,Collection,, 
Cone,MESH,62,33,64,33,Cone,1,Collection,, 
BézierCurve,CURVE,672,336,700,364,BézierCurve.001,1,Collection,,

If you prefer, you can cut and paste this into a spreadsheet program of your choice.

Generate a list of Blender object information

This isn't the next killer add-on you must have, but it could prove useful if you find yourself like me in the following situation: You are working on a high poly model consisting of dozens of different meshes and at some point you need to start thinking about your polygon budget.

So you want to focus on the meshes with the largest number of tris first, but determining how many tris there are requires selecting each individual object and switching to edit mode to see the data.

Also, at some point you may want to have a checklist of all objects to verify if you unwrapped them, retopologized them or whatever, before you start moving them to an external paint program for example, so a list of objects can be convenient to keep things organized.

object_list.py


I am a coder with a bit of a list obsession, so I created a small add-on that creates a comma separated list of objects with the most common properties for those objects. The list is created as a text block in the built-in editor. Such a list is then easily copied to a spreadsheet if you like, an example is shown below:



Note that the numbers listed are for the render time object with all modifiers applied (which is especially important for subdivision modifiers). Those numbers are only calculated for meshes: I would love to do this for beveled curves as well but I didn't figure out how to do that yet.

Code


The add-on is available from my GitHub repository. Simply use this direct link to download the file object_list.py and then install it with Edit > Preferences > Addons ... in the usual manner.

Once enabled it will be available in the Object menu of the 3D viewport. For large scenese with large meshes it can potentially take quite some time depending on the power of your computer.

The list of info is stored in a Text block called Object list.csv.