Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#851 Le 17/01/2012, à 21:38

PKNzeta

Re : La Stereo-3D sous Linux

Salut, bon alors j'ai fait mon shadock à essayer tous plein de fois des trucs jusqu'à le faire aller par chance, et il semble que ça a payé, j'ai donné du glXwaitGL() et on dirait que tout est rentré dans l'ordre. j’avoue que je sais pas pourquoi  mais bon, comme je le disais, opengl, j'y connais que dalle. d'ailleurs tu l'as où ta doc magestik? parce que sur le site opengl.org je ne trouve pas les fonctions glXGetVideoSyncSGI ni glXWaitVideoSyncSGI, je cherchais ce que pouvais bien être la variable counter... enfin quoi qu'il en soit, voici le patch;

/* frame-sequential.h */
#ifndef H__FRAMESEQUENTIAL
#define H__FRAMESEQUENTIAL

#include <GL/glx.h>
#include <GL/gl.h>
#include <GL/glu.h>
#include <GL/glut.h>


typedef enum
{
    NO_GLASSES,
    NV3DVISION
} FRAMESEQUENTIAL_GLASSES;

typedef struct frameSequentialState
{
    GLenum buffer;

    /* the user have shutter glasses or not */
    FRAMESEQUENTIAL_GLASSES glasses;

    /* nvstusb context to use with NVIDIA 3D Vision */
    struct nvstusb_context *ctx;

} FRAMESEQUENTIAL_STATE;


void initFrameSequentialMode(void);
void wait_vblank(void);

/* Transformation functions */
/*
int glXSwapIntervalSGI (int interval);
int glXGetVideoSyncSGI (unsigned int *count);
int glXWaitVideoSyncSGI (int divisor, int remainder, unsigned int *count);
*/
void frameSequential_glDrawBuffer(GLenum mode);
void frameSequential_glXSwapBuffers(Display * dpy, GLXDrawable drawable);

#endif /* H__FRAMESEQUENTIAL */

/* framesequential.c */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#include "../glQuadBufferEmu.h"
#include "../wrappers.h"
#include "frame-sequential.h"

void (*swapInterval) (int);

int (*glXGetVideoSyncSGI) (unsigned int *count);
int (*glXWaitVideoSyncSGI) (int divisor, int remainder, unsigned int *count);

// Buffers: 9/9

/*
00226         glXGetSyncValuesOML = (void *)glXGetProcAddress((unsigned char *)"glXGetSyncValuesOML");
00227         glXGetMscRateOML = (void *)glXGetProcAddress((unsigned char *)"glXGetMscRateOML");
00228         glXSwapBuffersMscOML = (void *)glXGetProcAddress((unsigned char *)"glXSwapBuffersMscOML");
00229         glXWaitForMscOML = (void *)glXGetProcAddress((unsigned char *)"glXWaitForMscOML");
00230         glXWaitForSbcOML = (void *)glXGetProcAddress((unsigned char *)"glXWaitForSbcOML");
*/


static int is_glx_extension_supported (const char *query)
{
    Display *dpy = XOpenDisplay (NULL);
    const char *glx_extensions = NULL;
    int ret = 1;
    int scrnum;

    if (!dpy)
    {
        WARNING ("couldn't open display");
        ret = -1;
    }
    else
    {
        scrnum = DefaultScreen (dpy);
        glx_extensions = glXQueryExtensionsString (dpy, scrnum);
        if (strstr (glx_extensions, query) == '\0')
            ret = 0;
    }

    #ifdef DEBUG
    if (ret == 1)
        fprintf (stderr, "is_glx_extension_supported (%s)\n"
                         "> extension is supported\n", query);
    else
        fprintf (stderr, "is_glx_extension_supported (%s)\n"
                         "[WW] extension is not supported\n", query);
    #endif

    return ret;
}


void frameSequential_glXSwapInterval (int i)
{
    HERE;
    #ifdef DEBUG
        fprintf (stderr, "glXSwapInterval(1)\n");
    #endif

    if (is_glx_extension_supported ("GLX_MESA_swap_control"))
    {
        swapInterval = (void (*)(int)) real_glXGetProcAddress
                                ((const GLubyte*) "glXSwapIntervalMESA");
    }
    else if (is_glx_extension_supported ("GLX_SGI_swap_control"))
    {
        swapInterval = (void (*)(int)) real_glXGetProcAddress
                                ((const GLubyte*) "glXSwapIntervalSGI");
    }
    else
    {
        WARNING ("No sync method !!!");
    }

    swapInterval (i);
}

void initFrameSequentialMode (void)
{
    QBState.framesequential.buffer = GL_LEFT;

    if (getenv ("__GL_SYNC_TO_VBLANK"))
    {
        fprintf (stderr, "__GL_SYNC_TO_VBLANK defined\n");
    }
    else
    {
        glXWaitVideoSyncSGI = NULL;
        glXGetVideoSyncSGI = NULL;

        if (real_glXGetProcAddressARB)
        {
            glXWaitVideoSyncSGI =
                (void *) real_glXGetProcAddressARB
                                ((unsigned char *)"glXWaitVideoSyncSGI");
            glXGetVideoSyncSGI =
                (void *) real_glXGetProcAddressARB
                                ((unsigned char *)"glXGetVideoSyncSGI");
        }

        if (glXWaitVideoSyncSGI != NULL && glXGetVideoSyncSGI != NULL )
        {
            fprintf (stderr, "glXWaitVideoSyncSGI && glXGetVideoSyncSGI\n");
        }
        else
        {
            frameSequential_glXSwapInterval(1);
        }
    }
    wrap_glDrawBuffer = frameSequential_glDrawBuffer;
    wrap_glXSwapBuffers = frameSequential_glXSwapBuffers;
}

void frameSequential_glDrawBuffer (GLenum mode)
{
    switch(QBState.current)
    {
    case GL_FRONT_LEFT:
    case GL_BACK_LEFT:
    case GL_LEFT:
        if (QBState.framesequential.buffer == GL_LEFT)
        {
            real_glDrawBuffer (mode);
        }
        else
        {
            real_glDrawBuffer (GL_NONE);
        }
        break;

    case GL_FRONT_RIGHT:
    case GL_BACK_RIGHT:
    case GL_RIGHT:
        if (QBState.framesequential.buffer == GL_RIGHT)
        {
            real_glDrawBuffer (mode);
        }
        else
        {
            real_glDrawBuffer (GL_NONE);
        }
        break;

    default: // GL_FRONT, GL_BACK, GL_FRONT_AND_BACK
        real_glDrawBuffer (mode);
    }
}

void frameSequential_glXSwapBuffers (Display * dpy, GLXDrawable drawable)
{

    static unsigned int counter = 0;

    if (glXWaitVideoSyncSGI != NULL && glXGetVideoSyncSGI != NULL)
    {
        glXGetVideoSyncSGI (&counter);
        glXWaitVideoSyncSGI (2, (counter + 1) % 2, &counter);
    }

    if (QBState.framesequential.buffer == GL_LEFT)
    {
        QBState.framesequential.buffer = GL_RIGHT;
    }
    else
    {
        QBState.framesequential.buffer = GL_LEFT;
    }

    glXWaitGL ();
    real_glXSwapBuffers (dpy, drawable);
}

edit: + static

Dernière modification par PKNzeta (Le 17/01/2012, à 23:47)

Hors ligne

#852 Le 17/01/2012, à 22:06

magestik

Re : La Stereo-3D sous Linux

Je trouve tout sur Google tongue

Par rapport à ta modif je pense que c'est pas le glXWaitGL qui règle le problème mais plutôt le fait que tu assigne 0 à counter (alors que moi je mettais pas de valeur). Après mettre un glXWaitGL ici, pourquoi pas smile

Hors ligne

#853 Le 17/01/2012, à 23:32

PKNzeta

Re : La Stereo-3D sous Linux

ah heuuu... oui. Je suis vraiment distrais décidément. Mais c'est pas ça qui règle le problème, dans ma version, J'ai static unsigned int i = 0; et ça roule. à la place de glXWaitGL j'ai testé glFinish, qui à l'air de faire le job aussi.

Dernière modification par PKNzeta (Le 18/01/2012, à 00:22)

Hors ligne

#854 Le 18/01/2012, à 00:21

magestik

Re : La Stereo-3D sous Linux

Je sais pas chez toi mais chez moi je suis à 1000 FPS donc glXGetVideoSyncSGI marche pas ! Essayes de faire un test de glxgears avec le LD_PRELOAD et un test sans pour voir tes FPS wink Je me demande vraiment si c'est que chez moi ^^

Dernière modification par magestik (Le 18/01/2012, à 00:21)

Hors ligne

#855 Le 18/01/2012, à 01:12

PKNzeta

Re : La Stereo-3D sous Linux

Ben j'ai testé. Je regrette, chez moi, ça roule.
Dans nvidia-settings;

  • X Server XVideo settings, décoché Sync to VBlank

  • Open GL settings, décoché Sync to VBlank

  • Dans DFP-1 - (Acer P1201) (mon vidéoprojecteur): décoché Force GPU Full Scaling

[pknzeta@BANANA magestik-glQuadBufferEmu-74ad973]$ glxgears
131303 frames in 5.0 seconds = 26260.560 FPS
132995 frames in 5.0 seconds = 26598.845 FPS
133058 frames in 5.0 seconds = 26611.519 FPS
132986 frames in 5.0 seconds = 26597.114 FPS
132859 frames in 5.0 seconds = 26571.648 FPS
XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":0.0"
      after 87 requests (87 known processed) with 0 events remaining.
[pknzeta@BANANA magestik-glQuadBufferEmu-74ad973]$ LD_PRELOAD=./glQuadBufferEmu.so glxgears -stereo
[**] Opening library "libdl.so"
[**] __libc_dlsym() ... Ok
[**] dlsym wrapper initialized.
[**] Opening library "libGL.so"
[**] Opening library "libX11.so"
glXWaitVideoSyncSGI && glXGetVideoSyncSGI
glXChooseVisual(GLX_STEREO)
602 frames in 5.0 seconds = 120.296 FPS
601 frames in 5.0 seconds = 120.004 FPS
601 frames in 5.0 seconds = 120.004 FPS
601 frames in 5.0 seconds = 120.004 FPS
601 frames in 5.0 seconds = 120.004 FPS
XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":0.0"
      after 109 requests (108 known processed) with 0 events remaining.

Dernière modification par PKNzeta (Le 18/01/2012, à 01:13)

Hors ligne

#856 Le 18/01/2012, à 12:39

love2hate

Re : La Stereo-3D sous Linux

Le "patch" de  PKNzeta remplace quelle fichier ? Je veus bien test  pour la science tongue

Perso j'utilise pas la fonction GPU Scaling, au démarrage sa bloque le taux a 60 hz cher moi .

Dernière modification par love2hate (Le 18/01/2012, à 12:41)


1984 was not supposed to be an instruction manual
Some "poor" wine screencast http://www.youtube.com/user/2m42hy/videos?view=0

Hors ligne

#857 Le 18/01/2012, à 14:38

magestik

Re : La Stereo-3D sous Linux

J'ai mis à jour le git pour que tu puisse tester facilement wink

Mais ça marche toujours pas chez moi, je pense que Nouveau gère pas le module SGI correctement pour l'instant : les fonctions existent mais elles ont aucun effet ! Je vais regarder du côté du module OML qui est censé marcher sous Nouveau, je crois que j'avais mis un commentaire dans frame-sequential.c pour indiquer le nom des fonctions à utiliser. Je vais me pencher là dessus quand j'aurais un peu de temps.

Dernière modification par magestik (Le 18/01/2012, à 14:41)

Hors ligne

#858 Le 18/01/2012, à 19:06

love2hate

Re : La Stereo-3D sous Linux

Je confirme sa marche de mon coter ! Même après redémarrage (sans  lancer le nvidia-setting ).

Edit quand ont coup

[EE] QuadBufferEmu Exit... Ouch!

très bon xD

Dernière modification par love2hate (Le 18/01/2012, à 19:30)


1984 was not supposed to be an instruction manual
Some "poor" wine screencast http://www.youtube.com/user/2m42hy/videos?view=0

Hors ligne

#859 Le 18/01/2012, à 21:35

PKNzeta

Re : La Stereo-3D sous Linux

hum, en fait c'est un bug... j'avais pas réalisé, mais, quitter quand on appui sur Esc c'est le comportement attendu. et moi, comme une andouille je le fait quitter sur un code d’erreur. je le corrige.
Sinon, à pars ça. mplayer ne fait toujours pas du 120 FPS chez moi. alors qu'il devrait, pourtant, si j'ai bien suivi l'affaire.
autre chose, on pourrais pas virer le mode d'affichage NONE? il sers a que dalle.

Dernière modification par PKNzeta (Le 18/01/2012, à 21:40)

Hors ligne

#860 Le 18/01/2012, à 22:23

magestik

Re : La Stereo-3D sous Linux

Il sert à rien pour le moment mais c'était pour faire des tests tongue En fait je voulais faire un mode qui affiche rien pour tester diverses petites choses ^^ Mais oui c'est pas très utile ... Je pensais que j'aurais plus de problèmes et le mode NONE aurait un peu été le mode DEBUG, mais au final pas eu de problème et le mode debug tel que tu l'a fait maintenant est très bien smile

Dernière modification par magestik (Le 18/01/2012, à 22:26)

Hors ligne

#861 Le 20/01/2012, à 23:53

PKNzeta

Re : La Stereo-3D sous Linux

voilà une nouvelle version.
au menu j'ai:

  • Implémenté la gestion du fichier de config, le code est réutilisable. si le fichier de config n'existe pas, il est automatiquement créé. il se place dans ~/.config/glQuadBufferEmu/glQuadBufferEmu.conf

  • Réuni les unités de compilation du wrapper gl et glx (les implémentations des fonctions sont toujours dans deux fichiers à pars).

  • Fait quelques changements mineurs dans le Makefile, notamment rendre la bibliothèque non exécutable.

  • Renommer main.c en glQuadBufferEmu.c

Voili voilou, n'hésitez pas si vous pistez un bug.

Dernière modification par PKNzeta (Le 21/01/2012, à 13:57)

Hors ligne

#862 Le 21/01/2012, à 14:17

magestik

Re : La Stereo-3D sous Linux

Bon travail encore une fois. Par contre je crois que si le dossier glQuadbufferEmu n'existe pas dans ~/.config alors le ficher sera pas créé !

Je pense me remettre au développement dès la semaine prochaine. Je pense m'occuper du logiciel permettant de générer le fichier de config et de tester la configuration (en Python). Plus important faut que je m'occupe du SIDEBYSIDE avec Nexuiz ! Il va aussi falloir que je trouve une solution pour le mode INTERLACED ...

PKNzeta tu as regardé le code du module noyau ? je l'ai mis dans un autre repo.

Hors ligne

#863 Le 21/01/2012, à 14:41

PKNzeta

Re : La Stereo-3D sous Linux

Bon travail encore une fois. Par contre je crois que si le dossier glQuadbufferEmu n'existe pas dans ~/.config alors le ficher sera pas créé !

Tu m'as fait peur, là...
je viens de tester, et ça marche bien. c'est logique de toutes façons dans la fonction configfile_init() on a:

void configfile_init (const char* default_cfg_str, const char* prog_name)
{
    /* détermine l'emplacement du répertoire et le créer si il n’existe pas */
    configfile_check_dir (prog_name);

    /* si le fichier n’existe pas dans le répertoire */
    if (!configfile_check_file (cfg_path))
    {
        /* alors on le crée avec la chaine de caractères qu'on a donné à l'entrée de la fonction */
        configfile_create_default_file (default_cfg_str);
    }
}

PKNzeta tu as regardé le code du module noyau ? je l'ai mis dans un autre repo.

juste survolé, et compilé pour l'instant, je ne l'ai même pas encore modprobé, mais je vais regarder ça dans un avenir proche. J'ai eu une semaine un peu surchargée.

edit: j'ai vu qu tu as mis à jour le git, mais tu as oublié les nouveaux fichiers. (configfile.c, configfile.h, func_gl.c, func_glx.c, glQuadBufferEmu.c, options.c, options.h, util.h)

Dernière modification par PKNzeta (Le 21/01/2012, à 16:16)

Hors ligne

#864 Le 21/01/2012, à 16:58

magestik

Re : La Stereo-3D sous Linux

Arf j'ai encore oublié les nouveaux fichiers ^^' Je viens de les ajouter, merci.

Pour ce qui est du dossier c'est bizarre j'ai du créer le dossier à la main pour que ça marche ... enfin je crois, je me suis peut-être emmêlé les pinceaux avec une ancienne version !

Hors ligne

#865 Le 23/01/2012, à 15:58

love2hate

Re : La Stereo-3D sous Linux

P'tit up juste  pour confirmer que le dernier build fonctionne, le fichier se créer bien etc ...
Si j'etait un "chieur" je dirais que le seul default c'est de foutre le fichier de conf dans ~/.config même si cet logique, j'ai une préférence pour les fichier direct dans le home ~/.glquadbuffer.conf (mais comme dit c'est un plus  par habitude que autre chose)

Pour le module cher moi y se  monte  pas avec modprobe,  insmod et votre ami  smile


1984 was not supposed to be an instruction manual
Some "poor" wine screencast http://www.youtube.com/user/2m42hy/videos?view=0

Hors ligne

#866 Le 24/01/2012, à 18:27

snasblog

Re : La Stereo-3D sous Linux

Les développeurs avancent !

De mon côté, je vous refais la vidéo 3D pendant mes soirées hivernales!
Durée: 54"
Voici des screenshots:
Sur une adaptation personnelle de l'ile mystérieuse de Tintin (Hergé), compatible Tux.
Image 1: le titre dure 2" pendant que l’île s'enfonce (vagues en tourbillons pendant la partie Tux _ images 1 à 1000).
Image 500: les pingouins vont sauter, ça devient dangereux de rester.
Image 994: un pingouin s'est approché de nous
Image 1001: le bureau de travail
Image 1050: un peu de texte
Image 1300: fin de l'anim sur la fin du mouvement du logo Blender. Donc 1001 à 1300= 12" pour le générique de fin (j'y met  Blender à l'honneur 6", car son logo tournant ne gâche rien en vision 3D")
Ma femme nous recompose une musique originale, le script ayant changé depuis la beta3
Ça vous donnera de nouvelles photos à voir en 3D dans l'attente de la vidéo finale !
Je dois corriger l'éclairage du bureau, la "spécularité" des murs: rien de compliqué.
Après, full Hd, anaglyphe ou 720p, je n'ai plus à tout recalculer sous blender (chronophage)
Je n'essaie pas d'être hyper réaliste, mais d'avoir une bonne 3D pour mettre en valeur TuxStéréoPlayer... avec vision 3D du driver majestik/PKNzeta
Donc, la qualité finale ne sera qu'un peu meilleure que ce que vous pouvez voir depuis l'archive zip fournie.

Ça ne me fait pas mal aux yeux, et je suis assez sensible, donc sauf avis contraire, je ne touche pas à la profondeur de champ des 2 scènes !

Hors ligne

#867 Le 24/01/2012, à 19:41

magestik

Re : La Stereo-3D sous Linux

Je viens de tester et je dois dire que le rendu est très bon !

Par contre, si c'est encore possible faudrait changer "Tux Stereo Player" vu que le projet est en pause prolongée : avec le driver on peut directement utiliser mplayer pour n'importe quel mode. Et surtout que bino est censé remarcher d'ici peu (je pense que le prochain update corrigera le problème, du moins j'espère). Pour ce qui est de l'image ou tu mets mon pseudo, pas la peine du coups, il vaut mieux que tu mette ton pseudo pour la réalisation des images wink Et si tu y tiens vraiment Magestik s'écrit avec un "g" tongue

Donc ce que je propose c'est que tu change "Tux Stereo Test" et qu'à la place de "Soft : Magestik" tu mette "Réalisation : snasblog" wink

Pour ce qui est du fichier de config, c'est pas trop mal que ce soit dans ~/.config, enfin ça change pas grand chose. De toute façon, quand le driver sera bien avancé, on devrait plutôt placer le fichier de config dans /etc/ ce serait plus logique. C'est un fichier de configuration qui indique à un driver comment utiliser du matériel donc sa place est vraiment dans /etc/ ! Mais pour le moment c'est pas mal qu'il soit dans config ça permet de le modifier rapidement (sans passer root) pour tester/débugger !

Dernière modification par magestik (Le 24/01/2012, à 19:41)

Hors ligne

#868 Le 24/01/2012, à 22:53

snasblog

Re : La Stereo-3D sous Linux

La vidéo n'est pas encore calculée. Et prend beaucoup moins de temps de calcul qu'en version beta3 ! ( compositing sous Stereo Photo Maker au lieu de Blender)
Désolé pour le "G".
Pas de souci pour la modif.
Je ne tiens pas spécialement à mettre mon nom, mais je tiens à dire que c'est grâce à Blender que la vidéo est possible.
Ton pseudo me semble pourtant une bonne idée: sans ton travail, point de vidéo 3D de ma part !
Je viens de discuter "musique" avec ma femme pour ce qu'on peut mettre comme bande son.
Je vais voir ce que donne un petit champignon qui grossit et explose lorsque Tux se rapproche(scène de début), avec des bouts sur la table du bureau (scène finale)... un bout de champignon peut grossir à la fin du logo Blender pour le fun (montrer que la réalité peut être rattrapée par la fiction) ( et on se doutera que ce champignon explosera aussi... sans le voir !

Donc, si la vidéo n'est pas pour Tux Stereo Player, tu comptes l'utiliser pour quel usage ? Tux reste d'actualité car représentant Linux !
La vidéo full Hd sera un peu lourde à télécharger. Mais toutes les vidéos sont lourdes, en Hd, 720p, Dvd, Svcd ...
Comme je l'avais indiqué, je te donnerai ma source (fichier .blend) pour le cas ou... lorsque j'aurai fini.

Hors ligne

#869 Le 25/01/2012, à 20:26

magestik

Re : La Stereo-3D sous Linux

C'est cool que ça prenne moins de temps parce que si je me souviens bien les temps dont tu m'avais parlé à l'époque étaient assez énorme quand même ^^

Pour l'idée d'introduire un espace de scenario c'est cool et la musique originale aussi ! J'attends la version finale avec impatiente.

Pour ce qui est de mon pseudo, c'est vraiment pas la peine tongue Enfin si tu y tiens vraiment vas-y, mais bon, je suis pas le seul à bosser sur le Stereoscopie sous Linux. Rien que sur ce sujet y'a pas que moi (rien que PKNzeta qui fait du bon boulot) mais y'a aussi le créateur de bino, les créateurs de libnvstusb etc ...

Pour ce qui est du "but" de la vidéo, ça n'a pas changé : elle servira comme vidéo de démo. Ce sera pas dans Tux Stereo Player mais c'est pas grave, on s'esn servira pour montrer comment utiliser mplayer en 3D avec glQuadBufferEmu. Et si tu veux bien je la mettrai sur youtube et je m'en servirai pour mes tests quand je ferai le module pour Firefox.

Aujourd'hui j'ai testé glQuadBufferEmu sur une carte Intel et ça marche ! J'ai pas eu le temps de m'attarder donc je sais pas quel driver est utilisé (mais le truc par défaut pour les cartes Intel, avec accélération graphique puisqu'il y avait Compiz). Je me rappelle plus si quelqu'un a testé sur ATI ? Mais ça devrait pas poser de problème de toute façon.

Dernière modification par magestik (Le 25/01/2012, à 20:30)

Hors ligne

#870 Le 26/01/2012, à 22:44

snasblog

Re : La Stereo-3D sous Linux

OK.
Alors, je met le titre de ce type, durée 4" au début. Ce sera le seul texte du film.
Ça permet de s'habituer au relief avant la vidéo, en plus d'introduire le "film".
Si vous avez une idée de titre, court et si possible international (mon idée n'est pas originale)
Plus c'est court, plus je peux le rapprocher du spectateur sans lui faire mal aux yeux.
Et à la fin, après logo blender qui bouge, je rajoute 2 vraies photos 3D, 4" par photo
1 de l'intérieur d'un PC,
1 autre de mon bureau ... juste le clavier, l'écran, la souris, les lunettes et la plante ..bien réels ... avec un vrai champignon en 1er plan, si vous avez suivi.
(encore un achat à faire, j'ai plus de champignons, et c'est pas la saison pour en trouver - mais le prix est raisonnable !)
Bon, bien entendu, je suis ouvert aux suggestions.

Les temps de calcul sont plus courts car:
Blender 2.61 va plus vite en rendu qu'avant.
Je fais les rendus en HD simple ( 2 rendus HD, gauche puis droite, prennent moins de temps que du rendu sur doubleHD)

Hors ligne

#871 Le 28/01/2012, à 21:19

magestik

Re : La Stereo-3D sous Linux

Ça a l'air bien parti wink Pour le titre je vais y réfléchir mais oui il faudrait trouver quelque chose d'original et en anglais.

Pour le code, ça fait plusieurs jours d'échanges par mail avec PKNzeta on a enfin réussi a résoudre un bug qui provoquait une erreur de segmentation. Pour l'explication : PKNzeta a corrigé un bug (quand on mettait une mauvaise option dans le fichier de config il y avait une erreur de segmentation) mais ça a introduit une nouvelle erreur de segmentation, uniquement chez moi (d'ailleurs c'est bizarre !). Du coups pour débugger c'était pas simple vu qu'il pouvait pas reproduire le bug chez lui. Donc 2 bugs de corrigés dans la version que je viens de publier.

Je vais essayer de me replonger dans le code cette semaine. Je vais essayer de faire marcher Nexuiz en mode side-by-side. Ensuite je vais m'occuper de la synchronisation avec l'écran avec Nouveau. Et après j'essayerais de trouver une solution pour le mode entrelacé (si quelqu'un a la moindre idée !!!).

Hors ligne

#872 Le 09/02/2012, à 00:44

magestik

Re : La Stereo-3D sous Linux

Je viens de mettre une nouvelle version en ligne. Donc on retrouve quelques corrections de petits bug et des petites modifications au niveau du code.

Le plus intéressant est le fait que j'ai corrigé le mini-bug qui affichait qu'une image en mode side-by-side sur Nexuiz. Maintenant ça marche parfaitement !

Prochaine étape : gestion de l'entrelacé ! En parallèle je refais le code du module noyau pour apporter une plus grande souplesse (pour l'ajout d'autres lunettes un jour).

Hors ligne

#873 Le 09/02/2012, à 14:25

Airballman

Re : La Stereo-3D sous Linux

Juste un petit message pour te dire que je suis content de voir que tu es toujours actif après 6 mois sans me connecter sur le fofo smile.

Le meilleur pour la suite wink

Dernière modification par Airballman (Le 09/02/2012, à 14:25)

Hors ligne

#874 Le 09/02/2012, à 23:06

magestik

Re : La Stereo-3D sous Linux

Exact ça faisait longtemps qu'on t'avait pas vu tongue Merci pour les encouragements ^^

Je viens de mettre à jour le git du module noyau. J'ai pas mal amélioré la structure globale. Normalement il est possible de gérer une infinité de lunettes 3D actives différentes en même temps. Je vous explique : en fait vous pourrez brancher par exemple une paire de lunette Nvidia 3D Vision en USB, 2 paire différentes (si ça vous amuse) en Bluetooth et pourquoi pas gérer en même temps le port VGA/DVI/HDMI par DDC (par exemple Nvidia 3D Vision intégré). Ca permettra de posséder différents modèles sans pouvoir les utiliser en même temps !

J'ai un peu commencé à regarder du côté de l'I2C pour gérer le kit Nvidia 3D Vision intégré et je vais me re-pencher sur le kit USB d'ici peu. Avec un peu de chance j'arriverai à faire tourner tout ça smile

Hors ligne

#875 Le 18/02/2012, à 03:25

love2hate

Re : La Stereo-3D sous Linux

Je viens de test ( pas eu de temps avant ) le "dernier" build cher moi sa plante .

smashy@Pixel glQuadBufferEmu % LD_PRELOAD=~/3Dvision/glQuadBufferEmu.so glxgears -stereo
[**] Opening library "libdl.so"
[**] __libc_dlsym() ... Ok
[**] dlsym wrapper initialized.
dlsym (posix_memalign) ... real_dlsym Ok
dlsym (memalign) ... real_dlsym Ok
dlsym (malloc) ... real_dlsym Ok
dlsym (realloc) ... real_dlsym Ok
dlsym (memalign) ... real_dlsym Ok
dlsym (posix_memalign) ... real_dlsym Ok
dlsym (free) ... real_dlsym Ok
dlsym (__malloc_initialize_hook) ... real_dlsym Ok
dlsym (__malloc_hook) ... real_dlsym Ok
dlsym (__realloc_hook) ... real_dlsym Ok
dlsym (__free_hook) ... real_dlsym Ok
dlsym (__memalign_hook) ... real_dlsym Ok
dlsym (dladdr1) ... real_dlsym Ok
glxgears: symbol lookup error: /home/smashy/3Dvision/glQuadBufferEmu.so: undefined symbol: QuadBufferEmuInitGL

1984 was not supposed to be an instruction manual
Some "poor" wine screencast http://www.youtube.com/user/2m42hy/videos?view=0

Hors ligne