3ds import - rotated elements #50620
Labels
No Label
Interest
Animation & Rigging
Interest
Blender Cloud
Interest
Collada
Interest
Core
Interest
Documentation
Interest
Eevee & Viewport
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
Import and Export
Interest
Modeling
Interest
Modifiers
Interest
Nodes & Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds, Tests & Devices
Interest
Python API
Interest
Rendering & Cycles
Interest
Sculpt, Paint & Texture
Interest
Translations
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Meta
Good First Issue
Meta
Papercut
Module
Add-ons (BF-Blender)
Module
Add-ons (Community)
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
7 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: blender/blender-addons#50620
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?
System Information
Windows, ATI HD7750
Blender Version
2.78a, 2.79
Short description of error
Some models imported from 3ds have rotated elements. One of them can be downloaded from link below. I've attached screenshot what it should look like when imported correctly (not blender).
Exact steps for others to reproduce the error
Please import
BL.1.L.3DS
...and compare with this screenshot:
Changed status to: 'Open'
Added subscriber: @Alex-9
Added subscriber: @TheOnlyJoey
Can confirm, used 2 different applications which can open 3ds and Blender seems to struggle with this particular asset.
Added subscriber: @lichtwerk
@Alex-9 : Sorry for the longstanding inactivity here. However, to have another look at this we would need the particular 3ds file to reproduce the issue.
That link in the task description is dead unfortunately...
Marking as incomplete for now.
No problem, here is link:
http://www.noti.pl/media/zips/5a68c14baa730.zip
@Alex-9: thx, but I cant find a
1_2.3DS
in that zip.I guess we are talking about
BL.1.L.3DS
?BL.1.L.3DS
Added subscriber: @ideasman42
@ideasman42 , mind having a look?
This is one screenshot is of, but other files seem to have same issue.
OK, I think that one file is enough to reproduce
This file contains chunks that place objects which we currently don't support, which could be the cause of the problem - see a dump:
3ds_dump.txt the diff to create the dump 3ds_dump.diff.
Since there are keyframes, its possible some of the object placement uses animation keyframes which are currently ignored.
Suspect this is a TODO and not a bug.
Added subscriber: @ldo
I have found a few examples of 3DS files at archive3d.net that don’t import properly into Blender. Here’s one Shelf-fdbb3527.zip, and here’s the thumbnail showing what it should look like.
Let me know if you need more.
I have an answer! I tried following the advice here to clear all object transforms, and all the pieces in the above example snap into place nicely! This has also worked for a couple of other examples I have tried. Though the objects can end up becoming rather large.
So I think the answer is for the importer to offer another option to clear all object transforms, and maybe even default it to true?
OK, that fix doesn’t completely work for everything. It helps with this one, but some pieces are still a little out of place.
Here is a patch 0001-Another-workaround-option-for-some-3DS-import-quirks.patch to add a new option to the 3DS importer to clear object transforms on all imported objects. I find it helps with a lot of the troublesome cases.
Just to confirm, I have tried importing the BL.1.L.3DS example file posted above, with my new clear-transform option turned off and on; with it off, the sofa comes in mostly intact, but with four small pieces in separate odd locations. With the new option turned on, these small pieces are attached to the bottom of the sofa, though two of them end up almost on top of each other, instead of being at the four corners as per the supplied images.
So not perfect, but still an improvement, I would say.
Here is an updated patch which should apply against the current source tree.
ldo-3ds-importer-hack-20190825.patch
Added subscriber: @BrendonMurphy
hi @ldo could you reference this here: https://developer.blender.org/T66329 there's still 1 patch to add before yours.
Added subscriber: @NRGSille
This happens, because the blender import script is reading the first frame of the keyframer. The sofa is part of an animation. It may be useful to add an option if you want to read the keyframer or not.
Also the blender 3ds exporter makes an error by exporting the transformation matrix. 3ds only uses the 3x3 matrix for mesh rotation in local space and the translation part is object location in world space
I made some updates to the script - 3ds has many features, wich are also in the new blender version, wich makes it very compatible
here is the commit: D7454
Been trying the version of this addon that is current as of v2.90.1. Still not quite there yet. For example, I tried importing this scooter model . Compare the difference:
On the left is with your new “Read Keyframe” option enabled, while on the right it is disabled and the “Clear Transform” option from my patch is enabled instead. Notice how the frame around the seatcushion (highlighted) is misplaced in the former.
Current version of my patch: ldo-3ds-importer-hack-20201024.patch.
Tested the files with the actual Autodesk 3ds add-on, with unchecked animation and unchecked apply transfom it will import correctly. There are also some other options to transform the objects for example if they are too big or have incorrect orientation axes.
Will close this now