OpenGL - Embryon de moteur3D

Généralités sur la programmation 3D
Anonyme

OpenGL - Embryon de moteur3D

Message par Anonyme »

Salut à tous, Voici mes travaux réalisé en pure/OpenGL
je pense que l'on peut dire que c'est un embryon de moteur3D, bien entendu c'est open-source.

Pour le moment, on ne peut pas faire grand chose :

- Chargement d'un model au format *.ase
- Support des UV's
- Gestion basique d'une caméra
- Support des textures (avec filtres(facultatif))

(En création) :
- Création de skybox en une ligne de code.


File:1->GL3D.rar
Image

Pour ce deplacer zsqd Pavnum 8 & 2 pour le site.

a ce stade, cela fonctionne nickel, sauf que vers 3000 polys sa rame comme pas possible :? je ne comprends vraiment pas.
Ma géométrie est chargée en mémoire vive, je voudrais la chargé directement dans la carte graphique, mais le fichier Opengl.pbi dont je dispose ne beneficie pas de cette commande, donc mes questions sont les suivantes :
- Commet obtenir un tel fichier (Includes\opengl.pbi)
- Mes objets et toute la structure (vertex,uv,faces) sont gerée par des Listes chainées, est il possible d'utilisé autre chose, pointeurs,tableaux,etc... afin de gagner en perf?
-Fred, comptes tu mettres en natif le suport d'opengl afin de bénéficier des shaders & cie?
Avatar de l’utilisateur
djes
Messages : 4252
Inscription : ven. 11/févr./2005 17:34
Localisation : Arras, France

Message par djes »

Vraiment sympa :)

La solution au problème de lenteur est d'utiliser les display lists : http://nehe.gamedev.net/data/lessons/le ... ?lesson=12

Y'a d'autres tutos là : http://www.lighthouse3d.com/opengl/tutorials.shtml
Anonyme

Message par Anonyme »

Merci Djes ! :D Ca fonctionne avec un zoli model d'half life 2 avec plus de 3000 polys :D
Je ferais une màj se soir.
Avatar de l’utilisateur
Progi1984
Messages : 2659
Inscription : mar. 14/déc./2004 13:56
Localisation : France > Rennes
Contact :

Message par Progi1984 »

Bon boulot ! T'as plus avancer que moi :p !

Sinon quelques idées : gestion du FPS ?

Quel est la suite ? :)
Anonyme

Message par Anonyme »

Pour le moment je ne peut pas afficher de texte ou de sprites, car ceux de pb c'est DirectX. mais je prevois de le faire pour OpenGL.

La suite proche sera :

- l'améioration du code déjà existant
- La gestion(affichage) de plusieurs objets (en cour)
- la gestion des lumieres
- le brouillard
- Plusieurs type de camera (Libre, Suivi d'objet)
- Terrain

je prevois :

- support d'autre format 3D
- Animation d'un mesh
- Shader?
- Multi-texturing



Mon but principale est de rendre facile la 3D à purebasic, J'ai choisi OpenGL pour sa portabilité.
Evidement le projet sera OpenSource.


@++
KarLKoX
Messages : 1191
Inscription : jeu. 26/févr./2004 15:36
Localisation : France
Contact :

Message par KarLKoX »

C'est prometteur tout ça, vivement la prochaine release :)
"Qui baise trop bouffe un poil." P. Desproges
wolfjeremy
Messages : 1202
Inscription : sam. 31/déc./2005 23:52

Message par wolfjeremy »

Faudrais peut etre utiliser le langage pour les carte graphique, sa serait plus pratique (sa s'inclu dans les autres langage normalement).
Faut aller voir sur le site de Nvidia :wink:
Avatar de l’utilisateur
flaith
Messages : 1487
Inscription : jeu. 07/avr./2005 1:06
Localisation : Rennes
Contact :

Message par flaith »

Cpl.Bator a écrit :...
Mon but principale est de rendre facile la 3D à purebasic, J'ai choisi OpenGL pour sa portabilité.
Evidement le projet sera OpenSource.


@++
Trés belle initiative, Image
Anonyme

Message par Anonyme »

Faudrais peut etre utiliser le langage pour les carte graphique, sa serait plus pratique (sa s'inclu dans les autres langage normalement).
Faut aller voir sur le site de Nvidia
Oui c'est le CG , le language de Nvidia est compatible OpenGL et Dx
le problème, c'est que je n'ai pas d'include comme "opengl.pbi (ds mon exemple)" qui me permet d'acceder aux commandes GLSL , je ne sais pas faire se genre de fichier :oops:
j'ai regarder vite fait dans le SDK de pure, mais à chaque tentative d'importer une lib, il me sort un fichier vide... :?


Edit : je dépasse les 10 000 polys, y rame po :D DarkBasic n'a plus qu'a bien se tenir :D
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Message par Dr. Dri »

Cpl.Bator a écrit :Pour le moment je ne peut pas afficher de texte ou de sprites, car ceux de pb c'est DirectX.
Et en utilisant le subsystem opengl ? Depuis PB4 ca se limite plus à dx7 le PB...

Dri
Anonyme

Message par Anonyme »

Voilà la derniere Maj :D

- Gestion de la lumiére ambiente
- Gestion de plusieurs meshs
- Gestion de skybox

http://cpl.bator.ifrance.com cliquez sur 01
(purestorage déconne :?)


Le chargement est super long, je vais l'améliorrer avec des threads.
je vous laisse deviner d'ou viens le mesh :lol:
Comme d'hab Z,S,Q,D et PavNum 8 & 2 pour le site.
Ce coup ci pas le temps de mettre au propre la source, je suis préssé, j'ai du ménage à faire :?
Elle sera mise à jour à la prochaine version.

@Dri OpenGl ne permet pa sa ma connaisance de dessiner des sprites ou ecrire du texte, faut le faire soit meme je pense.
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Message par Dr. Dri »

Cpl.Bator a écrit :Pour le moment je ne peut pas afficher de texte ou de sprites, car ceux de pb c'est DirectX. mais je prevois de le faire pour OpenGL.
En utilisant le subsystem OpenGL, les libs Screen, Sprite et Sprite3D directx7 seront remplacées par des libs Screen Sprite et Sprite3D utilisant OpenGL. Pour t'en assurer vas dans le dossier Subsystems/OpenGL. La fonction SpriteID qui renvoi l'identifiant dx du sprite renverra l'identifiant opengl du sprite avec le subsystem... Pour afficher du texte pure n'utilise pas directx, la lib 2DDrawing utilise gdi sous windows. Donc je ne vois pas en quoi directx peut te gêner... Idem pour ourir un écran, avec le subsystem (et donc la lib Screen en version opengl) tu auras directement un écran ogl.

Dri
Anonyme

Message par Anonyme »

Merci pour les infos, je vais aller jeter un oeil. :wink:
tonton
Messages : 315
Inscription : mar. 26/avr./2005 15:19

Message par tonton »

tres bien ton truc :D , on va finir par t apeler "general bator".
ta derniere version plante chez moi.
bonne continuation..........
wolfjeremy
Messages : 1202
Inscription : sam. 31/déc./2005 23:52

Message par wolfjeremy »

Tien au faite il y a un OpenGL.pbi dans
PureBasic \Examples\Sources - Advanced\OpenGL Cube
:wink:
Répondre