<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: FBX SDK Normals Incorrect with Skinned Meshes with animations in FBX Forum</title>
    <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11345058#M353</link>
    <description>&lt;BLOCKQUOTE&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/1650435"&gt;@regalir&lt;/a&gt;&amp;nbsp;wrote:&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;By default, GenerateNormals(), computes the normals for the polygon vertices. However, it also tries to respect what is defined in the SmoothingGroup elements (if present) so, if your mesh does have a mix of hard and smooth edges, GenerateNormals() should give you back something that reflects this (data may be slightly different but the visual effect should be consistent). As Dave mentioned in his last post, the FbxGeometryConverter can possibly be helpful; I believe this is how it would be used:&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="cpp"&gt;FbxMesh* lMesh = lScene-&amp;gt;GetSrcObject&amp;lt;FbxMesh&amp;gt;();
if (lMesh)
{
	if (lMesh-&amp;gt;GetElementSmoothingCount() == 0)
	{
		// No smoothing groups defined, let's try to create them 
		FbxGeometryConverter lCvrtr(lSdkManager);

		// first, use the currently defined normals in the mesh to generate hard/smooth edges.
		if (lCvrtr.ComputeEdgeSmoothingFromNormals(lMesh))
			// hard/smooth can als be converted to polygon smoothing if the destination system cannot handle edges!
			lCvrtr.ComputePolygonSmoothingFromEdgeSmoothing(lMesh);
	}

    // Now, (re)generate the normals
    lMesh-&amp;gt;GenerateNormals(true);
}​&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="lia-indent-padding-left-30px"&gt;the Normals sample in the FBX SDK package illustrates how to:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1) get normals of mesh.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2) get smoothing info of mesh.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3) compute smoothing info from normals.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4) convert hard/soft edges info to smoothing group info.&lt;/P&gt;&lt;P&gt;- - -&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This example doesn't solve the problem and the Normals sample doesn't do it either.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;From testing, I observe GetElementSmoothingCount() returns non-zero if I have "Smoothing Groups" turned on in Maya on export.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If GetElementSmoothingCount() returns non-zero, with your code example, GenerateNormals(true) will calculate normals by face, so there is a faceted appearance (no smoothing). If I remove the conditional here (or if I simply have "Smoothing Groups" turned off in Maya on export) ComputeEdgeSmoothingFromNormals does add a "by edge" smoothing element, ComputePolygonSmoothingFromEdgeSmoothing converts the smoothing element to "by polygon", and then GenerateNormals(true) totally ignores all that information, wipes out all hard edges and smoothing groups, and smooths the mesh (averaging normals at each control point).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I've tried using ComputeEdgeSmoothingFromNormals without ComputePolygonSmoothingFromEdgeSmoothing, and GenerateNormals(true) still wipes out any smoothing information.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In fact, in all cases and at all times, if there is smoothing information on the mesh when GenerateNormals(true) runs, it destroys all smoothing information and simply averages all normals to smooth the mesh.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Additionally GenerateNormals(true, true) destroys smoothing information in all cases.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For testing I created a series of bool values to toggle which functions run. No combination will recompute normals using existing edge smoothing. The only way the edge smoothing shows up is if I simply never GenerateNormals(...), in which case we're back to the original issue: normals will be wrong (in world space) if the mesh was exported while posed differently than bind pose (the original Maya bug).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;GenerateNormals(...) is supposed to respect smoothing elements but it does not. I have not inspected whether the smoothing elements are actually valid, but I did at least verify that "by edge" does create 0 and 1 values, and "by polygon" smoothing elements generates smoothing group IDs, so I suspect they are valid and GenerateNormals(...) isn't doing what it's documented to do.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Dave&lt;/P&gt;</description>
    <pubDate>Sun, 07 Aug 2022 17:03:10 GMT</pubDate>
    <dc:creator>DaveMay3D</dc:creator>
    <dc:date>2022-08-07T17:03:10Z</dc:date>
    <item>
      <title>FBX SDK Normals Incorrect with Skinned Meshes with animations</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11279705#M319</link>
      <description>&lt;P&gt;I've made a post on this stackoverflow regarding this issue:&lt;BR /&gt;&lt;A href="https://stackoverflow.com/questions/72876412/fbx-sdk-importing-normals-inconsistent-with-maya-normals" target="_blank" rel="noopener"&gt;https://stackoverflow.com/questions/72876412/fbx-sdk-importing-normals-inconsistent-with-maya-normals&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In short summary, -- Exporting Skinned meshes and viewing data from FBX SDK seems to have their normals not matching Maya's Normals, while for non-skinned it matches exactly.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In the link above, it shows some error between normals -- but I've tried other examples where normals are just completely wrong and unusable.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;There was a similar post posted to this forum, here:&amp;nbsp;&lt;A href="https://forums.autodesk.com/t5/fbx-forum/maya-fbx-exporting-normal-information-disappearing/td-p/4285595" target="_blank" rel="noopener"&gt;https://forums.autodesk.com/t5/fbx-forum/maya-fbx-exporting-normal-information-disappearing/td-p/4285595&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;But no answer was really ever given.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Was that issue resolved and perhaps there is some bug in my code?&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jul 2022 18:33:58 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11279705#M319</guid>
      <dc:creator>ilan.keshet</dc:creator>
      <dc:date>2022-07-20T18:33:58Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11281334#M320</link>
      <description>&lt;P&gt;I am not sure I understand the issue. I read your post on stackoverflow so i tried to create a sphere, and skinned it with three bones. Then I exported to the FBX file. Imported back into Maya and compared the normals on one selected face (the same on both the reference sphere and the imported one). Maya shows exactly the same values. I am attaching my data. Please note that, to have manegable numbers, after I skinned the sphere, I deleted most of the faces to remain with 5 polygons only. In the Zip file, you will find the Maya file, the Fbx file and the screen grab showing the numbers on the vertices 0,1 and 6. In the screenshot, dummy1::pSphereShape1 is the imported model. Maybe I am not doing the same exact steps that you do?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Anyway, something to remember, when Maya imports deformed meshes (skin, blendshapes) or having smoothing layers from an FBX file, the normals are automatically "unlocked" so Maya is free to recompute them as it sees fit. Non deformed geometries will import with "locked" normals (they show in yellow instead of green). Also, make sure you compare the normals at the same frame. Being deformed, and Maya having the freedom to recalculate them, if you compare, for example at frame 1 in Maya but at frame 0 in the FBX scene, that may explain the difference in the values (of course it depends on the deformation). In my test case, I did not animate anything.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Just to possibly narrow things down, please try to use the File-&amp;gt;Import command instead of the Drag&amp;amp;Drop. I am not sure if the Drag&amp;amp;Drop is setting the FBX import exactly as the File-&amp;gt;Import command. Worth checking! &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 06 Jul 2022 19:50:15 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11281334#M320</guid>
      <dc:creator>regalir</dc:creator>
      <dc:date>2022-07-06T19:50:15Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11281409#M321</link>
      <description>&lt;P&gt;I am not talking about what the values are shown in Maya -- I'm talking about what the values are given to me by FBX SDK 2020&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Yes I agree the values IN maya do show correctly after you redrag and drop it in.&amp;nbsp; &amp;nbsp;but using the FBX SDK it gives wonky normals.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I provided full sample code from FBX SDK grabbing normal data from the fbx file at the Stackoverflow page.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I will try your sample zip file&lt;/P&gt;</description>
      <pubDate>Wed, 06 Jul 2022 20:35:18 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11281409#M321</guid>
      <dc:creator>ilan.keshet</dc:creator>
      <dc:date>2022-07-06T20:35:18Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11281418#M322</link>
      <description>&lt;P&gt;--erased&lt;/P&gt;</description>
      <pubDate>Wed, 06 Jul 2022 20:40:55 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11281418#M322</guid>
      <dc:creator>ilan.keshet</dc:creator>
      <dc:date>2022-07-06T20:40:55Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11281442#M323</link>
      <description>&lt;P&gt;I have tested with the data you have sent me, and now the normals shown in maya match with FBX SDK code.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;However, the file you sent me does not have any animation data inside of it. So maybe that is part of the cause.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Attached is the FBX sample file I have been using generated by an artist on my team that has broken the FBX SDK.&lt;/P&gt;</description>
      <pubDate>Wed, 06 Jul 2022 20:47:50 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11281442#M323</guid>
      <dc:creator>ilan.keshet</dc:creator>
      <dc:date>2022-07-06T20:47:50Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309654#M324</link>
      <description>&lt;P&gt;I'm also using the 2020 FBX SDK and I just encountered this for my first animated skinned mesh import. It's as though the normals are being brought in as they are in world space for the first frame, rather than matching the geometry. In my case it's a mechanical bird with wings, and the animation has its wings up. When lit in my shader it's being lit as though the normals are applied with the wings up, which does not match the geometry.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm trying to figure out how I would fix this. It wouldn't make sense to have to adjust only the normals for the bind pose--or something--and not the geometry.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Did you come across a cause or solution? I'm perplexed on this.&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jul 2022 18:23:45 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309654#M324</guid>
      <dc:creator>DaveMay3D</dc:creator>
      <dc:date>2022-07-20T18:23:45Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309662#M325</link>
      <description>&lt;P&gt;I have yet to come up to a solution to this. I've been waiting for Autodesk to reply.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I even sent a message to a senior engineer at autodesk about this with no reply.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jul 2022 18:27:06 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309662#M325</guid>
      <dc:creator>ilan.keshet</dc:creator>
      <dc:date>2022-07-20T18:27:06Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309663#M326</link>
      <description>&lt;P&gt;The workaround solution im going on -- is I am requiring (for now) to send in the fbx without animations in bind pose&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jul 2022 18:28:23 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309663#M326</guid>
      <dc:creator>ilan.keshet</dc:creator>
      <dc:date>2022-07-20T18:28:23Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes with animations</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309696#M327</link>
      <description>&lt;P&gt;Here's my example. This is in my own shader, per-vertex lit only, with one light directly overhead. The animation starts almost in the same position with the bird's wings turned 90deg such that the "flat" side of this left wing facing toward the camera would be facing upward and lit. But I'm not applying the bone matrix to the geometry or the normals, so it shouldn't be lit now--it's like the bone is pre-applied to the normals and not the geometry. If I remove the bones from the model he drops into this position, and I would be he would be lit correctly then. Again I don't know what would change the normals without changing the attached geometry.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for the fast reply. Have you tried this in a previous SDK version?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="DavePeasant_0-1658341859717.png" style="width: 600px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1093938i8C97C688DDA7D99E/image-size/medium?v=v2&amp;amp;px=400" role="button" title="DavePeasant_0-1658341859717.png" alt="DavePeasant_0-1658341859717.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jul 2022 18:40:09 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309696#M327</guid>
      <dc:creator>DaveMay3D</dc:creator>
      <dc:date>2022-07-20T18:40:09Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes with animations</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309712#M328</link>
      <description>&lt;P&gt;1. Make sure the normals you get are from FBX Bind Pose with no animations in the FBX&amp;nbsp; &amp;nbsp;(Temp workaround until autodesk fixes Maya Export of FBX)&amp;nbsp; -- This problem only happens during Maya FBX Export&amp;nbsp; &amp;nbsp;-- Export FBX animated file in 3Ds Max works.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;2. Make sure that the normals in FBX are re-computed if there is a transformation on the mesh&amp;nbsp; -- and apply updated normals via Normal Matrix&amp;nbsp; &amp;nbsp;(If you are baking in the Transformation to the vertices)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;3. Make sure that the normals you use in your shader are computed with the Inverse of the MV transform&amp;nbsp; (Normal Matrix)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;--- I've only been using latest FBX 2020, -- but I don't think it is a problem with FBX SDK,&amp;nbsp; I think it is a problem with Maya Exporting, because data is correct when using 3Ds Max Skinned Animated mesh&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jul 2022 18:50:45 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309712#M328</guid>
      <dc:creator>ilan.keshet</dc:creator>
      <dc:date>2022-07-20T18:50:45Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes with animations</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309827#M329</link>
      <description>&lt;P&gt;Yes, just setting the mesh to the bind pose and exporting gives me correct results. Everything for me jives with what you're saying.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I can go back into Maya from the bind pose, turn one of those wings 90deg, and that wing is wrong again. Therefore, the &lt;EM&gt;normals&lt;/EM&gt; are being written into the FBX based on the initial pose, while the &lt;EM&gt;geometry&lt;/EM&gt; is not. That must certainly be something wrong in Maya if you don't encounter this in Max.&lt;BR /&gt;&lt;BR /&gt;Also this issue occurs whether or not there is an animation.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm not re-computing anything in my import; I want to the normals to come from the FBX. I'm building a tree of nodes with transforms so I am not baking anything. My shader is using the world inverse transpose for the normal calculation, although so far all my transforms should be orthogonal.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So what do we do to get Autodesk to take a look at this issue? I'd like to be able to import just about anything without export rules special for Maya. I think I know just one person at Autodesk.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jul 2022 19:42:43 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309827#M329</guid>
      <dc:creator>DaveMay3D</dc:creator>
      <dc:date>2022-07-20T19:42:43Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes with animations</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309969#M330</link>
      <description>&lt;P&gt;Sorry but I still don't understand what is the issue here (both for the bird model and the basic sphere sample). There have been no changes in the way we export normals for several years now so it may just be a misunderstanding of what you can expect is stored in the FBX file?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The geometry/normals saved to the FBX files are taken before the deformation nodes (skinCluster) so we don't depend on time based modified values. There is also a limitation about the construction nodes that still exist in the history. Normally, the FBX export will ignore these nodes but some of them may modify the retrieved data in a way incompatible with the export. FYI, it is always a good idea to "delete non-deformer history" before exporting to FBX to increase the "fidelity" of the saved data.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Also, how did you configured the export? Have you set some options or just with the default values? I sincerely apologize for not being more precise but, as I said in my previous post and at the beginning of this one, I really don't understand the problem :-(. It will certainly help me to give more significant answer that this one, if you can generate a very simple test case (a little bit like I did in my test.zip scene) and post the obtained results, the expected ones and include the full export process. I did not see anything wrong with the sample code posted on&amp;nbsp; stackoverflow (except maybe that all the switch/case to retrieve the normals&amp;nbsp; in the ImportMesh() function is exactly what is performed inside the GetPolygonVertexNormal() ;-))&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jul 2022 21:00:33 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309969#M330</guid>
      <dc:creator>regalir</dc:creator>
      <dc:date>2022-07-20T21:00:33Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes with animations</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309970#M331</link>
      <description>&lt;P&gt;Just one thing of note as a possible correction of what you posted.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;-- When I did testing, and compared with Normal Exported values -- they weren't matching the first frame in Maya.&amp;nbsp; I have no idea where these normals where coming from.&amp;nbsp; &amp;nbsp;(I would go into Maya's Component editor and view the data on the first frame)&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Validating the normals just with a unit Sphere is the easiest, since the normal values should approximately be matching that of the position on the Sphere.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jul 2022 21:00:35 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309970#M331</guid>
      <dc:creator>ilan.keshet</dc:creator>
      <dc:date>2022-07-20T21:00:35Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes with animations</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309983#M332</link>
      <description>&lt;P&gt;I think the problem I stated was very clear. -- And I even posted an .fbx file that was generated from Maya.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The Normal Data coming out of the .fbx is incorrect.&amp;nbsp; &amp;nbsp;I am reading the normal data directly from FBX SDK, and it is not matching the correct values that should be in bind pose.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I even have full sample code that I posted on Stackoverflow and the sample FBX file -- that even outputs the normal values where you can clearly see its broken.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It is possible as to what you said about that perhaps the history or something in maya is breaking the normals when they are exported -- But the very strange thing is that the geometry (positions) are totally correct.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jul 2022 21:10:58 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309983#M332</guid>
      <dc:creator>ilan.keshet</dc:creator>
      <dc:date>2022-07-20T21:10:58Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes with animations</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309995#M333</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/1650435"&gt;@regalir&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;&lt;P&gt;I did not see anything wrong with the sample code posted on&amp;nbsp; stackoverflow (except maybe that all the switch/case to retrieve the normals&amp;nbsp; in the ImportMesh() function is exactly what is performed inside the GetPolygonVertexNormal() ;-))&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;The reason why I had that extra code in that sample is because I was trying to see if ANYTHING I could do -- would get the correct normals, but it did not.&amp;nbsp; &amp;nbsp;Normals are clearly busted from the stackoverflow post. &lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jul 2022 21:16:19 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11309995#M333</guid>
      <dc:creator>ilan.keshet</dc:creator>
      <dc:date>2022-07-20T21:16:19Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes with animations</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11310001#M334</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/1650435"&gt;@regalir&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;&lt;P&gt;if you can generate a very simple test case (a little bit like I did in my test.zip scene) and post the obtained results, the expected ones and include the full export process.&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;BR /&gt;Your test.zip is an invalid test case -- it doesn't have animation data in it.&amp;nbsp; &amp;nbsp;The bug only happens when there is animation in the maya scene and you export to an fbx -- and you load the Fbx file using FBX SDK&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jul 2022 21:23:27 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11310001#M334</guid>
      <dc:creator>ilan.keshet</dc:creator>
      <dc:date>2022-07-20T21:23:27Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes with animations</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11310016#M335</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/1650435"&gt;@regalir&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;&lt;P&gt;... post the obtained results, the expected ones and include the full export process.&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;BR /&gt;I've already posted the output on the Stackoverflow post of the Unit sphere, and just by even looking at the normals its very easy to tell its broken, without even opening it in maya.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt;Vertex Count: 0 Vertex Index: 20
Position: X: 0.293893 Y: -0.951057 Z: -0.0954916 W: 0
Normal: X: 0.298177 Y: 0.267987 Z: -0.916119 W: 1

Vertex Count: 1 Vertex Index: 0
Position: X: 0.148778 Y: -0.987688 Z: -0.0483409 W: 0
Normal: X: 0.18352 Y: 0.228479 Z: -0.956095 W: 1

Vertex Count: 2 Vertex Index: 21
Position: X: 0.25 Y: -0.951057 Z: -0.181636 W: 0
Normal: X: 0.246448 Y: 0.378525 Z: -0.892179 W: 1&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The normals / positions should very similar, and match in sign. -- Here normals are completely off and signs are wrong.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jul 2022 21:29:24 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11310016#M335</guid>
      <dc:creator>ilan.keshet</dc:creator>
      <dc:date>2022-07-20T21:29:24Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes with animations</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11310074#M336</link>
      <description>&lt;P&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/1650435"&gt;@regalir&lt;/a&gt;&amp;nbsp;when I import&amp;nbsp;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/12645600"&gt;@ilan.keshet&lt;/a&gt;&amp;nbsp;'s sphere into my test engine from FBX SDK 2020.3.1, with no animation applied, I can confirm the normals are facing the wrong direction and they also have the bone's distortion from the first frame baked in. The geometry is however correct. I have not supplied any of my code or files yet, but based on the documentation I would be expecting the light to be coming from my light source directly above, since the normals would match the position information. If I remove the animation and leave the joints, the normal distortion is gone but they are facing a different but still wrong direction. If I put the mesh in bind pose before exporting, the normals match perfectly. The way I'm importing, I would expect to get the same information every time.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="DavePeasant_0-1658353879870.png" style="width: 600px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1094029iD4050695140E7D54/image-size/medium?v=v2&amp;amp;px=400" role="button" title="DavePeasant_0-1658353879870.png" alt="DavePeasant_0-1658353879870.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jul 2022 22:04:23 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11310074#M336</guid>
      <dc:creator>DaveMay3D</dc:creator>
      <dc:date>2022-07-20T22:04:23Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes with animations</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11310132#M337</link>
      <description>&lt;P class="lia-indent-padding-left-30px"&gt;&lt;EM&gt;Sorry but I still don't understand what is the issue here (both for the bird model and the basic sphere sample). There have been no changes in the way we export normals for several years now so it may just be a misunderstanding of what you can expect is stored in the FBX file?&lt;/EM&gt;&lt;/P&gt;&lt;P class="lia-indent-padding-left-30px"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Given the response I would imagine it's very possible it's been wrong for several years. There appears to be something about Maya FBX export in contradiction to your statement:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="lia-indent-padding-left-30px"&gt;&lt;EM&gt;The geometry/normals saved to the FBX files are taken before the deformation nodes (skinCluster) so we don't depend on time based modified values.&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/12645600"&gt;@ilan.keshet&lt;/a&gt;&amp;nbsp;seems to have proven that with the sphere example. Indeed the normals, unlike geometry, seem to be baked to the position they are in at the time of export regardless of the animation. That's what I'm observing at least. Default FBX export options, no history.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I tend to import everything in its bind pose on the first frame. From my understanding, popular game engines write their own FBX importers. I didn't run into this until I had an animated file where the first frame was not in the bind pose.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If I export the same animated file, but right before I export I put the skeleton in bind pose, I get&amp;nbsp;&lt;U&gt;correct&lt;/U&gt; normals:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="DavePeasant_0-1658357772379.png" style="width: 600px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1094039i1817A916D1A3EA04/image-size/medium?v=v2&amp;amp;px=400" role="button" title="DavePeasant_0-1658357772379.png" alt="DavePeasant_0-1658357772379.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Per your statement I would expect this result no matter what position I have the joints in. (Again this is a single combined mesh so that really shows the deformation is being applied ONLY to the normals.)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for your responses.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jul 2022 22:59:17 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11310132#M337</guid>
      <dc:creator>DaveMay3D</dc:creator>
      <dc:date>2022-07-20T22:59:17Z</dc:date>
    </item>
    <item>
      <title>Re: FBX SDK Normals Incorrect with Skinned Meshes with animations</title>
      <link>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11311979#M338</link>
      <description>&lt;P&gt;Okay guys, I dig deep into the history of the code and after several hours of investigations I have to come to the conclusion you already came to, and that is that Maya export the "modified" normals. I went back about 20 years in the code and I confirm that this is "by design". Let me try to explain the reasons we export unmodified vertices but modified normals.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;As I wrote in previous posts, we do indeed save the geometry coordinates &lt;STRONG&gt;before any deformation occurs&lt;/STRONG&gt;. The particular thing with the normals is that, as you may already know, in Maya you can actually lock individual vertices normals and mix hard/smooth surfaces. When we export such geometries to FBX we try to respect the values the user defined (an explicitly set value = locked) and we have to get them from the deformed geometry because this is where they are stored. I also mentioned that, typically, normals need to be re-computed every time the deformations are evaluated so "it does not really matter what is their initial value" (the only exception would be if you want to keep "locked" values but, of course in this case the rendering will look "weird" while the skin is deformed). Yes, I know, this is not the best answer, but is also pretty much what every 3D editing software does! (I mean, re-compute the normals based on the deformations) &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;It probably won't help much in your case but, for what is worth, in the FBX SDK we have the function FbxMesh::GenerateNormals(...) that can be used to compute vertex normals on the mesh based on its topology.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hope this helped to clarify the current results&lt;/P&gt;
&lt;P&gt;Regards&lt;/P&gt;</description>
      <pubDate>Thu, 21 Jul 2022 16:33:20 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fbx-forum/fbx-sdk-normals-incorrect-with-skinned-meshes-with-animations/m-p/11311979#M338</guid>
      <dc:creator>regalir</dc:creator>
      <dc:date>2022-07-21T16:33:20Z</dc:date>
    </item>
  </channel>
</rss>

