Hi,

I'm not also fan of having C++ in kernel.

Not sure if this navmesh_conversion can be  can be easily moved to 
intern/ -- it uses DNA_meshdata_types and DerivedMesh structures. Was 
thinking about C-API for recast library, soblender kernel can easily use it.

There's at leats one more file which confuses me -- MOD_navmesh.cpp. 
Think it's better to make it C too.

I can try to get rid of this C++ today-tomorrow.

Campbell Barton wrote:
> Recent navmesh commit adds C++ into blenkernel - 
> source/blender/blenkernel/intern/navmesh_conversion.cpp
>
> Until now we didn't have C++ in core libs, so not sure if this is acceptable? 
> - or what we should do now its in.
>
> The file is only 450 LOC and doesn't use C++ classes or functionality which 
> is tricky to convert, the main thing holding it back from going to C is 
> Recast.h which has initializers inline with structs.
>
> While I'm not up on C++, to me there seems to be 2 options.
> 1) Make Recast.h C compatible, convert navmesh_conversion.cpp to C code.
> 2) move navmesh_conversion.cpp into its own lib and have a C API (for such a 
> small file this is overkill but at least means no mixing C/C++).
>
> #2 is most straightforward, we can have intern/navmesh and arrange much the 
> same was as ghost.
>
> Any comments?, anyone want to put their hands up to do this? :)
>
> ... or do we just not bother and have C++ in blenkernel?
>


-- 
With best regards, Sergey I. Sharybin

_______________________________________________
Bf-committers mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-committers

Reply via email to