It must be difficult when so much management is short sighted and focused on delivering short term profits for shareholders. Even academia is run like a business now.
Unless a privately held rogue company like Valve got interested its probably going to have to wait for a government/ngo/scientific. Industry, particularly the tech industry, is notorious for leaching of free and open source software and in some cases building entire businesses on it and not giving back.
Management just reacts to environments created by governments. When ZIRP was around money was very easy to get hold of - too easy. Now it's really hard because businesses have to beat government bond interest rates, which are guaranteed, to get debt/investment.
> Unless a privately held rogue company like Valve
Valve is not a rogue company.
> Industry, particularly the tech industry, is notorious for leaching of free and open source software and in some cases building entire businesses on it and not giving back
Your premise is wrong. It's impossible to leach off something that is freely given. This is like being angry because people don't all tip a street performer. The deal is it's free.
And your facts are wrong. Businesses fund a giant amount of OSS work.
OCC is the domain where FreeCAD's biggest limitations (fillets, chamfers, draft, thickness) are found, and the design of its API is part of why the topological naming problem was so difficult to mitigate.
You need more than a couple of good devs to solve this, or CapGemini would have. CAD kernels are one of the hardest possible things to write in a way that is bug-free, which is why there are so few of them.
I think it is possible that OpenCascade will get more attention because of EDF (french multinational power company) and the French atomic energy commission's involvement in SALOME. Things do seem to be slightly improving.
Speaking with over a decade of experience as a developer in industrial CAD (but still just one random guys point of view only). The question _isn't_ about the availability of a 3D kernel.
3D kernel is not the "moat".
You can cross that with money.
You can purchase a ACIS or Parasolid and you are off to the races. Or even use OpenCascade if you know what you are doing.
The more interesting question is: Ok hotshot, you have a 3D kernel, 10M of investor money (or equivalent resources).
What's your next move? What industry are you going to conquer? What are the problems you are going to solve better than the current tools do?
What's the value you provide to the users except price?
What are you going to do better than the incumbent softwares in relevant specific design industries?
Which industry is your go-to-market?
Etc etc.
The programmer's view is "I will build a CAD". The industrial user on the other hand does _NOT_ want a "general CAD software".
They want a tool with a specific, trainable workflow for their specific industrial use case.
So "if you build it and they will come" will require speaking to a specific engineering/designer audience.
You can of course build a generic tool (it's all watertight manifolds in the end) but the success in the market depends on the usual story about market forces. What's your go to market/beached. Does it enable you to move to other markets? And the answer usually is - NO. You need to build the market share in _each_ domain separately.
The further you get from a "general purpose" tool toward a highly specialized yet "trainable" one, there's a very perceptible drop in quality. We're talking about god-awful software here, where if you click the wrong button, the whole thing crashes, or you finish clicking the 30 different things in 4 different "wizards" and it still doesn't work. And all for the low-low cost of about 0.25-1.25x the engineer's salary/seat (subject to audit)!
Just having a solid, open-source framework to build upon would have many positive externalities across the supply chain, similar to how open-source systems software allows innovation across the computing supply chain. There would be no AWS without GNU/Linux.
I would argue they do. What we call ’CAD’ today - digital design of surfaces for manufacturing - originated in aerospace and automotive industries.
What they _want_ is to manufacture.
To manufacture they need designs as input.
The designs ultimately end up as a) drawings b) surface models for toolpath programming c) 3D models for project coordination, validation, etc
They don’t actually care how many buttons you need to press as long as the final design is fit for purpose.
I agree CAD software is stereotypically not fun to use.
Also - there is a non-trivial population of CAD users who actually take pride in their skill to use these more or less broken tools. It’s some sort of weird masochistic/macho badge of honor.
My guess is optimizing the cost of design is not that interesting to anyone as long as a,b and c from above are fullfilled.
The engineers labour who needs to use the CAD tools is an insignificant percentage of the total cost in any case.
To understand why you need to dive into to the cost structures and value creation mechanisms as well as the culture in hardware.
To start with, in many fields the overall culture in hadrware is ”we sell the same junk as everyone else”.
”Just having a solid, open-source framework to build upon”
What’s missing from OpenCascade?
” There would be no AWS without GNU/Linux.”
Sure there would. Open source more or less copypasted existing industrial/academic patterns. But open source probably makes it cheaper and better.
There would no AWS without internet. Both as the protocol but also as the billions invested to the fiberoptic cables crisscrossing the worlds oceans.
The world is built on hardware. Hardaware is not _stupid_. But it’s _different_ than software.
To revolutionize CAD you first need to have deep understanding of the _hardware_ value chains and industrial methods. I think what makes it hard is _not_ having a kernel but having this cross discipline knowledge inside single org.
You can - and should be able - to export to a universal format though.
But having a universal format is different than having a universal design space.
The requirments of a mechanical engineer are quite different from that of a structural engineer/and/or detailer for houses. And again different from those of a doctor planning a surgery based on CT model. For example you need rebars only in one of these. You need delicate fillet control only in one of these. You absolutely need support for import and visualization of volumetric data in only one of these.
What I’m getting at that while all design softwares have some common min set of features which _can_ be universal, the number of features in each stereotypical domain are surprisingly disjoint even if only comparing AEC and mech eng. Hence ”universal” design software would be a union of a very, very large set of totally unrelated features. Which suggests it would be hard to develeop, hard to use and hard to maintain.
So it’s better to have a collection of applications that aspire for ”universal scope” as a collection rather than ”one app to rule them all” which you will never get done in any case.
If we presume a hypothetical FOSS mission to enable computer design for all major fields benefitting from digital design for physical outcomes, it should then focus on this ”common min” core, interoperability (strongly linked to the common min core but separate concern - ie import and export) as well as domain specific projects of producing the domain specific UI and tooling.
Several open source CAD packages use it(FreeCAD, Cadseer, Dune3D, SALOME Shaper, KiCAD, CadQuery/Build123D, DeclaraCAD etc.)
There are firms using it for bespoke naval and aerospace applications.
The reality is CAD kernels are incredibly difficult, multi-decade projects, and part of the issue is a lot of the domain expertise in them is literally dying off or retiring.
” rest of us could be "off to the races" without the upfront cost ACIS or Parasolid.”
Just start coding your CAD tool dude if you want to! You can totally start with OpenCascade.
All these kernels do is they 1) define tensor product surfaces (usually NURBs) with trimming curves 2) join these surface patches to watertight solids 3) export STEP (non-AM) or STL (AM)
The question is which hardware manufacturing path is the one you know so well you know what the important things are?
And the dirty secret here is that the 3D is _not_ the hardest part (it’s hard sure). You soon end up with schema management and database management as well as domain model challenges that are quite complicated. The main problem here will be that you can’t just start coding without knowing where you end up. You need to know _every step_ or you will end up in a quagmire that is no better than existing tools (slow, buggy). It’s totally doable but the total complexity will be non-trivial and the decisions you make year 1 will come haunt you and bite you in the ass year 5. Be prepared!
And for those coming outside to this - I’m not being glib! A 3D design tool totally can be a one man show to start with (see NomadSculpt, Plasticity or MagicaVoxel for example).
” I guess what I mean is that if the likes of huge defence contractors / automotive industry etc…”
I’m not sure what you are getting at.
These companies created what we call CAD starting from the 1950’s or so (research Parson’s NC work at MIT, Bezier’s work later at Renault if you want a wikipedia tour of the early years).
The current industry isn’t shaped like this because Dassault, Siemens and Autodesk decided to go all incumbent. They were more or less pushed to do so by market forces and industrial history (and if it was not them some other company would be the incumbents).
Some of these issues are long standing and really hard to solve. Someone could probably defend an entire PhD thesis on “redesigning the topological representation to eliminate seam edges” without making much practical progress
I can't recall a single CAD system which did this differently. Has modern solidworks figured this out?
Parasolid is powering practically every major CAD system. Its development started in 1986 and it's still actively developed. The amount of effort that goes into those things is immense (39 years of commercial development!) and I don't believe it can be done pro-bono in someone's spare time. What's worse, with this kind of software there is no "graceful degradation": while something like a MIP solver can be useful even if it's quite a bit slower than Gurobi, a kernel that can't model complex lofts and fillets is not particularly useful.
3D CAD is much harder than Blender and less amenable to open source development.
Fornjot has been attempting this: https://www.fornjot.app
It's going to be years or decades before it's competitive though. Also, it looks like they switched to keeping progress updates private except to sponsors, which means I don't actually have any easily-accessible information about it anymore which is sad.
The tricky bit is having a G2 (or even G3) fillet that intersects a complex shape built from surface patches and thickened, with both projected into a new sketch, and keeping the workflow sane if I go and adjust the original fillet. I hope one day we'll see a free (as in speech) kernel that can enable that, until then it's just Parasolid, sadly.
Can you help me understand why this problem is so hard?
This is already complex and fiddly enough. Just having a stable 2D drawing environment that uses a constraint solver but also behaves predictably and doesn't run into numerical instability issues is already an achievement. You don't want a spline blowing up while the user is applying constraints one by one! And yet it's trivial compared to the rest of the problem.
Having 3D features analytically (not numerically!) interacting with each other means someone needs to write code that handles the interactions. When I click on a corner and apply a G2 fillet to it, it means that there's now a new 3D surface where every section is a spline with at least 4 control points. When I then intersect that corner with a sphere, the geometric kernel must be able to analytically represent the resulting surface (intersecting that spline-profiled surface with a sphere). If I project that surface into a sketch, the kernel needs to represent its outline from an arbitrary angle — again, analytically. Naturally, there is an explosion of special cases: that sphere might either intersect the fillet, just touch it (with a single contact point), or not touch it at all, maybe after I made some edits to the earlier features.
Blender at its core is comparatively trivial. Polygons are just clumps of points, they can be operated on numerically. CAD is hell.
Now, generally speaking, in a CAD model most surfaces will be “analytic” (plane, torus, conical, arc, line, etc). But whenever some complex surface that joins these surfaces is required, (NUR)B-splines are the principal technique for “covering” the gap.
Firstly, you probably have a variety of analytic shapes to represent — things like lines and circles in 2D or cubes and spheres in 3D. Even seemingly simple questions, like whether two such shapes intersect or not, can require a significant amount of logic to calculate the answer. That logic will often be specific to the exact combination of shapes you have, because the number of freedoms and nature of any symmetries in the shapes you’re working with can mean you would use completely different algorithms for superficially similar situations.
Secondly, while you’re probably going to implement a lot of analytic calculations, in realistic models you’re probably going to end up using numerical methods as well. That can be because you need to work with geometry like Bézier curves or NURBS surfaces that has many freedoms. It can be because even if you start with convenient analytic shapes, new geometry that you derive from those shapes, for example by offsetting a single shape or by combining details from multiple shapes as in constructive solid geometry, won’t in general have an analytic shape itself.
By the time you allow for the numerous different types of constraint that you might want to enforce between different types of geometry and the numerous different ways you can construct new geometry from geometry you already have, the scale of the problem explodes. And on top of that, almost everything you do is going to have numerical sensitivity issues, and all but the simplest algorithms are going to need detailed, careful analysis to make sure you really have covered all the possibilities. In this field, “edge case” and “corner case” are literal terms and not just figures of speech!
To give a practical example, without looking up how to do it, could you confidently calculate whether two arbitrary cuboids are completely separate or they touch or intersect somewhere? As another example, given an arbitrary parametric surface, a sphere in a position just resting on that surface, and the constraint that the surface of the sphere must remain tangent to the parametric surface without intersecting it anywhere, how would you calculate the path the centre of the sphere will follow if you introduce gravity to start the sphere rolling in a certain direction along the surface?
These are relatively simple problems in the field, but each already has some subtlety that leaves the “obvious” solutions incomplete. Solve a few thousand problems like that, each unique and with its own calculation strategy, and now you’re starting to get a practically useful geometric modelling system. (You’ve also probably had a team of dozens of mathematicians and developers working on it for decades.)
The algorithms it enables are fundamentally more capable and robust than traditional kernels based on linear algebra (vectors and matrices). You can do really fancy things like interpolating in space and time robustly, find extrema in high-dimensional phase spaces, etc...
This could potentially allow straightforward and robust solvers for kinematics, optimal shape finding, etc...
Every few decades there's a "step change" where some new algorithm or programming paradigm sweeps away the old approach because suddenly a hobbyist can do the same thing solo that took dozens of developers a decade in the past. I suspect (but cannot prove) that PGA is one of those things.
Previously discussed here:
https://news.ycombinator.com/item?id=30597061
My thinking is to approach the problem from a fundamentally different angle. There's already constructive solid geometry (CSG) kernels, triangle mesh kernels, and NURBS-based kernels. Their mathematical foundations are very different, which results in wildly different behaviour and capabilities.
I came across PGA while studying physics, saw some vaguely CAD-like CSG demos and I realised that it could be yet another mathematical foundation on top of which CAD applications could be built.
Notably, variants of GA and PGA are already used in robotics, inverse kinematics, etc... including 5-axis milling, so it's not unheard of in industry. However, it's always used as a "spot" solution to work around a problem such as gimbal lock, or interpolating transformations. Typically by converting back-and-forth between linear algebra representations and some variant of GA temporarily. I'm thinking of using PGA throughout as the foundational geometric elements.
I was going to suggest solvespace. It is very barebones, but was much easier to use than FreeCad for me. It also has constraints in 3D space, which I use a lot: https://solvespace.com/index.pl
But of course built-in intro of Solidworks was a way better UX.
FC is not a program you can just open and start using, especially if you have zero experience with parametric modeling.
If you're serious about design, modeling, engineering, etc., and want to own your own data, it's worth investing the hours to learn it starting from the very basics.
[1] -- https://www.astocad.com/
> Mom, may we have SolidWorks?
> We have SolidWorks at Home.
> <SolidWorks at Home>
This is in contrasti to the example the parent comment brought up, and the one I added: Blender and KiCad do not have this concern; there are free (Or you could say inexpensive) high quality tools in their spaces. This is notably not the case for traditional CAD.
A viable OSS alternative, particularly one that prioritizes simplicity and being a gentle on-ramp for hobbyists, would be fantastic.
It wouldn't need (and I would argue shouldn't attempt) to compete with the big for-profit outfits to be useful either. Offering a simplified UX for the most-used features of the pro software would have a ton of utility, while also being a great place to build the foundational skills you need in order to master the more complex stuff.
Furthermore, a project with the mission of complementing the pro tools rather than replacing them would probably be far more likely to succeed, IMO. As long as projects could be exported to variety of formats and brought into some other software when a specific use-case arises, you'd have all your bases covered.
So it doesn't really represent meaningful progress towards FOSS CAD because ultimately it uses the same proprietary, expensive library to do the heavy lifting as most of its competitors.
You're on point that there's a tremendous amount of money captures by Autodesk for CAD software that could be better directed at the open source community instead.
Software like OpenSCAD and FreeCAD are obviously not suitable for much commercial work, and have very irritating limitations for hobbyist work, in my mind a big part of that is the UI and Blender has a good and established UI at this point so I'd love to see the open source CAD that provides an alternative to vendor lock in come from a Blender add-on instead of a separate program.
I am no expert but as I understand it the primary difficulty with developing good alternatives to commercial CAD software lie in the development of an effective geometric kernel.
It seems to me that if a developer of an opensource CAD program develops it as a Blender add-on they can effectively outsource the remainder of the development efforts to the Blender community while focus can be made on the CAD kernel itself.
take a look at https://Plasticity.xyz. It's not open-source, but it's got a small, highly dedicated team behind it. It's built on Solidworks' kernel, so it's quite robust.
Also take a look at solverspace, caligula, FreeCAD, ...
Hard nope.
Restrictions are always annoying but I think they're striking a reasonable balance.
That said, I use FC as my main CAD driver and, not only tolerate it, but enjoy using it. I had to watch several hours of introductory videos to get the hang of things initially, but now I'm quite fast and proficient.
The initial pains and common complaints about UI and such, are basically non-issues for me now and when I model, my cognitive energy is basically devoted to the design problem itself rather than issues with UI or the behavior of the software.
It's necessary to put the time into learning it, but it's worth it.
I'd like to hear someone's perspective on how difficult it would be to unify OpenUSD and CAD file formats so that they are portable between programs?
KiCAD was also a meh ECAD FOSS alternative 7-8 years ago, now it is by far the tool of choice for regular ECAD designs. I can see FreeCad getting there by 2030.
It seems like it has lots of capability but still "punch your monitor" levels of difficulty just trying to do the most basic stuff.
MangoJelly has done an amazing job in churning out high quality tutorials for FreeCAD: https://www.youtube.com/watch?v=t_yh_S31R9g&list=PLWuyJLVUNt...
(this is just one playlist, there's a lot more on his channel).
Deltahedra is a great YouTube channel for getting the basics.
And it presents nonsensical problems, like offering to create a sketch on the face of an object and then complaining that the sketch doesn't belong to any object. So you have to manually drag it under the object in the treeview. So gallingly DUMB.
Despite all that, I will wrestle with its ineptitude before giving Autodesk a penny. I get stuff done with it and respect those who give their time to develop it.
I have used it to make quite a few functional prints, with the help of making sure my scene units are correct and a CAD plugin.
Many people complain about it being a mesh editor but it works for me. The sheer variety of tooling and flexibility in Blender is insane, and that's before you get to the world of add-ons.
I want to learn Geometry nodes and object generation as I think they will address a lot of the "parametric" crowd concerns. This v5 is meant to be a big step in ease of use of this.
Also, I'm not sure if the different tooling lets me see all the flaws of online "parametric" models, or whether I'm being pedantic. They get frustrating. I have Gordon-Ramsay-screamed "How can you fuck up a circle!".
Radial tiling my beloved, and a seemingly far more straightforward array modifier <3 Faster volume scattering for non-homogenous volumes.
For those wondering "where the AI is", the new Convolve Node might be it :) Convolutions are a pretty generic signal processing operation (Hadamard product) which are also used in neural networks which work with images. Realistically though, this will be mostly useful for wonky hand-crafted blurs.
The new sequencer looks fantastic, too. I always went to DaVinci Resolve but I might be able to go full blender. Compositor modifiers in the sequencer is also very welcome.
This is incredible for me.
Meanwhile, in other niches, Microsoft Office still beats open source office suites like LibreOffice; Photoshop isn't about to give up its crown to GIMP; Lightroom isn't losing to Darktable; and FreeCAD isn't even in the rear view mirror of Solidworks.
I wonder what will be the next category of open source to pull ahead? Godot is rapidly gaining users/mindshare while Unity seems to be collapsing, but Unreal is still the king of game engines for now. Krita is a viable alternative for digital painting.
KiCad, for PCB design. They have been making massive improvements over the last few years, and with proprietary solutions shutting down (Eagle) or being unaffordable (Altium) Kicad is now by far the best option for both hobbyists and small companies.
With the release of KiCad 5 in 2018 it went from being "a pain to use to, but technically sufficient" to being a genuine option for less-demanding professionals. Since then they've been absolutely killing it, with major releases happening once a year and bringing enough quality-of-life improvements that it is actually hard to keep track of all of them.
From the type of new features it is very obvious that a lot of professional users are now showing interest in the application, and as we've seen with Blender a trickle of professional adoption can quickly turn into a flood which takes over the entire market.
KiCad still has a long way to go when it comes to complex high-speed boards (nobody in their right mind would use it to design an EPYC motherboard, for example), but it is absolutely going to steamroll the competition when it comes to the cookie-cutter 2/4/6 layer PCBs in all the everyday consumer products.
Guess what, user adoption increased dramatically, because it became pleasant (or tolerable) to use by people that used literally any other program.
V8 included in the core many things that were plugins before, and replaced the old utilities that the neckbeards in the forum were crying to keep, or else! (or else more adoption.)
V9 had even more many improvements, but also many regressions, over V8. V10 might be the release that truly consolidates the core of the suite and then they can start really focus on high speed designs.
I've navigated many programs over my career, and unless a future employer mandates me to use Altium, or purely technical reasons (8+ layer, high speed designs) requires me to use Cadence, only kicad for me.
Incidentally, it feels like this past two years freeCAD GIMP and Inkscape have started moving away from listening to noisy members of the community, to useful members of the community. I'm seeing a slow but steady progress that will eventually accelerate and make both toold true alternatives, as it happened with KiCAD (though it will really be tough for GIMP, even if it's perfectly usable for many, many tasks, any graphic designer will kick and scream if they're not given the adobe suite, pity.)
Myself, i do very little basic graphics like replicate buttons and such things to not bother my colleague, or apply correction to my photos, i proudly do that in GIMP and inkscape.
GIMP is just bad sadly even when it comes to basics, it has nothing to do with wanting Adobe products but more about GIMP just being a "coders-tool".
Every time in the last decade I checked, i still had to input a resolution when creating a new image layer.. that's a fundamental operation that hasn't been that clumsy in Photoshop since the 90s (Photoshop has "infinite" layers, they can be larger than the image, yes it's "bloated" but that's what you want as an artist 90% of the time.. not an annoying border).
The thing I miss is being able to rotate a IC by 45 degrees.
[1] https://sschueller.github.io/posts/ci-cd-with-kicad-and-gitl...
It is very kludgy and cumbersome to split project into several PCB (for example, stack of PCBs connected by backplane or headers, like Arduino & Shield for it) and/or to have variations of the PCBs for one schematics, like TH and SMD variants of the PCB for exactly same schematics.
Even in my very modest almost-electrical (as opposed to electronic) projects I need one or another from time to time.
As far as I understand it is limitation which is not easy to fix, because all architecture of KiCAD is based on this 1-1-1 principle.
I can think of a few more: Git obsoleted an entire category of commercial software seemingly almost overnight, VSCode has become by far the most widely used IDE (not entirely open source, though), TeX still dominates mathematical typesetting AFAIK (as it has for as long as computers have been used for that), (lib)ffmpeg is used everywhere for video/audio transcoding and between them nginx and apache still account for the majority of webservers. Most popular programming language compilers/interpreters/runtimes are open source too, of course.
Even the qualifier "end user" application doesn't seem obvious to me. Is Photoshop an end user application or a tool for artists?
Hmm, what commercial software would that be? Visual SourceSafe (lol)? ;)
Git mostly replaced SVN, and that is free and open too. But in scenarios where specialized version control software (like Perforce) is needed, git (and git lfs) breaks down too, and quicker than SVN does - e.g. for versioning large binary files git has actually been a massive step backwards and without a real solution showing up in 2 decades.
- AccuRev SCM (2002)
- Azure DevOps Server (via TFVC) (2005)
- ClearCase (1992)
- CMVC (1994)
- Dimensions CM (1980s)
- DSEE (1984)
- Integrity (2001)
- Perforce Helix (1995)
- SCLM (1980s?)
- Software Change Manager (1970s)
- StarTeam (1995)
- Surround SCM (2002)
- Synergy (1990)
- Vault (2003)
- Visual SourceSafe (1994)
A lot of companies was also building their own internal version control software. Either from scratch or as a bunch of loose scripts on top of other existing solutions. Often turning version control, package management and build scripts into one single complex messy solution. I worked for a company early in my career that had at least 4 different version control systems in use across different projects and even more build systems (all a mix of commercial software and home grown solutions on top).
These days almost everyone uses Git. Some companies uses Mercurial or SVN.
One commercial actor that is still around is Perforce, which is still popular in the game industry. Since managing large game assets isn't optimal for Git (but is possible with Git LFS or Git annex, or similar solutions).
So various projects have come up ever since to try to patch the UX.
Performance.
Since the CVS days, Version Control Systems got slower and slower. Centralized servers worsened the problem by doing everything in a synchronous manner, making people wait for locks, wait for checkouts, wait for diffs, wait for everything. But even the distributed ones like bzr or hg were slow as hell. What git enabled was the far superior ergonomics of not having to get a coffee while running a "git diff" on a project the size of the Linux kernel, X.org or LibreOffice. All the whining about inconsistent command line options and weird subcommand naming is totally secondary to this.
Nowadays, many of the aforementioned competitors either died out or worked on their performance problems. Nonetheless, git is still unmatched in this regard.
So while Maya is currently the standard, I don't believe that it's growing. It'll probably be around still in 20 years, with lots of studios having built their pipelines and tooling around it, with lots of people being trained in it, and because it's at the moment still better than Blender in some aspects like rigging and animation (afaik).
Super small nit (or info tidbit), but it doesn't take away from your overall message regarding production and scene scale.
Pixar does not and has not used Maya as the primary studio application, it's really only used for asset modeling and some minor shading tasks like UV generation and some Ptex painting. The actual studio app is Presto, which is an in-house tool Pixar has developed over the years since its earliest productions. All other DCCs are team/task specific.
Dreamworks is similar with their tool, Presto, IIRC. Walt Disney Animation Studio (WDAS) does use Maya as the core app last I saw, but I don't know if they've made any headway with evaluating Presto since 2019...
> Presto, which is an in-house tool Pixar has developed
> Dreamworks is similar with their tool, Presto, IIRC.
I guessed that's a typo though and yeah, the Dreamworks animation tool is called Premo.
https://www.blender.org/user-stories/japanese-anime-studio-k...
And also, how can you say Blender is not battle-proven? I mean, the big studios use Maya like fortune 500 companies use Microsoft Windows - doesn't mean Linux isn't battle proven.
I haven't used blender much. It's too focused on animation. I mainly make more engineering style things for 3D printing. Even though it can technically do that, the interface just rubs me the wrong way somehow. And i can use Fusion 360 for free.
Those are different niches. Not even Apple has managed to budge Window out of corporate environments, though it is a lot more present than 20 years ago.
I imagine it's similar with Blender and Maya: do they fill the exact same space? Or is Blender adopted by different types of companies (probably smaller)?
For vendors, the former is obviously a no-go. The latter has the issue of be throttled by Python, so you have to effectively create a shim that communicates with an external library or application that actually performs compute intensive tasks.
Most (if not all) industry DCCs provide a dedicated C++ SDK with Python bindings available if desired.
IMHO that's only still true because large studios can't afford to move their entire highly customized production pipeline which they had built around Maya for nearly three decades to any other tool (Blender or not), even if they desparately want a divorce from Autodesk. Autodesk basically has them locked in and can milk them until all eternity or the studios go bankrupt.
I bet that the next generation of CGI and game studios will be built around Blender (and not based on the quality of those tools, but because of Autodesk business practices).
(edit: somehow my brain switched Adobe and Autodesk - forgiveable though because both use the same 'milking existing customers' strategy heh)
I suspect in general "big companies" and the ecosystems they operate in are the main reason adoption (and subsequent investment and development) hasn't happened. The Microsoft Office suite is a good example, since many companies likely run the full Office + Teams + Outlook stack. It all "seamlessly" (not really lol) works together, and it's attractive to sell corporate solutions like that.
Davinci Resolve is probably competitive with Premiere, but while free it's not actually open source. But either a viable competitor catching up or Davinci publishing the code could change that fast
I don't have the ability to compare these things in intimate detail, but Lightworks has at least been used for "real" productions [2] so I think it's production-ready.
Tbf, everything starts somewhere and all the proprietary apps you listed were not instant market leaders.
I can and do use all those FOSS tools just fine both as a hobbyist and professionally, my needs are meet. Others may not find the same, but I suspect there's just a lot of stickyness preventing even trying new workflows.
Mine aren't: GIMP is okay, FreeCAD is a complete joke. It is painfully obvious that their development is done primarily by F/LOSS enthusiasts rather than by industry professionals and UX designers. They are closer to being a random collection of features than a professional workhorse. You might eventually get the job done, but compared to the proprietary competition it is woefully incomplete, overly complicated, and significantly buggier.
The poor quality of FreeCAD is the main reason my 3D printer is collecting dust. As a Linux-only user the proprietary alternatives mostly aren't available to me, and FreeCAD is bad enough that I'd rather not do CAD at all. The Ondsel fork was looking promising for a while, but sadly that died off.
It is definitely not a joke. It enabled me to have a very fulfilling hobby.
[1] Examples: a Steam Deck Skadis Dock, all kind of adapters for easy connection of wood parts, magnetic modular mini shelves for everything in the bathroom, a replacement for a broken door handle, a delicate plissé mounting point that is no longer produced, accessories for the microscopes for school …
I've only ever used openSCAD, Freecad, and on shape.
And for me, Freecad had increased my use of my 3d printer, originally built in 2016.
Cad has a specific workflow, which is true regardless of the tool. Sticking to the right order of operations goes a long way to having a positive XP as does some basic intro tutorials.
It's not a tool you can bumble around and figure out easily, even with XP in similar tools.
Edit: oh, it was even worse before? I hope they keep going in this direction then
I only do occasional design for some things to print, and I'm always happy to come back to my OpenSCAD text files that I can actually read and understand within minutes, rather than having to try to remember the correct click path through some giant graphical CAD software.
I wouldn't say that, there's bugs in Freecad that drive me bonkers but I would be dishonest if I said it hadn't gotten more stable and better supports my Nvidia card today compared to previous releases
If you want to limit standard Office productivity to ones that were written with the GUI in mind, MS Office was the leader on the Mac before it came to PCs and crushed WordPerfect and Lotus early on.
OBS is on line 2 ....
I think FreeCAD might be on a distant hilltop in their rearview these days, check it out again.
The most important improvement is the toponaming heuristic solver spearheaded by Realthunder.
Since that was merged into mainline, it seems that the devs keep breaking the UX and shortcuts without rythme nor reason, while the fundamentals are broken beyond repair.
I would never recommend freecad to anybody, even though this this the only CAD I use, and I actually write python for it for some automation.
I cannot live without freecad. But damn it's a mess.
which has been discussed here in the past:
https://news.ycombinator.com/item?id=37979758
https://news.ycombinator.com/item?id=40228068
https://news.ycombinator.com/item?id=41975958
which if it just had parameters/scripting would have a lot more potential.
I've also extended the functionality with python, and have heavily customized the theme and shortcuts to fit my personal taste.
I not only tolerate the software, but enjoy using it, and am quite proficient at it.
I would recommend FreeCAD to others, but with some caveats. The most important being that they need to be willing to tolerate a few hours of introductory material, and second that they are serious about using the software long-term.
Otherwise, I'd probably just recommend Onshape. But, for many others, FC is fully viable.
Unity and Unreal are dinosaurs that target the shrinking console market. Godot is being built in their image. My hope is that something more versatile like Bevy becomes common so that we have something that could potentially compete with the next generation of Roblox.
gcc? It’s hard to imagine any of the projects mentioned without a good compiler.
Not true of business grads - who btw are the ones who have the purchase power for enterprise wide M$ Office when they join orgs. STEM grads need to kneel and obey their purchasing decisions.
You don't see the same success with Gimp, Krita,...
Remember that Blender was opensourced was because it failed commercially. Its commercial background is completely irrelevant to its success - which took years to achieve and most 3D artists for more than a decade saw it as a toy (undeservedly IMO because even by 2.44-or-so it became very capable, but the UI despite its massive improvements was still very undiscoverable and alien for most users).
You can download "Blender Publisher 2.25" from blender's own site which was the last commercial release to check it..
GIMP 2.x was IMO better. Also much easier to compile and get running. Fewer things to worry about.
I think you paint a rather selective picture here though. Quite a lot open source software is really really bad.
On aesthetics, it definitely beats out Lightroom Classic, which is a closed-source paid tool (sidenote: I really miss Aperture).
GCC and now Clang has beaten Intel compiler (and others). Nginx has beaten/replaced commercial web servers. Stockfish has beaten commercial chess engines and Lichess is much better than commercial chess sites.
Just 3 examples that came to my mind reading your comment.
If anything, OnlyOffice is incredibly polished. I don't know how they did it but it seems to work better and have a much cleaner UI than LibreOffice even though it's much newer.
DaVinci Resolve is getting better but still not comparable to After Effects.
Blender already has a lot of pieces in place to tackle this.
Hadn’t heard that. How many AAA vfx studios have left Maya for Blender?
Of course Blender is a marvelous piece of software, no doubt in that.
May I ask your opinion, as industry insider, regarding what makes a good and bad OpenUSD support?
I'm curious, what are the main points where it's lacking? I hear stability is one of them, but what about features?
really? I haven't done 3D rendering in a long time, admittedly, but back then Maya and Lightwave were miles ahead of Blender. Rhino3D too. Even 3DSMax was better. Lightwave seems to have sadly fallen off (unfortunately, IMO it was the best at one point, had excellent ray tracing). I didn't really Blender had come such a long way -- that's great.
Since you mention niches: Adobe InDesign has no OSS competition at all, and Illustrator is still much better than Inkscape.
Is this even true? My understanding is that 3D Studio and Maya used to be ahead.
It’s powerful and pleasant to use. Even the release marketing page is beautiful and well-made.
I like open source as much as the next guy, but outside of developer tools there is little that comes close to Blender in terms of utility and UX.
Is it funding? Specific individuals? Are there PMs and designers? Whatever it is, it’s working!
Relying on individual donations from users helps a lot with blender being aligned to the interest of its actual users. There is not one or a few corporate sponsors controlling everything.
Plus the GPL license which protects the freedom of its users.
The creator apparently was selling it as freemium software in 1998, and then the bubble burst and the corp shutdown in 2002. But the creator created a non-profit called the Blender Foundation, launched a Free Blender campaign [2] (the forum post is still up!) to raise money from its users and bought out the rights to the software from the investors.
[1] https://www.blender.org/about/history/
[2] https://blenderartists.org/t/free-blender-campaign-launched/...
NO other (yes I’d die on the hill) open source software has good UX and it’s horrible for adoption by the larger public.
GIMP vs Krita is a similar story. GIMP never will be the Photoshop replacement they aimed to be
I'm very excited to see the addition of structs and closures/higher-order functions to blender nodes! (I've also glanced at the shader compiler they're using to lower it to GLSL; neat stuff!) Not only is this practically going to be helpful, the PL researcher in me is tickled by seeing these features get added to a graphical programming language.
If you haven't heard of Blender before, or if you think AI will replace all the work done in it, fair enough. But I'd still strongly suggest looking into what it is and how it works.
Blender nodes have come a long way over the past decade and it's incredibly satisfying to see the care with which they have been developed. Blender's node editor is my personal favorite node editor I've ever used in any software, and I often find myself wishing other software adopted some of their UI and UX conventions.
Been a happy user since, oh, v2.75? And looking forward to being a user for many more releases to come.
Donate to Blender! [0]
https://passivestar.xyz/posts/instance-scattering-in-blender...
Always nice to see these updates though, Blender has really come a long long way.
These days I wouldn't want to bother doing manual animations or mesh creation. The computer must do this for us.
Learning the shortcuts is really the way to go though. Initially painful but 100x more productivity in the long run, and really the way Blender is meant to be used. Honestly just doing a single basic tutorial will have you learning all of them in no time.
They actually announced they were dropping support in February. Nobody noticed or cared.
Now I want to look into it more, but I'd imagine that "Blackbody" and sky generation nodes might still assume a linear sRGB working space.
Have we gone backwards to the point where we can’t even serve a static page now?
Seems like in 10 years AI will basically make it pointless to use a tool like this at least for people working on average projects.
What do folks in the industry think? What’s the long term outlook?
The fact that it “seems easy” is a great flag that it probably isn’t.
Really no one can predict the future.
What blender and other CGI software gets for free is continuity. The 3D model does not change without explicitly making it change.
Until we get AI which can regenerate the same model from one scene to the next, the use of AI in CGI will be severely limited.
Recent news on major AI scientists starting "world AI" companies confirm this trend.
So 3D soon will become a very important tech even compared to today.
It's like 2D art with more complexity and less training data. Non-AI 2D art and animation tools haven't been made irrelevant yet, and don't look like they will be soon.
I recently used WAN to generate a looping clip of clouds moving quickly, something that’s difficult to do in CGI and impossible to capture live action. It worked out because I didn’t have specific demands other than what I just said, and I wasn’t asking for anything too obscure.
At this point, I expect the quality of local video models (the only kind I’m willing to work with professionally) to go up, but prompt adherence seems like a tough nut to crack, which makes me think it may be a while before we have prosumer models that can replace what I do in Blender.
A lot of the editing functions for 3D art play some role in achieving verisimilitude in the result - that it looks and feels believably like some source reference, in terms of shapes, materials, lights, motion and so on. For the parts of that where what you really want to say is "just configure A to be more like B", prompting and generative approaches can add a lot of value. It will be a great boost to new CG users and allow one person to feel confident in taking on more steps in the pipeline. Every 3D package today resembles an astronaut control panel because there is too much to configure and the actual productions tend to divvy up the work into specialty roles where it can become someone's job to know the way to handle a particular step.
However, the actual underlying pipeline can't be shortcut: the consistency built by traditional CG algorithms is the source of the value within CG, and still needs human attention to be directed towards some purpose. So we end up in equilibriums where the budget for a production can still go towards crafting an expensive new look, but the work itself is more targeted - decorating the interior instead of architecting the whole house.
AI coding agents didn't make IDEs obsolete. They just added plugins to some existing IDEs and spawned a few new ones.
You are asking for industry predictions from industry professionals in an industry you know nothing about while assuming a lot about that industry.
Why do you think they should do all the heavy lifting for you?
You might as well ask ChatGPT what it thinks because it seems you already have an idea of what you want the answer to be.