Return to site

How To Update Blender

broken image


  • In this video tutorial, I will show you how to install Blender 3D 2.8 Beta on Windows 10. Blender 3D is an amazing application which can be used for both per.
  • There is no automatic update feature inside Blender that I'm aware of. But getting the latest version is very simple - just go to the download page of Blender.org and download the latest version. Another easy method is to click 'Blender Website' under the 'links' section on the application splash screen.
  • Go to DIM, right click on the daz to blender installed file and show where the files are located and you'll see a zip file. Open Blender, edit, preferences, add ons, install. Drag the zip file into window.
  • This is why I have portable Blender versions dating back to Blender 2.49 sitting in ZIP files on my archive drive. If an update breaks an addon that I'm used in a project I'm working on, I can grab the portable version and carry on working and watch for the author to update the addon for the new version.

The Blender game engine was released in 2000, developed by Erwin Coumans and Gino van den Bergen, part of the Dutch company, Blender Foundation. It was designed to bring a more natural way of developing games and animation to people who otherwise wouldn't have learned how to.

Here is a brief explanation of how translation works and how to update translation files.

All this makes references to the bf-translations svn repository.

Before being able to do anything, you must register on bf-translation project and request to join the team (just open a task for this)!

This page also assumes you know how to use SVN, if not, please read that one.


Manage UI Translations Addon

Most of the maintenance work of translating is achieved through that official addon (found under the System category). Though it is not mandatory for translation-only tasks, it may be useful, and it is also needed for script authors that want to translate their own addons (please note that official addons are already handled by the main translation project).

The various features of this addon will be described in relevant sections below.

I18n addon preferences.
I18n Update Translation panel.

Translating

NOTE
Gettext tools (msgfmt and msgmerge) are mandatory for most of those operations! If you are working with RTL languages (Arabic, Persian, Hebrew…), you'll also need the C library FriBidi for your platform.


Template:Warning/ImportantWhen you work on a translation, please only use the po's under /branches directory. /trunk one is supposed to only contain valid (checked) po's, only the maintainer is supposed to edit those!

How it works

The /branches// folders contain source files for translation system ( being an ISO language code, like es or zh_CN). These source files have .po extension and a pretty simple syntax:

In case msgid or msgstr are too long, they'll be split on several lines, like this:

All this means that when the string 'some message id' is used as operator name, tooltip, menu and so on, it'll be displayed on the screen as 'translation for this message'.

Pretty simple.

These source files are pre-compiled into /trunk/locale//LC_MESSAGES/blender.mo, which are binary files directly usable by the translation system.

How to edit translations - translators

Update

It's also pretty simple. If you can find string you want to translate in /branches//.po file as msgid, just write correct msgstr string for it. If msgid is marked as fuzzy, i.e.

...it means translation used to exist for this message, but message was changed, so translation also have to be updated (it's easier to make new translation based on previous translation).

When translation has been updated, remove line with #, fuzzy and it'll work.

Note: You can use a GUI to ease po files edition, like e.g. Poedit.

How to edit translations from Blender - translators

You can also, to some extent, translate Blender directly from within its interface, using the Manage UI Translations addon.

Once you have enabled it, you must first edit its preferences, so that at least Gettext 'msgfmt' executable and Translation Root paths are set to valid ones (the later is the path to your local checkout of the bf-translation repository).

An example of 'edit translation' pop-up.

Then, simply enable UI translation and select the language you want to work on (note that once a language is selected, it will be the translated one, even when UI translation is disabled), and right-click over any UI item, Edit Translation option will pop-up a box gathering all messages that could be found attached to that button and/or the underlying RNA data.

Once again, do not expect to be able to translate everything with that system, many messages are simply not reachable this way!

Note in the picture to the right that the popup features you several data:

  • The PO file edited with some basic statistics.
  • The RNA path of the property, structure or operator edited.
  • The RNA context used to translate the labels.
  • All labels that could be gathered (usually, RNA one, and optionally button-level overridden one, e.g. here the operator's label is 'Render', but as that button uses it to render animations, it has overridden it with 'Animation').
  • All tips that could be gathered (in most cases, only the RNA one!).

For each of those messages, you have the original one, a text field to edit the translation, and a toggle button to mark it as fuzzy.

Once you have finished your edits, you can simply click on the OK button to validate and close the popup, but beware: your changes won't be saved in the PO file! So regularly, you'll toggle the Save To PO File option, so that your edits get written into the relevant file.

You may also wish to see your edits reflected in the UI ? Just enable the Rebuild MO File toggle to do so. But beware, this will create a new MO in your user Blender-data directory, which will have as side effect that all default, official translations will be no more used by Blender. To revert to default situation, just enable Erase Local MO Files instead.

How to add translations - translators

If you have not yet your languages under /branches, you should request (e.g. on the ML) an administrator to add it.

Meanwhile, you can start to work, following those steps:

  • Copy/paste the trunk/po/blender.pot file into branches//.po new file.
  • Start translating this file!

Do not forget to commit your changes in the svn repo!

When you want to see your work in action in Blender, if your languages has not been added yet to Blender by an administrator, you can edit the file datafiles/locale/languages found into your blender configuration directory, and add in it a line for your language. The format of this file is described in it, just take care to use a (temp!) ID above max one currently in use.

Then, generate and test your mo file, as explained here.

How to update translations - advanced translators

How To Update Blender

It's also pretty simple. If you can find string you want to translate in /branches//.po file as msgid, just write correct msgstr string for it. If msgid is marked as fuzzy, i.e.

...it means translation used to exist for this message, but message was changed, so translation also have to be updated (it's easier to make new translation based on previous translation).

When translation has been updated, remove line with #, fuzzy and it'll work.

Note: You can use a GUI to ease po files edition, like e.g. Poedit.

How to edit translations from Blender - translators

You can also, to some extent, translate Blender directly from within its interface, using the Manage UI Translations addon.

Once you have enabled it, you must first edit its preferences, so that at least Gettext 'msgfmt' executable and Translation Root paths are set to valid ones (the later is the path to your local checkout of the bf-translation repository).

An example of 'edit translation' pop-up.

Then, simply enable UI translation and select the language you want to work on (note that once a language is selected, it will be the translated one, even when UI translation is disabled), and right-click over any UI item, Edit Translation option will pop-up a box gathering all messages that could be found attached to that button and/or the underlying RNA data.

Once again, do not expect to be able to translate everything with that system, many messages are simply not reachable this way!

Note in the picture to the right that the popup features you several data:

  • The PO file edited with some basic statistics.
  • The RNA path of the property, structure or operator edited.
  • The RNA context used to translate the labels.
  • All labels that could be gathered (usually, RNA one, and optionally button-level overridden one, e.g. here the operator's label is 'Render', but as that button uses it to render animations, it has overridden it with 'Animation').
  • All tips that could be gathered (in most cases, only the RNA one!).

For each of those messages, you have the original one, a text field to edit the translation, and a toggle button to mark it as fuzzy.

Once you have finished your edits, you can simply click on the OK button to validate and close the popup, but beware: your changes won't be saved in the PO file! So regularly, you'll toggle the Save To PO File option, so that your edits get written into the relevant file.

You may also wish to see your edits reflected in the UI ? Just enable the Rebuild MO File toggle to do so. But beware, this will create a new MO in your user Blender-data directory, which will have as side effect that all default, official translations will be no more used by Blender. To revert to default situation, just enable Erase Local MO Files instead.

How to add translations - translators

If you have not yet your languages under /branches, you should request (e.g. on the ML) an administrator to add it.

Meanwhile, you can start to work, following those steps:

  • Copy/paste the trunk/po/blender.pot file into branches//.po new file.
  • Start translating this file!

Do not forget to commit your changes in the svn repo!

When you want to see your work in action in Blender, if your languages has not been added yet to Blender by an administrator, you can edit the file datafiles/locale/languages found into your blender configuration directory, and add in it a line for your language. The format of this file is described in it, just take care to use a (temp!) ID above max one currently in use.

Then, generate and test your mo file, as explained here.

How to update translations - advanced translators

All po's under branches/ should be updated something like once a week by an administrator.

However, you can do it yourself for your language, if needed.

To do so, you must have both blender and its sources, have enabled the i18n addon, and valid values for its preferences' Source Root and Translation Root.

Then, in the I18n Update Translation panel (bottom of Render buttons), select the language(s) you want to update, and hit Update Branches.

How to merge translations - translators

Simply use msgcat for now (msgcat -o output_file.po input_file1.po input_file2.po …, see its help for more info).

How to test your translations - translators

To test your translations, simply run, from your /branches// dir:

Then copy the produced blender.mo binary file under your .blender/locale//LC_MESSAGES/ dir.

Note
Some po editors (like poEdit) generate by default a .mo file when saving. In this case, just copy this file into the relevant dir as stated above, and rename it to blender.mo!


About languages needing some po RTL processing

This concerns at least, currently, arabic, persian and hebrew.

The process is now standardized! Please follow those rules:

  • The .po file in branches/must be the raw one (i.e. non-processed).
  • The language must be specified as RTL by adding its uid (ISO code) to the bl_i18n_utils module settings' IMPORT_LANGUAGE_RTL set. This is a dev task, please ask e.g. to i18n maintainer to do so, if needed.

This way, i18n addon's tools will do the conversion automatically (using underlying fribidi library) when needed.

Administrating

These are advanced and/or /trunk-affecting operations, translators should avoid to use them. We assume you have valid blender sources, blender build (should be as much similar to official ones as possible), and bf-translations repository, and that i18n addon is enabled and its settings are valid.

Adding a new language

First of all, edit the release/scripts/modules/bl_i18n_utils/settings.py file, LANGUAGES tuple, to add this new language. Then rebuild/reinstall Blender, the new language should appear in the menus now. Simply update branches/ with the new language selected to generate a new void PO file for it.

Updating all PO's under /branches

In the I18n Update Translation panel (bottom of Render buttons), select all languages, and hit Update Branches (keep Skip POT deselected!).

Note you can restrict the update to a list of languages, simply deselecting unwanted ones.

You should also typically run Clean up Branches to remove existing invalid entries, commented ones, etc.

Updating /trunk

In the I18n Update Translation panel (bottom of Render buttons), select all languages, and hit Update Trunk.

This will:

  • Check all /branches//.po's, and import those valid and translated above 0% (by default, you can specify another threshold within bl_i18n_utils' settings) into /trunk/po.
  • Clean po's under /trunk/po (i.e. remove all commented messages in them), and run some consistency checks.
  • Compile all po's in /trunk/po to /trunk/locale//LC_MESSAGES/blender.mo.
  • Copy and strip to their bare minimal all po's into the git repository directory.

Translating non-official addons

Translation of those addons is primarily handled through a Python dict named translations_dict, a mapping of mappings, with language uids (ISO codes) as higher-level keys, and messages → translations mappings as values. This dict must be registered by a call to bpy.app.translations.register() and unregistered by a call to bpy.app.translations.unregister(), exactly as the addon itself.

Typically, this dict is generated from a tuple named translations_tuple, which is a tuple of tuples ((msgctxt, msgid), (sources, gen_comments), (lang, translation, (is_fuzzy, comments)), ...).

Now, I don't expect much addon author to be happy at the idea of writing and maintaining such code, keep track of changes in the UI messages, etc. So i18n addon is here again to help with these tasks.

In the I18n Update Translation panel (bottom of Render buttons), select the language(s) you want to work on, and choose between the options under the Addons: operators – you will always be ask to select the affected addon through a search box pop-up:

Refresh I18n Data…
Extract the UI messages specific to the selected addon, and update (or create) relevant py code (the translations_tuple tuple).
Export PO…
Export current py code into PO files for the selected languages (and optionally generate a POT file too).
Import PO…
Import all PO's under given directory, and update the selected addon's py code accordingly.

Please note that:

  • If a message is already present in main Blender translation, it won't be added to the addon's ones, so you will have to use a custom context if you absolutely need a custom translation.
  • The tools use some 'markup' to locate the generated code, so you may move that block of code anywhere you like.

See the render_copy_settings addon as an example.

See Also

  • The developer internationalization page.

If you use Blender to create architectural visualization and would like to include some environmental analysis in your workflow, you should take a close look at the incredible VI-Suite. That is an effort from Dr. Ryan Southall at the University of Brighton (United Kingdom). He created the VI-Suite a long time ago and was one of the few solutions to integrate tools such as Radiance and Energy Plus in Blender 2.7x.

The first version of VI-Suite dates back to 2013!

After a long wait, we finally have some great news about a new version that is compatible with Blender 2.8x and possibly 2.9x.

According to a post on the VI-Suite blog, it is close to a final release, with the Add-on currently in a bug fix state. You can get an updated version of the Add-on from this link.

If you plan to take advantage of those tools and give your designs a more efficient energy use, you should take a close look at the VI-Suite. As an alternative, you also have the Lady Bug tools for Blender!

How To Update Blender To 2.79 On Linux

Using Blender for architecture

How To Update Blender 2.83

Do you want to use Blender for architecture or render your projects using Cycles or Eevee? We have three books available that could help you!

How To Update Blender Via Terminal

They cover the use of Blender for producing architectural content and also all information you need to render projects in real-time:

How To Update Blender 2.8

You can get them in both digital and paperback formats. By ordering those books, you will not only improve your skills with Blender for architecture but also support Blender 3D Architect.





broken image