So I have sort of made a Maya like 3d modelling program with Unity

Recently, I refactored my map editor for a past project into a 3d modelling software. It is made in Unity, and works in Standalone (so not editor). Currently it can do basic poly modelling, like extrude, bevel, uv etc.

I made this because, Maya is just getting more and more expensive, and Blender is really painful to work with. It pretty much works like Maya, as that is the software I am used to. The goal was to have a poly modelling software that will give a smooth transition for Maya users. I think the only real difference is that panels are not floatable. So pretty much poor man’s Maya

I’ve just implemented vertex snapping yesterday, and will probably add in boolean manipulation next.

It is primarily made for internal use. But I just wondered if there would be enough demand for this sort of software. I am thinking Steam release, $10~$20 price. Is anyone interested in this sort of thing?

If there is enough demand, I will probably add rigging and weight painting.
Just wanted to see if there is a real demand from Unity devs as this will probably be mostly for unity devs.

1 Like

Is it a muscle memory issue? Most of them are. Many can work fine with it. Heck, I could even work fine with Godot if I had to. I might even find working with Unreal okay given some time and getting paid appropriate (mental and nervous system) damages. :laughing:

If I recall correctly, Blender has these configuration that let you work the same ways as in other modeling tools - within limits of course, but at least keyboard shortcuts and whether left or right selects and so forth should match.

Did you check the Asset Store? There’s at least uModeler, and there are likely others. Not sure if any one of these follows a given established workflow but worth checking out.

I don’t think Steam is the right place for it. People will be like: “Uh. Why is that $10 when I can have Blender for free and do a lot more with it?”

Even on the asset store it will be a hard sell for the same reasons, and because of uModeler which practically monopolizes the “modeling within editor” niche, with ProBuilder taking a part in that too (and maybe Polybrush though that’s now legacy).

Still, if you want to see what the demand is, wrap it up and publish it. :wink:
Just don’t do it “half-assetdly” because those comprise most of the store’s “editor tool” assets. In that case it’ll almost certainly won’t work to get past the $100/month threshold. You either WANT to make it happen and it shows and that entices early adopters, or it will show that you don’t lean into it, which means barely any sales.

Honestly, I think asset devs should do more open source. Promote it while it’s free, which means more likely to find early adopters. And when it gets more and more popular either you can pull the free version and publish it, or you split into free and pro, or you find other ways to monetize ie add-on packs, extensions, or just donations, sponsors.

Well, it’s a Unity asset with editor integration so it can only be for Unity devs. :wink:

From what you said, your potential target audiences are:

  • Non-dedicated Maya users also working with Unity who are dissatisfied with Maya’s pricing
  • Unity users who are also modelers looking for an in-editor modeling tool that works like Maya, because it’s the one they liked the most (but may not use due to cost)
  • or: same as above, but just like you they are unhappy with Blender, and don’t like uModeler nor Max

So this looks as if there is a potential niche but it’s likely going to be rather small - a subset of modelers who are cost sensitive, not primarily modelers, and won’t use Blender for whatever reason.

Maybe I was not clear. This is not an in editor tool. It is made in Unity, but it is a standalone software.

And as for Blender, it is very difficult for me, the axis thing alone and the implications are really troublesome. At my personal level, it is near impossible to fit it into my workflow pipeline, very cumbersome, and hard to maintain. For example, for a project, I use 1 rig for hundreds of skinned mesh variants, and through Blender, it quickly becomes a nightmare…the maintaining of the related scripts alone becomes a bigger problem (as skinned meshes are dynamically linked and disconnected) etc.

And the muscle memory thing is also a real pain. Maya and Unity share a lot in common, and like ZBrush, Blender really gives me the brainmelt after few hours. But this is me, so I can’t say for others.

Anyway, I am just interested in other devs like me, who are not happy with the Maya subscription and pricing, and the horrible interface of Blender. If a good amount of people are interested, I might just go ahead and polish the project a bit more, if not just keep it as an internal tool.

Let me reiterate on one thing. If you are a Maya user, you probably won’t need any kind of tutorial. You should be able to just jump in and use it - that is my goal.

Maya users that felt it was too expensive would probably just use an earlier version of Maya rather than use a Maya 0.1 made with Unity. Because it’s made with Unity it’s going to be rather bloated and possibly power inefficient. A modelling application generally only updates the display whenever a change is made. Whereas a game engine updates the display constantly. Although you may be able to adapt your application to do the same.

Well, I am well aware of it, but it turns out modern hardware is very capable. The majority of the bottleneck, is actually CPU, so when triggering a very heavy workload, both Maya and Unity version seems to have about the same performance.

My implementation virtualizes the mesh data so it very similar to Maya in that sense, it only works, when it works, not all the time.

The only real difference is that there is a GPU use, and it turns out, it is not too bad.
It feels very strange, using 3d modelling software at 165FPS :slight_smile: as it is butter smooth.
Afterall, it is a fraction of any 3d game, the load, so it actually runs pretty well.
I highly doubt we can work with millions of polygons, but if it can be used for games, it is defnitely doable.

With a heavy workload, I get 4% cpu load, 600mb mem and 20% usage on gpu, so gpu is not even clocking up. So, while it will not be lightweight as real Maya, it seems very capable, so far. The fact that I am using Unity’s rendering is probably making it possible. It is a realtime engine afterall.

So if there is a performance issue with my software (Manifold) the same occurs in Maya. This is because the bottleneck is CPU. Mine, just seems to use more GPU, and is more responsive.

Anyway, I am more interested in knowing if other devs are interested but it seems like not so many are interested…is everyone just using Blender? XD

That is indeed “strange”. Ensure vsync is enabled by default. You don’t want visible screen tearing while interacting with the model. But perhaps you’re on a gsync monitor.

Even in that case you’ll want to provide an option to cap max fps. After all, those extra frames don’t help and only consume power, which is not only a cost but also a comfort factor. Consider laptop users: loud spinning fans, laptop hot to the touch, battery drained within 30 minutes. Dynamically lowering the render rate while the user is not interacting is a must have feature.

Obviously some sort of FPS capping should be there, but I am also leaning heavily, into adding in aggressive upscaling. The DLSS4 seems to be able to render the thing at 50% at virtually zero image quality loss, and half the power usage.

So, yeah, I am not too worried about using a game engine for a software.

Also, no vsync is not too bad either. The screen tearing is not really noticable, as when you model, you don’t shake your camera like crazy all the time. It is surprisingly good. I really mean it.

I bet that you will surrender in agony (or just) at some moment, or will make the 1.0 version at best, which with time can get outdated and become rather useless (though as it is standalone, there will be no “yellow warnings” with time).

Though if it has a nice feature set specifically in map making (making levels kinda like Valve’s Hammer editor (Source, Source 2 (?) ), it would surpass Blender in that area at least, it is inconvenient even just for sizing bunch of boxes (buildings, walls), ground with repeating (tiled) texture (some easy greyboxing)

Off-topic:
And if you pursue commercial goals or a combined of personal/commercial.
I’d suggest you spend time making some hype copycat product (or etc) and actually get money.

If you find Maya inconvenient, then you’d probably find it inconvenient :slight_smile:

thats why i like probuilder or umodelerX, they are inside unity an environment im used to.. I find probuilder better for things like zone layout, and umodelerX for small items. But I also like I can work with them insitu

Freya is doing something similar

IMO there is definitely room for a tool for basic operations to enter the market. Blender is just ultra-bloated now, Autodesk is cancer as always, there’s a couple of options like ProBuilder and UModeler but tbh they just don’t have great ergonomics in the editor to me.

Something like UMotion serving up amazing animation authoring - but for basic model editing, vertex weights and UV changes would be very welcome.

Wow didn’t know someone had something very similar, although the price seems a bit high ($100~$150) for my target audience. Good info mate.

I think Freya has pretty much nailed it…except I love AI :slight_smile:

Anyway, I am getting more and more confident about this project…

Figured I will share some more progress.
I am not really a discord guy, but since everyone recommended it, I am starting one.

Feel free to come and share your thoughts. In general the app is at a stage where I can actually use it for my own projects, still some features a bit wonky or going crazy, but in general I no longer need another 3d modeller.

Rigged Mesh support coming soon.



Just a quick update on my progress.

Manifold is starting to get functional. In current state, I can easily edit and author low poly assets. That includes, loading fbx files making edits, or start completely fresh, do any poly work, uv, and material work. Then export as fbx that is correctly usable in Unity.
I’ve personally used it in my other projects, for correcting rotation, scale. Or making minor poly edits. I’ve also used it for correcting incorrect normals and tangent generation. I also use it a lot for changing pivots (some models have the weirdest pivots) and I also use to rename the meshes, as every modeller seems to use their own convention

FYI
Manifold is a Maya like 3d modelling application made in Unity. It is a standalone app, that is specifically designed for game developers in mind. It uses the Halfedge data structure and will not be a subscription based product.

Features implemented

  • Ported classes, lists and arrays to structs and NativeArrays, utilizing Jobs and Burst. This increased the performance quite a bit.
  • Extrusion, Bridging and Splitting is production ready. (Keep together for extrusion, Smoothing for Bridging and multi splitting is all done)
  • Bevel is not production ready (it works, but still have some math work on to correctly subdivide the cap faces)
  • Primitve generation is production ready.
  • UV system is well on its way, I am currently working on Auto UV unwrapping and unfolding. So far, I can get some decent results. My goal is a button that just does it automatically completely.
  • Early stages of Undo/Redo support, the focus is minimizing cpu load.
  • Implemented Compute based overlay of wireframes.
  • Mesh Normal manipulation is production ready (Set to face, soften, harden, dynamic)
  • Smoothing and subdivision is done, but still have a bit more polish to do (I am still trying to read more papers on it)
  • Early stages of rigging. Currently, I can import a rigged model (fbx) and see the mesh, and the bone structure, very early
  • Vertex snap, Grid snap, Relative snap, Freeze Transform are all production ready
  • Pivot manipulation is production ready
  • Material edit, author and texture assignment (there is still more work to do)
  • Smart selection is working, but will add more features for QOL

Features that will soon be implemented

  • Boolean Operations (still on early design phase)
  • Support for obj and other formats (Currently only fbx and our own format .man)

Join me at my discord (It is an empty server and get the latest dev progress) also feel free to recommend or request features.

Here are some screenshots (these are all screenshots captured in Manifold)


Icosahedron with increasing subdivision.


Bridging with different subdivisions


Beveling a cylinder


A cube through smoothing

1 Like


Just began fbx rig import and editing. Some weird parsing issues importing rigged models but getting there. Not bad for a day 1.
I’ve also implemented bone placement (same as Maya workflow)
and Auto Bind (Geodesic voxel style).

Next is fixing the import and export pipeline for rigged models and adding weight painting.

So I finally released version 0.0.3

Try Manifold3D on Steam - playtest period (Try it for free):

Join our community on Discord to share feedback, report issues, and connect with other users: https://discord.gg/3Ku2hMJQtk

Here are some youtube videos I painstakingly made over the last few days :slight_smile:

Here is what I’ve implemented so far (not 100% complete, but if it is in this list, it is implemented in working condition. It will obviously get more polishing time)

  • Interaction
    • Object, Vertex, Edge, Face
    • Pivot, Snap to Grid, Snap to Vertex
    • Smart Selection
    • Normal
  • Commands
    • Combine and Separate
    • Extrude
    • Bevel
    • Split (Cut)
    • Bridge
    • Knife
    • Set to face, Smoothen edge, etc
    • Catmull and LCM based smoothing and subdivision
    • Triangulationa and Quadrangulation
    • Quad Draw Tool
    • Quad and Triangle remeh
    • LOD Generation
    • Proxy Collider generation
    • Voxel Generation
    • Texture Atlas Generation
  • UV
    • UV Unwrap
    • Unfold UV, GPU Unfold
    • Unroll, Straighten
    • Packing and LNS Packing
    • Orientation
    • Auto UV (Experimental)
    • General manipulation of UVs
    • 3d UV Cut and Sew Tool
    • up to 4 uv maps (which we can extend without much effort)
  • Materials
    • Material Creation and Texture Assignment
    • Vertex Painting
  • Rigged Mesh
    • Auto binding and bone creation/manipulation
    • Weight painting
    • Weight transfer
  • Blockouts & Assemblies
    • Tree
    • Rocks (Voxel based)
    • Cloth Simulation
    • Stairs
  • File Format
    • Supports FBX, OBJ import and export
    • Have its own format (.man files) that can store more states and data beyond typical fbx limit)
1 Like

Looks great, I’m excited to look into this more deeply!

Legal concerns

I seriously advise you to read the Unity ToS or even talk to a lawyer or Unity if you haven’t done it yet.

(p) Create, develop, distribute, publish or attempt any of the same, any Project in connection with any product or service that is similar to or competes with, any Offering or that copies any ideas, features, functions, or graphics of any Offering without a separate grant of rights from Unity or otherwise provided for in the applicable Additional Terms;

This paragraph is/was interpreted on the way you do not have the right to make standalone 3D authoring applications using Unity without a separate, explicit nod from Unity. Obviously, I am not a lawyer, so my interpretation is not important, but I think it is better safe than sorry. And obviously one thing to develop the app, allow others to try it for free and actually distributing it to others for money.

Thanks for the kind words! Hope you can give me some feedback, I am dying to hear what users think. Also thanks for the legal tip, while I think Manifold3D is not violating ToS, it might be a good thing to contact Unity about it.

1 Like

Well, do not expect anything super-serious, I’m not an artist by any means, so expect “a monkey is hitting the keyboard”-style opinion :). What I can offer is check it is working on Linux through Steam and whatnot.

Would really appreciate it. I think it would work, through proton, and what not.

But I could support it natively, as Unity supports Linux.
I should probably add vulkan as backend renderering as well.
It is currently DX12 and DX11 only.

Kindly let me know.
Btw, you do have access to the app, correct?
I am check every 3 hours to accept playtest requests, but just in case you are without access.