Search Unity

From here to there: Old vs New, a pathway...

Discussion in 'Prefabs' started by Deeeds, Sep 21, 2018.

  1. Deeeds

    Deeeds

    Joined:
    Mar 15, 2018
    Posts:
    739
    Please excuse the naive and brutal manner of my communication and questioning.

    Given the potential of new Particles and some other benefits of 2018.3, I'd like to come to terms with Improved Prefabs™

    How I'm currently using 2018.2 (old) prefabs:

    I make prefabs, of game thingies, and they have lots of little effects and scripts and minds of their own.

    Then I line them all up and make them work together. They have a lot of overlapping glows and effects, explosions and particles and the like. How they all interact together, and particularly how their colours inter blend and interplay with one another is important.

    So I want to edit them, in place.

    This works in 2018.3, for single level Improved Prefabs.

    But does not work for the much revered Nested Prefabs.

    Is there a way I can edit a Nested Prefab in place, in the scene I'm working in, and propagate it to all the other instance of this prefab, in this scene?
     
  2. Ofx360

    Ofx360

    Joined:
    Apr 30, 2013
    Posts:
    155
    Yeah i believe there is a dropdown to the top right of the prefab inspector window that allows you to apply or reject changes.

    Ill find it in a second
     
  3. Ofx360

    Ofx360

    Joined:
    Apr 30, 2013
    Posts:
    155
    upload_2018-9-20_19-35-39.png

    upload_2018-9-20_19-36-8.png

    Looks like it's in a dropdown called "Overrides" now.

    You can review and apply individual changes, or just simply "apply all" changes like normal from the scene view

    As far as i can tell, if you want it to work like the old prefab system, it can do exactly that. Just don't click on the carrot
     
  4. Deeeds

    Deeeds

    Joined:
    Mar 15, 2018
    Posts:
    739
    GREAT NAMING!

    This is how it sometimes seems to work if I do editing in the Prefab Editing Mode.

    Similarly, if the Prefab is only one layer (no nesting), this works in the existing scene.

    However, as soon as it's a Nested Prefab, the nested prefabs can't be edited like this, in a scene, Overrides is unavailable for anything other than the parent prefab.
     
  5. Deeeds

    Deeeds

    Joined:
    Mar 15, 2018
    Posts:
    739
    This is the problem area, on a Nested Prefab, there should be an "Apply Changes" button to the right of Open and Select

    ApplyChanges.png

    With the Apply button here, a lot of the need for the Prefab Editor usage is removed for any in-game nested prefabs, They can just be edited in their natural, game environment.
     
  6. Carpe-Denius

    Carpe-Denius

    Joined:
    May 17, 2013
    Posts:
    842
    For the sake of consistency, there should be an overrides-dropdown, too.
     
    Deeeds likes this.
  7. SteenLund

    SteenLund

    Unity Technologies

    Joined:
    Jan 20, 2011
    Posts:
    639
    During development we actually had this and user tested it. The results were that is caused a lot of confusion about where changes are applied and thus we decided to only allow applying from the root GameObject to the outer most prefab.

    You can still do it though but it is hidden. See https://docs.google.com/document/d/...3gUrvo5x3EXi9AGbw/edit#heading=h.r1jlooid83ba
     
    Prodigga likes this.
  8. Deeeds

    Deeeds

    Joined:
    Mar 15, 2018
    Posts:
    739
    There will be initial confusion, but it is discoverable, if it's here, as I show in the image, and does make logical sense.

    It will, in time, become lore, even for those that are initially confused by it.

    And the deeper the hierarchy of nesting of nested prefabs, the more useful and easy to use this will be.
     
  9. Deeeds

    Deeeds

    Joined:
    Mar 15, 2018
    Posts:
    739
    I want to add to the above, this: Having the Apply button available on any and all Nested Prefabs is much more logically consistent with how old prefabs work, and how one might best and easiest think of Nested Prefabs being nested, but still their own selves, their own type.

    It seems odd that anyone would be confused by this, as this Apply would obviously be local to this Nested Prefab, and influence all Prefabs of its type... to borrow the use of type from OOP.
     
  10. Deeeds

    Deeeds

    Joined:
    Mar 15, 2018
    Posts:
    739
    @SteenLund Thank you for this information, firstly!

    And that this is, to some extent possible, is good.

    However, after trying both approaches, they suffer from some significant user experience nightmarishness, increasing with each edit.

    Four edits, to four simple things, I have to make this mouse journey for each one:

    Screen Shot 2018-09-21 at 5.32.11 pm.png

    That's not fun at and yet this is a pretty simple set of minor modifications to the prefab, slightly recolouring it.

    This prefab happens to have about a dozen objects in it, and a serious modification of it would involve changing positions, some colours, some order in layer positions and other attributes that make it "cool" and fitting for the scene.

    It wouldn't be unusual for that to be 20+ changes, as a designer crafting the appearance within a scene. Perhaps many more if I began adding or removing objects from the prefab, which will no doubt happen when appearance finalisation becomes the polishing of the game.

    That's an arduous task, to update that Prefab.

    Is there any way I can beg to have local Apply buttons on Nested Prefabs?
     
  11. runevision

    runevision

    Joined:
    Nov 28, 2007
    Posts:
    1,892
    Like Steen said, we tested this and it caused a lot of confusion. To elaborate on that, it caused not only confusion but a feeling of "unsafety" and anxiety about using the apply functionality. This was a general trend. A major goal of the improved Prefabs was not only to offer more flexibility and productivity but also to make editing feel more safe and let people feel more confident about using it without worrying. Apply All with apply targets turned out to be counter to that goal. We certainly understand the desire for it, it's why we initially included it ourselves as well, but user testing revealed it had to go. Honestly, while we initially thought it was a good idea, we also frequently got confused by it *ourselves*.

    Now, it sounds like the reason you want this functionality is to be able to edit your Prefab in context efficiently. There are many people why have requested being able to edit their Prefabs in the context of the scene instead of in isolation, and this is something we'd like to look into for a future release. Perhaps that will solve your use case without involving the confusion that Apply All with apply targets created.

    As you said yourself, your use case does work fine for single level Prefabs, so you have the same power as you did in 2018.2 at least. Beyond 2018.3 we'll work on improving various aspects of the system based on the various feedback we have gotten and continue to get (though this is not saying we will be able to address all of it).
     
    Prodigga likes this.
  12. Deeeds

    Deeeds

    Joined:
    Mar 15, 2018
    Posts:
    739
    Just make it an advanced mode, so smarter, more creative users can turn it on, and speed up their workflow. Massively speed up.
    The speed advantage of this is the point.
     
  13. runevision

    runevision

    Joined:
    Nov 28, 2007
    Posts:
    1,892
    The word "just" is not in line with reality. We have limited resources and need to make tough decision on which things to prioritize to work on. Things that benefit lots of people will generally be prioritized over features that have proven to be a bad idea for many people and would only work well for the few.

    Would the ability to edit Prefabs in context not solve the use case your mentioned in your original post?
     
  14. Deeeds

    Deeeds

    Joined:
    Mar 15, 2018
    Posts:
    739

    Sorry. I was on the phone... and the tongue-in-cheek nature of that comment got lost.

    The point: creative software facilities care little for safety... other than UNDO.

    And speed and convenience are the prime drivers of functionality, nothing else. So having multiple ways to do things, so they can be done from any part, process or stage of creativity is imperative to the flow of creativity, because this flow is the reason folks use (and love) any given piece of software for doing things with.

    Prefabs are part and parcel of the creative processes in Unity, so this kind of consideration should be given to how things are possible, not concerns for safety.
     
  15. runevision

    runevision

    Joined:
    Nov 28, 2007
    Posts:
    1,892
    This might be your personal philosophy, but it's blatantly wrong in relation to how creative software is actually designed and developed.

    For a third time: Would the ability to edit Prefabs in context not solve the use case your mentioned in your original post?
     
  16. Deeeds

    Deeeds

    Joined:
    Mar 15, 2018
    Posts:
    739

    Please let me deal with the first one, first, because this is where you're wrong.

    EVERY SINGLE creative software of significance provides every possible way to do something, regardless of its risk.

    It's not a personal philosophy, this is the status quo for all creative software, even the stale garbage that comes from Adobe.

    When you head into 3D software, that which is much more akin to Unity, things like 3ds Max and Maya have a truly incredibly litany of ways to achieve anything, and incredibly dangerous and risky ways to do everything. That's the empowerment its users love, and why they're so popular, even decades after stagnating on features and even bug fixes.

    The empowerment is what matters. So, please, accept that your first claim is utterly meritless personalisation of this idea that creative freedom is important. It is important, and it is has been long before software was ever even conceived of, and remains so within the best creative software. And has nothing to do with my personal philosophy, this is a universal reality since fingers were used to paint shadows from firelight.

    And it wouldn't be a bad thing for you to be inspired by and learn from the BEST of creative software. Which isn't Adobe stuff, except for (perhaps) AE.


    ---------------


    The ability to edit prefabs in context, as nested prefabs, is not there. And that's what I'm wanting, and seeking and asking for.

    I don't want to have to put a solo prefab into the context in isolation to edit it as a work-around because this involves moving one that actually has to be there, and is a needless workaround for a facility that should be inherent to the software, if you cared about empowering the creativity of your users rather than feared them making "mistakes".

    UNDO is all the safety that creatives need. Again.

    And the ability to save versions.

    Which is inherent to all creative software.
     
  17. Deeeds

    Deeeds

    Joined:
    Mar 15, 2018
    Posts:
    739
    @runevision this isn't the first time you've claimed your invisible testing and consulting practices lead to a decision.

    They aren't transparent. and we have no idea who was consulted, by whom, under what pretexts and contexts, about what, and how you measured what you learnt/observed, and what your own personal biases and desires were, nor the technical limits or constraints within which this occurred.

    So it is no defence, ever, to continue to use this opaque guff, in the constant stream of real users, in these forums, who know nothing of these "fantasy" users and their feedback scenario.

    I'm not just talking about the above. This I'm giving as general counsel on how you've responded to many other issues and disquiet regarding Improved Prefabs™.

    It is as though you've been given responsibility over the design of Improved Prefabs™ and using an opaque fantasy theatre to defend judgement calls you've made, some of which may or may not be arbitrary.

    That's how it look and smells from your knee jerk, hyper defensive stance on all requests that run contrary to even simple decisions you seem to have made against user friendliness and empowerment.

    This safety of the user pretext is the lamest of the lot because no other creative software on earth uses that as a signifiant criteria for removing operational shortcuts, efficiencies of operation, rapid fire functionality and user empowerment.

    Not just my opinion, not just my philosophy. Try some other creative software some time, and try becoming a master of it. Start with the modifier stack of 3ds Max. It is inherently dangerous and layered with risks and rewards, but the magic that binds its users to the most amazing digital toolshed, and the most popular modeller for games...

    So a Venn diagram of creatives making games and 3ds Max.... it's got some overlap, more than it has with any other single piece of 3D software.

    It behooves you to achieve some degree of master of 3ds Max to understand your audience.
     
  18. runevision

    runevision

    Joined:
    Nov 28, 2007
    Posts:
    1,892
    That's correct. We have not taken the time to make our internal process entirely transparent. Our product manager and our designer, which have been two central pillars in the process regarding user involvement, are really quite busy, as are the rest of us. A lot of it involves NDAs where we can't disclose the details as well. So please bear with us if we have not prioritized to externally document every little detail about how this has worked to specific users who distrust us and call our processes a fantasy. You will have to do with the description from our Prefab landing page for now, which I swear I did not write. :)

    As to your other points; we're 4 developers, 1 designer and 1 product manager, plus QA on the team. I'm not team lead and am not making any decision singlehandedly. I might just be a bit more prone to answer here in the forums in cases where my fellow team members are wise enough not to.
     
    Matthew-Schell and teutonicus like this.
  19. Deeeds

    Deeeds

    Joined:
    Mar 15, 2018
    Posts:
    739
    I've read that quote, about the 150+ etc, so has everyone else disappointed with the failings and/or trappings and/or limitation of Improved Prefabs™.

    It wasn't believable then, and it's far less believable now that the size and makeup of your team is known.

    Who is the product manager?
     
  20. Baste

    Baste

    Joined:
    Jan 24, 2013
    Posts:
    6,334
    Please stop.

    If Unity tested this feature with developers, and found out that the feature caused friction and confusion, then removing it was the right call.

    I really hope that Unity values the feedback from game studios and in-person tests a lot more than feedback from the forums.

    What do you think you're achieving? Are you actually accusing them of lying about running this by testers? Are you actually asking to speak to the manager?

    Chill out, man!
     
  21. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Regarding functionality I think the new prefabs are a step forward. What I would like though are a few more power-user options, such as controlling the look of the hierarchy (colours only would be a good start for the minimalist among us) and script access to automate some prefab workflows.

    I suspect a lot of the pushback is not really feature driven but shock because the workflow AND the look changed, so it's a bit more impactful than it actually is. Our game was not affected by the changes so it's not a huge pressing issue for me beyond the initial shock factor. I think lots of soothing docs explaining the equivalent for every legacy workflow will go a way toward curing any hostilities. My two cents.
     
  22. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    You can reach out to Joachim Ante, he's the CTO. But for what it is worth I think there is a line between harassing Unity staff and asking for clarification - I only ask you please do not cross it in a moment of anger or passion.
     
  23. Deeeds

    Deeeds

    Joined:
    Mar 15, 2018
    Posts:
    739
    Chill out, yourself, man.

    It's a straight forward question. Very mildly, very plainly, very straightforwardly asked.

    Its' the product manager's responsibility to articulate fantasy scenarios so that those considering a feature can provide feedback on it.

    This is NORMAL stuff. Nothing odd about it.

    It helps to know who that person is, in this scenario, because that's the beginning point in understanding what fantasy worlds and scenarios they were imaging and communicating to both the developers and the testers, and knowing that will eventually lead to a vastly better understanding of what Improved Prefabs™ are, how they're improved, why they're improved in that manner, and why they're limited in other ways.

    If you read anything else into what you're seeing, that's projection. In the rest of the world, outside discussion about coding, folks are often quite direct, without it being at all aggressive, hostile or otherwise subject to the projections you're seemingly attempting to layer upon these simple words.

    They can be taken literally, if you like.

    That's their tone, nature and intent... to be taken literally.

    I suspect the product manager, of the little Improved Prefabs™ team, is RuneVision, and that this is the first time he's had this degree of responsibility. Hence his peculiarly defensive manner of communicating about its features, workflow and the more strange absences of functionality.

    On the use of the word fantasy. When you imagine something, that's fantasy. When you describe scenarios and contexts to potential testers and users of anything new, that's not yet fully conceived and/or realised, and/or it's not yet fully ready for real world work scenarios, and they're asked to test it in imagined use cases, that is... by definition... FANTASY!

    In other words, there's a very distinct difference between idealised (fantasy) conception, discussion and consideration in the fantasy "usage" scenarios that exist prior to wider, real world experiences of actual users attempting to do actual work with a system, out in the wild.

    Improved Prefabs™ is my personal reminder, to myself and others, that this isn't just about Nested Prefabs.

    If you want to talk about tone, flip it around. Consider your own.

    With a little personal reflection instead of full blown projection, your ability to accurately detect the tones of others might improve.
     
  24. Deeeds

    Deeeds

    Joined:
    Mar 15, 2018
    Posts:
    739
    The question is within the context of the Improved Prefabs™ team. Not the entire product.
     
  25. Deeeds

    Deeeds

    Joined:
    Mar 15, 2018
    Posts:
    739
    Personally, anything that involves extra, needless steps, because safety was a reason for limiting the flow and creativity of users, in a digital realm where there's both nearly infinite Undo and versioning, is a step in the wrong direction.

    That's really just a different way of agreeing with you about the importance of power-user features... which shouldn't really be "features" in creative software, they should be the intent, and inherent, with everything else guiding beginners to that power.
     
  26. foolmoron

    foolmoron

    Joined:
    Jun 22, 2013
    Posts:
    41
    Doesn't matter, because it really should be you. I don't see how Unity can look at this topic and not hire you on the spot to lead this team.
     
  27. Deeeds

    Deeeds

    Joined:
    Mar 15, 2018
    Posts:
    739
    The wit!

    The wisdom!

    So bright, my eyes hurt.