[Bf-committers] Blender tangent space calculation
minov.eug at gmail.com
Tue Nov 15 17:24:22 CET 2011
Oh, I am sorry again, I'd thought that you mean soft/hard edges not faces,
I stupid! :\
Yeah there is must me way to gen those normals too.
On Tue, Nov 15, 2011 at 7:12 PM, Eugene Minov <minov.eug at gmail.com> wrote:
> > >If it's not already available in the python API
> Hmm, I think not, as far as I can see in 'blender_python_reference_2_57'
> and by searching in 'blender-2.60a' sources. I've found only two files in
> sources with references to 'SMikkTSpaceContext' struct and
> to 'genTangSpaceDefault' function:
> - 'source/blender/blenkernel/intern/DerivedMesh.c' to get tangents for
> using in GLSL, I think;
> - 'source/blender/render/intern/source/convertblender.c' to get tangents
> for render's needs.
> But I not completely sure, I will look deeper.
> > >However, you'd need to supply support for normals as well since
> > >at this point the python API only gives access to the unconditionally
> > >averaged/smooth normals
> > >at the vertices. Ie. the api doesn't take faces set to soft/hard into
> > >account when submitting normals
> > >back to the script.
> Yes, I was wondering about that when started to write my own exporter
> since blender 2.49 :)
> But after I've found an 'EdgeSplit' modifier, I used to to export my meshes
> applied by it and to welding vertices and normals after.
> Maybe we'd can go a similar way and to provide tangents using averaged
> normals only?, since soft/hard edge's flags is 'de-facto' uses in that
> modifier only (as far as I know, even blender's render is not uses those
> As about realization, I think it may be some analogue to
> the 'bpy.types.MeshTextureFace' class array, like 'MeshTangentFace' with
> four tangent vectors and fSign values for each vertex per face in it. Or
> indexes to already welded ones.
> And generate data by request, in the 'Mesh.tangent_normals' accessor.
> On Tue, Nov 15, 2011 at 4:02 AM, Morten Mikkelsen <mikkelsen7 at gmail.com>wrote:
>> > >So why not to simply adding possibility for generate/access a tangent
>> > >normals into the python api?
>> If it's not already available in the python API then I agree that it's a
>> good idea.
>> However, you'd need to supply support for normals as well since
>> at this point the python API only gives access to the unconditionally
>> averaged/smooth normals
>> at the vertices. Ie. the api doesn't take faces set to soft/hard into
>> account when submitting normals
>> back to the script.
>> Bf-committers mailing list
>> Bf-committers at blender.org
More information about the Bf-committers