Tutoriels Carrara

Carrara 2.0 sur Linux
Carrara 2.0 on Linux

Objectif et résumé / Objective and summary

Tester Carrara 2.0 sur Linux avec Wine.
Il n'existe pas (à ce jour) de version Linux de Carrara. Rien ne semble indiquer qu'Eovia envisage de porter son logiciel sur cet OS prometteur. ceci ne signifie pas pour autant qu'il soit impossible d'utiliser Carrara. Nous somme même parvenu à produire une scène complète, et à en exporter le rendu (et à récupérer la scène sur Windows), sur Linux en utilisant exclusivement la bibliothèque Wine. Toutefois, un choix de programmation trivial datant de l'époque de Metacrations constitue un grain de sable stupide empêchant de décerner à Carrara 2.0 une compatibilité parfaite avec Linux. La solution est tellement simple que nous prenons la liberté d'encourager Eovia à publier une version Linux-compatible de Carrara 2.0.

Testing Carrara 2.0 on Linux with Wine.
There is no Linux version of Carrara yet. There is no indication that Eovia is willing to publish one soon. This does not mean that it is impossible to run Carrara on Linux. To the contraray, we were able to run Carrara on Linux, to produce a scene, to render it, to export the rendered image, and to reuse the scene produced on Linux on Windows, using exclusively the Wine librairies. However, a really trivial programming decision dating from Metacreations era prevents a 100 % compatibility with Linux. The cure is so easy that we take the liberty to urge Eovia to issue a fully compatible version of Carrara 2.0 for Linux.

A : Méthodologie / Methodology

Linux a acquis une telle qualité et une telle stabilité que ses programmateurs ont non seulement entrepris d'en faire un OS de qualité supérieure à ses concurrents, mais se sont payés le culot d'émuler les bibliothèques (dlls) de Windows, permettant de faire tourner depuis Linux des applications développées pour Windows.

L'ensemble de bibliothèques Wine est le projet de plus avancé dans ce sens.

Wine permet de faire fonctionner les logiciels Linux de deux manières :
- en émulation totale, c'est-à-dire sans aucun recours aux dll natives de Windows;
- en mode mixte, c'est-à-dire en s'appuyant sur les dll de Windows installé sur une partition de disque dur accessible depuis Linux.

Le mode en émulation totale ne requiert pas l'installation de l'OS Windows. Il n'est donc pas nécessaire d'acheter une licence WIndows. Toutefois, bien que la situation s'améliore de jours en jours, l'émulation des bibliothèques Windows n'est pas enore parfaite et le taux d'échec (applications Windows impossible à utiliser sous ce mode) est plus élevé qu'en mode mixte.

Le mode mixte requiert de l'utilisateur une version installée de Windows, donc d'avoir acheté une licence de cet OS. C'est donc une solution très imparfaite dont le seul avantage pour l'utilisateur Linux est de ne pas avoir à changer d'OS pour utiliser ses différents logiciels selon l'OS pour lequel ils ont été conçus.

Bien que les deux modes aient leurs avantages, seul le mode en éumlation totale est véritablement satisfaisant d'un point de vue intellectuel. C'est également le mode le plus risqué. Si une application fonctionne en mode émulation totale, il est quasiment certain qu'elle fonctionnera en mode mixte, tandis que la réciproque n'est pas vraie (qui peut le plus peut le moins). Nous avons donc pris le problème à bras le corps et testé le mode en émulation totale.

Dans ce test, nous avons utilisé Aurox 9.2, une version d'origine polonaise de Linux basée sur ReadHat 9 (kernel 2.4.20-20.9), ainsi que Wine 2003-10-16.

Linux is so powerfull and stable that its programmers jumped in the task of emulating Windows from inside Linux in order to allow software developed on WIndows to run on Linux.

The most advanced Linux project on this matter is Wine.

Wine has two methods to allow software written for Windows to run.
- through total emulation: that is, without recourse to Windows libraries (.dll).
- through a mixed mode: that is, using the .dll files of the Windows OS installed on a hard drive partition accessible from Linux.

The total emulation mode doesn't require an installed Windows OS. Thus, there is no need to buy a Microsoft Windows license. However, while the situation improves daily, the Windows dll emulations are not perfect yet. Thus, the failure rate (software failing to run on Linux) is higher that using the mixte mode.

The mixed mode requires an installed version of the Windows OS, thus requiring one to buy a Microsoft Windows License. Thus it is a very imperfect solution. The only advantage (apart from a currently lower failure rate) is to avoid the need for the user to reboot to the other OS in order to use a software that is not running on the current OS.

While both modes have pros and cons, only the total emulation mode is pleasing intellectualy. Also, it is the most difficult of both : if a program runs correctly in emulation mode, then there is a very good chance it will run in mixed mode, while the opposite is not true ("What can do more can do less"). Thus we are led to choose the more difficult solution, the total emulation mode.

In this test we used Aurox 9.2, a polish version of Linux based on RedHat 9 (kernel 2.4.20-20.9), and Wine 2003-10-16.

B : Installation / Installation

Une fois que le CD-ROM d'installation est monté (une procédure typiquement linuxiène, inconnue des utilisateurs de Windows), il est en théorie possible d'installer un programme Windows sur Linux par l'intermédiaire de Wine en utilisant le programme Setup.exe du CD-ROM. Toutefois, lors de nos tests, cette installation (en utilisant Carrara 3.0) a échouée. Nous ne prétendons pas avoir fait le tour de la question car des options de lignes de commandes permettent d'affiner le mode émulation de Wine mais nous ne les avons pas utilisées. Rendre le setup de Carrara compatible avec Wine est en effet une tâche relativement aisée pour Eovia si la compagnie le souhaite. 

Notre objectif étant essentiellement de tester le fonctionnement de Carrara sur Linux, et non pas son installation, nous avons court-circuité le problème en copiant-collant dans Linux le dossier (et les sous-dossiers) complet d'une version de Carrara 2.0 installée ur un système WIndows 2000.

Once a CD-ROM drive is mounted (a typicaly linuxian process), it is theoriticaly possible to install a Windows software using its ordinary Setup.exe file. However, during our tests, it failed (using the Carrara 3.0 CD-ROM). It may have been possible to succeed by fine-tuning the Wine emulation mode, which we did not try. Correcting the Carrara set-up to make it compatible with Linux is an easy task for Eovia should the company do it.

The objective of our test being to evaluate how well Carrara works with Linux, not how easy it is to install, we shunted this step by copying-pasting in Linux the whole directory of a pre-installed Carrara 2.0 from another Windows 2000 working station.

C : Resultats / Results

Nous lançons Carrara 2.0 tout simplement en utilisant la ligne de commande Linux suivante :
wine "c:\program files\Carrara 2.0\ carrara.exe".

A partir de ce moment tout se passe à merveille, à l'exception d'un point non négligeable sur lequel nous reviendrons dans le chapitre suivant. Nous parvenons à reconfigurer l'espace de travail en déplaçant les différents fenêtres, à créer une scène, à y déposer un objet spline, à modifier les points de Bézier, à créer une texture, à rendre l'image sur le disque dur au format bmp, à enregistrer la scène au format car et à la ré-ouvrir, pour test, sur la versiond e Carrara installée sur le poste Windows 2000. 

On remarque tout de même une certaine lenteur, mais on ne s'en étonne pas : il faut avoir à l'esprit que Wine émule Windows. Par conséquence, les commandes émanant de Carrara doivent être ré-interprétées par les bibliothèques de Wine en commandes Linux, ce qui ajoute une couche logiciel non-négligeable.

Les copies d'écran suivantes rendent compte de nos tests (voir en fin de ce paragraphe)

Le fichier Carrara produit sur Linux peut être téléchargé ici : Doc3.car

We start Carrara 2.0 using the Linux command line :
wine "c:\program files\Carrara 2.0\ carrara.exe".

From that point onward, everthing goes fine except a point we will see in the next chapter. We were able to move the Carrara windows in order to improve the working space, we created a scene, we dropped in a spline, we changed it by modifying Bezier points, we created and applied a shader, we transformed from spline to vertex, we rendered the scene in a bmp file on the hard disk, and we saved the scene and exported it with success in the Windows 2000 working station for test.

We can feel slower response times but it is not surprinsing : remember that Wine emulate Windows. Each command sent by Carrara has to be re-interpreted by Wine into Linux commands ; that is one more software layer than when carrara runs on Windows.

The screen-shots below are resulting from our tests.

The Cararra file produced on Linux can be download here : Doc3.car

Image 01 : Fenêtre principale / The main room
Image 02 : Editeur de Splines / Spline editor
Image 03 : Storyboard
Image 04 : Editeur de texture / Texture editor
Image 05 : Objet spline transformé en vertices / Spline object transformed into vertex object
Image 06 : Pas le choix : Impossible de choisir la destination ni le nom des fichiers de sortie. Remarquez en bas l'icone Carrara lorsque l'application est réduite) / No choice : Impossible to choose either the destination or the name of output files (note at bottom Carrara icon when the software is reduced).
Image 07 : Image bitmap rendue (fichier natif non-modifié) / Rendered bmp file (native file unmodified)

Image 08 : Pour s'amuser, test (réussit) de Plant Studio sur Linux)/ For the fun of it, successfull test of Plant Stutio on Linux

D : Bravo ! Alors, qu'est-ce qui ne va pas ? So far so good. What's wrong, then ?

Tout va bien. 
Mais non, il y a quelque chose qui ne va pas. C'est tellement simple, idiot et facile à corriger que cela nous met en colère.

Du temps de Metacreation, les concepteurs de Carrara ont eu l'idée étrange de bidouiller l'interface de Carrara de telle sorte qu'elle ne répond pas aux règle de Windows (pas de bordure, pas de moyen d'en changer la taille, et pas moyen d'accéder à la barre des tâches de Windows). Depuis ce temps, Eovia a maintenu cette interface malgré les protestations des utilisateurs et malgré les inconvénients manifestes qu'elle provoque indubitablement.

Maintenant, Eovia n'a plus aucune raison de conserver cette interface vaseuse.

Pourquoi ? Parce que cette interface EST LE SEUL PROBLEME empêchant Carrara de fonctionner parfaitement sous Linux !

Explication : L'interface exclusive conçue par metacreation est telle qu'il est impossible, sous Linux-Wine, d'accéder aux autres fenêtres lorsque celle-ci utilisent le standard Windows. Par exemple, les fenêtres "Ouvrir", "Enregistrer", "Enregister sous" de Carrara deviennent invisibles, masquées lorsqu'elles sont appelées. Elles restent fonctionnelles, mais elles sont cachées. Le seul moyen de revenir à Carrara lorsqu'on les appelle, c'est d'utiliser les touches "Entrée" et "Echappement". Il devient dans ces conditions très difficile de choisir le nom que l'on veut donner à son fichier, le format que l'on veut donner à son image, et il est impossible de choisir le fichier que l'on veut ouvrir ! Et voilà comment les fichiers exemples de ce tutoriel s'appellent tous Docx.car et DocX.bmp : impossble de faire autre chose q'accepeter les noms par defaut de Carrara. Toutefois, c'est bien à l'ouverture que le problème est le plus grave. On peut encore accepter des noms abscons à l'enregistrement, mais l'impossibilité d'ouvrir un fichier est, disons, grave ...

Everything is fine.
But no, something is wrong. It is so simple, stupid and easy to correct that it distresses us.

From the Metacreation area, Carrara as kept an interface that is not Windows-standard-compatible : there is no window border, no way to resize the window, and no access to the Windows task bar. Dispite user protests and obviously productivity problems generated by this interface, Eovia has kept it so far.

Now, Eovia has no more excuses to use this crazy interface.

For this interface is THE ONLY PROBLEM preventing a perfect compatibility of Carrara with Linux !

Explanation : The exclusivity over the desktop claimed by this interface is such that it is impossible, on Linux-Wine, to see other windows when they are windows-standard respectfull. For exemple, "Open", "Save", "Save As" pop-up windwos stay masked even if they are still fully functionnal. The only way to return to Carrara once you used "Open", "Save", or "Save As" is to blindly hit "Enter" or "Escape" keys. Under such conditions, it is difficult to choose anything else than the default file names and formats offered by Carrara. And this is why the files from this test are called Doc3.car ! But the worst is that is is impossible to choose a file to open, thus the "Open" command does not work. This is obvioulsy the worst problem

E : Un appel à Eovia / A call to Eovia

Eovia, vos utilisateurs supportent avec résignation depuis une demi-decennie une interface curieuse pour ne pas dire désagréable. Nous osons espérer que vous voudrez bien nous en débarrasser prochainement, maintenant que vous savez que cette interface est apparement le seul obstacle à la conquête du marché Linux ...

Et que triomphe Carrara à travers le vaste univers des OS !

Eovia, your users have been struggling for half a decade with a curious interface, not to say a bothersome one. We hope that you will be so kind to get rid of it as soon as possible, now that you know that this interface is apparently the only obstacle to the conquest of the Linux market...

And let Carrara triumph through the infinite universe of OS-es !
And let the pinguin fly !

© Flocons de Pâques, 2004. English courtesy corrected by Harvey White

Easter Flakes • Flocons de Pâques | Nous contacter
© Easter Flakes - 2007. Tous droits réservés sur toutes images, textes et codes. Valid XHTML 1.0 Transitional