Projet

Général

Profil

Castor3D en version 0.6.0.0

Sortie de la version 0.6.0.0 de Castor3D
Ajouté par dragonjoker59 il y a presque 7 ans

Changements

Ajouts

Ajout d'une classe de gestion des matrices de projection, normale et visualisation, en vue de la suppression du pipeline fixe dans les renderers OpenGL.
Ajout de smart pointers persos, inspirés de ceux de boost.
Ajout d'une classe de gestion des angles, permettant de ne pas s'embeter avec les conversions radian-degrés.
Ajout d'une classe de gestion de path, permettant de gérer les slash ou anti-slash selon l'OS.
Création de conteneurs thread-safe issus de la stl (vector, list, map, multimap, set).
Séparation du renderer OpenGL en 2 projets : un compatible OpenGL 2.x et antérieur (GL2RenderSystem) le second compatible OpenGL3.x et ultérieur (GL3RenderSystem).
GL2RenderSystem : en fonction du PC client, suppression du pipeline fixe ou pas (si l'utilisation des shaders est permise le pipeline fixe est supprimé, sinon il est gardé)

Modifications

Modification de la gestion des threads et mutexes, permettant le choix de ceux qu'on utilise (Win32, MFC ou boost).
Modification des classes de gestion des matrices et points.
Modification de la classe de gestion des chaînes de caractères qui sont maintenant indépendantes de Unicode ou MultiByte.
Modification de la classe de gestion de fichiers qui ne permet plus le choix IO ou Stream mais utilise Stream uniquement.
Modification du render system, ajout d'une classe renderable qui se charge de créer le renderer associé, afin de simplifier la création des dérivés de cette classe (submesh, scene node, light, camera...)
Changement des noms des fichiers de scène/materiaux/meshes du moteur (respectivement cscn/cmtl/cmsh)

Corrections de Bugs

Protection par recursive mutex des données partagées (par les managers, essentiellement) permettant d'éviter des plantages aléatoires.

A faire

Il reste un plantage à la fermeture du soft en release uniquement, apparemment dû aux shaders.
Pour GL3RenderSystem, j'ai un rendu noir (?!?) mais les transformations sont prises en compte correctement.

Dépendances

Pour compiler CastorUtils et Castor3D, vous aurez besoin de boost, FreeImage, FreeImagePlus et glm (OpenGL Mathematics)
Pour compiler GL2RenderSystem et GL3RenderSystem vous aurez besoin de GLEW
Pour compiler CastorShape et CastorViewer, vous aurez besoin de wxWidget


Commentaires