Bolts are way too small #15
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
I use Blender 4.2.3LTS on windows. When i add a bolt, it is way too small. To get the right size i have to scale it by 1000.
Hi
Can you say what size the default M6 bolt is appearing for you please?
I'm just downloaded 4.3.2LTS, and added an m6 from the defaults and it loos like this:
New->General. Enable bolt Factory. Add->Mesh->Bolt. Select m6 from the dropdown. Zoom in to see the result after deleting the default 1m cube.
10mm is what I would expect for the bolt size.
i think Tobias was thinking of this issue, i have it as well, i work in mm scale for 3d printing projects, and bolts generate super tiny, not in their real size, im sure they were generated normaly before, thanks
There was a ticket raised 4 years ago noting that the preset values for the bolts were 1000x larger than desired.
blender/blender-addons#83322
The addon was written in blender base units of meter rather than correctly drawing them at a real size.
4 months ago there was a submission to make bolts draw at the correct size, thus alleviating the need to apply scale factors.
When doing the 3d printing using blender why is it necessary for you to use the Unit Scale?
I work with small objects (typically in the range of tens of millimeters), usually functional parts, and set a unit scale of 0.001 to match these dimensions. This allows me to model parts at their actual size without having to scale down from default sizes, like 2 meters, to something more manageable, like 10mm. I’m modeling parts directly to fit my 3D printer’s bed, which is limited to 220mm x 220mm. For precision, I use calipers to measure down to hundredths of a millimeter (e.g., 2.46mm), as my FDM printer can achieve an XY precision of 0.2mm and a layer height as small as 0.08mm.
Here’s where I believe the confusion arises:
In Bolt Factory version 4.0, creating a bolt in a default, fresh Blender install (with no settings changed) would produce a bolt at a 1-meter scale—an M8 bolt would appear as 15m x 13m x 19.3m. This likely caused concern for users expecting real-world bolt sizes, since their bolts appeared much larger than anticipated. However, since I always work with a unit scale of 0.001, my bolts spawned at realistic sizes (15mm x 13mm x 19.3mm) due to the automatic scaling by a factor of 1,000.
In a later update, the addon adjusted bolt sizes by reducing them by a factor of 1,000 (from meters to millimeters). Now, for users with the default 2-meter cube, bolts appear at a more expected size, around 0.015m x 0.013m. However, in my workflow, with my 0.001 unit scale, the bolts are scaled down an additional 1,000 times, resulting in bolts that are too small—meaning I have to scale them up by 1,000 to reach the sizes I need.
This creates a split in user needs: some want bolts that match their 2-meter scale scene, while others, like me, need bolts that align with a 2mm scale scene.
Originally posted by @OmarEmaraDev in blender/blender-addons#83322 (comment)
"The presets don't account for scene units, so the value will always be equivalent to a multiple of a meter. This could be adjusted to account for units, but I will leave it up to the developer to decide if this should be considered a bug or not."
This isn’t necessarily a bug but rather a scaling preference issue. It’s up to the developers to decide how to approach it.
Personally, I believe the addon was initially spawning bolts at the correct size based on scene units, and that the size reduction by 1,000 in later versions was meant to correct for those working with the default meter-based scaling. For now, I’ll scale up my bolts by x1000, as this change doesn’t reflect a bug that needs fixing but rather a difference in scale preferences. I also question if the original 4-year-old issue warranted adjustment, was it an isolated request or where there more. Additionally, several reviews on the Bolt Factory page mention similar scaling issues with version 4.2. https://extensions.blender.org/add-ons/boltfactory/reviews/
Sorry for the long message, but I hope this clarifies my perspective. Thanks for your time!
Add me to the list of frustrated users that work with a unit scale of 0.001 and struggling with scaling issues in Bolt Factory. It's pretty much unusable. Bolt Factory also seems to be the only core add-on for creating bolts\nuts now since the Precision Bolts (paid add-on from the Blender Market) also no longer works after the Blender4 update and the creator doesn't seem to be maintaining it or have plans to fix it either, which is unfortunate since it was better than Bolt Factory for precision modeling.
I had a think, given the detailed comments from Ado, it seems that either way will always be seen as imperfect.
If there was an option, in the bolt generation GUI, to scale the output object would that help?
Or does such a feature just upset everyone?
In the above screenshot I've added a box called "Final Scale Factor", using that value I scaled the mesh. In the example I generated a bolt with 1.0 then a second with 2.0; it can be seen resulting in twice the size. Those who want to work with a world unit scale of 0.001 could then set this to be 1000.
Thoughts?
I’m working on a fix. I’ve adjusted it to spawn bolts at the correct size based on the scale you're using. I just need to apply the changes to the 'Add Bolt' menu parameters if possible and tweak a few edge cases, and it should be good to go.
For reference here is the code I added into boltfactory.py at arond line 330:
`
bf_Scale_Generated: FloatProperty( # ScaleUp
attr='bf_Scale_Generated',
name='Final ScaleFactor ', default=1.0,
min=0, soft_min=0,
max=1000000,
description='Scale factor to apply to Generated object',
)
def draw(self, context):
layout = self.layout
col = layout.column()
`
Plus in createmesh.py at line 2468:
verts = Scale_Mesh_Verts(verts, GLOBAL_SCALE*props.bf_Scale_Generated)
I’ve pushed all my changes to the branch, which you can view here.
Summary of Changes:
- All GLOBAL_SCALE calculations have been removed to simplify the code.
- The unit='NONE' is set to "None" because Blender automatically scales UI menu values based on the unit system, which I wanted to avoid.
- For now, all values are handled in millimeters (mm).
- Labels like “Thread Length (mm)” will be added later to improve UI clarity.
Added adjusted_scale Formula:
- This ensures that meshes are generated at the correct size, regardless of the scene's unit scale. Bolts should now generate at their default sizes even when the scale is set to 1.0, 0.5, 0.001, or anything in between.
Next Steps:
- Additional testing will be done to ensure everything functions as expected.
- If you have time, I’d appreciate it if you could test the functionality as well.
- I’ll continue refining the implementation, make a few adjustments I’m considering, and then aim to create a pull request.
Thanks for your patience and feedback! Let me know if you encounter any issues.
This worked great for precision 0.001 scaling. Appreciate you taking the time to get this fixed so quickly!