jeudi 24 mai 2012
Taodyne: This blog has moved permanently
This blog has moved permanently
This blog has moved permanently to the main Taodyne web site. One of the primary reasons is that this makes it easier for us to publish multi-lingual blog posts. Join us there to find tutorials, news and more...
dimanche 22 avril 2012
Tao Presentations 1.08 est disponible
Cette nouvelle mouture apporte de nouvelles fonctionnalités :
- Un module "nuage de points" (PointCloud) qui permet d'afficher des ensembles de points. Par exemple, des scans d'objets 3D, des ensembles de particules en physique, des étoiles... La vidéo RadioHead - House of Cards que nous avons postée sur YouTube, inspirée du clip original de RadioHead, utilise ce nouveau module.
- La primitive canvas, qui permet de dessiner dans une texture. Comme frame, mais sans effacement du contenu avant chaque tracé.
- Le module SlideShow3D propose un nouveau mode d'affichage d'images appelé slider.
- L'utilisation des VBOs (Vertex Buffer Objects) sous Linux est maintenant possible. Les performances du module de visualisation d'objets 3D (ObjectLoader) en sont améliorées, en particulier pour les objets complexes (plusieurs centaines de milliers ou millions de sommets).
- L'interface de navigation page par page (Ctrl-G, ou Cmd-G sur Mac) met maintenant en évidence la page courante, et non la première page comme précédemment.
- Le mode de rendu différé (rendu vers fichiers) traite correctement de la transparence de la couleur de fond.
- Les performances du mot-clé with ont été améliorées (par exemple : f with 1..1000).
mercredi 4 avril 2012
In praise of text files and protocols
The deeper story is that human-readable text formats are wonderful: they are easily debugged, they are easily manipulated (with text editors and other tools like awk and sed), and they can be compressed using common compression programs if space is a problem.This deep truth is one key reason we chose an open text format based on a free software programming language for Tao Presentations.
lundi 19 mars 2012
Tao Presentations pour ajouter une nouvelle dimension à vos événements

L’événementiel est un secteur dont l’objectif est de transmettre un message. Que l’événementiel soit votre activité principale ou que vous organisiez des événements pour mettre en valeur vos produits et services, l’événement n’est pas un but en soi. Le but est la rencontre de clients, le lancement d’un produit, la motivation d’une force de vente. Le coeur de l’événement est donc un message. Tao Presentations ajoute la 3D interactive à votre arsenal d’outils de communication.
Faire des logiciels de présentations une véritable arme de communication
Les logiciels de présentations, comme leurs noms l’indique, sont conçus pour présenter un produit, un service, une idée. Contrairement à un film, une présentation est interactive. Le présentateur est maître du rythme de son discours. Certains outils, dont Tao Presentations, permettent au public lui-même d’interagir avec le contenu présenté (votes, réponse à des Quiz, etc.).
Une bonne présentation est souvent au coeur de l’événement. C’est pour cela que le client final fait souvent appel à des sociétés externes pour ciseler le message, choisir des graphismes adaptés et de grande qualité, voire des films ou des animations. Mais, même si plusieurs outils ont tenté de renouveler le genre, faire une présentation qui surprenne et impressionne de nos jours est un vrai défi. Il existe une très forte demande pour des outils permettant de marquer une vrai différence.
Tao Presentations relève ce défi en proposant trois innovations majeures: la 3D (y compris la 3D relief sur les écrans qui le supportent), une interactivité sans pareille et la liberté de créer des visuels et animations sur mesure.

Un problème avec la 3D de nos jours est la création du contenu. D’une part, le contenu 3D coûte encore cher, tant en logiciel qu’en moyens humains; d’autre part, un contenu 3D créé pour un type d’écran n’est pas utilisable sur un autre type.
Taodyne propose un logiciel très abordable, et qui permet au contenu d’être affiché de façon optimale en fonction de l’écran. Ainsi, animations, objets et films 3D s’afficheront en relief sur un écran 3D (avec ou sans lunette selon le type d’écran). Mais sur un écran 2D traditionnel, le même contenu, sans aucune modification, s’affichera correctement en «fausse» 3D. L’investissement réaliser pour tirer parti des écrans 3D sera donc réutilisable pour les écrans traditionnels.
Dès lors, pourquoi ne pas transformer dès aujourd’hui votre présentation d’entreprise ou votre prochaine introduction de produit en grand spectacle 3D ?
Le succès de tout établissement repose sur sa capacité à se différencier de ses concurrents. Tao Presentations permet à votre communication de faire peau neuve, de devenir plus interactive, de tirer parti de ce que les américains appellent le touch less, c’est à dire les interfaces sans contact.
L’entrée d’un hôtel, d’une agence, d’un salon ou encore une salle d’attente sont les premières pièces avec lesquelles le client entre en contact. Il est primordial que cet espace soit utilisé de façon innovante pour faire passer des informations. Une borne interactive 3D sans lunettes permet non seulement un affichage publicitaire attractif, mais aussi de présenter à la clientèle les services offerts ou de leur donner des informations en temps réel.
Avec Tao Presentations, vous avez la possibilité de créer des bornes interactives en 2D ou 3D. Celles-ci peuvent être accessible depuis l’extérieur même si elles sont placées à l’intérieur de votre établissement. Nous proposons par exemple un clavier accessible sans contact à travers une vitrine. Pour les clients qui se trouvent à l’intérieur de votre établissement, nous proposons aussi une souris virtuelle permettant de manipuler des objets simplement en bougeant le bras en l’air, des caméras repérant la position de la main pour déplacer un curseur sur l’écran.
Quoi de mieux pour le client que de parcourir votre offre de façon interactive et attractive ? Visiter les chambres d’un hôtel, consulter un catalogue de produits, configurer un véhicule, choisir une maison, tout cela peut maintenant être fait en 3D comme en 2D, sans contact, et si nécessaire à travers une vitrine. Les écrans 3D sans lunettes type Alioscopy ou Philips apportent une forte valeur ajoutée à vos salles d’attentes, vos halls d’accueil, vos vitrines.
Grâce à nos solutions, vous pouvez attirer vos clients et susciter leur l'intérêt.

Ainsi, une université néerlandaise a découvert qu’une borne interactive en 3D (Article en anglais) permettait d’augmenter les ventes d’un distributeur de boisson de 8,5%, et augmentait de plus de 40% l’attention portée par le public au message publicitaire.
Dans le domaine éducatif, des études ont montré que des enfants assistant à une projection en 3D retenaient mieux la leçon. Ainsi, l’amélioration de leurs notes après le cours augmente de 17% chez les étudiants ayant reçu un cours en 2D, contre 8% pour ceux ayant reçu le cours en 2D, et 85% des enfants voient leur score augmenter, contre 52% pour ceux ayant suivi le cours en 2D.
La 3D devient donc un élément incontournable de la communication, quel que soit le produit ou le service. Elle apporte une visibilité maximale auprès des partenaires et des clients pour se distinguer au mieux des concurrents.

Il existe par exemple différentes technologies de rendu 3D :
- La «fausse» 3D permet d’afficher des contenus 3D sur un écran 2D. La majorité des jeux vidéo aujourd’hui utilisent ce type de 3D. Tao Presentations affiche en fausse 3D sur les écrans 2D. Même ce rendu sans vrai relief reste très impressionnant par rapport aux outils de présentation habituels.
- La 3D stéréoscopique nécessite un écran 3D et des lunettes adaptées. Il existe deux grandes catégories d’affichage appelées active et passive. Selon le type d’événement, une technologie conviendra mieux qu’une autre. Taodyne peut vous conseiller dans ce choix.
- Enfin, la 3D sans lunettes, ou auto-stéréoscopique, exige des écrans spéciaux, qui ressemblent extérieurement à des téléviseurs traditionnels mais offrent un affichage en vrai relief. Ces écrans permettent d’afficher par exemple un message en relief dans un hall d’accueil.
De même, il existe de nombreuses solutions permettant de créer des bornes interactives innovantes: claviers, souris, solutions sans fil, solutions sans contact, etc. Chacune de ces technologies correspond à un type d’usage particulier.
- Un clavier sans contact offre une nouvelle approche pour interagir avec la présentation ou l’écran. Il accompagne idéalement un écran 3D sans lunettes, permettant aux clients d’interagir avec l’écran tout en restant à la distance idéale pour la perception du relief. Il permet par exemple la sélection rapide de choix dans un menu, simulant les touches de flèche d’un ordinateur.
- Une souris virtuelle permet une manipulation fine d’objets avec la main. Cette solution est idéale pour faire tourner un objet sous tous les angles, le manipuler, faire défiler des photos ou des films, et toute opération qui peut tirer parti d’un mouvement continu.
Taodyne propose un service d’intégration d’écrans 3D sans lunettes et de supports tactiles. Nous pouvons vous fournir un devis personnalisé et gratuit pour vos projets et aménagements.
Information
Taodyne peut vous conseiller et vous fournir le matériel nécessaire pour accompagner votre logiciel Tao Presentations et ainsi en tirer le meilleur de vos messages. Tao Presentations est compatible aussi bien avec des téléviseurs 3D du commerce qu’avec des écrans auto-stéréoscopiques destinés à l’affichage dynamique. Le même contenu peut aussi bien être projeté dans une salle de réunion en qualité cinéma sur un écran de 20 mètres.

jeudi 8 mars 2012
Taodyne à Heavent Meetings Sud les 21 et 22 mars

Save the date!
Après 3 ans d'absence, Heavent Meetings Sud signe son grand retour à Cannes en 2012. Cette année, Taodyne rejoint ce grand rendez-vous à ne manquer sous aucun prétexte. Deux journées dédiée à la communication, à l'événementiel et à l'interactivité. Taodyne vous fera découvrir comment mettre Tao Presentations au service de la communication en 3D, en vrai relief, avec ou sans lunettes.
jeudi 1 mars 2012
Tao Presentations 1.05 est disponible
- Le menu Affichage contient maintenant une option Mire d'identification stéréoscopique, qui permet de vérifier le fonctionnement correct d'une configuration 3D. Lorsque cette option est activée, le logiciel affiche des images qui permettent d'identifier les vues stéréoscopiques, et ainsi de vérifier que chaque œil "voit" bien la bonne image. C'est indispensable pour assurer un effet 3D correct.
Ainsi, lorsque Tao Presentations est connecté à un téléviseur 3D correctement configuré, on voit les images suivantes :Œil gauche Œil droit - Le module VLC Audio Vidéo propose une nouvelle commande vlc_init qui permet de passer diverses options de configuration à VLC. En particulier, il est possible de préciser un proxy HTTP pour accéder à des vidéos là ou une connection ouverte à internet n'est pas possible (cf. la documentation technique du module).
- La version Windows de Tao Presentations pouvait afficher une erreur lors du téléchargement d'un module. Ce problème est corrigé.
- La version Linux (Ubuntu/Debian) pouvait ne pas afficher certaines vidéos si le package vlc n'était pas installé. Cette dépendance est maintenant prise en compte.
samedi 25 février 2012
La terre et ses rayons
Afficher le fond
Le fond est simplement constitué d’une photo de la galaxie Andromède. Les utilisateurs de Macintosh pourront trouver cette image sous/Library/Desktop Pictures/Andromeda Galaxy.jpg
. Les autres pourront utiliser une autre image de ciel étoilé.Comme l'image originale est un peu trop claire, on l’assombrit en la coloriant en gris.
color "gray" image 0, 0, 0.6, 0.6, "Andromeda Galaxy.jpg"
Placer le fond en profondeur
Tao Presentations permet l'affichage en 3D sur les écrans qui le permettent, par exemple un téléviseur 3D. Pour que l’effet 3D puisse être rendu, il nous faut placer l'image de fond en arrière. Nous allons pour cela utiliser une technique décrite précédemment.background -2400, color "gray" image 0, 0, 0.6, 0.6, "Andromeda Galaxy.jpg"Ce code nous permet de faire deux choses très utiles: envoyer l'image en arrière plan avec
translatez
sans faire apparaître de bord noir, et s'assurer qu'il s'adapte automatiquement à la taille de la fenêtre ou de l'écran.Afficher la Terre
La Terre est affichée en léger arrière plan avecbackground -800, ...
pour permettre aux information de venir se mettre devant. La Terre en elle-même est constituée d’une sphère sur laquelle est plaquée une texture représentant la surface du globe.On rajoute une deuxième sphère autour de la première, sur laquelle est plaquée une texture de nuages qui tourne légèrement plus lentement que la Terre. Pour cette deuxième texture, nous utilisons un fichier .PNG qui permet d'avoir de la transparence. Enfin, ajouter une lumière permet de rendre l'ensemble beaucoup plus réaliste.
background -800, light 0 light_position 1000, 1000, 1000 texture_wrap true, true rotatey 3.5 * time texture "earth.bmp" sphere 550 rotatey -0.2 * time texture "clouds.png" sphere 560
Afficher les textes un par un
Chaque «gélule» est sur une page différente pour utiliser le mécanisme pré-câblé de défilement des pages par les flèches haut et bas pour l’affichage progressif.Fond
On va donc créer une fonction «earth_background» qui va gérer l’affichage du fond tel que nous l’avons vu dans les étapes précédentes :earth_background -> locally background -2400, color "gray" image 0, 0, 0.6, 0.6, "Andromeda Galaxy.jpg" background -800, light 0 light_position 1000, 1000, 1000 texture_wrap true, true rotatey 3.5 * time texture "earth.bmp" sphere 550 rotatey -0.2 * time texture "clouds.png" sphere 560
Gélule de texte
Ce qui est identique dans chaque gélule, c’est sa taille et sa «position» à la rotation près. Ce qui diffère entre les gélule, c’est la couleur, la rotation et le texte. On va donc créer une fonction qui dessine une gélule et qui prend le texte en paramètre, la rotation et la couleur seront donnés avant l’appel à la fonction :rrect T:text -> locally translatex 500 translatez -50 rounded_rectangle 0, 0, 300, 80, 50 text_box 0, 0, 280, 80, color "white" font "Arial Rounded MT Bold", 40 align 0.5 vertical_align 0.5 text TOn dessine donc un rectangle arrondi, et on y place une boîte de texte centrée horizontalement et verticalement, contenant le texte donné en paramètre.
Puis nous appelons cette fonction après avoir fait la rotation et donné la couleur de la gélule :
locally rotatez 25 * (2-N) color tao_color N rrect tao_ray_text N
Affichage de l’ensemble du texte
Maintenant nous faisons une fonction qui affiche de 1 à 5 rayons suivant un nombre maximum de rayons souhaités :tao_rays Max:integer -> locally translatex 100 scale_contents tao_ray 0, Max tao_ray 1, Max tao_ray 2, Max tao_ray 3, Max tao_ray 4, Max tao_ray N:integer, NbMaxRay:real -> if NbMaxRay > N then locally rotatez 25 * (2-N) color tao_color N rrect tao_ray_text N
Affichage des pages
Et enfin nous définissons les pages qui affichent les rayons :page "Spinning Earth in 3D", earth_background page "Spinning Earth + Dynamic", earth_background tao_rays 1 page "Spinning Earth + Interactive", earth_background tao_rays 2 page "Spinning Earth + Simple", earth_background tao_rays 3 page "Spinning Earth + Extensible", earth_background tao_rays 4 page "Spinning Earth + 3D", earth_background tao_rays 5
vendredi 24 février 2012
Afficher une image en fond en 3D
Tao Presentations permet l'affichage en 3D. Cela veut dire qu'on peut l'utiliser sur des télévisions 3D ou des projecteurs 3D et avoir un réel effet de profondeur.
Pour donner une bonne impression de profondeur, il est important d'utiliser une image ou un film en fond qui va donner à l'oeil une perspective. Idéalement, ce fond doit couvrir correctement l'ensemble de l'écran.
Dans ce tutoriel, nous allons voir comment envoyer une image en fond d'écran qui s'adapte automatiquement à la taille de l'écran
Afficher une image
Pour afficher une image, on utilise tout simplement la fonction image de Tao Presentations. Par exemple, pour créer un simple fond d'écran utilisant le fichier Andromeda Galaxy.jpg
, il suffit d'utiliser le script suivant:
color "white" image 0, 0, 100%, 100%, "Andromeda Galaxy.jpg"
Envoyer cette image vers le fond
Sauf instructions particulière de notre part, notre image s'affiche directement sur le plan de l'écran. Si nous voulons l'envoyer en arrière plan, nous pouvons utiliser la fonction translate qui nous permet de l'envoyer par exemple "4000 pixels en arrière":
translate 0, 0, -4000 image 0, 0, 100%, 100%, "Andromeda Galaxy.jpg"
Redimensionner le fond
Le fond est maintenant entouré d'un bord noir disgracieux. On peut corriger cela assez facilement en utilisant la fonction scale pour redimensionner l'image. Par exemple:
translate 0, 0, -4000 scale 150%, 250%, 100% image 0, 0, 100%, 100%, "Andromeda Galaxy.jpg"
Redimensionner intelligemment
Le facteur d'échelle à appliquer dépend de la taille de la fenêtre. C'est là que le fait de disposer dans Tao Presentations d'un véritable langage de programmation va se révéler très utile. Nous allons pouvoir calculer correctement le facteur d'échelle à appliquer en utilisant le code suivant:
scale_background -> scale3 background_scale background_scale -> max(window_width/slide_width, window_height/slide_height) scale3 S:real -> scale S, S, S slide_width -> 1024 slide_height -> 768Ce code ajoute un nouveau mot à notre vocabulaire:
scale_background
, qui applique un facteur d'échelle applicable à un fond d'écran, qui garantit que l'image choisie couvrira toujours la totalité de la fenêtre, a supposer que l'image d'origine fasse 1024x768 comme indiqué par slide_width
et slide_height
.
On peut créer une autre variante sur le même principe, mais destinée à du contenu qui lui doit toujours être affiché en intégralité:
contents_scale -> min(window_width/slide_width, window_height/slide_height) scale_contents -> scale3 contents_scale
On peut maintenant créer des présentations dans lesquelles le fond et le texte s'adaptent de façon différente à un changement de dimensions de la fenêtre: le fond occupe tout l'espace quitte à être "découpé", tandis que le texte s'adapte pour tenir en entier dans la page.
Redimensionner un fond
Il nous reste encore à calculer automatiquement le facteur d'échelle à appliquer à un fond. Celui-ci dépend de la position de la caméra.
ztrans_contents Z:real -> Z0 -> 6000.0 Z0 := camera_position at 3 translatez Z/contents_scale scale3 (Z0-Z)/Z0 ztrans_background Z:real -> Z0 -> 6000.0 Z0 := camera_position at 3 translatez Z/background_scale scale3 (Z0-Z)/Z0Ce code ajoute deux nouveaux mots à notre vocabulaire:
ztrans_background
pour reculer un fond et ajuster sa taille automatiquement, et ztrans_contents
pour faire la même opération avec un contenu comme un texte ou une image.
Rendre tout cela facile à utiliser.
La dernière étape est de rendre tout cela facile à utiliser. Nous allons créer le mot background
pour placer n'importe quel type de contenu en fond.
background Depth:real, Body -> locally scale_background ztrans_background Depth color "white" BodyNous utilisons ici une possibilité très intéressante du langage XL, celle de passer facilement un "bout de code" en argument. L'utilisation de
background
pour afficher notre image de fond devient très simple:
background -4000, image 0, 0, 100%, 100%, "Andromeda Galaxy.jpg"
Lecteur multimédia dans Tao Presentations
Ainsi, je me suis laissé tenter par la création d'un lecteur multimédia uniquement dans Tao Presentations en utilisant le module VLCAudioVideo pour faciliter la gestion de la lecture et le résultat est finalement très intéressant :
- Prise en charge de la majorité des formats multimédia
- Lecture d'un fichier unique, d'une liste ou d'un dossier complet ainsi que des URLs (notamment Youtube)
- Utilisation facile par l'intermédiaire de contrôles simples
http://www.taodyne.com/shop/fr/exemples-de-documents/97-lecteur-multimedia.html
Pour voir ce résultat, vous devez avoir installé une version de Tao Presentations (une version d'essai est disponible ici) ainsi que le module VLCAudioVideo à jour (disponible ici).
dimanche 19 février 2012
Profondeur de champ
C’est ce phénomène stéréoscopique qui est principalement mis en œuvre dans le cadre du cinéma ou de la télévision en 3D tels que nous les connaissons aujourd’hui. Grâce à ses module d’affichage, Tao Presentations permet de tirer pleinement parti de tels systèmes.
D’autres caractéristiques de l’image participent à l’effet de profondeur :
- La projection de la scène 3D en deux dimensions introduit un effet de perspective, qui fait converger les lignes parallèles à l’infini. Cette convergence est un indice fort permettant à l’œil d’estimer la distance, et donc la profondeur 3D.
- De cette perspective découlent d’autres indices visuels plus ou moins forts : impression de profondeur due aux objets en mouvement, taille relative de deux objets identiques mais positionnés à une distance différente de l’observateur, disparition des détails dans le lointain...
Il y a quelques jours, je suis tombé sur un article (en anglais) qui propose une technique pour simuler cette profondeur de champ en OpenGL. En quelques mots, on génère deux textures :
- La première représentent l’image 2D de la scène 3D,
- La deuxième est la carte de profondeur (depth map en anglais) qui correspond à cette image. Cette carte est une représentation, en niveaux de gris, de la distance qui sépare l’œil de l’observateur du point observé.
La commande frame_texture_with_depth de Tao Presentations permet d’obtenir facilement les deux textures requises. Voici un exemple qui représente deux boules de billard, la bleue se trouvant plus éloignée de l’observateur que la jaune :
À partir de ces textures, il est possible d’intégrer une version simplifiée du shader écrit par martinsh pour obtenir l'effet de flou désiré. J’ai choisi de le faire sous la forme d’un module Tao afin de faciliter l’utilisation de l’effet. Ce module s’appelle sans surprise “Profondeur de champ” (Depth of field en anglais). Vous pouvez le télécharger et le tester dès maintenant (il est compatible avec Tao Presentations 1.03) ou bien attendre la prochaine version de Tao pour l’obtenir. Le module définit une fonction dof_frame_texture qui s'utilise comme frame_texture tout en permettant de bénéficier de l'effet de profondeur de champ. La mise au point s'ajuste grâce à quelques variables.
Voici le résultat lorsqu’on fait la mise au point sur la boule jaune :
Références : Depth perception (wikipedia), DoF with bokeh GLSL shader v2.4 (Martins Upitis).