Coder Social home page Coder Social logo

Comments (4)

neumond avatar neumond commented on May 27, 2024

Hi, I think I understand what is your problem. MD3 requires vertices to have hard-binded values of normal and UV, if you need same position, but with different normal or UV, you have to duplicate vertices. Script does detect cases where you have different normal values for same vertex and duplicates them automatically, but it doesn't consider UV coords.

from blender-md3.

neumond avatar neumond commented on May 27, 2024

I'm not sure whether I fixed it, but try this: https://github.com/neumond/blender-md3/tree/uvfix

from blender-md3.

adsn avatar adsn commented on May 27, 2024

Thanks for the quick fix, the UVs are left untouched now, though there are still those sharp edges left.

I can manually create an object with split edges and still keep its normals smooth:

  • copy the object without sharp edges
  • split the seamed edges on the export object manually, now they are sharp
  • add DataTransfer modifier to the export object and transfer custom normals from the copied smooth object, so the normals are smooth again
  • now when I export the model the exporter applies edgesplit again so the model ends up having sharp edges.

Maybe an option to export meshes without automatic edge splitting could solve this.

Btw, an option to export only selected meshes would be nice, so it wouldn't be necessary to create separate files for each model.

from blender-md3.

neumond avatar neumond commented on May 27, 2024

Oh my blender is little bit outdated, but let me guess
https://www.blender.org/manual/modeling/modifiers/modify/data_transfer.html

First key thing to keep in mind when using this modifier is that it will not create destination data layers. Generate Data Layers button shall always be used for this purpose, once set of source data to transfer is selected. It should also be well understood that creating those data layers on destination mesh is not part of the modifier stack, which means e.g. that they will remain even once the modifier is deleted, or if source data selection is modified.

I think export script reads original normal data from the model, without data transfer applied.

My code for to_mesh conversion is pretty standard:

obj.to_mesh(bpy.context.scene, True, 'PREVIEW')

Here apply_modifiers=True. But DataTransfer seems to be slightly unusual modifier.

from blender-md3.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.