sprockets Shelton's new Char: Hans It's just donuts by ItsJustMe 3D Printing Free model: USS Midnight Rodger Reynolds' 1950s Street Car Madfox's Pink Floyd Video Tinkering Gnome's Elephant
sprockets
Recent Posts | Unread Content
Jump to content
Hash, Inc. - Animation:Master

nemyax

*A:M User*
  • Posts

    373
  • Joined

  • Last visited

  • Days Won

    4

Posts posted by nemyax

  1. How much of this python code actually relies on Blender?

    The most important parts do. This script uses Blender's bmesh data structure very heavily. I suppose if you replicated that structure's features and implemented conversion to it from your geometry format of choice, then the same approach would work.

    Incidentally, you don't have to use the actual Blender UI if all you need is its Python engine. See the Don't Use Blender! tip here.

     

     

    I'm wondering about approaches to using A:M files in other python friendly programs (or even as standalone code).

    This script uses polygonal edges to represent CPs, and marks them with additional data that indicates the "previous" and "next" edge (up and down the spline). If it weren't for the "magic" undocumented bitfields, the format would be trivial.

  2. This addon exports the following from Blender:

    • Polygonal meshes converted to a patch-based representation in Animation:Master's .mdl format.
      The exporter tries to maintain good continuity, preserves UV mapping, and has an option to add "whiskers" (Add tails check box in the file export window) to extend discontinuous splines.
    • If the mesh is associated with an armature, the bones and skin weights.
      Constraints, limits and all other rigging relationships are ignored.
    • CP groups from vertex groups.
      Vertex groups named after the bones of an associated armature are skipped.
    • Optionally, CP groups named after assigned materials (Group CPs by material option).
      These groups override any vertex groups with the same names, so make sure your vertex groups and materials have different names. The option is useful in round-trip import-export scenarios through the .obj format.
    • Optionally, a spline action (.act) file for each shape key that is different from the base mesh (Export shape keys option).
      These .act files can be useful, for example, if you want to transfer spline shapes to your smartskins.

    To export your Blender scene, click File | Export | Animation:Master model (.mdl). This will convert the active object (the one selected last).

    The resulting files are based on the Animation:Master V17 model format. The addon requires Blender 3.0 or later.

     

    Get the addon here: https://sourceforge.net/projects/blendamajigs/files/io_scene_am_mdl/
    The name of the file is io_scene_am_mdl-*.*.*.zip.

    How to install the script
    Open Blender's User Preferences window and go to the Add-ons tab.

    • Click Install from File and specify the downloaded .zip file or the unpacked .py file.
    • Enable the Import-Export: Animation:Master Model addon.
    • To make your changes persistent, click Save User Settings.

    Special thanks to Malo for his excellent advice and eagerness to help finish this thing.

     


    Tools for A:M-friendly remeshing
    The add-on includes the functionality of the Animation:Master Middleman script. It helps convert models created with Catmull–Clark subdivision in mind into more spline-friendly meshes. Here's a quick before-and-after:
    http://pix.academ.org/img/2015/01/18/831124cd0178e05fc80e133f93ba7773.png

    Note that for best results you should keep your mesh all-quads and avoid more than five edges converging at a vertex. This is generally good subdivision modelling practice, but it is especially important for the kind of remeshing that this script does. Following these rules should give you a spline cage with nice criss-cross spline intersections.

    The tools are available on the Tools panel (shortcut: T in the viewport) in the Misc tab:
    http://pix.academ.org/img/2015/07/12/73195e3df0aa046ae1166a3a479cd3c4.png

    The Make A:M-Friendly Copy command uses the custom Hatch Face command automatically to improve flow in problematic areas. Faces generated by the Hatch Face command will remain selected after Make A:M-Friendly Copy has completed.
    Tip: This pre-selection can help you reduce detail if you want. You can use the Select Boundary Loop command and then dissolve the edges it has selected.
    http://pix.academ.org/img/2015/01/18/466e5d096108bf27019b0796351eedab.png
    http://pix.academ.org/img/2015/01/18/dc3cf4998db69c39ec71bdb5e9582464.png

    You can use the Hatch Face command independently as well. It is available when face selection mode is on.

    • Thanks 2
  3. I see. A hell of a limitation if you ask me.

    But anyway, the fact that such patches are disallowed doesn't explain why A:M strips other, valid patches of their UVs. I've just tried the exporter on a torus, which has the most regular topology you can imagine, and the undo caused more than half the patches to lose their texture.

    Apparently something's wrong about the way patches or CPs in them are ordered.

  4. You need programmers that know the code and know it's workflow.

    True. And making the source available would make it easier, not harder, for these people to contribute. (I'm assuming you mean former Hash Inc. developers.) But only as long as they want to. If Yves has no intention of touching that code base any more, then you won't have him either way, source or no source. If there isn't sufficient interest among people like these, of course all you'll be left with is script kiddies. Ironically, at the moment A:M doesn't even have those, as Rodney points out.

  5. Open sourcing of a long standing product would be putting it out to pasture like a dying cow.

    .NET and Unreal Engine 4 beg to disagree.

     

     

    wanna b programmers tucking in bits of garbage code snippets

    Don't accept garbage commits and don't give contributor rights to wannabes.

  6. I see what you mean. Booleans would be another example of a toolset that spline patches don't support very well.

     

    i am not sure but there was this legend that A:M has a very unique programming style...

    I suppose this can be confirmed or debunked by Steffen or ypoissant.

  7. it may result in copying of some features and implementations of A:M to other software which may result in less use of A:M

    If this thing really took off, there would also be the reverse process of A:M borrowing from other software (for example, the loop cut tool that *J* is trying to emulate). Which would result in more use of A:M.

×
×
  • Create New...