BlenderNation Peach Interviews: The Future of Blender
0 (0 Likes / 0 Dislikes)
Subtitles by Bmud. Interviews by Bart. Translations are welcome! I'm here again with Ton Roosendaal at the Blender Institute and the question on everyone's minds in the Blender community is: "What is Blender 2.5 going to be?" and "WHEN is it going to be?" -- Yeah. -- That's even a bigger question... hehe At the moment, as you know, we are in a deadline crunch time for Peach. But last year I went two weeks on holiday, and usually I take my laptop an do some more complicated work because you have to do that without getting disturbed or distracted. I made a basic design for a new internal core for Blender's events system, windowing system, event handling, and the way tools in Blender are being handled and talked to. It's very technical; it's all on API level... a programming level... but the benefit should be that everything inside of Blender should have a uniform way of handling and being handled. So if you develop a tool like "extruding a face," then that tool can be accessed by Python, or by a hotkey, or by a button, or by a gesture, or by a history, or by undo/redo... Whatever thing you can think of should be possible to use the extrude tool or use the duplicate tool, or use warping, or use grabbing. All those tools in Blender have to become uniform. It has a lot of benefits. For example, programmable keymaps, macros. So you can do five actions and turn it into a new hotkey. And you can only do that if you redo actions in a way. [It's] Very interesting. That way, you can also make Blender's interface better, and more modal because Blender has a couple of unique interface concepts which is more modal and totally parallel non-blocking interface. So if you do, for example, an extrude, you should not get a menu with lots of options asking you "Do you want to extrude: This, That, 5x, Multi-extrude"... or all the options, because every time when you extrude, you think "Shit! uh...that!" "Extrude. uh...that!" It goes slowly. So instead you should be able to extrude, and if you decide you want to do it different, you can go to a specific panel in Blender with buttons with all the settings. You change the settings, and whatever you change, it will apply the difference. For a simple example, if you rotate something 90 degrees, you get a little button that says "Rotate 90°" and you can type in "45" and it will become "Rotate 45°". -- Okay. So whatever tool you use, there will always be some kind of redo and mechanism that remembers what you did. So the last thing was: I wrote it to rotate 45 degrees, and then there will be a new hotkey in Blender that says "Rotate 45° again". You can drag the button? -- but on another selection. So you can click on the camera, click redo, rotate the camera 45 degrees. Whatever complicated actions you can think of, you can combine that into a macro and apply it on something else. Does it also mean that you can start using Blender with a programming language such as Maya's MEL? Yeah. That is an example. And lots of that kind of... I mean it's pretty much standard. Most of the modern 3D tools are based on that kind of event system. It's "modeling". It's what people do now-a-days. Blender still had [the old] core based on what Silicon Graphics (SGI) did in 1992, '93, '94... When Blender was designed, I was using their event system, and their way to think of how events work. Blender had a lot of options in 1995, but not that many that you couldn't find a hotkey for it! We had plenty of hotkeys left. But right now it's the opposite! Blender can do SO much, that it's impossible to map it to any hotkey layout. So we have to make that more flexible. So that's one thing, the interface will be much more powerful then? It's a good way... a different way of working with the interface in a sense that you can approach tools in more uniform ways. What do you think that will mean for Blender users? Will we have to relearn how to work with a tool? Nah. I think you can configure Blender 99% identical to what you are used to. -- Okay. So if we finish the coding work, you can configure Blender to be as usual and probably redo most [of the] keys [yourself], because most people have to migrate slowly. But what you can do quickly is completely make it different. Like the Python department in the Blender community would like to configure the interface using Python. So you can have different button fields, or maybe even a whole editor. Like the IPO editor; maybe you want to have a little bar on the left side of the window with presets for specific animations, that we can add with one button press. That kind of configuration should be possible. We also will try to integrate this work in the game project. So in Apricot, the open game, what we are going to do here requires a configurable interface to make a game level editor and we have to able to make custom properties and objects, edit that, and preview it. So we have to build some custom editing. And I hope that's what we can test 2.5 work for. -- Apricot's already... -- Yeah. Apricot has a deadline of July. and I hope 2.5 can have same deadline. (pops) -- Nice... ...if we make that. I can only do that if I don't get bothered by people. So no interviews; that kind of thing! No blog postings... and that's not possible. -- Yeah. -- I'll probably have to withdraw myself again for a couple of weeks. Do you also think you will be able to reskin Blender to make it look exactly like what you want it to be? and it make it just as flexible and ... -- Up to some level, yeah. -- Okay. It will be difficult to make it worse. I mean, if we want to have it really like a completely modal interface that wont pop up windows where you have to type in things and close it before it continues. We want one thing, that's going to be possible for example, to split Blender into two windows. People already saw crazy videos for that, and some people were screaming "Oh no! That's horrible! Now Blender is going to be like The GIMP or like Photoshop" or like any other program that has lots of windows where you always get lost where you are because the many windows. But that's not true. I mean, in some situations, having two or three windows is not that bad, especially not if you have multiple screens for yourself for example. Having one window per screen is interesting. but also, Blender can then present to you that you have multiple projects open. So at the moment, you can not have multiple scenes, or work on multiple scenes in one screen in one window. That would be far too confusing, but it can be very useful. For example, I got an e-mail from a film-maker who said "Argh. I would love to have two windows because we are working on a project where we are making a film..." "...and I want to have one monitor that has a blue screen background, the monster in preview animation running around,..." "...and then we can match the view to a camera with real footage. And in the meantime, on another screen,..." "...we can use the novel interface to tweak the animation, tweak the camera, whatever." That kind of separation we thought was innately useful for him. For that kind of reason, it is important to have that. Of course it will be optional if you want to have a split window.. You can but you don't have to -- No, you don't have to. Sometimes it's fun. Why not? I'm not against those kinds of things, and it will make the code more clean. And the other thing that was a factor... Of course I'll keep having the interface totally parallel, but at the moment if you have an editor open in Blender like the 3D window, the IPO window, or the Action editor, those are separate nodes in blender, and the separate windows are totally rigid. You can not configure them. [except for] "Is the header at the bottom or is the header at the top or is there no header?" That's old. That's not good. You should be able to configure that and a "new subdivision". So that's already working. So there's a "second subdivision level" inside of an editor. For example, you can have a 3D window and have it draw four 3D views using one header. It can also have a vertical header next to it, for example a toolbar or a presets option. That's what you can configure; however you want it. That's totally fitting the Blender philosophy of having a parallel working subdivision interface. You could do both, You can split, and you can fully subdivide. And it looks good. It's going to be really good to have that. Alright. How many people are working on that now? Just you, or... No. There's five people already testing the API and giving feedback on it. The last few weeks it stalled a little bit because I had my personal assignments to work on the movie. but we are going to pick it up again next week to freeze the API for it, make a couple of good documents... Next up is to confer to one editor in Blender with the new API, to test it, and once that's working fine we can give it to the whole development community to help in converting Blender. 'Cause there's about four hundred lines of code to be tested and reviewed and converted. -- Four hundred? Thousand. -- Four hundred thousand? -- Yeah. -- Wow. -- Almost half a million lines of code to redo. We don't have to recode every line, but it has to... -- You have redo it... -- All that code has to be removed from Blender over here That's all the tools, the whole interface has to be removed and has to be brought back feature by feature. That's not easy. -- No, it's not easy. -- But it's also typical of something you can do in open source. What do I say? It's not... It's relatively simple to do; it's also a lot of work. It's typical of the bizarre of having 50 people doing; we might finish it in months. And the interesting thing is you can also not do it and wait for somebody who gets the itch, and codes it. Because Blender has a lot of tools, we don't have to put all the tools back at once. We can do it when we need it. After a while, we'll get back to the old functionality. It's also good to review a little bit too, and improve them. What does it mean for the future of Blender; the new architecture will make it easier to write new functions? Yeah. -- It's going to be easier for new developers to get into Blender as well? Yeah. This part of Blender is totally not documented, and very difficult to understand and to extend. For example, in the new structure now, if you add a new tool, like a smart way of subdividing a window in the interface, because it's uniform, we can automate it, and automatically it gets a history, it's part of the macro system, it gets a python script access We don't have to code that anymore. Once it's a uniform standard, the way how it works, and how you treat it is built in. So are you hoping this will speed up Blender development even more in the next years? Well.. speed up? Do we need more speed? I think we need more quality especially. The speed has never been a problem, but the quality was a problem. It was getting more complicated to do good stuff. (doorbell) The easy things were done, and now we get complicated things. In this system, I hope we can do easier quality. More complicated tools, more custom tools, more tools that fit a specific task well... That kind of thing. Yeah -- But there's no end in tools. You can make tools for every person in the world. So that's not our job; we should not do that. But you could make a platform that allows people to do it. So new Blender, 2.5, hopefully somewhere in July this year? If you're looking at the long term, what do you expect will happen with Blender in 2010... 2012? It's awfully difficult to predict that, but one of the ideas we have is that Blender can become a... well a tool for artists of course, but it can become a development platform for artists to configure for their workflow, whether it's a movie or a game or an architecture project, Blender offers you the tools to create a tool for you for a specific job. That tool has to do what you want it to do, and after that you can throw it away, and you make a new tool for the next big job you have. So you're going to open it up so artists are empowered to develop a new tool as well. -- Yeah. It could be working. Not now, but it's going to be there. It's a big change. -- Sounds like an excellent plan. -- Yeah! I wish you all the luck. Thankyou, Ton. -- Okay. -- Okay, bye. Ah, I didn't hear the door. Was that making sense? -- Yeah. I was distracted. Now I forgot what I was talking about. I think we're done now... -- Heyyyy. We have to give people keys. We were almost finished. Let's wrap this up? Yeah.. What was the last question again? Well, I wanted to ask you about the future of Blender, but you already mentioned that yourself. Yeah yeah yeah... the development platform... Yeah, an open platform, I like that image Did I say enough about that? Because I was in the middle of a sentence when they came in. If you're not sure we can do it again Okay... Can I tell it again? Just ask me!
Duration: 15 minutes and 42 seconds
License: CC Attribution Share Alike
Director: Bart Veldhuizen
Views: 18,915 (15,023 embedded)
Posted by: bmud on Feb 14, 2008
Ton Roosendaal explains features that will come to Blender in the near and distant future.
Sign In/Register for Dotsub to translate this video.