Game developers jailed in Greece!

Posted in Uncategorized on October 4, 2012 by 4museman

This is really a special and sad post…

Ivan Buchta and Martin Pezlar
separator

My friends and colleagues Ivan Buchta and Martin Pezlar were captured in Greece and charged with allegations of spying (!!!).
separator

Everyone who knows them, must regard this accusation as an exaggeration at the best case and as someones insolence at worst. They are enthusiastic game developers and the idea of them being a spies is simply too ridiculous!

Although I could write the whole story here, some other people already did it, so I’ll just put the links. But I want to say beforehand, that this is very likely an extraordinary case of REVENGE (some Greek people hate one of their islands to be used as an rough basis for fictional war in our game) and probably also ABUSE OF POWER (they didn’t do anything else than what almost all visitors do – took some pictures in public areas).

Read it out and make the picture for yourself:

separator

HELPIVANMARTIN.ORG – most of the information
Bohemia Interactive Studio Official Statement
Dean “Rocket” Hall’s blog post with some good TIPS HOW TO HELP…
Facebook page

separator

I must just say, that I personally will probably reconsider any trip to Greece in the future. What if some pissed chieftain will get the brilliant idea to put me in the prison just because I made some piece of graphic work for a game he hate…?

Alternative Music Video for “I Move On” song (Sintel’s Song)

Posted in Blender related with tags , , , , , , , on October 28, 2010 by 4museman

On October 20th, 2010 the “Durian” team of the Blender Institute had released the official music video for “I Move On” song (Sintel’s Song) togerter with Jan Morgenstern’s mini-album of the Sintel film score.

While I watched the video I felt strongly, that the visual material doesn’t correspond much with the music oftentimes. So I went to criticise it on BlenderNation and I decided right away to try to put together my own version. I wanted to prove to myself, that I can really do some better fitting version if I can criticise in the first place.

So finally I did my own version (although lighter in resolution):

The music in this version is published with kind permission from Jan Morgenstern. Here you can check it on VIMEO in slightly better quality.

And here is the original version of the music video for comparison:

The overall feedback from the Blender community was none. But I guess it’s mainly because I put my comments just into two news threads, which usually become almost unread the other day from posting and not many people read all the comments anyway. Furthermore there was no other criticism except for mine (to my big surprise), all the other people just applauded, so maybe I’m really too picky. So I decided just to put the subject matter here on my blog for record, as I don’t wanna be too annoying to the community I like.

separator

About Software Used

I decided to do all the editing work in Blender, so I compiled a build of newest Blender 2.54.0 from a freshly updated SVN, but I was disappointed by its poor performance on my laptop. I really don’t know why, while I have read some notes about considerable speeding up of the sequencer in 2.5 (e.g. “Improved sequencer core: it’s faster and needs less memory“).

I also realised soon that a “Frame Blending” feature of “Speed Control” effect strip had disappeared from new version. So I stuck with my old Blender 2.49.2 build, which proved to be fine.

For final encoding job I used VirtualDub software.

separator

About The Procedure

First off I created a TGA sequence of the whole movie, then I organized all shots into a separated folders for better lucidity. Then I started to arrange shots into a sequencer. Finally I have found that task particularly interesting and enjoyable, so I ended up with my almost finished version at 7 o’clock AM Friday morning (OMG!).

Bake Texture To Vertex Color

Posted in Blender Python Scripts with tags , , , on July 9, 2009 by 4museman

Description

This script can bake UV texture into vertex color layer.
separator

Download

Download the ZIP file “texture_to_vcol.zip“.
separator

Installation

Unpack content of ZIP file to your Blender script folder (under Windows typically something like: “C:\Program Files\Blender Foundation\Blender\.blender\scripts\”) or to the user defined path specified in your Blender in User Preferences under bookmark File Paths in the text input field titled “Python:“. Run (or restart) your Blender and you’ll find the script in the Vertex Paint Scripts menu: “Paint –> Bake Texture to VColor“.

Note: It is possible to install scripts while Blender is running without the need of its restarting by extracting script files to one of the above mentioned locations and then pressing the Re-evaluation button, which you can find in user preferences under bookmark File Paths at the end of path input field labeled “Python:“. That will cause reloading of all available scripts into menus within whole Blender.
"Bake Texture To Vertex Color" in menu.
separator

Usage

Just make sure you have a texture attached to all faces in object you want to bake, enter the Vertex Paint mode (VKEY) and from Paint menu select “Bake Texture to VColor…“. And it should be done. (If not, mail me what went wrong.)
mesh of the initial model
bitmap mapped to the UV layer
colors baked from the bitmap to the Vetrex Color
separator

LOG

(+ = added, = changed, = removed)

2007-10-21 - version 0.1
+ basic functionality - The script simply works. However I don't claim that it's completely foolproof.

separator

ToDo

maybe to make it a little more secure
adding/multiplying colors (?)

Reshaper

Posted in Blender Python Scripts with tags , , , on July 9, 2009 by 4museman

Description

It projects all vertices of one object onto the surface of the other object. It currently works only in Global Z axis (altitudinal axis), what is just enough to make a retopology of a terrain, which was the original purpose of the script.

A small clarification

The functionality of the script itself consisting in projection of vertices of one object onto the surface of the second object according to the given direction. Blender’s own functionality of this kind normally provides a tool called “Retopo“, which has such a little drawback, that it obviously works only in screen-space resolution of the actual viewport (using data from z-buffer) so that some kind of rounding on position values happen all the time during editing, and it can lead to the massive alternations on axis, that we didn’t want to move. So, this effect become much more stronger when we shrink the object in our viewport, which can happen very easily for instance during making of vaster terrains. Then can happen for example even that, that the position numbers of many vertices in more detailed parts of the model are rounded so much, that the function “Remove Doubles” can eliminate them, because they are in fact in almost the same coordinates.

The script Reshaper, on the other hand, strictly preserve the layout of the original geometry, and in the case of projection in one axis only it really changes just one value in the position vectors of the vertices. Well, this tool is not interactive (in contrast to Retopo), but it doesn’t distort any of your new cool model the wrong way. (It cost me one whole terrain, of course :(, before I’ve found that trifle with Retopo.)
separator

Download

Download the ZIP file “reshaper.zip“.
separator

Installation

Unpack content of ZIP file to your Blender script folder (under Windows typically something like: “C:\Program Files\Blender Foundation\Blender\.blender\scripts\”) or to the user defined path specified in your Blender in User Preferences under bookmark File Paths in the text input field titled “Python:“. Run (or restart) your Blender and you’ll find the new script in menu “Object –> Scripts –> Reshaper“.

Note: It is possible to install scripts while Blender is running without the need of its restarting by extracting script files to one of the above mentioned locations and then pressing the Re-evaluation button, which you can find in user preferences under bookmark File Paths at the end of path input field labeled “Python:“. That will cause reloading of all available scripts into menus within whole Blender.
separator

Usage

First select the object, from which you want to copy the shape (object A in the picture below), then the object on which you want to apply the shape (object B in the picture below – this must be an active object in the scene, i.e. drawn or outlined with lighter color in the viewport).
Reshaper obr-2a
Then run Reshaper – “Object –> Scripts –> Reshaper“.
Reshaper obr-2b
The active object (C in the picture below) ought to change the shape according to the first object in Z axis only (vertical axis). Positions of other axis (X and Y) will remain the same.
Reshaper obr-2c
Reshaper works currently in model’s local coordinates. I assume, that it is more useful, than if it was in global coordinates. But if someone sees it differently, it can be changed easily.

This tool has a potencial to be aninteractive, however more accurate alternative for “Retopo” tool. The functionalities allowing this, are just started in the code, but remained unfinished (see the LOG bellow). If there will be someone with high demand for these functionalities (and not finish them himself), try to let me know. ;)
separator

LOG

(+ = added, = changed, = removed)

2007-11-22 - version 0.1
+ functionality "Rest to ground" - it is activated automatically by two Mesh objects in selection and the change is applied on the active object (last selected)
+ functionality "Retopo" - it is activated automatically by one Mesh object in selection and is applied on itself (because it is the active object in the same time); it takes into account all visible objects in the scene (or just objects in the same layer?) and from the current point of view receive their shape (is projected upon them) - UNFINISHED
+ functionality "Cast to direction" - it is activated automatically by three objects in selection, one Empty and two Meshes, one of them active (last selected); the change is applied on the active object, that changes its shape according to the other Mesh object in the direction of Z axis of the Empty object - UNFINISHED

separator

ToDo

it can happen sometimes, that some of the vertices doesn’t move to the right place; it occurs probably when vertex hit the edge between two faces precisely and thus doesn’t belong neither of them; a small move with a vertex in any of the objects can get you around this problem, however I think I know how to correct it in the script, so maybe some day…
finish off “Retopo” functionality perchance (?)
finish off “Cast to direction” functionality perchance (?)

UV Correction From Active

Posted in Blender Python Scripts with tags , , , on January 22, 2009 by 4museman

Description

This script can copy the UV map from one object to another, while these two objects doesn’t need to be exactly the same. It will copy the UV coordinates of only those parts, that match each other in both models, ignoring the rest. It proceeds per vertex, so it can correct only some vertices within a single face and leave some other as they are.

It can become very handy for correcting UV maps, when reducing polycount of already textured models (e.g. during making of LODs), or other modifications on models with already finished UV mapped textures. The only precondition for use of this functionality is to have the original model with unbroken UV map(s) available.

So, if you need just to reduce a polycount on a single model, make a copy and reduce it. Then use this script to “copy” UVs from the original model.

Note: Unfortunately, Blender is still not capable (2008-09-21) to handle UV maps correctly while eliminating vertices and edges with some tools, so the UVs will remain unedited and broken. These tools are mainly from the menu Merge (except the Collapse function, that takes care of UVs) and the function Edge Loop from the menu Erase. These functions don’t correct UVs while transforming at the time.
separator

Download

Download the ZIP file “object_uv_correction.zip“.
separator

Installation

Unpack content of ZIP file to your Blender script folder (under Windows typically something like: “C:\Program Files\Blender Foundation\Blender\.blender\scripts\”) or to the user defined path specified in your Blender in User Preferences under bookmark File Paths in the text input field titled “Python:“. Run (or restart) your Blender and you’ll find the new script in menu “Object –> Scripts –> UV Correction from Active“.

Note: It is possible to install scripts while Blender is running without the need of its restarting by extracting script files to one of the above mentioned locations and then pressing the Re-evaluation button, which you can find in user preferences under bookmark File Paths at the end of path input field labeled “Python:“. That will cause reloading of all available scripts into menus within whole Blender.
separator

Usage

First create a copy of the model (Shift-D) and reduce the copy. Now we have two models – original with undisturbed UV Map and the copy with damaged UV Map.
original model with UV map
reduced model with broken UV map

Chose the reduced model and then the original (the original have to become the active object – displayed with lighter color) and run the script.

Run the script...

UV maps should be corrected in reduced model.

corrected UV Map in reduced model

In some cases the script goes wrong and mix up the indexes of the face vertices (maybe some error of the Blender Python API). I’ll try to correct this flaw someday, but even with this the script can help oftentimes. It can markedly reduce annoying job on large models.
separator

LOG

(+ = added, = changed, = removed)

2007-12-13 - version 0.1
+ basic functionality

separator

ToDo

correct the cases when the vertices are moved to incorrect positions (wrong vertex indexes)
add the custom tolerance for compared vertices (maybe it could even help to solve the previous problem)