Mac4Pro : AntZéro, des programmeurs pas manchots !
Par Arnaud Morel - Publié le
Encore faut-il savoir en tirer tout le profit potentiel, ce qu'Antzéro sait visiblement très bien faire. Voilà une équipe de programmeurs Suisses qui n'a pas froid au code !
Une entreprise toute neuve
Bonjour Yves Schmid Dornbierer. Pouvez-vous nous présenter AntZéro ?
Mathias et moi avons travaillé ensemble, au sein de garagecube, société Suisse qui édite le logiciel Modul8. Mais nous avons eu envie de tenter notre propre aventure et nous avons quitté ce projet pour lancer une nouvelle société, AntZéro, installée à Genève en Suisse. Actuellement, nous sommes 4 personnes dans l'entreprise.
Votre premier logiciel, Atomic View, se positionne sur un créneau où la concurrence est rude. Pourquoi un tel choix ?
Atomic View est la première brique d'un projet plus global : nous travaillons sur une suite de logiciels événementiels, fonctionnant en temps réel, et permettant le compositing vidéo. Atomic View est notre point de départ : nous avions besoin d'un très bon catalogueur.
De bons catalogueurs existent, c'est vrai, le secteur est très concurrentiel. Mais ils sont souvent un peu lent. Sans parler de la vidéo qui n'est pas très bien intégrée.
Une volonté de créer des logiciels à part
Ce qui frappe, d'abord, quand on lance ce logiciel, c'est l'interface graphique, très particulière. D'où vient ce choix ?
C'est vrai que le monde Mac est très habitué à des interfaces normalisées et que celle d'Atomic View peut surprendre, voire déplaire. C'est un choix assumé, tant pour optimiser les performances que pour déployer nos propres idées. Mais nous sommes bien conscients que ce choix ne fera pas l'unanimité.
Vitesse avec un grand V
Le second élément frappant, c'est la vitesse de traitement du logiciel, tout bonnement incroyable. Il ne faut que quelques secondes pour importer un vaste catalogue d'images ou de vidéo, c'est bluffant. Quel sont les secrets derrière un tel niveau de performance ?
Nous sommes très attentifs à l'optimisation. Le logiciel a été écrit en C++, avec un soupçon d'Objective C. Ensuite, vous parliez de l'interface, celle-ci est entière dessinée et rendue en utilisant la puissance de calcul de la carte graphique (GPU). Ça soulage les processeurs de ce travail. Ensuite, nous tirons partie des possibilités de calculs parallèles offertes par l'architecture multi-cœurs que l'on trouve maintenant sur toutes les machines Apple. Le résultat c'est que le logiciel est rapide à l'affichage et au traitement des données, et qu'il ne se bloque pas, ou très peu souvent, contrairement à certains de nos concurrents.
Une question plus techniques : utilisez vous les APIs Apple dans votre logiciel ou avez-vous développé vos propres routines ?
Les deux ! D'apple, nous utilisons l'implémentation d'OpenGL, qui est utilisé pour les affichages et le rendu. Nous utilisons l'environnement de développement Cocoa, plutôt que Carbon, technologie aujourd'hui un peu dépassée. Cocoa est une excellente plateforme, qui offre une réelle maturité et un grand confort de programmation. Nous utilisons, enfin, les routines d'OS X notamment pour ce qui est de la gestion du multi threading. Là aussi, c'est très performant.
Mais, c'est vrai également, nous avons développé nos propres routines de code, et ça concerne pas mal de pans du logiciel, toujours dans une optique d'optimisation.
OpenGL, et si il était vraiment performant ?
Intéressant ce que vous dites sur OpenGL. On entend souvent dire que son implémentation n'est pas optimale dans OS X et qu'il est pour beaucoup dans le manque de performance des jeux sur Mac, notamment comparés à ceux utilisant DirectX sur Windows.
OpenGL nous donne entière satisfaction, notamment grâce à sa très bonne intégration dans le système Mac Os X. Faire une interface graphique entièrement en OpenGL est très simple sur Mac et bien plus compliqué sur Windows. Croyez moi, nous avons travaillé la question !
Après, la problématique pour les concepteurs de jeux est un peu différente. L'intégration au système et la simplicité d'emploi ne les concernent pas tellement. Eux, ils veulent être capables de bouger des milliers de polygones et les images par seconde.
Et justement, avez-vous en projet une version Windows d'Atomic View qui n'est aujourd'hui disponible que sur Mac ?
Oui, une version Windows est en chantier. Elle devait sortir assez vite mais je ne peux pas vous donner de calendrier. Nous sommes encore en discussion au sein de l'équipe sur certains points de cette version. Il est très possible que nous sortions d'abord des mise à jour pour la version Mac avant la sortie d'une version Windows
Que voulez-vous rajouter en priorité sur Atomic View ?
Nous allons rajouter des formats de fichiers. Le logiciel en reconnaît déjà beaucoup, notamment en photo et vidéo. Atomic view est d'abord orienté photo et vidéo. Mais il peut intéresser d'autres secteurs, comme le monde de la PAO. Et là, on a encore du travail pour tout ce qui est monde de l'impression, la gestion du format EPS, par exemple. Le logiciel tout jeune. nous avons encore du travail. Ce logiciel touche à tellement de formats que c'est un petit casse tête permanent.
Des histoires de gros sous
Une petite question sur le positionnement tarifaire, le logiciel coûte 95 € hors promotion. Ça le positionne pour le marché professionnel plus que pour les particulier, non ? Et pourquoi une procédure d'autorisation en ligne et une connexion à votre site web à chaque lancement ?
Nous vison le marché professionnel, ou,plus précisément un espace qui pour nous se situe entre le super amateur et serveur d'entreprise. Atomic View vise ces structures intermédiaires. Le prix de vente a été délicat à fixer. Nous avons étudié le marché, et le prix nous semble correct. Mais on peut l'ajuster dans le futur. À l'export, notamment, c'est plus dur avec le cours de l'euro tellement élevé par rapport au dollar.
Concernant la connexion au lancement, elle s'opère pour vérifier la présence de mise à jour. Mais nous avons compris que ça pouvait être problématique pour certains utilisateurs qu'elle s'opère sans leur demander leur avis. Nous allons peut-être intégrer une option à activer ou désactiver dans les préférence