Advertisement

You're blocking ads, which pay for BlenderNation. Read about other ways to support us.

Developer Meeting Notes: November 10, 2013

56

Blender developers are migrating to the new GIT-based development system this week.blender_logo_shiny

Ton Roosendaal writes:

Here are the notes from today's meeting in irc.freenode.net #blendercoders.

1) Migration to git, new project system and trackers

  • You can see work in progress here, it's almost done!
  • Next Wednesday shutdown!!!
  • SVN and Fusionforge might be down 1 or 2 days before the new services start with Git and Phabricator. We will keep you updated here frequently.
  • Git workflow policy: we will start work as usual, how we cooperated and committed with svn.
  • Brecht van Lommel prefers developers to get used to do (and ask for) review though.
  • Campbell Barton adds: if developers are not sure on git use or want to push large changes, they could use codereview to begin with. Will save everyone work and it keeps history clean.
  • The old links to bugs in old trackers will be kept around for archiving purposes.

2) Work on Blender projects

  • As discussed, we will try to make 2.70 something special, so a release is not going to happen within the 2 month release cycle.
  • There are still too many open bugs! Help!

About the Author

Avatar image for Bart Veldhuizen
Bart Veldhuizen

I have a LONG history with Blender - I wrote some of the earliest Blender tutorials, worked for Not a Number and helped run the crowdfunding campaign that open sourced Blender (the first one on the internet!). I founded BlenderNation in 2006 and have been editing it every single day since then ;-) I also run the Blender Artists forum and I'm Head of Community at Sketchfab.

56 Comments

  1. Whoop! Bring on the Github and Phabricator. I didn't even know what they were before the conference, but one glimpse and I was a fan. Should be a huge leap for bug reporting/tracking for Blender :)

      • Lawrence D’Oliveiro on

        I use it heaps. Every project that is anything more than the merest bit of throwaway code goes into a new Git repo.

        Then you start to get annoyed with binary-only formats (*cough* .blend files *cough*). You wish they could be stored in a text form, to make it easy to compare different versions to see what has changed, as well as to submit patches to them.

        • I wonder if comparing a readable version of a .blend file would generate useable diffs? Even if it was, say, in XML, there would be SO much information in it that diffing them could become unreadable.
          GitHub does offer an interesting STL diff view though:

          https://github.com/blog/1633-3d-file-diffs

          Maybe we could compel them to do a .blend diff in this way as well? (Or maybe would create an add-on to do that)

          • Lawrence D’Oliveiro on

            I’m sure we can get some useful diffs out of a text format. For example, being able to compare a file with an old version from a month ago and being able to see that you changed the colour of this material, the position of that light, that kind of thing. That should be manageable with a reasonable format. If not XML, how about JSON?

          • Do you mean like exporting a 'description' file with a limited but relevant amount of information and storing it alongside the .blend file? May like an annotated scene graph. I'm sure that could work (and it would work right out of the box on GitHub)!

            What would worry me is diffing a 2M polygon model where you've done some extensive sculpting, for example :)

          • Lawrence D’Oliveiro on

            No partial “description”, I want a full 1:1 correspondence with all the info in the current .blend file format.

            You might be right about sculpting, particularly dyntopo sculpting. But that would be confined to that one object, and you would see that demarcated in the diff. Just knowing that that object is the only difference between two file versions can be valuable in itself.

          • Lawrence D’Oliveiro on

            Generate the whole diff, and it’s easy enough to search through it for points of interest.

  2. So Blender 2.70 is going to be something special? Well, if it's going to be as dramatically different from 2.69 as 2.50 was from 2.49, I'm prepared to wait the same amount of time it took to move from 2.49 to 2.50. Just curious: what exactly will change dramatically this time? Not the UI, not after the Thermopylae-style fight the community put in its defense... Hope it will have something to do with physics, VFX, and motion capture. Thanks!

    • I'm personally hoping there's more emphasis on boosting the modeling, texturing, sculpting and weight-painting tools before we see more developments with the secondary stuff like physics, VFX and motion-capture.

      Those latter things are nice and useful, but I think what's going to establish Blender as a turn-to tool is having a solid 3D-modeling, 3D-texturing, 3D-sculpting, and weight-painting tools. Those secondary features only tend to benefit a smaller range of users who use them often, whereas those latter primary features are far more frequented for more kinds of users.

      A more completed and revised set of the primary features would benefit Blender in the longer haul--esp. now with this huge boom of indie game developers like myself, and people are starting small-business architectural viz studios and animation studios as well. We're seeing more and more people globally going independent and small-business these days.

      The flashier stuff like physics and VFX can be feigned with current tools to reasonable degree with some effort, but things like a simple layer system for sculpting can't be feigned. They require integrated core development. Those flashier features also tend to distract folks from the fact that we still have a rather convoluted texture system, that easily breaks the workflow just to set up a simple texture.

      It's simple yet essential stuff like straightforward texturing that goes unaddressed release after release, and meanwhile, we've got 3D-printing tools, camera-tracking tools and an ocean simulator--things that most people--even most excited about these features--merely dabble with, at best. It's a minority of Blender users find themselves needing neat physics, VFX and motion-tracking tools--a least, first before improved modeling/sculpting/texturing/weight-painting tools..

      And once we do get the primary stuff sufficiently developed pretty well (sculpting layers, PTEX texturing support, Cycles texture baking, smarter auto-weight tools, etc.), we can start to see other developers add upon the primary developments, to extend the functionality to possibly seeing things like a truer remesh system, curve-based sculpting, and better brushes for texturing.

      I personally think it's completing the primary stuff that would make a bigger impact and would carry further, though I do hope we do see more secondary goodies along the way.

      • I agree, sometimes development runs ahead with new features, which are great and very cool on their own, but only niche features that few people use (ocean simulator?). It would be time, especially with a larger release lie 2,70 to work on the more fundamental features like modelling, materials, texturing, lighting. Maybe clean up the schizophrenic material system, like having to use three different panels/workspaces to texture in cycles or the mix of node and non-node workflows.

        And the UI is also a very fundamental aspect. I too find it sad that so many community members are against any changes in this regard.

      • Kirill Trideshny on

        Many times I need "neat physics" but almost every time I stumble upon the slowness of phys. sims. So I really think these things are NOT secondary. They are outdated and need to be re-shaped well. Many many developers now stick to GPU possibilities and make their different phys. engines GPU-accelerated. Sculpting need a good love too, agree by 100%! Texturing is very very good already. (fast) Baking in Cycles - it's a really that thing all blenderheads need :)

        • My point in calling new physics "secondary" wasn't at all to say that improved physics wasn't needed. I was merely placing it second in priority in context to the needs of most people's everyday needs.

          Again, I did speak generally here. Most people don't use Blender for physics first, but rather modeling, sculpting, retopo-ing, texturing, setting up rigs and animating. Physics simulations are secondary in this regard. Your case is quite particular, and isn't the general case with most Blender users.

          To be clearer, in saying that the likes of physics simulations being "secondary," I'm not saying that physics in Blender doesn't need work or that it's not important--I'm merely saying that there are other more fundamental (more heavier-used) areas that need improvement first before we move on to development-heavy endeavors like revamped physics systems.

          As you yourself agreed, the sculpting tools could use more polish. My only point overall is that we'd be better to first see refinement of that sort of far more frequented tool such as sculpting tools first before moving on to improve physics simulations.

          We've long needed sculpting layers, at least to say, and perhaps with focused development, we could see functions like curve-based sculpting, and adjustable global operations like Inflate/Balloon/Smooth/Relax/Flatten deformation to affect unmasked portions of the mesh. Easier said than done, but easier done when the focus isn't split between trying to also work on development-heavy revamping of the physics simulations.

          As for texturing, no, texturing isn't "very, very good already." It's decent, but basic and very convoluted. You currently have to navigate across two Modes, two windows, two sidebars and two Property subcontexts just to simply start texturing. It's not at all a straightforward process to set up a texture. It completely interrupts your workflow, when it should be straightforward.

          The brush system for texture-painting is also pretty rudimentary. And masking, selection and marquee tools would go a long way in 3D texturing. I'm not sure what you mean by it being "fast" because setting up texture-painting is currently cumbersome, and with higher-resolution textures, the painting often stutters significantly.

          Granted, we're seeing some (one-man, part-time) development slowly being done with texturing (and heaven bless him!), and a handful of guys are very gradually refining an addon of a few new sculpting functionalities (someone give them a beer!), but imagine if the whole team focused full-time towards this effort?

          And in any case, the sooner you get the basic and essential stuff well-developed and out of the way for a while, the sooner you can get to developing the neater features like improved physics simulation and VFX tools.

          • Kirill Trideshny on

            Modelling in Blender is the strongest part now as I see! So many tools, so many possibilities to choose your own way how to model... BlenderCookie soon will show us new retopo-tools (I hope so...) and Campbell and Howard are constantly improving the modelling part. I'm one of most choosey Blender users and I tell you now "the modelling part of Blender" (not talking about sculpting and retopo) is 99% ideal now". Here is no needs to make it too easy for beginners as we have plenty of tutorials that explains almost all aspects of this. If anybody need to dig deeper - welcome to BlenderArtists' forum :)

            Not sure about rigging and animating... probably this is like you say.

            Texturing part need only to enhance speed (it's the weakest part as I know), make masking tools could be better (I've seen Mari demos, they rocks... anyway I don't think we need to make such tools like "concave based masking" the top priorities). All you've described are some issues of the UI. Actually these are not that important:

            Object/Texture mode differentiation is necessary. It's not worth to re-make the whole system of dependencies only to make the texturing system better, IMHO. I guess you've meant about being unable to paint on several objects at one time.

            3D Viewport/UV Layout??? What can be better? Your suggestions, please.

            Everything down there you wrote about texturing are the well known complains about UI... how it's bad and so.. so...

            "Coca-Cola advert" - that's my answer! :) (Ton have said about this on Blender Conference 1st).

            Check how people work in 3ds Max and your hair will raise like you've seen a ghost.That UI is much more finicky so we must be glad. Please, Brian... We'll not start here another flame about UI, OK?

            Brush system and more love to sculpting - I completely agree here.

            My best wish for drawing/sculpting is to have a feature to being able to draw on curves. So you define a curve(s) in space and pick it for painting/sculpting "snap". Then you'll be able to make any smoothest strokes by 1-2 times. So the trajectory will be exactly like you wish. Before this many artists spend a lot of time slowly drawing accurate curved lines using "smooth mouse". I don't know.. maybe I'm a bad artist yet )) But usually I redraw every stroke that need to be precise 2-3 times (at least). Undo takes a lot of time on big meshes, you know. This is disturbing! Not the UI! :D
            VFX are pretty weak in Blender. I hope (we hope I think) that Lukas Toenne and other Devs working on this part will greatly improve this.

          • PLEASE read my comments carefully. You're arguing a lot of points I simply wasn't making. Carefully read what I'm actually saying, because you're making me address this in more words than I should.

            Modeling in Blender is the strongest aspect of Blender. In fact, it's easily one of the fastest programs around for polygonal modeling, thanks to its hotkey-centric nature. However, what I mean by it needing more work is in the fact that.you can create primitive objects with initial parameters, but once you've left editing those initial parameters, you can no longer edit the primitive object's parameters. If you want a sphere with 8 rings instead of 32 rings after you've modified it, you'll have to start with a new sphere. This small missing feature makes a big difference between Blender and most other 3D packages.

            Also, I am aware of the retopo tools being developed by Blender Cookie, and that the modeling tools do get improvements (such as the new Bisect feature that was just added). I should say, I'm not here to totally complain about Blender's rate of development. I do understand that open-source development is smaller and slower than commercial software. However, have you noticed that it's taken us about 10 years to gain that new Bisect feature, which has been around in Max and Maya through the entirety of Blender's duration? We've seen 3D-printing tools and camera-tracking tools in two years' time, but it's taken us 10 years to see a simple Bisect tool? Why is that?

            We've also seen for years a notion of Blender seeing its spline modeling seeing a much-needed improvement (the legendary "NURBana integration in Blender" we've seen hinted at for years). NURB modeling is one of the strongest reasons why the industry sticks to 3ds Max, and one reason why many who've used Max before will view Blender's spline modeling tools as being behind. Spline modeling in Blender could use some focus, such as supporting Boolean operations.

            Also, please do not argue points I never made. I never once spoke or referred to the competency or skill level of a given Blender user. I'm not talking about making Blender "easier for beginners." I'm talking about Blender seeing some more core developments that no user can work around in a workflow-efficient manner. There simply ISN'T an easier way to set up texture-painting in Blender in a straightforward manner. This issue stands regardless of how competent you are at using Blender.

            As for improving rigging and animating, I'm simply referring to how much better our weight-painting/rigging/animating tools can be. The CAT tools in 3ds Max are top-notch and work beautifully--you can not only rig models very easily and efficiently, but you can also easily animate muscles deformations with your characters. The posing tools in modo are likewise a brilliant and makes life so much easier, such as its Dynamic Pinning and Dynamic Parenting features. We have nice weight-painting/rigging tools, but there is plenty of room for simplifying the process in Blender--a process that many people actually hate doing. Many people who hate rigging love using Max's CAT tools.

            As for texture-painting improvement, no, I'm afraid it's not just merely " issues of the UI." Problems like the painting stuttering with painting with high-resolution textures isn't a simple UI issue. That's a performance issue, which is, indeed, a core issue. But even if some of the texture-painting process just needed something as simple as a one-button solution to start texturing...then hey, all we'd need is a simple one-button solution! Why prolong attention to at least giving that much focus to the Texture Mode, that developers could just get it out of the way?

            Also, I only brought up "Object/Texture mode differentiation" and "3D Viewport/UV Layout" just to highlight the fact that starting a new texture for texture-painting is currently cumbersome--I'm not claiming there are issues with switching between the actual Modes themselves. I'm not sure how well you read English (I'm aware we're not all native English speakers here), but if you read carefully, I was talking about all the needless amount of navigating around Blender we have to do just to simply start texturing. I'm NOT talking about a problem with these modes being different modes.

            I also wasn't talking about being unable to paint on
            several objects at one time. That'd be nice, but not what I'd consider as a top priority. That would be secondary. I'm talking about primary issues that nobody can possibly work around, such as how the texture painting stutters with using any texture over 2K resolution. Again, this is NOT an issue of UI. I'm not talking about Blender UI re-designs, so please stop accusing me of such. I'm ONLY talking about improving performance issues and making the process of starting new painting textures as simple as possible.

            And finally, the only reason I've called VFX as "secondary" is because, ideally, you don't turn to your 3D packages for the purpose of visual effects. Typically, you turn to a suite specifically designed for such visual effects, such as After Effects or Vegas Pro. However, I'm am acutely aware that there are no free alternatives to After Effects or Vegas Pro, and so people place such hope of Blender stepping up to fill those shoes.

            The problem with this kind of thinking, however, is that it spread's Blender's focus too thin with development, and we end up with Blender becoming this ad-hoc product, where integration isn't as tight as it can be. VFX integration would need its OWN FOCUS to best ensure that it is a well-integrated and seamless experience.

            Developments MUST be focused one at a time, otherwise, things will just become exactly what the Texture Mode has become--a feature not well integrated and requiring you to roam all over Blender just to use. Blender should master one thing at a time--otherwise, we'll get what it is today: a software that tries to master so much at once, it doesn't truly master anything.

          • Kirill Trideshny on

            I understand English pretty well though I'm not a native speaker. Yeah, sometimes I write funny things because of this. Pardon my French :)
            Sorry, I've didn't meant that you will TELL exactly like I suppose to. That was just my wrong guesses.
            Generally, if we could be "3d gods" then, please, summon some brilliant performance to Texture painting mode, Zeus, please :) I'm with you. Other things like some little cumbersomeness with adding a texture doesn't bore me that bad.
            I'm sure we'll have some powerful weighting and rigging tools as a right time will come. Just remember how we got hair in Cycles.. oh, and actually Cycles! :)
            I think you don't expect that Blender will become a second 3ds Max without it's weaknesses. I guess it's the reason you're still here and writing a lot on BlenderNation.
            If you're sure that "Developments MUST be focused one at a time" then bring some reach contributors, please. We are the great masters of talking and judging here. All of us.
            Please, write less words, edit your long texts. I was 50/50 about to dump reading all this. Delete anything that can be emotional or repeating - it's not an offense, just a good advice.

          • I notice that you in particular love to argue my points without actually refuting them. You also like to argue besides the point.

            Please, Lawrence, inform me--how is this the Dunning-Kruger effect? I'm not at all talking about anyone's competence in the matter. I'm not mentioning skill level or how well one uses the tools--I'm merely talking about what tends to be most frequented among most Blender users (at least, judging by the work that is most commonly posted in the Blender community. I didn't say "most everyday people's needs." I am in no way talking about competency here.

            I'm pretty bleepin' confident in saying that most times you open Blender, it isn't for running physics simulations or the camera-tracking, unless you're just working on a project that heavily relies on the latter. But I'd guess that most of your usage has probably been for the model creation aspect of Blender.

            That's simply what I mean. MOST of Blender's usage fall with the main reasons 3D packages are turned to: modeling, sculpting, texturing, and animating models. I'm ONLY talking about this--not the users' competency as if compared to my own.

            And I don't know how many times I've got to say this: I'M NOT SAYING people don't use the likes of the physics tools in Blender. Most work showcasing Blender is using the modeling, sculpting, texturing, and animating tools far more than using the physics tools. Sorry, if I don't have time to poll everyone on the issue--it's just a generality I was using to make a point--a point which, by the way, you've failed to either address or refute.

            Don't come at me with any more irrelevant red herrings.

        • By the way, in addendum, whenever you start talking about GPU-accelerated physics, which is a mighty undertaking in itself, we probably won't see results until several releases later.

          Parallel programming between CPU and GPU necessary for CPU/GPU-processing can make a programmer sweat, and rewriting the entire physics system solely for GPU would probably take at least the better part of a year or so to do, even with a small full-time focused team.

          GPGPU-accelerated physics is very complex stuff and would probably need a focused effort on just its development alone.

          • Kirill Trideshny on

            Yes, I know that code structures for GPU based calculations are very different than CPU based.

            It will be very progressive if GPU-accelerated physics, node particles, meshing and remeshing algorithms (and etc.) will be made like another "render engine" of Blender. For me it's clear that using CPU for such tools is not reliable now. Saying abstractly - GPU calculations are cheaper nowadays. So if all forces intended for these tools development will be focused on this new direction then very soon we all will get real benefits.
            I know.. I know you'll tell me about memory limits and other such things... But again... GPU cards with more memory are getting cheaper! Today is future that we wanted those days when every home cg artist could only dream about taking powers of super-computers. Now it's very close.
            Will you choose to light your houses with gas or you'll take electric lamps? ;)
            I foresee another aspect... Here are a lot of people from poor countries that need to develop. So in cg world it's almost the same. BUT current phys. engines and other things will not disappear after this.

      • When I mentioned physics and VFX, I assumed it went without saying that modelling, sculpting, texturing, etc. -- which is what Blender is all about -- would never run out of attention, any more than aerodynamics could be put on a back burner for aircraft design. :-) Besides, VFX is all about enhancing your live footage with 3D, and in order to do that, you need to be able to create photorealistic objects, which is where the 'good old' modelling, sculpting, texturing, and rendering (filtering out the shadows cast on your object from those one part of your object casts on another, for example) once again comes into play. As of now, for example, I have never seen a photorealistic lava flow made in Blender, and the commercial tools do excellent job on that: just watch Wrath of the Titans, or the Unreal Engine 4 Elementals demo. Something like that will require VFX, physics, and texturing. I even raised that question on Andrew Price's Nature Academy forum a while ago, but the Nature Academy is mostly focusing on the tame side of Nature (no offense, Andrew, but if you are reading this, how about making it a subject of an upcoming tutorial? ;-) )

        • I wish some things could be able to go without saying, but all too often online, I find that it's not that easy to ascertain. With reading public comments, I can only take things at face value, unless a necessary reading between the lines are otherwise indicated.

          Anyways, thanks for filling me in a little more on your thoughts. The effort of clarification is something I certainly respect.

          My only reply here will be that I completely agree that VFX tools would be outstanding to have in Blender. There is a need for a free powerful VFX solution out there, and Blender's the best opportunity for such the development being available.

          Though, however, in trying to make Blender fill those shoes, it would take a very dedicated and focused effort, which would take a great deal of time and effort...while simpler and long-standing issue would be delayed all the while.

          VFX integration would need its own full focus with developers to best ensure that it is a well-integrated and seamless experience. I'm sure you're aware of this somewhat, though. If you've used or seen VFX solutions elsewhere, then you probably already know how robust they are and integrated they need to be.

          If they would go at this effort of VFX in Blender while trying to develop the "main" features along side, the overall development of the VFX will most likely result with tacked-on development. Such the ad-hoc manner of development contributes to much of the reason why Blender feels like Tokyo nowadays--its population with new features keeps growing, but it's running out of organizable living space.

          I would think once we've reduced the "primary" features of Blender with better efficiency, simplicity and integration, we'll actually make more room (both with Blender and the developer's ease of mind) for the VFX tools. And so, the sooner development places the majority of the focus on those "primary" features, all the more sweeter our VFX tools will be. :D

          I'm glad I do understand your expressed view now. Thank you for making an effort to clarify your expressed thoughts. And hopefully, soon enough, we will see robust VFX tools, all sweetly-integrated in Blender. :)

      • I
        personally don’t think VFX and physics are “secondary”. Your opinion
        seems to be that most people will be using Modeling, Texturing,
        Sculpting and weight painting… which is TRUE, but often people who use
        3d programs eventually need to make a scene with a realistic large scale
        smoke or fluid simulation.
        Unfortunately,
        you can’t (sorry if it sounds harsh) really make a realistic large
        scale fluid or smoke simulation in Blender. This is a restriction. But
        modeling and texturing, pretty much have no restrictions. It can just
        get improved to be easier to use or have more spicy features that
        enhance the workflow, but either way, you are going to achieve the same
        result. But for physics, the improvements change the result. We couldn’t
        do the same smoke simulations in older versions of Blender that we can
        do now.

    • Personally I'm waiting for at least one of these:
      - Better text objects (the biggest show-stopper for motion work)
      - Volumetrics in Cycles
      - Assets manager

  3. ....to make 2.70 something special!
    Something new ? I'd like to see that the existing features get an push. Improve mesh tools and push cycles.
    And keep up the good work ;)

  4. Lawrence D’Oliveiro on

    I see Git repos are now online for Blender extensions and translations, but not for the main Blender code itself. Some kind of hiccup on that?

  5. Personally, I would like to see the edition of a WYSIWYG UI Editor that allows you to edit any element while also allowing you to create completely custom interfaces similar to Andrews' UI proposal.

    I suppose the best example of what I'm talking about is QT Creator.

Leave A Reply

To add a profile picture to your message, register your email address with Gravatar.com. To protect your email address, create an account on BlenderNation and log in when posting a message.

Advertisement

×