How would you setup Rhino model to allow for two or more designers to work at the same time, that is having fully featured Rhino interface and saving changes and updating the same file in parallel?
If we take this literally, I don’t think any CAD software can do it. For sure Rhino can’t.
On the other hand, imagine two designers working at a drawing table on the same piece of vellum (or whatever the drawing is on): what would “working at the same time” really mean in detail (Assuming the drawing is big enough that it’s physically possible for two or more people to stand at the drawing surface)?
I will “literally” refuse to believe that. Not that I know of one (recent Unreal Engine team mode? but that hardly constitutes CAD), but I will simply supress this. Wasn’t CAD invented by PhD Cambridge students50 years ago? What does it take to invent basic synchronization mechanism cmon?
there are sure applications which allow simultaneous editing. i dont know of any cad but just that the info is out there even it may be a dull comparison, google docs allows such. you can see other people editing while you keep working on it either. why not also on a cad file which is huge, large, complex and did i say huge? with a lot of work involved so that splitting efforts directly in one file could make a lot of sense.
i could envision such also with being able to choose whether you block an object from being editable by others at the same time, or just model on the same object together. obviously slight restrictions might have to play a role such as point editing the exact same point of a curve or solid point of an object, which in real life might not occur ever anyway, i would generally go by “first come first serve”.
How complex are we talking about? RhinoCommon level? C++ modeling kernel level? I would love to hear an answer in reference to Rhino’s architecture.
How do you decide what to work on and how do you keep your coworker from getting in your way while you model, what would you do if you both use the same command at the same time?
I think you might want to try using worksessions. This way you will both have a functioning rhino and won’t get in each others way.
You could copy the file
Let your coworker open another versioned copy.
Have a compiled version of both your files.
These can all be opened/attached in the ws manager and as you or your coworker model the saves will update in your workesessions. You can hide the compiled file and then update that after you both decide on the changes and save that as your master.
that didn’t work in our previous team, as we want to have one single base model AND work on it together at the same time. In the Worksession workflow still only one person can edit the existing model, you can ADD new things in a separate file and link/worksession it, but that didn’t work at all (for us [for noone really]).
You don’t “decide” what to work on… you just open the file, make your changes, save it. If there is a conflict on some object, highlight it go to your colleague and talk it through, decide which one you want to merge. You can even lock it like Revit does it, but I’d prefer personally to have access to the whole thing and decide any conflicts when saving.
I would REALLY appreciate a technical breakdown of what it would entail to implement this feature.
I see that you are starting to appreciate some of the issues. Your question was a hot topic 30-40 years ago in the automotive and aircraft design industries and more recently (but still a while ago) in the computer programming field. I presume it’s been satisfactorily dealt with in CAD systems like Catia and NX. Programmers came up with version control like git. Catia and NX cost a whole lot more than $895. git is free.
Is there room for Rhino to get a bit better and keep their price point? Perhaps - if they want to.
How about some large organization Catia and NX users chiming in with a description of how it’s handled by those systems? And a short list of problems that any successful system needs to address.
huh that’s a good point, here I found a demo of this Catia’s “Feature level collaboration” that I think you were referring to:
You can use worksessions to work on a large project. Essentially split the project up in files and then reference them back together. Then updates saved and can be updated on other computers.
There is no object level locking like you might get in products that run on part assbly structures.
Thank you for bringing this up, but could you please still add this object-level locking as a feature request? You have already built so many amazing functions into Rhino 7, but as I mentioned above worksessioning currently really is not enough.