Summer Day in Middle Ages


Sometime when I’ve some spare time I would like to make some motion of this environment. This scene was intended to be the one used in a short movie codenamed “mushroom” made in Blender, but finally we paused the project. I’ve got lot of stuff already though but I don’t have enough time to complete it actually.

Blender Game Engine book review

I’ve recently received at home a copy of the book -Blender Game Engine: Beginner’s Guide- written by Victor Kuller Bacone and published by Packt Publishing that I was pleased to review. It’s an awesome approach to creating 3D games using the latest version of Blender with no need of coding or high programming levels. In other words, a very interesting read for those loving Blender’s versatility.

Documenting software makes it friendly

And that’s an actual true sentence when it comes from a developer. As developer I am used to deal with different kind of projects and mostly with lot of files of code. Some are well structured and some never will be because they require a whole rewrite. But in both cases there is a developer task that is needed by every kind of project -documenting the software.

When applications comes with no further details about areas sucha as, what it does, how it works or how has it been built, means an awesome fail in the horizon. Well structured applications, clean code and effective processes should always be completed with well structured, clean and effective documentation. In the documentation art you may fall in very different errors.

  1. No documentation at all
  2. A wonderful application with messy documentation
  3. Keep documentation out-date

In the three cases there is an unavoidable fail and implicit committment if you want to get a success. So, is the documentation as hard as the coding itself? Probably more in my honest opinion. For “good developers” coding is as important as documentation could be and spend lot of time making the code understandable for users and other developers, because a good application together good documentation makes it easier for the developer to update, debug, implement or review his/her own code.

So, probably the best way to get a success in the software development should be making your code at the same time you’re documenting it, making it bit a bit avoiding full re-coding and full documenting because in this case you could be in front of a huge task and you could miss important bits of code requiring documenting. For that purpose you have lot of different ways of documenting like wiki, plain documentation developed by yourself using html, php or mysql or anything you could keep up to date making your software friendly and accessible for yourself and others.

The speed plays havoc in performance

And that’s true when you get in rush for developing software. In GPVWC we took the decision of getting 2012 as a stabilization season, completing missing features, fixing bugs and making code looks clean and accessible for debugging with the less impact on the user online experience.

I had planning to introduce a whole new kernel in GPVWC for next year but 2012 is coming soon and there is no much time to introduce all in this time frame window, so instead of getting in a rush with no real reasons, we will use the current code that worked really fine and make it better. It’s true that this is not the perfect solution I was after but sometimes you need to decide the best solution to make the project viable. I have to say that this solution is not bad, of course. As I mentioned before, current code is the result of evolution along the years.

We’ve got a lot of things that make our code really interesting such as a built in XML reader that makes all the dirty work updating results, standings or finances automatically… but there is always a but. It’s not using the OOP method I wanted to introduce in the 12.01 version. But, I will do it for 13.01 with no doubts.

So, the speed could play havoc in performace and sometimes to delay a release of very new -and untested- features is a step forward in the whole project development. Sometimes you need to get away the picture to understand the whole idea and getting back to the initial idea is not a step backward but to understand the questions why, where and who to understand how and when.

A finnish bedroom design


Just worked a couple of days in a really interesting project I had never tried -Interior Design- using Blender. Result is The Finn Winter render.

Now I am thinking about to spend little bit more of my time making renders and stills instead animation projects -that is really tedious for a single man BUT I won’t stop them anyway!-

Published article on Packt

For those that still don’t know what’s Packt Publishing ( they are a plublishing company producing books and e-books. In fact they have published interesting Blender and IT books.

I am proud to say they published my article “Introduction to the Editing Operators in Blender” and its sequel. Read the full article on the packt publishing website.

In this article I cover the basics for editing mesh and differences between Edit and Object Mode. It also gives you some interesting information about modifiers such as Subdivision Surface, Mirror and those helping on the very first moment in the modeling stage.

I finally provide a resume with the most important shortcuts for the first steps in modeling such as Selection and Mesh/Object manipulation, View, Operators and more.

Generating trees with particles in Blender


The magic solution for artists of getting trees with just a single button operator is not viable at the moment for different reasons, from artistic to technical discussions. So I was thinking about a way (probably it isn’t the best one) of creating trees in a faster and acceptable way in Blender.

I know there are lots of external “Trees’ Generator” apps out there but I was wondering if there is a way of getting acceptable results for home projects without need of using external applications but just using Blender. I’m going to briefly explain how I’m managing this at the moment.

The solution I am working on is using particles. In fact there are a couple of steps I did to finally get something acceptable to use in my home studio projects. This solution is not the perfect one or the final one because I am still working on it.

First of all, I made the model of the trunk. It could be done with Curves > Mesh from Curve but I found that modelling the trunk is the best solution for getting the best result. Usually it will receive the close up shots and we need a good trunk to show, with as many details as we can. We do not want the trunk looking like a tube.

Second thing we need is to add some branches -the biggest ones-. That could be done with Curves > Mesh from Curve.

The funny part of making trees is the foliage. It’s really a nightmare trying to get a good look one. For that I used a modified mesh adapting it to the form I want for the treetop. This will receive five particle systems using the objects/objects groups previously modelled and textured using the Hair particle type.

I previously did a couple of planes with the oak leave texture in alpha. Other way is modelling a leave using a subdivision surface modifier and texturing it -will require more RAM.

After applying the particle systems to the treetop-like mesh I did a duplicate of this mesh, scaling it down into the previous one. This new mesh as result of the duplication also has the five particle systems. We need to delete all of them to add just one that will receive the little branches -a new object.

Flying cycle test in Blender

I was playing today with flying cycles for a very short shot in The Magic Mushroom project. It’s not the final shot but just wanted to ensure this technique is working in Blender 2.56 Beta. It’s based in a flying cycle of 20 frames plus some work with NLA stripes and F-Curves in the Graph Editor.

First of all we need the bird’s cycle namely “flying_cycle”. In this example it’s about 20 frames length.

In the scene, we need a Path (Add > Curve > Path) to assign a constraint to the Master bone. This constraint is the Follow Path, where we assign the NurbsPath name and tick the Follow Curve setting. Next step is to animate this constraint Offset value namely “offset_strip”. Here, the whole animation is 250 frames long, so insert a keyframe for the Offset value in frame 1 and another one in frame 250. In this example, the offset value is negative in the Y Axis to make the object following the path. So at this point we got a flying_cycle and offset_strip actions.

Finally, we need some work in the NLA Editor with the flying_cycle strip selected, press N Key to show animation data, under Active Strip tab use End Frame set at 250 (the whole animation length) and under Evaluation tab, tick Cyclic Strip Time and Animated Strip Time. This latest setting needs to be also animated like the offset value, by inserting a keyframe in the frame 1 and another one in the 250 using same values as Strip Time variable. This will add a new strip in the NLA that you could call “strip_time”.

The last work on this is to play with the strip_time F-Curve in the Graph Editor to make wings moving faster and slower according with the path to make it looking natural avoiding the same cycle to be repeated often.