Cherche volontaire pour petit bench opengl [OpenGL] - Multimédia - Linux et OS Alternatifs
Marsh Posté le 04-06-2003 à 21:54:20
je pense que si t'as les capacites d'ecrire un tel soft , fais le fonce !!!
cela te seras tout benefice plus tard
Marsh Posté le 04-06-2003 à 22:09:27
Testé sur Radeon 9000 Pro avec drivers ATI pour XFree 4.3 :
moyenne de 300-320.
Marsh Posté le 04-06-2003 à 22:57:15
Testé sur Geforce4 Ti 4200 et driver Nvidia (P4 2Ghz)
moyenne 430 à 460 en ligne droite tombant à 370 dans les virages
Sans recompilation ni modification du code
Marsh Posté le 04-06-2003 à 23:07:17
sans recompil
Thunderbird 980
GF4 Ti4200 :
core/mem : min-moy-max
250/550 : 477 - 510 - 564
310/650 : 575 - 610 - 677
Marsh Posté le 04-06-2003 à 23:54:08
Merci bcp.
Les perfs sont donc dans la moyenne. C bien, je voit que ATI commence à avoir de bon drivers pour linux.
Marsh Posté le 05-06-2003 à 02:32:55
moi j'y connais rien mais je veux bien t'aider pour le bench
Marsh Posté le 05-06-2003 à 13:05:24
Tiens ton appli opengl me rappelle qu'a un certain moment je m 'etais mis a l'open gl et que je m'etais meme acheter le livre OpenGl 1.2 de Campus press ( le redbook mais en francais apparemment).
J'avais commencé a faire des petits prog simple genre le carré (2D) qui tourne mais le probleme c'est que j'ai laché l'affaire quand j'ai abordé la question visualisation en 3d c a d gestion caméra , transformations ...etc.
Je voulais faire un moteur 3d a cette époque.
Dans la foulé j'avais appris le c++ car je connaissais que le java (a l'iut pour mon dut info 2 ans de java).
Ton appli m'a redonné envie de faire de l'opengl !
Je vais peut etre m'y remettre pour voir si ca peut s'éclaircir car bon a cette époque la j'avais juste fini mes deux ans de DUT et j'étais fatigué du cerveau .
Marsh Posté le 05-06-2003 à 14:09:07
Oaui c chouette l'openGL Ca me désole souvent de pas en faire plus ...
Marsh Posté le 05-06-2003 à 15:00:40
Tu connais des bons sites pour l'apprentissage de l'open GL ?
Je recherche un site qui regrouperait les techniques 3D utlisés et qui expliquerait comme les utiliser en open gL.
Marsh Posté le 05-06-2003 à 15:26:19
Nehe et gametutorials
http://www.gametutorials.com/Tutor [...] GL_Pg1.htm
http://nehe.gamedev.net/
Marsh Posté le 05-06-2003 à 15:33:51
Oaui ben voila, regarde ci-dessus c les meilleurs Je regardait souvent NeHe. Sinon, ben y a le redbook et sur le site des constructeurs y a des truc sur comment utiliser au mieux leur carte .
Genre les 'NV Vertex Array' ou les 'ATI Object Buffer', c des trucs pour que les données de vertex des objets soit stocké dans la mémoire video (en gros) comme ca, pour dessiner, ben t'envoie juste l'ordre de dessin et le reste est fait pas la CG ...
Marsh Posté le 05-06-2003 à 16:06:46
Ca aurait été bien un petit concours de démoscène sur OSA
Marsh Posté le 05-06-2003 à 16:18:07
mirtouf a écrit : Moi j'attends toujours le 16 bits pour leurs drivers. |
kler moi aussi
et si on fesait une petition ??
Marsh Posté le 08-06-2003 à 15:08:58
./main: error while loading shared libraries: libglut.so.3: cannot open shared object file: No such file or directory
Marsh Posté le 08-06-2003 à 16:19:17
cat /proc/driver/nvidia/cards/0
Model: GeForce2 Ti
IRQ: 5
Video BIOS: 03.15.01.02.00
Card Type: AGP
cat /proc/driver/nvidia/version
NVRM version: NVIDIA Linux x86 nvidia.o Kernel Module 1.0-4363 Sat Apr 19 17:46:46 PDT 2003
GCC version: gcc version 3.2.3 20030415 (Debian prerelease)
cat /proc/driver/nvidia/agp/status
Status: Enabled
Driver: NVIDIA
AGP Rate: 4x
Fast Writes: Disabled
SBA: Disabled
./main
Can't find GL_NV_vertex_array_range ...
Can't find GL_ATI_vertex_array_objectTrying to allocate vertex memory in Main Memory
Trying to allocate texture memory in Main Memory
glVertexArrayRangeNV disabled !
ATI Buffer disabled !
Frame rate : 0.000000
Frame rate : 134.000000
Frame rate : 138.000000
Frame rate : 143.000000
Frame rate : 152.000000
Frame rate : 146.000000
Frame rate : 140.000000
Frame rate : 140.000000
Frame rate : 140.000000
Frame rate : 140.000000
Frame rate : 136.000000
Frame rate : 137.000000
Frame rate : 138.000000
Frame rate : 140.000000
Frame rate : 150.000000
et si je change de bureau
Frame rate : 0.000000
Frame rate : 144.000000
Frame rate : 152.000000
Frame rate : 160.000000
Frame rate : 156.000000
Frame rate : 160.000000
Frame rate : 164.000000
Frame rate : 268.000000
Frame rate : 264.000000
Frame rate : 256.000000
Frame rate : 259.000000
Frame rate : 260.000000
Frame rate : 256.000000
Frame rate : 254.000000
Frame rate : 282.000000
Frame rate : 290.000000
Frame rate : 277.000000
Frame rate : 295.000000
Frame rate : 296.000000
Frame rate : 281.000000
Frame rate : 256.000000
Frame rate : 252.000000
Frame rate : 181.000000
Frame rate : 157.000000
Marsh Posté le 08-06-2003 à 18:59:23
vanilla> Ben faut la librairie glut instalée ..
Humidifier> Tu peut me donner le resultat de glxinfo ? Parce que le "Can't find GL_NV_vertex_array_range ... " est pas normal ...
Marsh Posté le 08-06-2003 à 19:04:03
glxinfo
name of display: :0.0
display: :0 screen: 0
direct rendering: No
server glx vendor string: NVIDIA Corporation
server glx version string: 1.3
server glx extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_SGIX_fbconfig,
GLX_SGIX_pbuffer
client glx vendor string: SGI
client glx version string: 1.2
client glx extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_import_context
GLX extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce2 GTS/AGP/SSE/3DNOW!
OpenGL version string: 1.4.0 NVIDIA 43.63
OpenGL extensions:
GL_ARB_multitexture, GL_ARB_imaging, GL_EXT_abgr, GL_EXT_blend_color,
GL_EXT_blend_minmax, GL_EXT_blend_subtract
glu version: 1.3
glu extensions:
GLU_EXT_nurbs_tessellator, GLU_EXT_object_space_tess
visual x bf lv rg d st colorbuffer ax dp st accumbuffer ms cav
id dep cl sp sz l ci b ro r g b a bf th cl r g b a ns b eat
----------------------------------------------------------------------
0x21 24 tc 0 32 0 r y . 8 8 8 0 0 24 8 16 16 16 16 0 0 None
0x22 24 dc 0 32 0 r y . 8 8 8 0 0 24 8 16 16 16 16 0 0 None
0x23 24 tc 0 32 0 r y . 8 8 8 8 0 24 8 16 16 16 16 0 0 None
0x24 24 tc 0 32 0 r . . 8 8 8 0 0 24 8 16 16 16 16 0 0 None
0x25 24 tc 0 32 0 r . . 8 8 8 8 0 24 8 16 16 16 16 0 0 None
0x26 24 tc 0 32 0 r y . 8 8 8 0 0 0 0 16 16 16 16 0 0 None
0x27 24 tc 0 32 0 r y . 8 8 8 8 0 0 0 16 16 16 16 0 0 None
0x28 24 tc 0 32 0 r . . 8 8 8 0 0 0 0 16 16 16 16 0 0 None
0x29 24 tc 0 32 0 r . . 8 8 8 8 0 0 0 16 16 16 16 0 0 None
0x2a 24 dc 0 32 0 r y . 8 8 8 8 0 24 8 16 16 16 16 0 0 None
0x2b 24 dc 0 32 0 r . . 8 8 8 0 0 24 8 16 16 16 16 0 0 None
0x2c 24 dc 0 32 0 r . . 8 8 8 8 0 24 8 16 16 16 16 0 0 None
0x2d 24 dc 0 32 0 r y . 8 8 8 0 0 0 0 16 16 16 16 0 0 None
0x2e 24 dc 0 32 0 r y . 8 8 8 8 0 0 0 16 16 16 16 0 0 None
0x2f 24 dc 0 32 0 r . . 8 8 8 0 0 0 0 16 16 16 16 0 0 None
0x30 24 dc 0 32 0 r . . 8 8 8 8 0 0 0 16 16 16 16 0 0 None
Marsh Posté le 08-06-2003 à 19:57:51
huh ... c quoi cette carte ???? Ma geforce 1 a cette extension ! ...
Marsh Posté le 08-06-2003 à 20:37:03
246tnt a écrit : huh ... c quoi cette carte ???? Ma geforce 1 a cette extension ! ... |
Je ne sais pas, un pote l'a récupéré d'un PC de son labo.
Comme elle est montée, je n'arrive pas à lire sa marque.
...
Marsh Posté le 09-06-2003 à 00:49:54
Ca pourrait venir des driver nvidia ? Apparement, le dri n'est pas activé. A moins que j'ai tout faux
Marsh Posté le 09-06-2003 à 07:58:27
Oaui tien sje viens de remarquer que sur ma nvidia ca mettait DRI: yes ...
Alors que les nvidia utilise pas le DRI ... Bizarre
Marsh Posté le 09-06-2003 à 09:44:31
Les nvidia n'utilise pas le DRI, mais depuis qqs version de drivers de nvivia, glxinfo répond YES.
Marsh Posté le 09-06-2003 à 11:33:31
Et donc, dois je croire que ma carte vient de l'espace ???
Marsh Posté le 09-06-2003 à 12:12:30
$ ./main
Cool ! GL_NV_vertex_array_range extension found !
Trying to allocate vertex/tecture memory in AGP Memory
glVertexArrayRangeNV activated !
ATI Buffer disabled !
Frame rate : 0.000000
Frame rate : 274.000000
Frame rate : 271.000000
Frame rate : 240.000000
Frame rate : 288.000000
Frame rate : 283.000000
Frame rate : 280.000000
Frame rate : 282.000000
Frame rate : 280.000000
Frame rate : 280.000000
Frame rate : 279.000000
Frame rate : 276.000000
Frame rate : 273.000000
Frame rate : 273.000000
Frame rate : 283.000000
Frame rate : 284.000000
Frame rate : 272.000000
Frame rate : 278.000000
Frame rate : 350.000000
Frame rate : 446.000000
Frame rate : 445.000000
Frame rate : 338.000000
Frame rate : 307.000000
Frame rate : 375.000000
Frame rate : 395.000000
Frame rate : 311.000000
Frame rate : 271.000000
Frame rate : 272.000000
Frame rate : 295.000000
Frame rate : 320.000000
Frame rate : 286.000000
Frame rate : 285.000000
GeForce 3 Ti 200 sans recompilation du prgm.
En tout cas c'est bien fait
Sinon, pourquoi je peux pas recompiler le main.c ?
$ make clean
rm -f main
$ make main
gcc main.c -o main -lGLU -lglut -lGL
main.c:69: parse error before "glVertexArrayRangeNV"
main.c:69: `glVertexArrayRangeNV' redeclared as different kind of symbol
/usr/include/GL/gl.h:3142: previous declaration of `glVertexArrayRangeNV'
main.c:69: warning: initialization makes integer from pointer without a cast
main.c:69: warning: data definition has no type or storage class
main.c:70: parse error before "my_glXAllocateMemoryNV"
main.c:70: warning: initialization makes integer from pointer without a cast
main.c:70: warning: data definition has no type or storage class
main.c:71: parse error before "my_glXFreeMemoryNV"
main.c:71: warning: initialization makes integer from pointer without a cast
main.c:71: warning: data definition has no type or storage class
main.c: In function `MyGLInit':
main.c:333: called object is not a function
main.c:341: `GL_STATIC_ATI' undeclared (first use in this function)
main.c:341: (Each undeclared identifier is reported only once
main.c:341: for each function it appears in.)
main.c: In function `LoadExtension':
main.c:595: `PFNGLVERTEXARRAYRANGENVPROC' undeclared (first use in this function)
main.c:595: parse error before "glXGetProcAddressARB"
main.c:596: `PFNGLXALLOCATEMEMORYNVPROC' undeclared (first use in this function)
main.c:596: parse error before "glXGetProcAddressARB"
main.c:597: `PFNGLXFREEMEMORYNVPROC' undeclared (first use in this function)
main.c:597: parse error before "glXGetProcAddressARB"
main.c: In function `AllocateMemory':
main.c:623: called object is not a function
main.c:630: warning: assignment makes integer from pointer without a cast
main.c:631: warning: assignment makes integer from pointer without a cast
main.c:632: warning: assignment makes integer from pointer without a cast
main.c: In function `FreeMemory':
main.c:671: called object is not a function
main.c:682: called object is not a function
make: *** [main] Error 1
Marsh Posté le 09-06-2003 à 13:02:33
A cause des header openGL.
J'utilise des fonctions openGL qui sont des extensions constructeurs. Y a donc plusieurs symboles, types, ... qui ne sont p/e pas déclaré dans la version des headers opengl que tu as.
J'utilise les headers de ATI qui contiennes les extensions ATI et une partie des extensions NVidia.
En fait si j'avait fait tout comme j'aurait du, toutes les extensions je trouverait les pointeurs vers les bonnes fonction via le glxGetProcAddress et tout les types je devrait faire des #ifdef et les delaré en interne si ce n'est pas déja déclaré.
Marsh Posté le 09-06-2003 à 13:13:57
Duron@1GHz et GF3 Ti200
normal le truc de l'AGP ?
|
Marsh Posté le 09-06-2003 à 13:18:07
Code :
|
bon fo dire j ai pas mis les drivers ati, c est ceux par defaut sous xfree 4.3
dudu 1200 + ati 8500
Marsh Posté le 09-06-2003 à 14:34:25
Nouveau noyau, donc 'recompilage' des driver nvidia ...
glxinfo
name of display: :0.0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: NVIDIA Corporation
server glx version string: 1.3
server glx extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_SGIX_fbconfig,
GLX_SGIX_pbuffer
client glx vendor string: NVIDIA Corporation
client glx version string: 1.3
client glx extensions:
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_visual_info,
GLX_EXT_visual_rating, GLX_EXT_import_context, GLX_SGI_video_sync,
GLX_SGIX_swap_group, GLX_SGIX_swap_barrier, GLX_SGIX_fbconfig,
GLX_SGIX_pbuffer, GLX_NV_float_buffer
GLX extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_SGIX_fbconfig,
GLX_SGIX_pbuffer, GLX_ARB_get_proc_address
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce2 GTS/AGP/SSE/3DNOW!
OpenGL version string: 1.4.0 NVIDIA 43.63
OpenGL extensions:
GL_ARB_imaging, GL_ARB_multitexture, GL_ARB_point_parameters,
GL_ARB_texture_compression, GL_ARB_texture_cube_map,
GL_ARB_texture_env_add, GL_ARB_texture_env_combine,
GL_ARB_texture_env_dot3, GL_ARB_texture_mirrored_repeat,
GL_ARB_transpose_matrix, GL_ARB_vertex_buffer_object,
GL_ARB_vertex_program, GL_ARB_window_pos, GL_S3_s3tc, GL_EXT_abgr,
GL_EXT_bgra, GL_EXT_blend_color, GL_EXT_blend_minmax,
GL_EXT_blend_subtract, GL_EXT_clip_volume_hint,
GL_EXT_compiled_vertex_array, GL_EXT_draw_range_elements,
GL_EXT_fog_coord, GL_EXT_multi_draw_arrays, GL_EXT_packed_pixels,
GL_EXT_paletted_texture, GL_EXT_point_parameters, GL_EXT_rescale_normal,
GL_EXT_secondary_color, GL_EXT_separate_specular_color,
GL_EXT_shared_texture_palette, GL_EXT_stencil_wrap,
GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map,
GL_EXT_texture_edge_clamp, GL_EXT_texture_env_add,
GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3,
GL_EXT_texture_filter_anisotropic, GL_EXT_texture_lod,
GL_EXT_texture_lod_bias, GL_EXT_texture_object, GL_EXT_vertex_array,
GL_IBM_texture_mirrored_repeat, GL_KTX_buffer_region, GL_NV_blend_square,
GL_NV_fence, GL_NV_fog_distance, GL_NV_light_max_exponent,
GL_NV_packed_depth_stencil, GL_NV_pixel_data_range, GL_NV_point_sprite,
GL_NV_register_combiners, GL_NV_texgen_reflection,
GL_NV_texture_env_combine4, GL_NV_texture_rectangle,
GL_NV_vertex_array_range, GL_NV_vertex_array_range2, GL_NV_vertex_program,
GL_NV_vertex_program1_1, GL_NVX_ycrcb, GL_SGIS_generate_mipmap,
GL_SGIS_multitexture, GL_SGIS_texture_lod
glu version: 1.3
glu extensions:
GLU_EXT_nurbs_tessellator, GLU_EXT_object_space_tess
--> c'est beaucoup plus fourni non !!!
./main
Cool ! GL_NV_vertex_array_range extension found !
Trying to allocate vertex/tecture memory in AGP Memory
glVertexArrayRangeNV activated !
ATI Buffer disabled !
Frame rate : 0.000000
Frame rate : 209.000000
Frame rate : 212.000000
Frame rate : 225.000000
Frame rate : 256.000000
Frame rate : 235.000000
Frame rate : 218.000000
Frame rate : 223.000000
Frame rate : 220.000000
Frame rate : 168.000000
Frame rate : 193.000000
Frame rate : 193.000000
Frame rate : 238.000000
Frame rate : 476.000000
Frame rate : 530.000000
Frame rate : 630.000000
Frame rate : 543.000000
Frame rate : 552.000000
Frame rate : 556.000000
Frame rate : 513.000000
Frame rate : 479.000000
Frame rate : 451.000000
Frame rate : 216.000000
Frame rate : 200.000000
...
C'est mieux là ???
Marsh Posté le 09-06-2003 à 14:42:26
911GT3> Ben euh non ... Ca veut dire que il a trouvé l'extension mais que elle foire ... glxinfo ?
tomate77> Ben ca vas encore les drivers free ne sont pas complement largué ...
Humidifier> Ah oui mieux !
Marsh Posté le 09-06-2003 à 14:43:24
246tnt a écrit : 911GT3> Ben euh non ... Ca veut dire que il a trouvé l'extension mais que elle foire ... glxinfo ? |
oue mais ca me soule de mettre les drivers ATI
car meme si je gagne 200% en perf, je suis limite au 24 bits
ati
Marsh Posté le 09-06-2003 à 14:52:09
Je voit que un bench opengl ca pourrait être utile vu le nombre déja de personne qui ont essayé ce prog
Y faudrait quoi dedans d'après vous ?
Je pensait reprendre au fait certains test de 3Dmark 2001:
- Test avec geometrie compliquée ( bcp de polygone ) et plusieurs lampe openGL avec le T&L classique. Ca teste la capacité géométrique de la carte, en mode statique ( genre on tourne autour de l'objet mais l'objet change pas ) et en mody dynamique ( l'objet evolue ). Comme ca on voit comment la carte/drivers optimize les truc statiques etc ...
- Test de texturing : Ben on remplit betement l'ecran avec une ou plusieurs textures supperposée, test du fillrate / vitesse AGP ( suivant que la texture est en RAM ou AGP ).
- Test FSAA/Aniso : Genre le tunnel, avec uen texture bien 'sharp' et voir l'impact de ces options. ( plutot l'impact que les perf absolue ici )
- Test vertexshader : Ben genre du skinning sur un objet. Voir les perfs
- Test pixelshader : Ah ben ca vas être dur ma carte les supporte pas en openGL
Et evidemment, utilisation des extensions ATI/NVidia si dispo, sinon fallback sur les fonctions openGL simple. C discutables comme choix mais genre si on le fait pas, mon code risque de favoriser les ATI oou NVidia juste par exemple selon la longueurs des strip que j'utilises, etc ... ( En gros j'aurait des choix arbitraires a faire qui risuqe de favoriser l'un ou l'autres donc autant differencier les deux ... )
Bon, pas de scènes completes de jeu ou de demos, j'en suis incapable ( sans blague ... ).
Marsh Posté le 09-06-2003 à 15:16:34
Non mais sans blagues cela pourrait être plus que TRES sympa
++
Marsh Posté le 04-06-2003 à 21:17:26
Voila, j'ai retrouvé un prog que j'avait écrit y a deja pas mal de temps ... mon premier prog opengl ...
Bon, c vraiment pas grand chose mais la comme j'avait qq minutes a perdre, je lui ai vite rajouté le support de deux extensions qui permette d'accelere ( en théorie ... ) un peu ( une pour ATI, l'autre NVidia ).
Je me demandait si qqun d'entre vous pouvait tester et me donner les perf juste pour avoir une idée de ce que vaut ma machine en 3D ( glxgears bof a la fin )
www.246tNt.com/ogl_test1.tar.gz
Bon, j'ai inclu une version déja compilée parce que les header openGL c pas toujours ca ... Mais ca compile sur ma gentoo sans problème avec les drivers ATI. Si vous avez que du NVidia faudrait p/e virer qq lignes dans le code ... enfin rien de bien sorcier quoi.
Pendant les vacances j'écrirait bien un vrai bench openGL pour linux ... Z'en pensez quoi ?
Sur mon PC j'ai +-550 FPS ( Ti 4800 avec thunderbird 700Mhz )
Sur mon portable ( +- 270 FPS ) ( Radeon mobility 9000 avec Pentium-M 1.3Ghz )
PS: Le prog est pas top hein, il est vieux