1. Are you planning to upload your awesome tool to Hive? Please review the rules here.
    July 9, 2018: The rules for the Tool Section have been revised. Please be sure to read the revisions.
    Dismiss Notice
  2. Updated Resource Submission Rules: All model & skin resource submissions must now include an in-game screenshot. This is to help speed up the moderation process and to show how the model and/or texture looks like from the in-game camera.
    Dismiss Notice
  3. DID YOU KNOW - That you can unlock new rank icons by posting on the forums or winning contests? Click here to customize your rank or read our User Rank Policy to see a list of ranks that you can unlock. Have you won a contest and still havn't received your rank award? Then please contact the administration.
    Dismiss Notice
  4. Don’t forget to sign up for the Hive Cup. There’s a 555 EUR prize pool. Sign up now!
    Dismiss Notice
  5. The Hive Workshop Cup contest results have been announced! See the maps that'll be featured in the Hive Workshop Cup tournament!
    Dismiss Notice
  6. The results are out! Check them out.
    Dismiss Notice
  7. The poll for Hive's 12th Concept Art Contest is up! Go cast your vote for your favourite genie!
    Dismiss Notice
  8. The raddest synthwave tracks were chosen - Check out our Music Contest #12 - Results and congratulate the winners!
    Dismiss Notice
  9. Check out the Staff job openings thread.
    Dismiss Notice
Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

Matrix Eater 3D Model Editor

Submitted by Retera
This bundle is marked as approved. It works and satisfies the submission rules.
The Matrix Eater

With support from the community, I've been working on this tool for years. More so, I became a user of it, much to the dismay of the people who asked for the best and brightest features, because I have hardly added any features in favor of just using the program how it is.

What does the Matrix Eater do?

You can think of the Matrix Eater as an alternative to Magos's Model Editor or MdlVis, but I usually use all three of them in conjunction.

The Matrix Eater is visually like a multi-geoset version of Oinkerwinkle's Vertex Modifier from years ago, but it has the purple icon on the View Controller window which lets you move and edit Pivot Points also.

In addition, if you do Tools > Mirror and mirror a selection that includes pivot points, it will mirror the animation data. So you can make a Portrait model that faces the opposite way, or something, and still animates correctly.

The program understands the MDL format in its entirely, and has support for MDX that is newer and slightly less tested. If it spits out a broken MDX, then save as MDL and convert to MDX using other software. It can do this for you, if you go to View -> Use Native MDX Parser and turn it off, then it uses MDLX converter instead of its own code to convert to and from MDX ( so it's less likely to have any bugs ).

If you use File -> Import it can be like magic and do what you need, or break things. This new version includes pictures along with names to try to show you what part of the model you're looking at. The general idea is that it takes literally everything from a new model, dumps that into the interface alongside the model you already have open, and gives you choices of how to combine them and which new components to include. You can mash "leave all" a bunch and only include an attachment point, or you can import a grunt onto a dragon complete with animations and have an animated orc dragon rider. You just have to micromanage the little buttons and tell the pelvis of the grunt, and everything below it, to attach to the dragon's main body root.

Which version is this?

This is the official upload of the latest version of the Matrix Eater.

If there is anyone using an older version of the Matrix Eater, please stop using it and use this one. Until now, the program was only shared on forums here and there from links which were often broken and pointing to outdated versions.

If this one cannot do what an old version does, please comment on this upload and tell me why so I can fix it.

I really wanted to revamp this program and add new features and write a tutorial before I uploaded it onto the Hive, but I just haven't had time recently, and I want to stop sitting on this updated version because it has several internal fixes that should make it less likely to save buggy MDX models and so I feel the community deserves this new version in case anybody is using the program -- regardless of whether I end up getting the time to improve it to match up with my dreams or not.


I didn't check the box for Linux because I haven't tested it on there for a while, but if you're a Linux user and you want to run it on Linux, just run the JAR. Theoretically it should work, if you have a Warcraft install folder on the linux machine. I've tested that before and it seemed to work.

The real source code the program on Github is this Eclipse workspace:
GitHub - Retera/JWC3: Retera's Java WC3 libraries.

There is a similar one but it is way older and out of date.
Contents

Matrix Eater 3D Model Editor (Binary)

Reviews
eejin
A great tool for editing meshes and animations. There is a lot of functionality there and this tool surely makes editing models a lot easier! Having an undo option in the UV editor would be nice. The program also gives an error that it is missing...
  1. ILH

    ILH

    Joined:
    May 8, 2012
    Messages:
    608
    Resources:
    16
    Models:
    14
    Icons:
    1
    Tutorials:
    1
    Resources:
    16
    Is there a feature to reverse an animation? Would be great to have it :D
     
  2. Retera

    Retera

    Tool Reviewer

    Joined:
    Apr 19, 2008
    Messages:
    802
    Resources:
    25
    Models:
    17
    Tools:
    2
    Maps:
    6
    Resources:
    25
    Yes, it already can, but the option is hard to find.

    1. First, save the model as MDL in a folder somewhere.
    2. Then do File -> Edit/delete model components. This will show all the parts of the model. Don't click or change anything, if you click anything on the right-hand side it edits stuff.
    3. Only click on the Animations tab, then click the animation listed that you want to reverse, then click the checkbox that says Reverse.
    4. Then, choose "Finish" at the bottom of that screen.

    What this feature does, is run the Import code but importing your model into an empty new one, effectively. This let's you erase entire geosets and animations, or in your case, reverse animations.

    When it's done, you'll see a new copy of your model open up in the matrix eater. It will be called MyModel1 if the old model was called MyModel, and it saves as an MDL in the same folder where you saved previously.

    For really advanced users, note that the new copy of the model, even if you change nothing in that menu, will have it's animation start/end times shifted even though all animations will be kept the same and it doesn't show in game any differently. It's just important to know this shifting will occur if you text edit the MDL a lot.
    It's because the import script is copying each animation back into an empty model to rebuild your source model, and it always copies at an interval of 300 away from the last animation that already exists in the model.
    (So, it would also drop or confuse any keyframes that weren't a part of any animation, if you had those for some reason)
    Edit: It also will sometimes lose links when Nodes have a parent that is not a Bone or a Helper. For example, the Troll Bat Rider has a bone whose parent is an attachment point, whose parent is another bone. These links are lost to the Matrix Eater Import functionality because it wasn't designed correctly. Someday I should fix it.


    Edit: also guys, don't let me forget, there's a critical bug in the matrix eater right now that Rotation chunks on RibbonEmitters are erased just by opening a model and saving it again. I'm not sure how I never had fixed it before, but sometime soon I'll release a patch.
     
    Last edited: Jun 16, 2017
  3. Alethos

    Alethos

    Joined:
    Jan 25, 2017
    Messages:
    210
    Resources:
    6
    Models:
    6
    Resources:
    6
    Love this tool. I've been using an old version for awhile- mistakenly thinking I had the newest one- but the download date says I downloaded it a day before this one came out haha. But I really like all the improvements.

    Just wondering. Is there a feature to merge animations? (ie. when one ends- add another to be one longer animation) Or do you know if this can be done in MDLvis or Magos?
     
  4. dtnmang

    dtnmang

    Joined:
    Apr 20, 2010
    Messages:
    445
    Resources:
    7
    Models:
    3
    Tutorials:
    4
    Resources:
    7
    there's also a glitch in Ribbon Emitter importing in that the Red and Blue values get mixed up. 100 200 150 becomes 150 200 100
     
  5. dtnmang

    dtnmang

    Joined:
    Apr 20, 2010
    Messages:
    445
    Resources:
    7
    Models:
    3
    Tutorials:
    4
    Resources:
    7
    Only MDLvis can do it afaik.
     
  6. Misha

    Misha

    Joined:
    Jun 9, 2008
    Messages:
    7,194
    Resources:
    71
    Models:
    62
    Icons:
    1
    Packs:
    2
    Skins:
    4
    StarCraft II Resources:
    2
    Resources:
    71
    well this is getting me an error, @Retera . it says its not designed for windows or something.. i use windows 7 and the matrix eater i use works fine..
     
  7. Retera

    Retera

    Tool Reviewer

    Joined:
    Apr 19, 2008
    Messages:
    802
    Resources:
    25
    Models:
    17
    Tools:
    2
    Maps:
    6
    Resources:
    25
    @Misha I believe I may know the issue. For the latest version of the Matrix Eater, I included Java itself in the build, instead of requiring users to install Java -- the java updater thing is stupid, even though I like the language, and I wanted to respect users who don't actually wish to install Java globally on their computer.

    But, this probably means the embedded Java in the latest download is for the wrong version of windows for you. To fix it, you could probably just copy "MatrixEater3D.jar" from the new download into a clone of your old working one, and it might start running the new Java code I wrote using your computer's true installation of Java.

    @dtnmang Yeah, there may not be a feature for sticking two animations together in the current release, but if you hack the Matrix Eater the Animation class used to represent animations in the MDL object has on the method "myAnimation.copyToInterval(newstart, newend)" or something like that, and you could use it to align animations in the model and build this feature you are talking about very easily. That function modifies all non-GlobalSequence keyframes by doing a relative shift between intervals, so "copyToInterval(100,200)" on an animation with "Interval { 1000, 3000 }" in the MDL will copy every frame between 1000 and 2000, and multiply the copy's time interval by (200-100)/(2000-3000) relative to its new start at 100. So, 1666 becomes 133, and 2000 becomes 150.

    So, you could code this feature you were talking about in 10 or 20 minutes if you had the code open and knew what to type like I do. That's why it's so hard on days when I realize that I spent 10 minutes typing this post instead of typing code.




     
    Last edited: Jul 19, 2017
  8. Misha

    Misha

    Joined:
    Jun 9, 2008
    Messages:
    7,194
    Resources:
    71
    Models:
    62
    Icons:
    1
    Packs:
    2
    Skins:
    4
    StarCraft II Resources:
    2
    Resources:
    71
    @Retera well, i'd rather wait on you to code in the geoset-merging, that lets me just check all geosets with the same material, but also be able to recognize which geosets have the same geoset animation, and merge them into a separate group, from the geosets that have a different, or no geoset animation

    its really me wanting to merge all of the cut-up mesh and don't have to re-rig later. my current model in works is only waiting on that
     
  9. Retera

    Retera

    Tool Reviewer

    Joined:
    Apr 19, 2008
    Messages:
    802
    Resources:
    25
    Models:
    17
    Tools:
    2
    Maps:
    6
    Resources:
    25
    Can't you just do "File -> Merge geoset" a bunch of times to fix a cut up model like that?
    But, you're right I could make it a one-click feature.

    I made a video of me adding the animation + animation feature in 30 minutes, but it was 30 minutes long and uploading to youtube failed. I made a footman with an animation called Attack Stand Victory -- it was attack and stand victory played back to back -- and it worked on the first try.

    Now, I just need to get that feature to you guys.
     
    Last edited: Jul 20, 2017
  10. Kyrbi0

    Kyrbi0

    Joined:
    Jul 29, 2008
    Messages:
    7,880
    Resources:
    1
    Models:
    1
    Resources:
    1
    Huh. I wonder what can be done with animations, like how long the name can be, or what combinations. Like Stand Channel Swim Defend Alternate...
     
  11. Hayate

    Hayate

    Joined:
    Oct 20, 2010
    Messages:
    2,608
    Resources:
    65
    Models:
    50
    Icons:
    14
    Spells:
    1
    Resources:
    65
    So Is Official now? You deserve a medal XD
     
  12. Misha

    Misha

    Joined:
    Jun 9, 2008
    Messages:
    7,194
    Resources:
    71
    Models:
    62
    Icons:
    1
    Packs:
    2
    Skins:
    4
    StarCraft II Resources:
    2
    Resources:
    71
    well, yes i could, but, i don't want to re-rig stuff xD i think it'll be the same way in how you can (for example) choose to transfer all animations, versus the combine animations :)

    feel free to bonk me if i'm making too many suggestions XD
     
  13. dtnmang

    dtnmang

    Joined:
    Apr 20, 2010
    Messages:
    445
    Resources:
    7
    Models:
    3
    Tutorials:
    4
    Resources:
    7
    As long as you can fit tags into it.
    e.g. The Blademaster has an animation named "Attack Walk Stand Spin" for Bladestorm. So the Blademaster will do this 'spin' animation whenever he attacks, moves, or stands and has the animation tag "spin" (through casting Bladestorm or triggers)

    "Alternate Gold Attack Walk Stand Spell Upgrade Three" -> This animation is used whenever the unit attacks, walks, stands or casts a spell when it's in the alternate form (tag Alternate) of its 3rd level upgrade form (tag Upgrade Three) while carrying gold (tag Gold).
     
  14. Astromen2009

    Astromen2009

    Joined:
    Dec 17, 2009
    Messages:
    31
    Resources:
    1
    Models:
    1
    Resources:
    1
    Bro this is the best tool that I have seen, continue working on it, awesome
     
  15. Hayate

    Hayate

    Joined:
    Oct 20, 2010
    Messages:
    2,608
    Resources:
    65
    Models:
    50
    Icons:
    14
    Spells:
    1
    Resources:
    65
    OMFG FOR GOD SAKE THIS CAN IMPORT OBJ? OMG OMG OMG OMG OMG THIS IS AMAZING, I DONT NEED TO GO THROUGH MILKSHAPE 3D ANYMORE
     
  16. Stefan.K

    Stefan.K

    Joined:
    Dec 29, 2014
    Messages:
    1,443
    Resources:
    84
    Models:
    84
    Resources:
    84
    Wow I didn't know that. :O

    Damn, this guy really deserves some medal for his work.
     
  17. Quinten

    Quinten

    Joined:
    May 24, 2016
    Messages:
    353
    Resources:
    0
    Resources:
    0
    I downloaded this because I wanted to create an Ursa Warrior (Or Furbolg) with the skin/portrait of a Golem, but I have 0 experience with this and it looks way more advanced than I ever dared to imagine; what's a good place to get started?
     
  18. Sin'dorei300

    Sin'dorei300

    Joined:
    Aug 20, 2011
    Messages:
    3,616
    Resources:
    202
    Models:
    87
    Icons:
    104
    Packs:
    6
    Skins:
    4
    Template:
    1
    Resources:
    202
    You did a really good job on this one. Great tool!!
     
  19. Retera

    Retera

    Tool Reviewer

    Joined:
    Apr 19, 2008
    Messages:
    802
    Resources:
    25
    Models:
    17
    Tools:
    2
    Maps:
    6
    Resources:
    25
    I'm working on some big upgrades to this tool, but they are not done yet.
    This should include a Select Faces and Select Vertex Groups mode, but while you are in these modes you can still edit nodes if you have them toggled on to display.
    I also modified the nodes to be toggleable in a tree widget (see in the attachment on the left hand side of the screen) that combines nodes and geosets into one view control widget. I'm hoping it will be more convenient, but time will tell.
    My current build also now has a copy paste feature, so you can select stuff (such as with Select Vertex Groups mode, see attachment #2, I clicked once on the paladin's head and it lit up in orange) then after you select stuff, press Ctrl+C to copy it and then later Ctrl+V in another Model Tab in a different model file to paste mesh or nodes. I haven't worked out all the details yet on what would happen if you copied stuff with a lot of animation and visibility data, but it probably will favor ease of use and require the user to clean up a bit after copy pasting (maybe tweak some geoset animations).

    If you try to paste the contents into another program, like notepad, after copying model data in the matrix eater, it prints out an MDL-format file of the model data that you had selected, currently. It's a kind of weird feature, because to transfer data I just stored an MDL model in the clipboard.


    Edit: So, one reason for this post -- does anybody here think these changes would impede their workflow? My aim is to enhance things, but I have broken a lot along the way with these changes.
    Already the feature of "Visible" but not editable mode for a geoset is currently gone, but it still exists in the code and will probably be re-enabled as the ability to right click a Geoset in the controller on the left and choose "Pin Visible" or something.
    Other changes in the UI are visible in the image attached. I still can't decide if I like the darker theme, so I'm hoping to have a Preferences window where you can choose the theme by the time I release this. Don't have it yet, though, but I have a preferences system that will make it easy to add the window.
    This version also moved all of the buttons on the right-hand side of the screen into a Toolbar across the top, so that I can use that part of the screen for adding new primitives, and editing selected node properties, like in 3ds max.

    Edit again: I'm also going to be faced with design questions like: do I want to bother to code vertex-group selection and face-based selection in the TVertex editor. I haven't done that at all yet, that thing crashes if you try to open that window in this new version that I'm still working on. That will be fixed before I release it.
     

    Attached Files:

    Last edited: Sep 17, 2017
  20. Kyrbi0

    Kyrbi0

    Joined:
    Jul 29, 2008
    Messages:
    7,880
    Resources:
    1
    Models:
    1
    Resources:
    1
    Wow, looking fantastic. Very excited about copy/paste functionality; I cannot imagine what kind of glorious angel suggested such a good idea.... ;D

    Love the black, too.