Projet

Général

Profil

Version 0.8.0

Les 2 principaux topics (animations et billboards) et moult modifications et améliorations ont été implémentés, dans cette nouvelle version.
Ajouté par dragonjoker59 il y a plus d'un an

Modifications

Général

  • Compile maintenant avec VS >= 2013 et GCC >= 4.9.
  • Le support de Direct3D a été abandonné, n'ayant pas le temps pour l'implémenter correctement.

CastorUtils

  • Les opérations pour les Point4f et les Matrix4x4f peuvent maintenant utiliser les instructions SSE2.
  • Tous les projets du Castor utilisent maintenant des textes UTF-8, stockés dans des std::string.

Castor3D

  • Le système d'animations par squelette est maintenant finalisé et fonctionnel.
  • Suppression de toutes les classes XxxRenderer, sauf OverlayRenderer.
  • Le type de topologie de dessin n'est plus dans la classe Camera, mais dans GeometryBuffers.
  • Engine a été retravaillée, en ajoutant des classes RenderLoop, ainsi que des Managers, s'occupant de la création des éléments, leur stockage et leur récupération.
  • SceneFileParser a été étendue, pour pouvoir utiliser des directives d'analyse depuis des plug-ins externes.
  • Les tampons d'image de la fenêtre sont maintenant récupérés, et liables comme les autres tampons d'image, il n'est cependant pas possible de leur créer ou ajouter des attaches.
  • Ajout d'un système de traçage des objets GPU créés, pour s'assurer que leur destruction s'effectue avant la destruction de leur contexte.
  • Les incrustations texte peuvent maintenant avoir un alignement vertical et/ou horizontal.
  • Castor3D peut maintenant lire les scènes depuis des archives ZIP.
  • Ajout d'une archive ZIP, Core.zip, contenant des matériaux basiques, ainsi que les incrustations de débogage.
  • Cette archive est chargée lors de la sélection de l'API de rendu.
  • Le code shader de l'éclairage a été revu et corrigé.
  • La clase Scene a été retravaillée, pour utiliser la classe ObjectManager, ainsi que les vues sur les ResourceManagers.
  • Maintenant ShaderProgram récupère la configuration des attributs de sommets en enrée du vertex shader.
  • Cette configuration est utilisée par la classe Submesh, pour créer les GeometryBuffers qui vont bien.
  • Castor3D utilise le High Dynamic Range pour dessiner les scènes. Le mappage de tons par défaut permet d'avoir un rendu similaire à un rendu sans HDR.

GlRenderSystem

  • La texture de lumières utilise maintenant les Texture Buffer Objects.
  • Suppression des classes GlXxxRenderer.
  • Le support d'OpenGL 1.x a été supprimé.
  • Le support d'OpenGL 3.x a été renforcé, en forçant l'utilisation des UBOs, par exemple.
  • Implémentation de GlslWriter, pour pouvoir écrire les shaders depuis un fichier source C++.

Subdiviseurs

  • Implémentation d'un subdiviseur tessellation de Phong.
  • Mise à jour du subdiviseur Loop.

Importeurs

  • Implémentation d'un plug-in d'importation de fichiers FBX.

Techniques

  • Chaque technique de rendu est maintenant implémentée dans son propre plug-in.

PostEffects

  • Le premier plug-in d'effet post rendu a été implémenté: HDR Bloom.

CastorGUI

  • Nouveau plug-in, permettant la création d'IHM au sein des scènes Castor3D.

GuiCommon

  • L'aspect global des application avec IHM a été retravaillé, en utilisant wxAuiManager.
  • Utilisation de wxTreeCtrl et des wxPropertyGrid, pour lister les objets, et visualiser leurs propriétés.

Corrections

CastorUtils

  • Les matrices de transformation ont été corrigées.

Castor3D

  • Correction de l'instanciation GPU.
  • Correction d'un bug dans la gestion des matériaux des incrustations panneaux bordurés.
  • Correction d'un bug pour les incrustations, révélé sur les GPU Intel (était dû à un bug du driver AMD qui cachait ce bug).
  • Correction des billboards.

Subdiviseurs

  • Correction du sudiviseur PN Triangles, en utilisant des patches Bézier.

GlRenderSystem

  • Correction d'un crash sous Linux, avec GPU Intel.

Commentaires