Instancing will no longer be used under X instances

*Experimental* optimization


Former-commit-id: 4dee4905d59739b3ec062ef283d4b7561160e21d
This commit is contained in:
Lynix
2013-08-09 00:33:18 +02:00
parent b969c24060
commit 28eff9af30
4 changed files with 25 additions and 12 deletions

View File

@@ -29,6 +29,9 @@
/// Chaque modification d'un paramètre du module nécessite une recompilation de celui-ci
// À partir de combien d'instances d'un même mesh/matériau l'instancing doit-il être utilisé ?
#define NAZARA_GRAPHICS_INSTANCING_MIN_INSTANCES_COUNT 100
// Utilise un tracker pour repérer les éventuels leaks (Ralentit l'exécution)
#define NAZARA_GRAPHICS_MEMORYLEAKTRACKER 0

View File

@@ -14,6 +14,7 @@
#include <Nazara/Math/Box.hpp>
#include <Nazara/Math/Matrix4.hpp>
#include <map>
#include <tuple>
class NzCamera;
class NzMaterial;
@@ -85,7 +86,7 @@ class NAZARA_API NzForwardRenderQueue : public NzAbstractRenderQueue, NzResource
typedef std::map<const NzSkeletalMesh*, std::vector<SkeletalData>, SkeletalMeshComparator> SkeletalMeshContainer;
typedef std::map<const NzStaticMesh*, std::vector<StaticData>, StaticMeshComparator> StaticMeshContainer;
typedef std::map<const NzMaterial*, std::pair<SkeletalMeshContainer, StaticMeshContainer>, ModelMaterialComparator> MeshContainer;
typedef std::map<const NzMaterial*, std::tuple<bool, SkeletalMeshContainer, StaticMeshContainer>, ModelMaterialComparator> MeshContainer;
MeshContainer opaqueModels;
std::vector<std::pair<unsigned int, bool>> transparentsModels;