Scale in C4D and Octane

Generic forum to discuss Octane Render, post ideas and suggest improvements.
Forum rules
Please add your OS and Hardware Configuration in your signature, it makes it easier for us to help you analyze problems. Example: Win 7 64 | Geforce GTX680 | i7 3770 | 16GB
Post Reply
treddie
Licensed Customer
Posts: 739
Joined: Fri Mar 23, 2012 5:44 am

The units system in Octane does not seem to work properly, or I'm the one not working properly. :)

Anyway, I built a model in inches in Creo. Exported OBJs from there for C4D. When in C4D I realized I should have been working in millimeters. No problem...OBJ does not export units anyway, so in C4D I simply changed to millimeters and everything is fine. The problem is going through the OctaneExporter and Octane phases. Somewhere in that area, the file scale gets screwed up on its way into Octane. For instance, I let the OctaneExporter use C4D's document scale (millimeters) and on the Octane side, I set my OBJ mesh import scale to millimeters, too. But when I move an object in Octane (which I assume is in meters), the movement is off by a scale of about 60 times too small. As an example, I want to move the object 20mm. That equals .02m. So I enter .02, since as I understand it, Octane works in meters natively. But .02m ends up being about 60 times too large. If I set the movement to .00033, that turns out to be about right. So clearly, the mesh imported 60 times too small. In addition, regardless of what I set Octane's import scale to, it has no effect on the imported mesh size. So it looks like a combination of scaling problem in the OctaneExporter for C4D, and also an inactive units selection in Octane.
Win7 | Geforce TitanX w/ 12Gb | Geforce GTX-560 w/ 2Gb | 6-Core 3.5GHz | 32Gb | Cinema4D w RipTide Importer and OctaneExporter Plugs.
User avatar
abstrax
OctaneRender Team
Posts: 5510
Joined: Tue May 18, 2010 11:01 am
Location: Auckland, New Zealand

treddie wrote:The units system in Octane does not seem to work properly, or I'm the one not working properly. :)

Anyway, I built a model in inches in Creo. Exported OBJs from there for C4D. When in C4D I realized I should have been working in millimeters. No problem...OBJ does not export units anyway, so in C4D I simply changed to millimeters and everything is fine. The problem is going through the OctaneExporter and Octane phases. Somewhere in that area, the file scale gets screwed up on its way into Octane. For instance, I let the OctaneExporter use C4D's document scale (millimeters) and on the Octane side, I set my OBJ mesh import scale to millimeters, too. But when I move an object in Octane (which I assume is in meters), the movement is off by a scale of about 60 times too small. As an example, I want to move the object 20mm. That equals .02m. So I enter .02, since as I understand it, Octane works in meters natively. But .02m ends up being about 60 times too large. If I set the movement to .00033, that turns out to be about right. So clearly, the mesh imported 60 times too small. In addition, regardless of what I set Octane's import scale to, it has no effect on the imported mesh size. So it looks like a combination of scaling problem in the OctaneExporter for C4D, and also an inactive units selection in Octane.
When you use the C4D exporter you should never use any other unit than 1 meter in Octane. The exporter always tries to convert the scene to meters as unit. This is done during the export not during the import.

The unit settings in the exporter tell the export process which scale should be applied to the C4D geometry.

So in a nutshell: Set the exporter unit to the unit used in the C4D document and leave the Octane import scale at 1 meter. If that doesn't work, let me know, because it's probably a bug in the exporter. In that case it would be best if you could send or post an example C4D scene.

Cheers,
Marcus
In theory there is no difference between theory and practice. In practice there is. - Yogi Berra
treddie
Licensed Customer
Posts: 739
Joined: Fri Mar 23, 2012 5:44 am

zipped files too large for posting, so I'll PM you with that.

...Er...email actually. PM has same problem.
Win7 | Geforce TitanX w/ 12Gb | Geforce GTX-560 w/ 2Gb | 6-Core 3.5GHz | 32Gb | Cinema4D w RipTide Importer and OctaneExporter Plugs.
User avatar
abstrax
OctaneRender Team
Posts: 5510
Joined: Tue May 18, 2010 11:01 am
Location: Auckland, New Zealand

Hi,

I had a look at the scene and the problem was, that the OBJ file was originally imported in to the mesh node using inch as unit. I guess at that time you had inch as unit in the import preferences. That unit is stored in the mesh node and in the current version can't be changed afterwards anymore. I think the only way is to delete the mesh node and then create a new mesh node and load the OBJ again. Make sure that the import unit is meters.

One more thing to keep in mind is that we cache meshes globally, i.e. if you have several mesh nodes of the same file, the mesh (and it's scale) is stored only once. I think this means that you have to delete all mesh nodes of the OBJ file, before you can load it with a new import unit.

The good news (thanks to Roeland) is: With the upcoming release you will be able to change the unit of a mesh node after you have loaded it. This will then be applied to all instances of the same OBJ file in the Octane scene.

Cheers,
Marcus
In theory there is no difference between theory and practice. In practice there is. - Yogi Berra
treddie
Licensed Customer
Posts: 739
Joined: Fri Mar 23, 2012 5:44 am

Ahhhh, OK. I definitely was re-using the existing nodes. Thanks for clearing that up...I was scratching my head for a while on that one.
Win7 | Geforce TitanX w/ 12Gb | Geforce GTX-560 w/ 2Gb | 6-Core 3.5GHz | 32Gb | Cinema4D w RipTide Importer and OctaneExporter Plugs.
Post Reply

Return to “General Discussion”