IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement 2D, 3D et Jeux Discussion :

Développement moteur de jeux FPS bas.


Sujet :

Développement 2D, 3D et Jeux

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Novembre 2023
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur de jeux vidéo

    Informations forums :
    Inscription : Novembre 2023
    Messages : 60
    Points : 50
    Points
    50
    Par défaut Développement moteur de jeux FPS bas.
    Salut! Je développe un moteur de jeux mais j'ai un FPS trop bas.

    J'essaie de débuguer avec un profiler mais il y a beaucoup de fonctions donc le fichier est assez volumineux.

    Voici ce que me donne le profiler (Je n'ai pas su mettre tout le fichier trop long) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    273
    274
    275
    276
    277
    278
    279
    280
    281
    282
    283
    284
    285
    286
    287
    288
    289
    290
    291
    292
    293
    294
    295
    296
    297
    298
    299
    300
    301
    302
    303
    304
    305
    306
    307
    308
    309
    310
    311
    312
    313
    314
    315
    316
    317
    318
    319
    320
    321
    322
    323
    324
    325
    326
    327
    328
    329
    330
    331
    332
    333
    334
    335
    336
    337
    338
    339
    340
    341
    342
    343
    344
    345
    346
    347
    348
    349
    350
    351
    352
    353
    354
    355
    356
    357
    358
    359
    360
    361
    362
    363
    364
    365
    366
    367
    368
    369
    370
    371
    372
    373
    374
    375
    376
    377
    378
    379
    380
    381
    382
    383
    384
    385
    386
    387
    388
    389
    390
    391
    392
    393
    394
    395
    396
    397
    398
    399
    400
    401
    402
    403
    404
    405
    406
    407
    408
    409
    410
    411
    412
    413
    414
    415
    416
    417
    418
    419
    420
    421
    422
    423
    424
    425
    426
    427
    428
    429
    430
    431
    432
    433
    434
    435
    436
    437
    438
    439
    440
    441
    442
    443
    444
    445
    446
    447
    448
    449
    450
    451
    452
    453
    454
    455
    456
    457
    458
    459
    460
    461
    462
    463
    464
    465
    466
    467
    468
    469
    470
    471
    472
    473
    474
    475
    476
    477
    Flat profile:
     
    Each sample counts as 0.01 seconds.
      %   cumulative   self              self     total           
     time   seconds   seconds    calls  us/call  us/call  name    
     20.62      1.67     1.67                             _mcount_private
      8.89      2.39     0.72                             odfaeg::graphic::Entity*& std::vector<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::emplace_back<odfaeg::graphic::Entity*>(odfaeg::graphic::Entity*&&)
      6.30      2.90     0.51                             __fentry__
      4.32      3.25     0.35                             __gnu_cxx::__normal_iterator<odfaeg::graphic::Entity**, std::vector<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> > >::operator-(long long) const
      3.09      3.50     0.25                             odfaeg::graphic::Entity*&& std::forward<odfaeg::graphic::Entity*>(std::remove_reference<odfaeg::graphic::Entity*>::type&)
      2.84      3.73     0.23                             odfaeg::graphic::GameObject::getChildren() const
      2.84      3.96     0.23                             std::vector<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::back()
      2.59      4.17     0.21                             decltype (::new ((void*)(0)) odfaeg::graphic::Entity*((declval<odfaeg::graphic::Entity*>)())) std::construct_at<odfaeg::graphic::Entity*, odfaeg::graphic::Entity*>(odfaeg::graphic::Entity**, odfaeg::graphic::Entity*&&)
      2.59      4.38     0.21                             std::tuple_element<0ull, std::tuple<odfaeg::graphic::Entity*, std::default_delete<odfaeg::graphic::Entity> > >::type const& std::get<0ull, odfaeg::graphic::Entity*, std::default_delete<odfaeg::graphic::Entity> >(std::tuple<odfaeg::graphic::Entity*, std::default_delete<odfaeg::graphic::Entity> > const&)
      2.35      4.57     0.19                             std::__uniq_ptr_impl<odfaeg::graphic::Entity, std::default_delete<odfaeg::graphic::Entity> >::_M_ptr() const
      2.35      4.76     0.19                             std::_Tuple_impl<0ull, odfaeg::graphic::Entity*, std::default_delete<odfaeg::graphic::Entity> >::_M_head(std::_Tuple_impl<0ull, odfaeg::graphic::Entity*, std::default_delete<odfaeg::graphic::Entity> > const&)
      2.35      4.95     0.19                             std::vector<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::push_back(odfaeg::graphic::Entity*&&)
      2.10      5.12     0.17                             std::vector<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::end()
      2.10      5.29     0.17                             odfaeg::graphic::Entity* const& std::__get_helper<0ull, odfaeg::graphic::Entity*, std::default_delete<odfaeg::graphic::Entity> >(std::_Tuple_impl<0ull, odfaeg::graphic::Entity*, std::default_delete<odfaeg::graphic::Entity> > const&)
      1.98      5.45     0.16                             __gnu_cxx::__normal_iterator<odfaeg::graphic::Entity**, std::vector<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> > >::__normal_iterator(odfaeg::graphic::Entity** const&)
      1.98      5.61     0.16                             std::vector<std::unique_ptr<odfaeg::graphic::Entity, std::default_delete<odfaeg::graphic::Entity> >, std::allocator<std::unique_ptr<odfaeg::graphic::Entity, std::default_delete<odfaeg::graphic::Entity> > > >::size() const
      1.73      5.75     0.14                             __gnu_cxx::__normal_iterator<odfaeg::graphic::Entity**, std::vector<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> > >::operator*() const
      1.73      5.89     0.14                             std::_Head_base<0ull, odfaeg::graphic::Entity*, false>::_M_head(std::_Head_base<0ull, odfaeg::graphic::Entity*, false> const&)
      1.60      6.02     0.13                             std::unique_ptr<odfaeg::graphic::Entity, std::default_delete<odfaeg::graphic::Entity> >::get() const
      1.23      6.12     0.10                             _ZN9__gnu_cxxeqIPPN6odfaeg7graphic8MaterialESt6vectorIS4_SaIS4_EEEEbRKNS_17__normal_iteratorIT_T0_EESE_QrqXeqcldtfL0p_4baseEcldtfL0p0_4baseERSt14convertible_toIbEE
      1.11      6.21     0.09                             sf::Vector3<float>::Vector3(float, float, float)
      1.11      6.30     0.09                             odfaeg::graphic::VertexBuffer::computeNormals()
      0.99      6.38     0.08 280444702     0.00     0.00  operator new(unsigned long long, void*)
      0.99      6.46     0.08                             odfaeg::graphic::Material::~Material()
      0.99      6.54     0.08                             void std::vector<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::_M_realloc_append<odfaeg::graphic::Entity*>(odfaeg::graphic::Entity*&&)
      0.99      6.62     0.08                             std::remove_reference<odfaeg::graphic::Entity*&>::type&& std::move<odfaeg::graphic::Entity*&>(odfaeg::graphic::Entity*&)
      0.86      6.69     0.07                             std::vector<std::unique_ptr<odfaeg::graphic::Entity, std::default_delete<odfaeg::graphic::Entity> >, std::allocator<std::unique_ptr<odfaeg::graphic::Entity, std::default_delete<odfaeg::graphic::Entity> > > >::operator[](unsigned long long) const
      0.86      6.76     0.07                             __fpclassify
      0.74      6.82     0.06                             __gnu_cxx::__normal_iterator<odfaeg::graphic::Material**, std::vector<odfaeg::graphic::Material*, std::allocator<odfaeg::graphic::Material*> > >::base() const
      0.74      6.88     0.06                             internal_modf
      0.74      6.94     0.06                             pow
      0.62      6.99     0.05                             __gnu_cxx::__normal_iterator<odfaeg::graphic::Material**, std::vector<odfaeg::graphic::Material*, std::allocator<odfaeg::graphic::Material*> > >::__normal_iterator(odfaeg::graphic::Material** const&)
      0.62      7.04     0.05                             __gnu_cxx::__normal_iterator<odfaeg::graphic::Material**, std::vector<odfaeg::graphic::Material*, std::allocator<odfaeg::graphic::Material*> > >::operator++(int)
      0.49      7.08     0.04                             sf::Vector3<float>::Vector3(float, float, float)
      0.49      7.12     0.04                             odfaeg::math::Vec3f::operator=(odfaeg::math::Vec3f const&)
      0.49      7.16     0.04                             __gnu_cxx::__normal_iterator<odfaeg::graphic::Material**, std::vector<odfaeg::graphic::Material*, std::allocator<odfaeg::graphic::Material*> > >::operator*() const
      0.49      7.20     0.04                             std::vector<odfaeg::graphic::Vertex, std::allocator<odfaeg::graphic::Vertex> >::operator[](unsigned long long)
      0.49      7.24     0.04                             std::vector<odfaeg::graphic::Material*, std::allocator<odfaeg::graphic::Material*> >::end()
      0.49      7.28     0.04                             __gnu_cxx::__enable_if<std::__is_scalar<float>::__value, void>::__type std::__fill_a1<float*, float>(float*, float*, float const&)
      0.37      7.31     0.03                             odfaeg::math::Vec3f::operator-(odfaeg::math::Vec3f const&)
      0.37      7.34     0.03                             std::vector<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::size() const
      0.37      7.37     0.03                             odfaeg::graphic::Entity** std::__niter_base<odfaeg::graphic::Entity**>(odfaeg::graphic::Entity**)
      0.25      7.39     0.02                             sf::Vector3<float>::Vector3()
      0.25      7.41     0.02                             odfaeg::math::Vec3f::set(float, float, float)
      0.25      7.43     0.02                             odfaeg::graphic::GameObject::operator==(odfaeg::graphic::Entity&)
      0.25      7.45     0.02                             odfaeg::math::Vec3f::getVec3sf() const
      0.25      7.47     0.02                             odfaeg::math::Vec3f::magnitude() const
      0.25      7.49     0.02                             odfaeg::math::Vec3f::normalize() const
      0.25      7.51     0.02                             odfaeg::graphic::GameObject::getParent() const
      0.25      7.53     0.02                             std::vector<odfaeg::graphic::Material::TextureInfo*, std::allocator<odfaeg::graphic::Material::TextureInfo*> >::size() const
      0.25      7.55     0.02                             std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const
      0.25      7.57     0.02                             std::vector<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::_S_max_size(std::allocator<odfaeg::graphic::Entity*> const&)
      0.25      7.59     0.02                             std::pow(float, float)
      0.25      7.61     0.02                             std::vector<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::_M_realloc_append<odfaeg::graphic::Entity*>(odfaeg::graphic::Entity*&&)::_Guard::_Guard(odfaeg::graphic::Entity**, unsigned long long, std::allocator<odfaeg::graphic::Entity*>&)
      0.25      7.63     0.02                             __fpclassifyf
      0.25      7.65     0.02                             __powi
      0.25      7.67     0.02                             do_powi_iter
      0.25      7.69     0.02                             powf
      0.25      7.71     0.02                             sqrtf
      0.12      7.72     0.01 13801952     0.00     0.00  unsigned long long const& std::min<unsigned long long>(unsigned long long const&, unsigned long long const&)
      0.12      7.73     0.01  6734857     0.00     0.00  std::__new_allocator<odfaeg::graphic::Entity*>::deallocate(odfaeg::graphic::Entity**, unsigned long long)
      0.12      7.74     0.01  1413908     0.01     0.01  odfaeg::math::Vec3f const& std::forward<odfaeg::math::Vec3f const&>(std::remove_reference<odfaeg::math::Vec3f const&>::type&)
      0.12      7.75     0.01  1354797     0.01     0.01  std::_Vector_base<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::_M_deallocate(odfaeg::graphic::Entity**, unsigned long long)
      0.12      7.76     0.01  1354758     0.01     0.01  std::__new_allocator<odfaeg::graphic::Entity*>::~__new_allocator()
      0.12      7.77     0.01  1009954     0.01     0.01  std::_Tuple_impl<0ull, odfaeg::physic::BoundingVolume*, std::default_delete<odfaeg::physic::BoundingVolume> >::_M_head(std::_Tuple_impl<0ull, odfaeg::physic::BoundingVolume*, std::default_delete<odfaeg::physic::BoundingVolume> > const&)
      0.12      7.78     0.01  1009954     0.01     0.02  odfaeg::physic::BoundingVolume* const& std::__get_helper<0ull, odfaeg::physic::BoundingVolume*, std::default_delete<odfaeg::physic::BoundingVolume> >(std::_Tuple_impl<0ull, odfaeg::physic::BoundingVolume*, std::default_delete<odfaeg::physic::BoundingVolume> > const&)
      0.12      7.79     0.01   850082     0.01     0.01  std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::size() const
      0.12      7.80     0.01   263351     0.04     0.04  std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_M_get_Tp_allocator()
      0.12      7.81     0.01                             bool sf::operator==<float>(sf::Vector3<float> const&, sf::Vector3<float> const&)
      0.12      7.82     0.01                             sf::Vector3<float> sf::operator-<float>(sf::Vector3<float> const&, sf::Vector3<float> const&)
      0.12      7.83     0.01                             odfaeg::math::Vec3f::Vec3f(float, float, float)
      0.12      7.84     0.01                             odfaeg::math::Matrix4f::operator*(odfaeg::math::Vec3f const&)
      0.12      7.85     0.01                             odfaeg::graphic::GameObject::getShadowCenter()
      0.12      7.86     0.01                             odfaeg::graphic::LightRenderComponent::drawNormals()
      0.12      7.87     0.01                             odfaeg::graphic::ShadowRenderComponent::drawNormal()
      0.12      7.88     0.01                             odfaeg::graphic::ReflectRefractRenderComponent::drawEnvReflNormal()
      0.12      7.89     0.01                             odfaeg::graphic::PerPixelLinkedListRenderComponent::drawNormals()
      0.12      7.90     0.01                             odfaeg::graphic::Tile::operator==(odfaeg::graphic::Entity&)
      0.12      7.91     0.01                             odfaeg::graphic::priv::glCheckError(char const*, unsigned int)
      0.12      7.92     0.01                             odfaeg::graphic::Entity::getId()
      0.12      7.93     0.01                             odfaeg::graphic::Vertex::Vertex()
      0.12      7.94     0.01                             odfaeg::graphic::Material::getTexture(int)
      0.12      7.95     0.01                             odfaeg::math::Vec3f::cross(odfaeg::math::Vec3f const&) const
      0.12      7.96     0.01                             odfaeg::graphic::VertexArray::getVertexCount() const
      0.12      7.97     0.01                             odfaeg::graphic::Vertex::operator!=(odfaeg::graphic::Vertex const&) const
      0.12      7.98     0.01                             odfaeg::graphic::Texture::getNativeHandle() const
      0.12      7.99     0.01                             std::vector<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::_M_check_len(unsigned long long, char const*) const
      0.12      8.00     0.01                             std::vector<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::max_size() const
      0.12      8.01     0.01                             std::vector<float, std::allocator<float> >::size() const
      0.12      8.02     0.01                             std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::data() const
      0.12      8.03     0.01                             std::_Vector_base<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::_M_allocate(unsigned long long)
      0.12      8.04     0.01                             std::vector<odfaeg::graphic::Instance, std::allocator<odfaeg::graphic::Instance> >::operator[](unsigned long long)
      0.12      8.05     0.01                             std::vector<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::_S_relocate(odfaeg::graphic::Entity**, odfaeg::graphic::Entity**, odfaeg::graphic::Entity**, std::allocator<odfaeg::graphic::Entity*>&)
      0.12      8.06     0.01                             std::vector<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::begin()
      0.12      8.07     0.01                             std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::_M_lower_bound(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >*, std::_Rb_tree_node_base*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
      0.12      8.08     0.01                             odfaeg::graphic::Face* std::__do_uninit_copy<odfaeg::graphic::Face const*, odfaeg::graphic::Face*>(odfaeg::graphic::Face const*, odfaeg::graphic::Face const*, odfaeg::graphic::Face*)
      0.12      8.09     0.01                             __gnu_cxx::__enable_if<std::__is_scalar<unsigned int>::__value, void>::__type std::__fill_a1<unsigned int*, unsigned int>(unsigned int*, unsigned int*, unsigned int const&)
      0.12      8.10     0.01                             operator delete(void*, unsigned long long)
      0.00      8.10     0.00  8095293     0.00     0.00  std::_Vector_base<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::_M_get_Tp_allocator()
      0.00      8.10     0.00  6887250     0.00     0.00  unsigned long long const& std::max<unsigned long long>(unsigned long long const&, unsigned long long const&)
      0.00      8.10     0.00  2003599     0.00     0.00  std::vector<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::operator[](unsigned long long)
      0.00      8.10     0.00  1856775     0.00     0.00  odfaeg::math::Vec3f* std::__addressof<odfaeg::math::Vec3f>(odfaeg::math::Vec3f&)
      0.00      8.10     0.00  1459295     0.00     0.00  std::vector<odfaeg::graphic::Face, std::allocator<odfaeg::graphic::Face> >::size() const
      0.00      8.10     0.00  1354797     0.00     0.00  void std::_Destroy_aux<true>::__destroy<odfaeg::graphic::Entity**>(odfaeg::graphic::Entity**, odfaeg::graphic::Entity**)
      0.00      8.10     0.00  1354797     0.00     0.00  void std::_Destroy<odfaeg::graphic::Entity**>(odfaeg::graphic::Entity**, odfaeg::graphic::Entity**)
      0.00      8.10     0.00  1354758     0.00     0.01  std::_Vector_base<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::_Vector_impl::~_Vector_impl()
      0.00      8.10     0.00  1354758     0.00     0.02  std::_Vector_base<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::~_Vector_base()
      0.00      8.10     0.00  1354758     0.00     0.02  std::vector<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::~vector()
      0.00      8.10     0.00  1219544     0.00     0.00  __gnu_cxx::__normal_iterator<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > >::base() const
      0.00      8.10     0.00  1009954     0.00     0.02  std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >::get() const
      0.00      8.10     0.00  1009954     0.00     0.02  std::__uniq_ptr_impl<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >::_M_ptr() const
      0.00      8.10     0.00  1009954     0.00     0.00  std::_Head_base<0ull, odfaeg::physic::BoundingVolume*, false>::_M_head(std::_Head_base<0ull, odfaeg::physic::BoundingVolume*, false> const&)
      0.00      8.10     0.00  1009954     0.00     0.02  std::tuple_element<0ull, std::tuple<odfaeg::physic::BoundingVolume*, std::default_delete<odfaeg::physic::BoundingVolume> > >::type const& std::get<0ull, odfaeg::physic::BoundingVolume*, std::default_delete<odfaeg::physic::BoundingVolume> >(std::tuple<odfaeg::physic::BoundingVolume*, std::default_delete<odfaeg::physic::BoundingVolume> > const&)
      0.00      8.10     0.00   575281     0.00     0.00  bool __gnu_cxx::operator!=<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > >(__gnu_cxx::__normal_iterator<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > > const&, __gnu_cxx::__normal_iterator<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > > const&)
      0.00      8.10     0.00   543190     0.00     0.00  __gnu_cxx::__normal_iterator<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > >::operator++()
      0.00      8.10     0.00   543190     0.00     0.00  __gnu_cxx::__normal_iterator<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > >::operator*() const
      0.00      8.10     0.00   543190     0.00     0.01  void std::_Construct<odfaeg::math::Vec3f, odfaeg::math::Vec3f const&>(odfaeg::math::Vec3f*, odfaeg::math::Vec3f const&)
      0.00      8.10     0.00   411366     0.00     0.00  odfaeg::graphic::Transformable::getPosition() const
      0.00      8.10     0.00   389564     0.00     0.00  std::_Vector_base<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::_M_get_Tp_allocator()
      0.00      8.10     0.00   354530     0.00     0.00  std::char_traits<char>::compare(char const*, char const*, unsigned long long)
      0.00      8.10     0.00   340262     0.00     0.00  bool std::operator==<char, std::char_traits<char>, std::allocator<char> >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
      0.00      8.10     0.00   339366     0.00     0.00  odfaeg::graphic::Transformable::getSize() const
      0.00      8.10     0.00   325550     0.00     0.00  std::_Vector_base<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::_M_get_Tp_allocator() const
      0.00      8.10     0.00   259830     0.00     0.00  __gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >::__normal_iterator(unsigned char const* const&)
      0.00      8.10     0.00   259830     0.00     0.00  __gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >::base() const
      0.00      8.10     0.00   259830     0.00     0.00  __gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > > std::__miter_base<__gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > > >(__gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >)
      0.00      8.10     0.00   259830     0.00     0.00  unsigned char const* std::__niter_base<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >(__gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >)
      0.00      8.10     0.00   259799     0.00     0.00  std::vector<unsigned char, std::allocator<unsigned char> >::size() const
      0.00      8.10     0.00   178995     0.00     0.00  std::__new_allocator<odfaeg::math::Vec3f>::~__new_allocator()
      0.00      8.10     0.00   171390     0.00     0.00  std::_Vector_base<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::_Vector_impl_data::_M_copy_data(std::_Vector_base<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::_Vector_impl_data const&)
      0.00      8.10     0.00   159210     0.00     0.00  std::_Vector_base<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::_M_allocate(unsigned long long)
      0.00      8.10     0.00   159210     0.00     0.00  std::__new_allocator<odfaeg::math::Vec3f>::allocate(unsigned long long, void const*)
      0.00      8.10     0.00   152567     0.00     0.00  std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl_data::_Vector_impl_data()
      0.00      8.10     0.00   152545     0.00     0.00  std::__new_allocator<odfaeg::math::Vec3f>::deallocate(odfaeg::math::Vec3f*, unsigned long long)
      0.00      8.10     0.00   133467     0.00     0.00  std::__new_allocator<unsigned char>::~__new_allocator()
      0.00      8.10     0.00   133436     0.00     0.00  std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl::~_Vector_impl()
      0.00      8.10     0.00   133436     0.00     0.00  std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_M_deallocate(unsigned char*, unsigned long long)
      0.00      8.10     0.00   133436     0.00     0.00  std::_Vector_base<unsigned char, std::allocator<unsigned char> >::~_Vector_base()
      0.00      8.10     0.00   133164     0.00     0.00  __gnu_cxx::__normal_iterator<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > >::__normal_iterator(odfaeg::math::Vec3f const* const&)
      0.00      8.10     0.00   132030     0.00     0.00  std::_Vector_base<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::_Vector_impl_data::_Vector_impl_data()
      0.00      8.10     0.00   131395     0.00     0.00  void std::_Destroy_aux<true>::__destroy<odfaeg::math::Vec3f*>(odfaeg::math::Vec3f*, odfaeg::math::Vec3f*)
      0.00      8.10     0.00   131395     0.00     0.00  void std::_Destroy<odfaeg::math::Vec3f*>(odfaeg::math::Vec3f*, odfaeg::math::Vec3f*)
      0.00      8.10     0.00   129915     0.00     0.00  std::vector<unsigned char, std::allocator<unsigned char> >::end() const
      0.00      8.10     0.00   129915     0.00     0.00  std::vector<unsigned char, std::allocator<unsigned char> >::begin() const
      0.00      8.10     0.00   129915     0.00     0.00  unsigned char* std::__copy_move<false, true, std::random_access_iterator_tag>::__copy_m<unsigned char const, unsigned char>(unsigned char const*, unsigned char const*, unsigned char*)
      0.00      8.10     0.00   129915     0.00     0.00  unsigned char* std::__niter_base<unsigned char*>(unsigned char*)
      0.00      8.10     0.00   129915     0.00     0.00  unsigned char* std::__copy_move_a1<false, unsigned char const*, unsigned char*>(unsigned char const*, unsigned char const*, unsigned char*)
      0.00      8.10     0.00   129915     0.00     0.00  unsigned char* std::__copy_move_a2<false, unsigned char const*, unsigned char*>(unsigned char const*, unsigned char const*, unsigned char*)
      0.00      8.10     0.00   126379     0.00     0.00  std::_Vector_base<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::_M_deallocate(odfaeg::math::Vec3f*, unsigned long long)
      0.00      8.10     0.00   122359     0.00     0.00  std::_Vector_base<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::_Vector_impl::~_Vector_impl()
      0.00      8.10     0.00   122359     0.00     0.00  std::_Vector_base<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::~_Vector_base()
      0.00      8.10     0.00   122359     0.00     0.00  std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::~vector()
      0.00      8.10     0.00    66582     0.00     0.00  std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::end() const
      0.00      8.10     0.00    66582     0.00     0.00  std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::begin() const
      0.00      8.10     0.00    57130     0.00     0.00  std::_Vector_base<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::_Vector_impl_data::_M_swap_data(std::_Vector_base<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::_Vector_impl_data&)
      0.00      8.10     0.00    57130     0.00     0.00  std::_Vector_base<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::_Vector_impl_data::_Vector_impl_data()
      0.00      8.10     0.00    56636     0.00     0.00  std::_Vector_base<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::_Vector_impl::_Vector_impl(std::allocator<odfaeg::math::Vec3f> const&)
      0.00      8.10     0.00    51455     0.00     0.00  std::__new_allocator<char>::~__new_allocator()
      0.00      8.10     0.00    51109     0.00     0.00  std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Alloc_hider::~_Alloc_hider()
      0.00      8.10     0.00    32379     0.00     0.00  odfaeg::graphic::Transformable::getTransform()
      0.00      8.10     0.00    32091     0.00     0.12  odfaeg::math::Vec3f* std::__uninitialized_copy<false>::__uninit_copy<__gnu_cxx::__normal_iterator<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > >, odfaeg::math::Vec3f*>(__gnu_cxx::__normal_iterator<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > >, __gnu_cxx::__normal_iterator<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > >, odfaeg::math::Vec3f*)
      0.00      8.10     0.00    32091     0.00     0.12  odfaeg::math::Vec3f* std::__do_uninit_copy<__gnu_cxx::__normal_iterator<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > >, odfaeg::math::Vec3f*>(__gnu_cxx::__normal_iterator<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > >, __gnu_cxx::__normal_iterator<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > >, odfaeg::math::Vec3f*)
      0.00      8.10     0.00    32091     0.00     0.12  odfaeg::math::Vec3f* std::uninitialized_copy<__gnu_cxx::__normal_iterator<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > >, odfaeg::math::Vec3f*>(__gnu_cxx::__normal_iterator<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > >, __gnu_cxx::__normal_iterator<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > >, odfaeg::math::Vec3f*)
      0.00      8.10     0.00    32091     0.00     0.12  odfaeg::math::Vec3f* std::__uninitialized_copy_a<__gnu_cxx::__normal_iterator<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > >, odfaeg::math::Vec3f*, odfaeg::math::Vec3f>(__gnu_cxx::__normal_iterator<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > >, __gnu_cxx::__normal_iterator<odfaeg::math::Vec3f const*, std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > >, odfaeg::math::Vec3f*, std::allocator<odfaeg::math::Vec3f>&)
      0.00      8.10     0.00    28565     0.00     0.00  std::_Vector_base<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::get_allocator() const
      0.00      8.10     0.00    28565     0.00     0.00  std::_Vector_base<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::_Vector_base(std::allocator<odfaeg::math::Vec3f> const&)
      0.00      8.10     0.00    28565     0.00     0.00  std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::_M_move_assign(std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >&&, std::integral_constant<bool, true>)
      0.00      8.10     0.00    28565     0.00     0.00  std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::vector(std::allocator<odfaeg::math::Vec3f> const&)
      0.00      8.10     0.00    28565     0.00     0.00  std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::operator=(std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >&&)
      0.00      8.10     0.00    28565     0.00     0.00  std::remove_reference<std::allocator<odfaeg::math::Vec3f>&>::type&& std::move<std::allocator<odfaeg::math::Vec3f>&>(std::allocator<odfaeg::math::Vec3f>&)
      0.00      8.10     0.00    28565     0.00     0.00  std::remove_reference<std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >&>::type&& std::move<std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >&>(std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >&)
      0.00      8.10     0.00    28071     0.00     0.00  std::_Vector_base<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::_M_create_storage(unsigned long long)
      0.00      8.10     0.00    28071     0.00     0.00  std::_Vector_base<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::_Vector_base(unsigned long long, std::allocator<odfaeg::math::Vec3f> const&)
      0.00      8.10     0.00    28071     0.00     0.14  std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> >::vector(std::vector<odfaeg::math::Vec3f, std::allocator<odfaeg::math::Vec3f> > const&)
      0.00      8.10     0.00    18476     0.00     0.00  std::char_traits<char>::length(char const*)
      0.00      8.10     0.00    15171     0.00     0.00  std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::operator()(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const
      0.00      8.10     0.00    15171     0.00     0.00  bool std::operator< <char, std::char_traits<char>, std::allocator<char> >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
      0.00      8.10     0.00    12728     0.00     0.00  odfaeg::core::Registered<odfaeg::physic::BoundingVolume>::Key::Key()
      0.00      8.10     0.00    12728     0.00     0.00  odfaeg::core::Registered<odfaeg::physic::BoundingVolume>::Registered()
      0.00      8.10     0.00    12728     0.00     0.00  odfaeg::core::Serializer<odfaeg::physic::BoundingVolume>::Serializer()
      0.00      8.10     0.00    12728     0.00     0.00  odfaeg::physic::BaseInterface::BaseInterface()
      0.00      8.10     0.00    12728     0.00     0.00  std::_Vector_base<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >, std::allocator<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> > > >::_Vector_impl::_Vector_impl()
      0.00      8.10     0.00    12728     0.00     0.00  std::_Vector_base<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >, std::allocator<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> > > >::_Vector_impl_data::_Vector_impl_data()
      0.00      8.10     0.00    12728     0.00     0.00  std::_Vector_base<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >, std::allocator<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> > > >::_Vector_base()
      0.00      8.10     0.00    12728     0.00     0.00  std::vector<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >, std::allocator<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> > > >::vector()
      0.00      8.10     0.00    11395     0.00     0.00  odfaeg::physic::BoundingBox::~BoundingBox()
      0.00      8.10     0.00    11395     0.00     0.00  odfaeg::physic::BaseInterface::~BaseInterface()
      0.00      8.10     0.00    11395     0.00     0.00  odfaeg::physic::BoundingVolume::~BoundingVolume()
      0.00      8.10     0.00    11395     0.00     0.00  void std::_Destroy_aux<false>::__destroy<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >*>(std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >*, std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >*)
      0.00      8.10     0.00    11395     0.00     0.00  std::_Vector_base<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >, std::allocator<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> > > >::_Vector_impl::~_Vector_impl()
      0.00      8.10     0.00    11395     0.00     0.00  std::_Vector_base<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >, std::allocator<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> > > >::_M_deallocate(std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >*, unsigned long long)
      0.00      8.10     0.00    11395     0.00     0.00  std::_Vector_base<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >, std::allocator<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> > > >::_M_get_Tp_allocator()
      0.00      8.10     0.00    11395     0.00     0.00  std::_Vector_base<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >, std::allocator<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> > > >::~_Vector_base()
      0.00      8.10     0.00    11395     0.00     0.00  std::__new_allocator<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> > >::~__new_allocator()
      0.00      8.10     0.00    11395     0.00     0.00  std::vector<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >, std::allocator<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> > > >::~vector()
      0.00      8.10     0.00    11395     0.00     0.00  void std::_Destroy<std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >*>(std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >*, std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >*)
      0.00      8.10     0.00    11025     0.00     0.00  bool std::operator==<char, std::char_traits<char>, std::allocator<char> >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*)
      0.00      8.10     0.00     6941     0.00     0.00  std::_Vector_base<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::_Vector_impl_data::_Vector_impl_data()
      0.00      8.10     0.00     6921     0.00     0.00  odfaeg::physic::BoundingVolume::operator=(odfaeg::physic::BoundingVolume const&)
      0.00      8.10     0.00     6850     0.00     0.00  void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*>(char const*, char const*, std::forward_iterator_tag)
      0.00      8.10     0.00     6850     0.00     0.00  std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*>(char const*, char const*, std::forward_iterator_tag)::_Guard::_Guard(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)
      0.00      8.10     0.00     6850     0.00     0.00  std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*>(char const*, char const*, std::forward_iterator_tag)::_Guard::~_Guard()
      0.00      8.10     0.00     6703     0.00     0.00  std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string<std::allocator<char> >(char const*, std::allocator<char> const&)
      0.00      8.10     0.00     5713     0.00     0.00  odfaeg::physic::BoundingBox::operator=(odfaeg::physic::BoundingBox&&)
      0.00      8.10     0.00     5276     0.00     0.68  odfaeg::physic::BoundingBox::BoundingBox(odfaeg::physic::BoundingBox const&)
      0.00      8.10     0.00     5276     0.00     0.00  odfaeg::physic::BoundingVolume::BoundingVolume(odfaeg::physic::BoundingVolume const&)
      0.00      8.10     0.00     4624     0.00     0.00  std::_Function_base::_M_empty() const
      0.00      8.10     0.00     4621     0.00     0.00  std::_Any_data::_M_access() const
      0.00      8.10     0.00     2825     0.00     0.00  std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&& std::forward<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::remove_reference<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::type&)
      0.00      8.10     0.00     2815     0.00     0.00  std::_Head_base<0ull, odfaeg::physic::BoundingVolume*, false>::_M_head(std::_Head_base<0ull, odfaeg::physic::BoundingVolume*, false>&)
      0.00      8.10     0.00     2815     0.00     0.00  std::_Tuple_impl<0ull, odfaeg::physic::BoundingVolume*, std::default_delete<odfaeg::physic::BoundingVolume> >::_M_head(std::_Tuple_impl<0ull, odfaeg::physic::BoundingVolume*, std::default_delete<odfaeg::physic::BoundingVolume> >&)
      0.00      8.10     0.00     2815     0.00     0.00  std::__uniq_ptr_impl<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >::_M_ptr()
      0.00      8.10     0.00     2815     0.00     0.00  odfaeg::physic::BoundingVolume*& std::__get_helper<0ull, odfaeg::physic::BoundingVolume*, std::default_delete<odfaeg::physic::BoundingVolume> >(std::_Tuple_impl<0ull, odfaeg::physic::BoundingVolume*, std::default_delete<odfaeg::physic::BoundingVolume> >&)
      0.00      8.10     0.00     2815     0.00     0.00  std::tuple_element<0ull, std::tuple<odfaeg::physic::BoundingVolume*, std::default_delete<odfaeg::physic::BoundingVolume> > >::type& std::get<0ull, odfaeg::physic::BoundingVolume*, std::default_delete<odfaeg::physic::BoundingVolume> >(std::tuple<odfaeg::physic::BoundingVolume*, std::default_delete<odfaeg::physic::BoundingVolume> >&)
      0.00      8.10     0.00     2498     0.00     0.00  __gnu_cxx::__aligned_membuf<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::_M_ptr()
      0.00      8.10     0.00     2498     0.00     0.00  __gnu_cxx::__aligned_membuf<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::_M_addr()
      0.00      8.10     0.00     2498     0.00     0.00  std::_Rb_tree_node<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::_M_valptr()
      0.00      8.10     0.00     2047     0.00     0.00  odfaeg::graphic::Transformable::recomputeBounds()
      0.00      8.10     0.00     2046     0.00     0.00  odfaeg::graphic::Transformable::recomputeBounds2()
      0.00      8.10     0.00     2026     0.00     0.00  std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::operator[](unsigned long long)
      0.00      8.10     0.00     2012     0.00     0.00  std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >* std::__addressof<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)
      0.00      8.10     0.00     1430     0.00     0.00  odfaeg::graphic::Transformable::move(odfaeg::math::Vec3f)
      0.00      8.10     0.00     1338     0.00     0.00  std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> >::_Rb_tree_iterator(std::_Rb_tree_node_base*)
      0.00      8.10     0.00     1299     0.00     0.00  std::_Vector_base<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::_Vector_impl::_Vector_impl()
      0.00      8.10     0.00     1299     0.00     0.00  std::_Vector_base<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::_Vector_base()
      0.00      8.10     0.00     1299     0.00     0.00  std::vector<odfaeg::graphic::Entity*, std::allocator<odfaeg::graphic::Entity*> >::vector()
      0.00      8.10     0.00      822     0.00     0.00  std::_Rb_tree<int, std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::_Select1st<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >::_S_right(std::_Rb_tree_node_base*)
      0.00      8.10     0.00      806     0.00     0.00  std::vector<odfaeg::graphic::Tile*, std::allocator<odfaeg::graphic::Tile*> >::size() const
      0.00      8.10     0.00      800     0.00     0.00  std::_Head_base<1ull, std::default_delete<odfaeg::physic::BoundingVolume>, true>::_M_head(std::_Head_base<1ull, std::default_delete<odfaeg::physic::BoundingVolume>, true>&)
      0.00      8.10     0.00      800     0.00     0.00  std::_Tuple_impl<1ull, std::default_delete<odfaeg::physic::BoundingVolume> >::_M_head(std::_Tuple_impl<1ull, std::default_delete<odfaeg::physic::BoundingVolume> >&)
      0.00      8.10     0.00      800     0.00     0.00  std::__uniq_ptr_impl<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >::_M_deleter()
      0.00      8.10     0.00      800     0.00     0.00  std::default_delete<odfaeg::physic::BoundingVolume>& std::__get_helper<1ull, std::default_delete<odfaeg::physic::BoundingVolume>>(std::_Tuple_impl<1ull, std::default_delete<odfaeg::physic::BoundingVolume>>&)
      0.00      8.10     0.00      800     0.00     0.00  std::tuple_element<1ull, std::tuple<odfaeg::physic::BoundingVolume*, std::default_delete<odfaeg::physic::BoundingVolume> > >::type& std::get<1ull, odfaeg::physic::BoundingVolume*, std::default_delete<odfaeg::physic::BoundingVolume> >(std::tuple<odfaeg::physic::BoundingVolume*, std::default_delete<odfaeg::physic::BoundingVolume> >&)
      0.00      8.10     0.00      759     0.00     0.00  std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, odfaeg::core::Command, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> > >::end()
      0.00      8.10     0.00      759     0.00     0.00  std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> > >::end()
      0.00      8.10     0.00      757     0.00     0.00  std::unique_ptr<odfaeg::graphic::RenderComponentManager, std::default_delete<odfaeg::graphic::RenderComponentManager> >::get() const
      0.00      8.10     0.00      757     0.00     0.00  std::__uniq_ptr_impl<odfaeg::graphic::RenderComponentManager, std::default_delete<odfaeg::graphic::RenderComponentManager> >::_M_ptr() const
      0.00      8.10     0.00      757     0.00     0.00  std::_Head_base<0ull, odfaeg::graphic::RenderComponentManager*, false>::_M_head(std::_Head_base<0ull, odfaeg::graphic::RenderComponentManager*, false> const&)
      0.00      8.10     0.00      757     0.00     0.00  std::_Tuple_impl<0ull, odfaeg::graphic::RenderComponentManager*, std::default_delete<odfaeg::graphic::RenderComponentManager> >::_M_head(std::_Tuple_impl<0ull, odfaeg::graphic::RenderComponentManager*, std::default_delete<odfaeg::graphic::RenderComponentManager> > const&)
      0.00      8.10     0.00      757     0.00     0.00  odfaeg::graphic::RenderComponentManager* const& std::__get_helper<0ull, odfaeg::graphic::RenderComponentManager*, std::default_delete<odfaeg::graphic::RenderComponentManager> >(std::_Tuple_impl<0ull, odfaeg::graphic::RenderComponentManager*, std::default_delete<odfaeg::graphic::RenderComponentManager> > const&)
      0.00      8.10     0.00      757     0.00     0.00  std::tuple_element<0ull, std::tuple<odfaeg::graphic::RenderComponentManager*, std::default_delete<odfaeg::graphic::RenderComponentManager> > >::type const& std::get<0ull, odfaeg::graphic::RenderComponentManager*, std::default_delete<odfaeg::graphic::RenderComponentManager> >(std::tuple<odfaeg::graphic::RenderComponentManager*, std::default_delete<odfaeg::graphic::RenderComponentManager> > const&)
      0.00      8.10     0.00      751     0.00     0.00  std::operator!=(std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> > const&, std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> > const&)
      0.00      8.10     0.00      687     0.00     0.00  std::unique_ptr<odfaeg::graphic::RenderComponentManager, std::default_delete<odfaeg::graphic::RenderComponentManager> >::operator->() const
      0.00      8.10     0.00      648     0.00     0.00  __gnu_cxx::__aligned_membuf<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> >::_M_ptr()
      0.00      8.10     0.00      648     0.00     0.00  __gnu_cxx::__aligned_membuf<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> >::_M_addr()
      0.00      8.10     0.00      648     0.00     0.00  std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> >::_M_valptr()
      0.00      8.10     0.00      632     0.00     0.00  std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> >::operator->() const
      0.00      8.10     0.00      586     0.00     0.00  odfaeg::graphic::View::~View()
      0.00      8.10     0.00      547     0.00     0.00  std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> > >::begin()
      0.00      8.10     0.00      539     0.00     0.00  std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, odfaeg::core::Command, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> > >::begin()
      0.00      8.10     0.00      516     0.00     0.00  std::_Rb_tree_header::_M_reset()
      0.00      8.10     0.00      478     0.00     0.00  std::vector<std::pair<odfaeg::graphic::RenderWindow*, bool>, std::allocator<std::pair<odfaeg::graphic::RenderWindow*, bool> > >::size() const
      0.00      8.10     0.00      463     0.00     0.00  std::vector<std::pair<odfaeg::graphic::RenderWindow*, bool>, std::allocator<std::pair<odfaeg::graphic::RenderWindow*, bool> > >::operator[](unsigned long long)
      0.00      8.10     0.00      410     0.00     0.00  std::_Rb_tree<int, std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::_Select1st<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >::_M_mbegin() const
      0.00      8.10     0.00      410     0.00     0.00  std::_Rb_tree<int, std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::_Select1st<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >::_M_begin()
      0.00      8.10     0.00      407     0.00     0.00  std::_Rb_tree<int, std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::_Select1st<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >::_S_left(std::_Rb_tree_node_base*)
      0.00      8.10     0.00      407     0.00     0.00  std::remove_reference<odfaeg::physic::BoundingVolume*&>::type&& std::move<odfaeg::physic::BoundingVolume*&>(odfaeg::physic::BoundingVolume*&)
      0.00      8.10     0.00      403     0.00     0.00  odfaeg::graphic::EntityFactory& std::forward<odfaeg::graphic::EntityFactory&>(std::remove_reference<odfaeg::graphic::EntityFactory&>::type&)
      0.00      8.10     0.00      401     0.00     0.00  std::unique_ptr<odfaeg::physic::BoundingVolume, std::default_delete<odfaeg::physic::BoundingVolume> >::~unique_ptr()
      0.00      8.10     0.00      399     0.00     0.00  __gnu_cxx::__aligned_membuf<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> >::_M_ptr()
      0.00      8.10     0.00      399     0.00     0.00  __gnu_cxx::__aligned_membuf<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> >::_M_addr()
      0.00      8.10     0.00      399     0.00     0.00  std::_Rb_tree_node<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> >::_M_valptr()
      0.00      8.10     0.00      379     0.00     0.68  odfaeg::graphic::View::View(odfaeg::graphic::View const&)
      0.00      8.10     0.00      361     0.00     0.00  std::_Rb_tree_iterator<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> >::operator->() const
      0.00      8.10     0.00      361     0.00     0.00  std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::size() const
      0.00      8.10     0.00      361     0.00     0.00  std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const& std::forward<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>(std::remove_reference<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>::type&)
      0.00      8.10     0.00      338     0.00     0.00  std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >::_Rb_tree_iterator(std::_Rb_tree_node_base*)
      0.00      8.10     0.00      333     0.00     0.00  __gnu_cxx::__aligned_membuf<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >::_M_ptr() const
      0.00      8.10     0.00      333     0.00     0.00  __gnu_cxx::__aligned_membuf<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >::_M_addr() const
      0.00      8.10     0.00      333     0.00     0.00  std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >::operator()(std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> const&) const
      0.00      8.10     0.00      333     0.00     0.00  std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >::_M_valptr() const
      0.00      8.10     0.00      333     0.00     0.00  std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> > >::_S_key(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> > const*)
      0.00      8.10     0.00      286     0.00     0.00  std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> > >::_M_mbegin() const
      0.00      8.10     0.00      286     0.00     0.00  std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> > >::_M_begin()
      0.00      8.10     0.00      279     0.00     0.00  std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> >::_Rb_tree_iterator()
      0.00      8.10     0.00      270     0.00     0.00  std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> > >::_M_erase(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> >*)
      0.00      8.10     0.00      263     0.00     0.00  std::__new_allocator<unsigned int>::deallocate(unsigned int*, unsigned long long)
      0.00      8.10     0.00      261     0.00     0.00  std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::_M_erase_at_end(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)
      0.00      8.10     0.00      261     0.00     0.00  std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::clear()
      0.00      8.10     0.00      260     0.00     0.00  odfaeg::core::Listener::processEvents()
      0.00      8.10     0.00      260     0.00     0.00  std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, odfaeg::core::Command, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> > >::clear()
      0.00      8.10     0.00      260     0.00     0.00  std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> > >::clear()
      0.00      8.10     0.00      234     0.00     0.00  __gcc_deregister_frame
      0.00      8.10     0.00      220     0.00     0.00  std::operator==(std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> > const&, std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> > const&)
      0.00      8.10     0.00      219     0.00     0.00  std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> > >::end()
      0.00      8.10     0.00      218     0.00     0.00  odfaeg::core::Application::getWorld()
      0.00      8.10     0.00      212     0.00     0.00  std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> >::operator++(int)
      0.00      8.10     0.00      208     0.00     0.00  odfaeg::graphic::World::drawOnComponents(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, sf::BlendMode)
      0.00      8.10     0.00      208     0.00     0.00  sf::Time&& std::forward<sf::Time>(std::remove_reference<sf::Time>::type&)
      0.00      8.10     0.00      208     0.00     0.00  odfaeg::physic::EmissionInterface& std::forward<odfaeg::physic::EmissionInterface&>(std::remove_reference<odfaeg::physic::EmissionInterface&>::type&)
      0.00      8.10     0.00      195     0.00     0.00  std::_Rb_tree_node_base*& std::forward<std::_Rb_tree_node_base*&>(std::remove_reference<std::_Rb_tree_node_base*&>::type&)
      0.00      8.10     0.00      192     0.00     0.00  bool&& std::forward<bool>(std::remove_reference<bool>::type&)
      0.00      8.10     0.00      183     0.00     0.00  std::_Any_data::_M_access()
      0.00      8.10     0.00      168     0.00     0.00  std::_Head_base<0ull, odfaeg::core::FastDelegate<bool>*, false>::_M_head(std::_Head_base<0ull, odfaeg::core::FastDelegate<bool>*, false>&)
      0.00      8.10     0.00      168     0.00     0.00  std::_Tuple_impl<0ull, odfaeg::core::FastDelegate<bool>*, std::default_delete<odfaeg::core::FastDelegate<bool> > >::_M_head(std::_Tuple_impl<0ull, odfaeg::core::FastDelegate<bool>*, std::default_delete<odfaeg::core::FastDelegate<bool> > >&)
      0.00      8.10     0.00      168     0.00     0.00  std::__uniq_ptr_impl<odfaeg::core::FastDelegate<bool>, std::default_delete<odfaeg::core::FastDelegate<bool> > >::_M_ptr()
      0.00      8.10     0.00      168     0.00     0.00  std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> > >::_S_left(std::_Rb_tree_node_base*)
      0.00      8.10     0.00      168     0.00     0.00  odfaeg::core::FastDelegate<bool>*& std::__get_helper<0ull, odfaeg::core::FastDelegate<bool>*, std::default_delete<odfaeg::core::FastDelegate<bool> > >(std::_Tuple_impl<0ull, odfaeg::core::FastDelegate<bool>*, std::default_delete<odfaeg::core::FastDelegate<bool> > >&)
      0.00      8.10     0.00      168     0.00     0.00  std::tuple_element<0ull, std::tuple<odfaeg::core::FastDelegate<bool>*, std::default_delete<odfaeg::core::FastDelegate<bool> > > >::type& std::get<0ull, odfaeg::core::FastDelegate<bool>*, std::default_delete<odfaeg::core::FastDelegate<bool> > >(std::tuple<odfaeg::core::FastDelegate<bool>*, std::default_delete<odfaeg::core::FastDelegate<bool> > >&)
      0.00      8.10     0.00      162     0.00     0.00  __gnu_cxx::__normal_iterator<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource const*, std::vector<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource, std::allocator<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource> > >::base() const
      0.00      8.10     0.00      148     0.00     0.00  std::_Head_base<0ull, odfaeg::graphic::Texture*, false>::_M_head(std::_Head_base<0ull, odfaeg::graphic::Texture*, false>&)
      0.00      8.10     0.00      148     0.00     0.00  std::_Tuple_impl<0ull, odfaeg::graphic::Texture*, std::default_delete<odfaeg::graphic::Texture> >::_M_head(std::_Tuple_impl<0ull, odfaeg::graphic::Texture*, std::default_delete<odfaeg::graphic::Texture> >&)
      0.00      8.10     0.00      148     0.00     0.00  std::__uniq_ptr_impl<odfaeg::graphic::Texture, std::default_delete<odfaeg::graphic::Texture> >::_M_ptr()
      0.00      8.10     0.00      148     0.00     0.00  odfaeg::graphic::Texture*& std::__get_helper<0ull, odfaeg::graphic::Texture*, std::default_delete<odfaeg::graphic::Texture> >(std::_Tuple_impl<0ull, odfaeg::graphic::Texture*, std::default_delete<odfaeg::graphic::Texture> >&)
      0.00      8.10     0.00      148     0.00     0.00  std::tuple_element<0ull, std::tuple<odfaeg::graphic::Texture*, std::default_delete<odfaeg::graphic::Texture> > >::type& std::get<0ull, odfaeg::graphic::Texture*, std::default_delete<odfaeg::graphic::Texture> >(std::tuple<odfaeg::graphic::Texture*, std::default_delete<odfaeg::graphic::Texture> >&)
      0.00      8.10     0.00      146     0.00     0.00  __gnu_cxx::__normal_iterator<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource const*, std::vector<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource, std::allocator<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource> > >::__normal_iterator(odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource const* const&)
      0.00      8.10     0.00      134     0.00     0.00  std::_Rb_tree_header::_Rb_tree_header()
      0.00      8.10     0.00      133     0.00     0.00  std::pair<odfaeg::graphic::RenderWindow*, odfaeg::window::IEvent>&& std::forward<std::pair<odfaeg::graphic::RenderWindow*, odfaeg::window::IEvent> >(std::remove_reference<std::pair<odfaeg::graphic::RenderWindow*, odfaeg::window::IEvent> >::type&)
      0.00      8.10     0.00      117     0.00     0.00  std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> > >::_M_end()
      0.00      8.10     0.00      115     0.00     0.00  __gnu_cxx::__aligned_membuf<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >::_M_ptr()
      0.00      8.10     0.00      115     0.00     0.00  __gnu_cxx::__aligned_membuf<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >::_M_addr()
      0.00      8.10     0.00      115     0.00     0.00  std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >::_M_valptr()
      0.00      8.10     0.00      113     0.00     0.00  std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> > >::_M_mbegin() const
      0.00      8.10     0.00      113     0.00     0.00  std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> > >::_M_begin()
      0.00      8.10     0.00      111     0.00     0.00  std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, sf::Clock, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> > >::end()
      0.00      8.10     0.00      111     0.00     0.00  std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> > >::_M_lower_bound(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >*, std::_Rb_tree_node_base*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
      0.00      8.10     0.00      111     0.00     0.00  std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> > >::_S_key(std::_Rb_tree_node_base const*)
      0.00      8.10     0.00      109     0.00     0.00  odfaeg::core::Application::getRenderWindow(unsigned int)
      0.00      8.10     0.00      108     0.00     0.00  odfaeg::core::Application::getClock(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)
      0.00      8.10     0.00      108     0.00     0.00  std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >::operator->() const
      0.00      8.10     0.00      108     0.00     0.00  std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, sf::Clock, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> > >::find(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
      0.00      8.10     0.00      108     0.00     0.00  std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> > >::find(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
      0.00      8.10     0.00      107     0.00     0.00  odfaeg::physic::UniversalEmitter& std::forward<odfaeg::physic::UniversalEmitter&>(std::remove_reference<odfaeg::physic::UniversalEmitter&>::type&)
      0.00      8.10     0.00      100     0.00     0.00  __gnu_cxx::__aligned_membuf<std::pair<MyAppli::TEXTURES const, unsigned int> >::_M_ptr() const
      0.00      8.10     0.00      100     0.00     0.00  __gnu_cxx::__aligned_membuf<std::pair<MyAppli::TEXTURES const, unsigned int> >::_M_addr() const
      0.00      8.10     0.00      100     0.00     0.00  std::_Rb_tree_node<std::pair<MyAppli::TEXTURES const, unsigned int> >::_M_valptr() const
      0.00      8.10     0.00       99     0.00     0.00  std::_Function_base::_Function_base()
      0.00      8.10     0.00       98     0.00     0.00  std::_Select1st<std::pair<MyAppli::TEXTURES const, unsigned int> >::operator()(std::pair<MyAppli::TEXTURES const, unsigned int> const&) const
      0.00      8.10     0.00       98     0.00     0.00  std::_Rb_tree<MyAppli::TEXTURES, std::pair<MyAppli::TEXTURES const, unsigned int>, std::_Select1st<std::pair<MyAppli::TEXTURES const, unsigned int> >, std::less<MyAppli::TEXTURES>, std::allocator<std::pair<MyAppli::TEXTURES const, unsigned int> > >::_S_key(std::_Rb_tree_node<std::pair<MyAppli::TEXTURES const, unsigned int> > const*)
      0.00      8.10     0.00       91     0.00     0.00  std::less<MyAppli::TEXTURES>::operator()(MyAppli::TEXTURES const&, MyAppli::TEXTURES const&) const
      0.00      8.10     0.00       90     0.00     0.00  std::_Function_base::~_Function_base()
      0.00      8.10     0.00       88     0.00     0.00  std::_Rb_tree_key_compare<std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::_Rb_tree_key_compare()
      0.00      8.10     0.00       86     0.00     0.00  std::vector<odfaeg::graphic::g3d::Wall*, std::allocator<odfaeg::graphic::g3d::Wall*> >::size() const
      0.00      8.10     0.00       83     0.00     0.00  sf::Rect<int>::Rect()
      0.00      8.10     0.00       82     0.00     0.00  std::_Rb_tree_iterator<std::pair<MyAppli::TEXTURES const, unsigned int> >::_Rb_tree_iterator(std::_Rb_tree_node_base*)
      0.00      8.10     0.00       81     0.00     0.00  bool __gnu_cxx::operator!=<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource const*, std::vector<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource, std::allocator<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource> > >(__gnu_cxx::__normal_iterator<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource const*, std::vector<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource, std::allocator<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource> > > const&, __gnu_cxx::__normal_iterator<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource const*, std::vector<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource, std::allocator<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource> > > const&)
      0.00      8.10     0.00       76     0.00     0.00  std::_Rb_tree<odfaeg::graphic::RenderWindow*, std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent>, std::_Select1st<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> >, std::less<odfaeg::graphic::RenderWindow*>, std::allocator<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> > >::_M_get_Node_allocator()
      0.00      8.10     0.00       74     0.00     0.00  std::_Rb_tree_iterator<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> >::_Rb_tree_iterator(std::_Rb_tree_node_base*)
      0.00      8.10     0.00       73     0.00     0.00  std::vector<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource, std::allocator<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource> >::end() const
      0.00      8.10     0.00       72     0.00     0.00  __gnu_cxx::__normal_iterator<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource const*, std::vector<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource, std::allocator<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource> > >::operator->() const
      0.00      8.10     0.00       72     0.00     0.00  std::_Rb_tree<odfaeg::graphic::RenderWindow*, std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent>, std::_Select1st<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> >, std::less<odfaeg::graphic::RenderWindow*>, std::allocator<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> > >::_M_mbegin() const
      0.00      8.10     0.00       72     0.00     0.00  std::_Head_base<1ull, std::default_delete<odfaeg::core::FastDelegate<bool> >, true>::_M_head(std::_Head_base<1ull, std::default_delete<odfaeg::core::FastDelegate<bool> >, true>&)
      0.00      8.10     0.00       72     0.00     0.00  std::_Tuple_impl<1ull, std::default_delete<odfaeg::core::FastDelegate<bool> > >::_M_head(std::_Tuple_impl<1ull, std::default_delete<odfaeg::core::FastDelegate<bool> > >&)
      0.00      8.10     0.00       72     0.00     0.00  std::_Vector_base<odfaeg::graphic::Material*, std::allocator<odfaeg::graphic::Material*> >::_M_get_Tp_allocator()
      0.00      8.10     0.00       72     0.00     0.00  std::__uniq_ptr_impl<odfaeg::core::FastDelegate<bool>, std::default_delete<odfaeg::core::FastDelegate<bool> > >::_M_deleter()
      0.00      8.10     0.00       72     0.00     0.00  std::_Rb_tree<odfaeg::graphic::RenderWindow*, std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent>, std::_Select1st<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> >, std::less<odfaeg::graphic::RenderWindow*>, std::allocator<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> > >::_M_begin()
      0.00      8.10     0.00       72     0.00     0.00  std::default_delete<odfaeg::core::FastDelegate<bool> >& std::__get_helper<1ull, std::default_delete<odfaeg::core::FastDelegate<bool> >>(std::_Tuple_impl<1ull, std::default_delete<odfaeg::core::FastDelegate<bool> >>&)
      0.00      8.10     0.00       72     0.00     0.00  std::tuple_element<1ull, std::tuple<odfaeg::core::FastDelegate<bool>*, std::default_delete<odfaeg::core::FastDelegate<bool> > > >::type& std::get<1ull, odfaeg::core::FastDelegate<bool>*, std::default_delete<odfaeg::core::FastDelegate<bool> > >(std::tuple<odfaeg::core::FastDelegate<bool>*, std::default_delete<odfaeg::core::FastDelegate<bool> > >&)
      0.00      8.10     0.00       71     0.00     0.00  std::unique_ptr<odfaeg::core::Listener, std::default_delete<odfaeg::core::Listener> >::get() const
      0.00      8.10     0.00       71     0.00     0.00  std::unique_ptr<odfaeg::core::Listener, std::default_delete<odfaeg::core::Listener> >::operator->() const
      0.00      8.10     0.00       71     0.00     0.00  std::__uniq_ptr_impl<odfaeg::core::Listener, std::default_delete<odfaeg::core::Listener> >::_M_ptr() const
      0.00      8.10     0.00       71     0.00     0.00  std::_Head_base<0ull, odfaeg::core::Listener*, false>::_M_head(std::_Head_base<0ull, odfaeg::core::Listener*, false> const&)
      0.00      8.10     0.00       71     0.00     0.00  std::_Tuple_impl<0ull, odfaeg::core::Listener*, std::default_delete<odfaeg::core::Listener> >::_M_head(std::_Tuple_impl<0ull, odfaeg::core::Listener*, std::default_delete<odfaeg::core::Listener> > const&)
      0.00      8.10     0.00       71     0.00     0.00  odfaeg::core::Listener* const& std::__get_helper<0ull, odfaeg::core::Listener*, std::default_delete<odfaeg::core::Listener> >(std::_Tuple_impl<0ull, odfaeg::core::Listener*, std::default_delete<odfaeg::core::Listener> > const&)
      0.00      8.10     0.00       71     0.00     0.00  std::tuple_element<0ull, std::tuple<odfaeg::core::Listener*, std::default_delete<odfaeg::core::Listener> > >::type const& std::get<0ull, odfaeg::core::Listener*, std::default_delete<odfaeg::core::Listener> >(std::tuple<odfaeg::core::Listener*, std::default_delete<odfaeg::core::Listener> > const&)
      0.00      8.10     0.00       65     0.00     0.00  std::_Rb_tree<MyAppli::TEXTURES, std::pair<MyAppli::TEXTURES const, unsigned int>, std::_Select1st<std::pair<MyAppli::TEXTURES const, unsigned int> >, std::less<MyAppli::TEXTURES>, std::allocator<std::pair<MyAppli::TEXTURES const, unsigned int> > >::_S_right(std::_Rb_tree_node_base*)
      0.00      8.10     0.00       64     0.00     0.00  odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource::getPath[abi:cxx11]() const
      0.00      8.10     0.00       64     0.00     0.00  std::pair<MyAppli::TEXTURES, unsigned int>&& std::forward<std::pair<MyAppli::TEXTURES, unsigned int> >(std::remove_reference<std::pair<MyAppli::TEXTURES, unsigned int> >::type&)
      0.00      8.10     0.00       64     0.00     0.00  std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, odfaeg::core::Command>&& std::forward<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, odfaeg::core::Command> >(std::remove_reference<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, odfaeg::core::Command> >::type&)
      0.00      8.10     0.00       56     0.00     0.00  __gnu_cxx::__normal_iterator<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource const*, std::vector<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource, std::allocator<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource> > >::operator++(int)
      0.00      8.10     0.00       56     0.00     0.00  std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, sf::Clock> > >::_S_right(std::_Rb_tree_node_base*)
      0.00      8.10     0.00       56     0.00     0.00  sf::Image* std::__addressof<sf::Image>(sf::Image&)
      0.00      8.10     0.00       53     0.00     0.00  odfaeg::physic::UniversalEmitter* const& std::_Any_data::_M_access<odfaeg::physic::UniversalEmitter*>() const
      0.00      8.10     0.00       53     0.00     0.00  void std::_Destroy_aux<true>::__destroy<odfaeg::graphic::Material**>(odfaeg::graphic::Material**, odfaeg::graphic::Material**)
      0.00      8.10     0.00       53     0.00     0.00  std::_Function_base::_Base_manager<odfaeg::physic::UniversalEmitter>::_M_get_pointer(std::_Any_data const&)
      0.00      8.10     0.00       53     0.00     0.00  std::_Rb_tree<odfaeg::graphic::RenderWindow*, std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent>, std::_Select1st<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> >, std::less<odfaeg::graphic::RenderWindow*>, std::allocator<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> > >::_M_erase(std::_Rb_tree_node<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> >*)
      0.00      8.10     0.00       53     0.00     0.00  void std::_Destroy<odfaeg::graphic::Material**>(odfaeg::graphic::Material**, odfaeg::graphic::Material**)
      0.00      8.10     0.00       52     0.00     0.00  odfaeg::core::Application::render()
      0.00      8.10     0.00       52     0.00     0.00  odfaeg::core::Application::update()
      0.00      8.10     0.00       52     0.00     0.00  odfaeg::graphic::World::updateTimers()
      0.00      8.10     0.00       52     0.00     0.00  odfaeg::network::Network::getCliInstance()
      0.00      8.10     0.00       52     0.00     0.00  odfaeg::network::Network::getSrvInstance()
      0.00      8.10     0.00       52     0.00     0.00  MyAppli::onExec()
      0.00      8.10     0.00       52     0.00     0.00  MyAppli::onRender(odfaeg::graphic::RenderComponentManager*)
      0.00      8.10     0.00       52     0.00     0.00  MyAppli::onDisplay(odfaeg::graphic::RenderWindow*)
      0.00      8.10     0.00       52     0.00     0.00  std::vector<std::unique_ptr<odfaeg::core::Timer, std::default_delete<odfaeg::core::Timer> >, std::allocator<std::unique_ptr<odfaeg::core::Timer, std::default_delete<odfaeg::core::Timer> > > >::size() const
      0.00      8.10     0.00       52     0.00     0.00  std::_Rb_tree<odfaeg::graphic::RenderWindow*, std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent>, std::_Select1st<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> >, std::less<odfaeg::graphic::RenderWindow*>, std::allocator<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> > >::size() const
      0.00      8.10     0.00       52     0.00     0.00  std::multimap<odfaeg::graphic::RenderWindow*, odfaeg::window::IEvent, std::less<odfaeg::graphic::RenderWindow*>, std::allocator<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> > >::size() const
      0.00      8.10     0.00       52     0.00     0.00  std::_Function_handler<void (odfaeg::physic::EmissionInterface&, sf::Time), odfaeg::physic::UniversalEmitter>::_M_invoke(std::_Any_data const&, odfaeg::physic::EmissionInterface&, sf::Time&&)
      0.00      8.10     0.00       52     0.00     0.00  std::_Rb_tree<odfaeg::graphic::RenderWindow*, std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent>, std::_Select1st<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> >, std::less<odfaeg::graphic::RenderWindow*>, std::allocator<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> > >::clear()
      0.00      8.10     0.00       52     0.00     0.00  std::multimap<odfaeg::graphic::RenderWindow*, odfaeg::window::IEvent, std::less<odfaeg::graphic::RenderWindow*>, std::allocator<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> > >::clear()
      0.00      8.10     0.00       52     0.00     0.00  std::enable_if<is_invocable_r_v<void, odfaeg::physic::UniversalEmitter&, odfaeg::physic::EmissionInterface&, sf::Time>, void>::type std::__invoke_r<void, odfaeg::physic::UniversalEmitter&, odfaeg::physic::EmissionInterface&, sf::Time>(odfaeg::physic::UniversalEmitter&, odfaeg::physic::EmissionInterface&, sf::Time&&)
      0.00      8.10     0.00       52     0.00     0.00  void std::__invoke_impl<void, odfaeg::physic::UniversalEmitter&, odfaeg::physic::EmissionInterface&, sf::Time>(std::__invoke_other, odfaeg::physic::UniversalEmitter&, odfaeg::physic::EmissionInterface&, sf::Time&&)
      0.00      8.10     0.00       51     0.00     0.00  std::remove_reference<odfaeg::graphic::Texture*&>::type&& std::move<odfaeg::graphic::Texture*&>(odfaeg::graphic::Texture*&)
      0.00      8.10     0.00       48     0.00     0.00  std::unique_ptr<odfaeg::core::FastDelegate<bool>, std::default_delete<odfaeg::core::FastDelegate<bool> > >::~unique_ptr()
      0.00      8.10     0.00       48     0.00     0.00  std::_Rb_tree<MyAppli::TEXTURES, std::pair<MyAppli::TEXTURES const, unsigned int>, std::_Select1st<std::pair<MyAppli::TEXTURES const, unsigned int> >, std::less<MyAppli::TEXTURES>, std::allocator<std::pair<MyAppli::TEXTURES const, unsigned int> > >::_M_get_Node_allocator()
      0.00      8.10     0.00       48     0.00     0.00  std::pair<MyAppli::TEXTURES const, unsigned int> const& std::forward<std::pair<MyAppli::TEXTURES const, unsigned int> const&>(std::remove_reference<std::pair<MyAppli::TEXTURES const, unsigned int> const&>::type&)
      0.00      8.10     0.00       44     0.00     0.00  std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::_S_max_size(std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&)
      0.00      8.10     0.00       43     0.00     0.00  unsigned int& std::forward<unsigned int&>(std::remove_reference<unsigned int&>::type&)
      0.00      8.10     0.00       42     0.00     0.00  __gnu_cxx::__normal_iterator<sf::Image const*, std::vector<sf::Image, std::allocator<sf::Image> > >::base() const
      0.00      8.10     0.00       42     0.00     0.00  std::_Rb_tree<MyAppli::TEXTURES, std::pair<MyAppli::TEXTURES const, unsigned int>, std::_Select1st<std::pair<MyAppli::TEXTURES const, unsigned int> >, std::less<MyAppli::TEXTURES>, std::allocator<std::pair<MyAppli::TEXTURES const, unsigned int> > >::_M_end()
      0.00      8.10     0.00       41     0.00     0.00  sf::Image const& std::forward<sf::Image const&>(std::remove_reference<sf::Image const&>::type&)
      0.00      8.10     0.00       40     0.00     0.00  sf::Rect<int>::Rect(int, int, int, int)
      0.00      8.10     0.00       40     0.00     0.00  __gnu_cxx::__aligned_membuf<std::pair<MyAppli::TEXTURES const, unsigned int> >::_M_ptr()
      0.00      8.10     0.00       40     0.00     0.00  __gnu_cxx::__aligned_membuf<std::pair<MyAppli::TEXTURES const, unsigned int> >::_M_addr()
      0.00      8.10     0.00       40     0.00     0.00  std::_Rb_tree_node<std::pair<MyAppli::TEXTURES const, unsigned int> >::_M_valptr()
      0.00      8.10     0.00       40     0.00     0.00  std::_Rb_tree<MyAppli::TEXTURES, std::pair<MyAppli::TEXTURES const, unsigned int>, std::_Select1st<std::pair<MyAppli::TEXTURES const, unsigned int> >, std::less<MyAppli::TEXTURES>, std::allocator<std::pair<MyAppli::TEXTURES const, unsigned int> > >::end()
      0.00      8.10     0.00       40     0.00     0.00  odfaeg::graphic::RenderWindow*& std::forward<odfaeg::graphic::RenderWindow*&>(std::remove_reference<odfaeg::graphic::RenderWindow*&>::type&)
      0.00      8.10     0.00       39     0.00     0.00  std::lock_guard<std::recursive_mutex>::lock_guard(std::recursive_mutex&)
      0.00      8.10     0.00       39     0.00     0.00  std::lock_guard<std::recursive_mutex>::~lock_guard()
      0.00      8.10     0.00       39     0.00     0.00  std::recursive_mutex::lock()
      0.00      8.10     0.00       39     0.00     0.00  std::recursive_mutex::unlock()
      0.00      8.10     0.00       39     0.00     0.00  std::_Rb_tree_key_compare<std::less<int> >::_Rb_tree_key_compare()
      0.00      8.10     0.00       38     0.00     0.00  std::_Vector_base<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::_M_get_Tp_allocator()
      0.00      8.10     0.00       38     0.00     0.00  std::_Rb_tree<odfaeg::graphic::RenderWindow*, std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent>, std::_Select1st<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> >, std::less<odfaeg::graphic::RenderWindow*>, std::allocator<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> > >::_M_end()
      0.00      8.10     0.00       38     0.00     0.00  odfaeg::window::IEvent& std::forward<odfaeg::window::IEvent&>(std::remove_reference<odfaeg::window::IEvent&>::type&)
      0.00      8.10     0.00       37     0.00     0.00  std::_Rb_tree<odfaeg::graphic::RenderWindow*, std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent>, std::_Select1st<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> >, std::less<odfaeg::graphic::RenderWindow*>, std::allocator<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> > >::end()
      0.00      8.10     0.00       37     0.00     0.00  std::multimap<odfaeg::graphic::RenderWindow*, odfaeg::window::IEvent, std::less<odfaeg::graphic::RenderWindow*>, std::allocator<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> > >::end()
      0.00      8.10     0.00       37     0.00     0.00  std::operator!=(std::_Rb_tree_iterator<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> > const&, std::_Rb_tree_iterator<std::pair<odfaeg::graphic::RenderWindow* const, odfaeg::window::IEvent> > const&)
      0.00      8.10     0.00       34     0.00     0.00  std::unique_ptr<odfaeg::graphic::Texture, std::default_delete<odfaeg::graphic::Texture> >::~unique_ptr()
      0.00      8.10     0.00       33     0.00     0.00  std::_Head_base<0ull, odfaeg::graphic::Texture*, false>::_Head_base()
      0.00      8.10     0.00       33     0.00     0.00  std::_Head_base<1ull, std::default_delete<odfaeg::graphic::Texture>, true>::_Head_base()
      0.00      8.10     0.00       33     0.00     0.00  std::_Tuple_impl<0ull, odfaeg::graphic::Texture*, std::default_delete<odfaeg::graphic::Texture> >::_Tuple_impl()
      0.00      8.10     0.00       33     0.00     0.00  std::_Tuple_impl<1ull, std::default_delete<odfaeg::graphic::Texture> >::_Tuple_impl()
      0.00      8.10     0.00       33     0.00     0.00  std::tuple<odfaeg::graphic::Texture*, std::default_delete<odfaeg::graphic::Texture> >::tuple<true, true>()
      0.00      8.10     0.00       33     0.00     0.00  unsigned int&& std::forward<unsigned int>(std::remove_reference<unsigned int>::type&)
      0.00      8.10     0.00       33     0.00     0.00  std::operator==(std::_Rb_tree_iterator<std::pair<MyAppli::TEXTURES const, unsigned int> > const&, std::_Rb_tree_iterator<std::pair<MyAppli::TEXTURES const, unsigned int> > const&)
      0.00      8.10     0.00       32     0.00     0.00  odfaeg::core::FastDelegate<bool>::~FastDelegate()
      0.00      8.10     0.00       32     0.00     0.00  odfaeg::core::FastDelegate<void>::~FastDelegate()
      0.00      8.10     0.00       32     0.00     0.00  std::default_delete<odfaeg::core::Delegate<bool> >::operator()(odfaeg::core::Delegate<bool>*) const
      0.00      8.10     0.00       32     0.00     0.00  std::default_delete<odfaeg::core::Delegate<void> >::operator()(odfaeg::core::Delegate<void>*) const
      0.00      8.10     0.00       32     0.00     0.00  std::_Head_base<0ull, odfaeg::core::Delegate<bool>*, false>::_M_head(std::_Head_base<0ull, odfaeg::core::Delegate<bool>*, false>&)
      0.00      8.10     0.00       32     0.00     0.00  std::_Head_base<0ull, odfaeg::core::Delegate<void>*, false>::_M_head(std::_Head_base<0ull, odfaeg::core::Delegate<void>*, false>&)
      0.00      8.10     0.00       32     0.00     0.00  std::_Head_base<1ull, std::default_delete<odfaeg::core::Delegate<bool> >, true>::_M_head(std::_Head_base<1ull, std::default_delete<odfaeg::core::Delegate<bool> >, true>&)
      0.00      8.10     0.00       32     0.00     0.00  std::_Head_base<1ull, std::default_delete<odfaeg::core::Delegate<void> >, true>::_M_head(std::_Head_base<1ull, std::default_delete<odfaeg::core::Delegate<void> >, true>&)
      0.00      8.10     0.00       32     0.00     0.00  std::unique_ptr<odfaeg::core::Delegate<bool>, std::default_delete<odfaeg::core::Delegate<bool> > >::get_deleter()
      0.00      8.10     0.00       32     0.00     0.00  std::unique_ptr<odfaeg::core::Delegate<bool>, std::default_delete<odfaeg::core::Delegate<bool> > >::~unique_ptr()
      0.00      8.10     0.00       32     0.00     0.00  std::unique_ptr<odfaeg::core::Delegate<void>, std::default_delete<odfaeg::core::Delegate<void> > >::get_deleter()
      0.00      8.10     0.00       32     0.00     0.00  std::unique_ptr<odfaeg::core::Delegate<void>, std::default_delete<odfaeg::core::Delegate<void> > >::~unique_ptr()
      0.00      8.10     0.00       32     0.00     0.00  std::_Tuple_impl<0ull, odfaeg::core::Delegate<bool>*, std::default_delete<odfaeg::core::Delegate<bool> > >::_M_head(std::_Tuple_impl<0ull, odfaeg::core::Delegate<bool>*, std::default_delete<odfaeg::core::Delegate<bool> > >&)
      0.00      8.10     0.00       32     0.00     0.00  std::_Tuple_impl<0ull, odfaeg::core::Delegate<void>*, std::default_delete<odfaeg::core::Delegate<void> > >::_M_head(std::_Tuple_impl<0ull, odfaeg::core::Delegate<void>*, std::default_delete<odfaeg::core::Delegate<void> > >&)
      0.00      8.10     0.00       32     0.00     0.00  std::_Tuple_impl<1ull, std::default_delete<odfaeg::core::Delegate<bool> > >::_M_head(std::_Tuple_impl<1ull, std::default_delete<odfaeg::core::Delegate<bool> > >&)
      0.00      8.10     0.00       32     0.00     0.00  std::_Tuple_impl<1ull, std::default_delete<odfaeg::core::Delegate<void> > >::_M_head(std::_Tuple_impl<1ull, std::default_delete<odfaeg::core::Delegate<void> > >&)
      0.00      8.10     0.00       32     0.00     0.00  std::__uniq_ptr_impl<odfaeg::core::Delegate<bool>, std::default_delete<odfaeg::core::Delegate<bool> > >::_M_deleter()
      0.00      8.10     0.00       32     0.00     0.00  std::__uniq_ptr_impl<odfaeg::core::Delegate<bool>, std::default_delete<odfaeg::core::Delegate<bool> > >::_M_ptr()
      0.00      8.10     0.00       32     0.00     0.00  std::__uniq_ptr_impl<odfaeg::core::Delegate<void>, std::default_delete<odfaeg::core::Delegate<void> > >::_M_deleter()
      0.00      8.10     0.00       32     0.00     0.00  std::__uniq_ptr_impl<odfaeg::core::Delegate<void>, std::default_delete<odfaeg::core::Delegate<void> > >::_M_ptr()
      0.00      8.10     0.00       32     0.00     0.00  std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> > >::_M_get_Node_allocator()
      0.00      8.10     0.00       32     0.00     0.00  std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, odfaeg::core::Command> > >::_M_end()
      0.00      8.10     0.00       32     0.00     0.00  odfaeg::core::Delegate<bool>*& std::__get_helper<0ull, odfaeg::core::Delegate<bool>*, std::default_delete<odfaeg::core::Delegate<bool> > >(std::_Tuple_impl<0ull, odfaeg::core::Delegate<bool>*, std::default_delete<odfaeg::core::Delegate<bool> > >&)
      0.00      8.10     0.00       32     0.00     0.00  odfaeg::core::Delegate<void>*& std::__get_helper<0ull, odfaeg::core::Delegate<void>*, std::default_delete<odfaeg::core::Delegate<void> > >(std::_Tuple_impl<0ull, odfaeg::core::Delegate<void>*, std::default_delete<odfaeg::core::Delegate<void> > >&)
      0.00      8.10     0.00       32     0.00     0.00  std::default_delete<odfaeg::core::Delegate<bool> >& std::__get_helper<1ull, std::default_delete<odfaeg::core::Delegate<bool> >>(std::_Tuple_impl<1ull, std::default_delete<odfaeg::core::Delegate<bool> >>&)
      0.00      8.10     0.00       32     0.00     0.00  std::default_delete<odfaeg::core::Delegate<void> >& std::__get_helper<1ull, std::default_delete<odfaeg::core::Delegate<void> >>(std::_Tuple_impl<1ull, std::default_delete<odfaeg::core::Delegate<void> >>&)
      0.00      8.10     0.00       32     0.00     0.00  std::tuple_element<0ull, std::tuple<odfaeg::core::Delegate<bool>*, std::default_delete<odfaeg::core::Delegate<bool> > > >::type& std::get<0ull, odfaeg::core::Delegate<bool>*, std::default_delete<odfaeg::core::Delegate<bool> > >(std::tuple<odfaeg::core::Delegate<bool>*, std::default_delete<odfaeg::core::Delegate<bool> > >&)
      0.00      8.10     0.00       32     0.00     0.00  std::tuple_element<0ull, std::tuple<odfaeg::core::Delegate<void>*, std::default_delete<odfaeg::core::Delegate<void> > > >::type& std::get<0ull, odfaeg::core::Delegate<void>*, std::default_delete<odfaeg::core::Delegate<void> > >(std::tuple<odfaeg::core::Delegate<void>*, std::default_delete<odfaeg::core::Delegate<void> > >&)
      0.00      8.10     0.00       32     0.00     0.00  std::tuple_element<1ull, std::tuple<odfaeg::core::Delegate<bool>*, std::default_delete<odfaeg::core::Delegate<bool> > > >::type& std::get<1ull, odfaeg::core::Delegate<bool>*, std::default_delete<odfaeg::core::Delegate<bool> > >(std::tuple<odfaeg::core::Delegate<bool>*, std::default_delete<odfaeg::core::Delegate<bool> > >&)
      0.00      8.10     0.00       32     0.00     0.00  std::tuple_element<1ull, std::tuple<odfaeg::core::Delegate<void>*, std::default_delete<odfaeg::core::Delegate<void> > > >::type& std::get<1ull, odfaeg::core::Delegate<void>*, std::default_delete<odfaeg::core::Delegate<void> > >(std::tuple<odfaeg::core::Delegate<void>*, std::default_delete<odfaeg::core::Delegate<void> > >&)
      0.00      8.10     0.00       32     0.00     0.00  std::remove_reference<odfaeg::core::Delegate<bool>*&>::type&& std::move<odfaeg::core::Delegate<bool>*&>(odfaeg::core::Delegate<bool>*&)
      0.00      8.10     0.00       32     0.00     0.00  std::remove_reference<odfaeg::core::Delegate<void>*&>::type&& std::move<odfaeg::core::Delegate<void>*&>(odfaeg::core::Delegate<void>*&)
      0.00      8.10     0.00       32     0.00     0.00  MyAppli::TEXTURES const& std::forward<MyAppli::TEXTURES const&>(std::remove_reference<MyAppli::TEXTURES const&>::type&)
      0.00      8.10     0.00       31     0.00     0.04  sf::Image::Image(sf::Image const&)
      0.00      8.10     0.00       31     0.00     0.00  std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_M_get_Tp_allocator() const
      0.00      8.10     0.00       31     0.00     0.00  std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_M_allocate(unsigned long long)
      0.00      8.10     0.00       31     0.00     0.00  std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl::_Vector_impl(std::allocator<unsigned char> const&)
      0.00      8.10     0.00       31     0.00     0.00  std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_M_create_storage(unsigned long long)
      0.00      8.10     0.00       31     0.00     0.00  std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_base(unsigned long long, std::allocator<unsigned char> const&)
      0.00      8.10     0.00       31     0.00     0.00  std::__new_allocator<unsigned char>::allocate(unsigned long long, void const*)
      0.00      8.10     0.00       31     0.00     0.00  unsigned char* std::__uninitialized_copy<true>::__uninit_copy<__gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned char*>(__gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >, __gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned char*)
      0.00      8.10     0.00       31     0.00     0.04  std::vector<unsigned char, std::allocator<unsigned char> >::vector(std::vector<unsigned char, std::allocator<unsigned char> > const&)
      0.00      8.10     0.00       31     0.00     0.00  unsigned char* std::__niter_wrap<unsigned char*>(unsigned char* const&, unsigned char*)
      0.00      8.10     0.00       31     0.00     0.00  unsigned char* std::__copy_move_a<false, __gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned char*>(__gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >, __gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned char*)
      0.00      8.10     0.00       31     0.00     0.00  unsigned char* std::uninitialized_copy<__gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned char*>(__gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >, __gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned char*)
      0.00      8.10     0.00       31     0.00     0.00  unsigned char* std::__uninitialized_copy_a<__gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned char*, unsigned char>(__gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >, __gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned char*, std::allocator<unsigned char>&)
      0.00      8.10     0.00       31     0.00     0.00  unsigned char* std::copy<__gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned char*>(__gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >, __gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned char*)
      0.00      8.10     0.00       31     0.00     0.00  void std::_Destroy<sf::Image>(sf::Image*)
      0.00      8.10     0.00       30     0.00     0.00  odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource* std::__addressof<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource>(odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource&)
      0.00      8.10     0.00       28     0.00     0.00  std::_Rb_tree<int, std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::_Select1st<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >::_M_get_Node_allocator()
      0.00      8.10     0.00       28     0.00     0.00  odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource&& std::forward<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource>(std::remove_reference<odfaeg::core::ResourceManager<odfaeg::graphic::Texture, MyAppli::TEXTURES>::Resource>::type&)
      0.00      8.10     0.00       27     0.00     0.00  std::_Rb_tree<MyAppli::TEXTURES, std::pair<MyAppli::TEXTURES const, unsigned int>, std::_Select1st<std::pair<MyAppli::TEXTURES const, unsigned int> >, std::less<MyAppli::TEXTURES>, std::allocator<std::pair<MyAppli::TEXTURES const, unsigned int> > >::_M_mbegin() const
      0.00      8.10     0.00       27     0.00     0.00  std::remove_reference<std::unique_ptr<odfaeg::graphic::Texture, std::default_delete<odfaeg::graphic::Texture> >&>::type&& std::move<std::unique_ptr<odfaeg::graphic::Texture, std::default_delete<odfaeg::graphic::Texture> >&>(std::unique_ptr<odfaeg::graphic::Texture, std::default_delete<odfaeg::graphic::Texture> >&)
      0.00      8.10     0.00       26     0.00     0.00  std::_Rb_tree<MyAppli::TEXTURES, std::pair<MyAppli::TEXTURES const, unsigned int>, std::_Select1st<std::pair<MyAppli::TEXTURES const, unsigned int> >, std::less<MyAppli::TEXTURES>, 
    ....
    Comment déterminer ce qui est trop lent à partir de ça ?

    Merci.

  2. #2
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 480
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 480
    Points : 20 729
    Points
    20 729
    Par défaut
    salut juste une question : pourquoi il y a des "new" dans la boucle ? Vous allouez et détruisez des objets continuellement ?

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Novembre 2023
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur de jeux vidéo

    Informations forums :
    Inscription : Novembre 2023
    Messages : 60
    Points : 50
    Points
    50
    Par défaut
    Salut, a oui je pense savoir ou j'effectue un new, c'est lorsque je clone l'entité pour créer une bordure pour afficher les entités sélectionnées avec le stencil buffer sinon les new j'essaie de ne les faire que en début de programme. Bref peut être ça qui pourrait ralentir mais je ne pense pas qu'il n'y a que ça qui ralentisse le programme.

    Pour l'instant je n'ai gagné que 10 FPS en faisant un resize des std::vector plutôt que des push_back mais c'est encore trop lent pour une scène comme cela je devrais arriver à 60 FPS mini...

    EDIT : je ne sais pas d'où viennent tout ces new...

  4. #4
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 480
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 480
    Points : 20 729
    Points
    20 729
    Par défaut
    les new oui il faut les faire au début du programme.
    Et ce que vous faites donc beaucoup de push_back ?

  5. #5
    Membre du Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Novembre 2023
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur de jeux vidéo

    Informations forums :
    Inscription : Novembre 2023
    Messages : 60
    Points : 50
    Points
    50
    Par défaut
    Salut.

    J'ai réduis le nombre de push_back parce que j'en faisais beaucoup, ça a optimiser un peu. Les new je n'en fait que au début du programme pourtant.

    Dans ma boucle de rendu je ne fais que de remplir mes vbo et les dessiner, j'avais essayer de faire un vbo pour toute la scène une fois et récupérer les indices des sommets visible pour les dessiner mais c'est contre performant lorsque tu dois ajouter ou supprimer des sommets car il faut remettre à jour les indices et pour ce qui est mobile faut remettre à jour aussi. De plus toutes les vbo n'ont pas les mêmes données, ça dépend de ce que j'ai besoin comme donnée pour dessiner.
    Donc je suis obligé d'effacer et remplir mes vbo à chaque rendu, je j'en utilise 7 un pour chaque type de primitive.

    Au niveau des draws je ne fait qu'un seul draw par type de primitive et par type de dessin (instanced, indexed, etc...) et par shader.

    Je crois que le meilleur moyen de comprendre pourquoi le fps est si bas c'est de commenter le code et voir...

  6. #6
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 480
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 480
    Points : 20 729
    Points
    20 729
    Par défaut
    en étant sous Windows il y a des API qui permettent de chronométrer un laps de temps en exécution.
    Ce qui est possible de faire c'est d'effectuer une mesure de temps puis à la fin du programme écrire la mesure dans un fichier texte.
    Ou bien créer un thread pendant l'exécution.

  7. #7
    Membre du Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Novembre 2023
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur de jeux vidéo

    Informations forums :
    Inscription : Novembre 2023
    Messages : 60
    Points : 50
    Points
    50
    Par défaut
    Ok j'ai mis des bouts de code en commentaire pour voir ce qui faisait chuter le FPS si bas.

    Déjà ce code-ci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    for (unsigned int i = 0; i < m_normals.size(); i++) {
                       if (m_normals[i].getAllVertices().getVertexCount() > 0) {
                            unsigned int p = m_normals[i].getAllVertices().getPrimitiveType();
                            vbBindlessTex[p].resizeVertices(m_normals[i].getAllVertices().getVertexCount());
                            vbBindlessTex[p].resizeLayers(m_normals[i].getAllVertices().getVertexCount());
     
                            for (unsigned int j = 0; j < m_normals[i].getAllVertices().getVertexCount(); j++) {
                                vbBindlessTex[p].getVertices()[j] = m_normals[i].getAllVertices()[j];
                                vbBindlessTex[p].getTextureIndexes()[j] = (m_normals[i].getMaterial().getTexture() != nullptr) ? m_normals[i].getMaterial().getTexture()->getNativeHandle() : 0;
                                vbBindlessTex[p].getLayers()[j] = m_normals[i].getMaterial().getLayer();
                            }
                        }
                    }
    resize fait chuter pas mal le FPS, moins que push_back mais bon, mais là ou le FPS chute le plus c'est lors de l'affichage du renderer qui affiche la réfraction et la réflexion de la lumière :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    void ReflectRefractRenderComponent::drawNextFrame() {
                if (reflectRefractTex.getSettings().versionMajor >= 4 && reflectRefractTex.getSettings().versionMinor >= 3) {
     
                    /*glCheck(glBindBufferBase(GL_UNIFORM_BUFFER, 0, ubo));
                    glCheck(glBindBufferBase(GL_ATOMIC_COUNTER_BUFFER, 0, atomicBuffer));
                    glCheck(glBindBufferBase(GL_SHADER_STORAGE_BUFFER, 0, linkedListBuffer));*/
                    RenderStates currentStates;
                    math::Matrix4f viewMatrix = view.getViewMatrix().getMatrix().transpose();
                    math::Matrix4f projMatrix = view.getProjMatrix().getMatrix().transpose();
                    sBuildDepthBuffer.setParameter("viewMatrix", viewMatrix);
                    sBuildDepthBuffer.setParameter("projectionMatrix", projMatrix);
                    sBuildDepthBufferNormal.setParameter("viewMatrix", viewMatrix);
                    sBuildDepthBufferNormal.setParameter("projectionMatrix", projMatrix);
                    sBuildDepthBuffer.setParameter("nbLayers",GameObject::getNbLayers());
                    sBuildDepthBufferNormal.setParameter("nbLayers",GameObject::getNbLayers());
                    drawDepthReflNormal();
                    drawDepthReflInst();
     
     
                    sBuildAlphaBuffer.setParameter("viewMatrix", viewMatrix);
                    sBuildAlphaBuffer.setParameter("projectionMatrix", projMatrix);
                    sBuildAlphaBufferNormal.setParameter("viewMatrix", viewMatrix);
                    sBuildAlphaBufferNormal.setParameter("projectionMatrix", projMatrix);
                    sBuildAlphaBuffer.setParameter("nbLayers",GameObject::getNbLayers());
                    sBuildAlphaBufferNormal.setParameter("nbLayers",GameObject::getNbLayers());
     
                    drawAlphaNormal();
                    drawAlphaInst();
     
                    View reflectView;
                    if (view.isOrtho()) {
                        reflectView = View (squareSize, squareSize, view.getViewport().getPosition().z, view.getViewport().getSize().z);
                    } else {
                        reflectView = View (squareSize, squareSize, 80, view.getViewport().getPosition().z, view.getViewport().getSize().z);
                    }
                    for (unsigned int t = 0; t < 2; t++) {
                        std::vector<Instance> instances = (t == 0) ? m_reflInstances : m_reflNormals;
                        for (unsigned int n = 0; n < instances.size(); n++) {
                            if (instances[n].getAllVertices().getVertexCount() > 0) {
                                Entity* entity = instances[n].getVertexArrays()[0]->getEntity()->getRootEntity();
                                math::Vec3f scale(1, 1, 1);
                                if (entity->getSize().x > squareSize) {
                                    scale.x = entity->getSize().x / squareSize;
                                }
                                if (entity->getSize().y > squareSize) {
                                    scale.y = entity->getSize().y / squareSize;
                                }
                                //std::cout<<"scale : "<<scale<<"position : "<<entity->getPosition()<<std::endl;
                                reflectView.setScale(scale.x, scale.y, scale.z);
                                reflectView.setCenter(entity->getPosition()+entity->getSize()*0.5f);
                                std::vector<math::Matrix4f> projMatrices;
                                std::vector<math::Matrix4f> viewMatrices;
                                std::vector<math::Matrix4f> sbProjMatrices;
                                std::vector<math::Matrix4f> sbViewMatrices;
                                environmentMap.setView(reflectView);
                                for (unsigned int m = 0; m < 6; m++) {
                                    math::Vec3f target = reflectView.getPosition() + dirs[m];
                                    reflectView.lookAt(target.x, target.y, target.z, ups[m]);
                                    projMatrix = reflectView.getProjMatrix().getMatrix().transpose();
                                    viewMatrix = reflectView.getViewMatrix().getMatrix().transpose();
                                    projMatrices.push_back(projMatrix);
                                    viewMatrices.push_back(viewMatrix);
                                    float zNear = reflectView.getViewport().getPosition().z;
                                    if (!reflectView.isOrtho())
                                        reflectView.setPerspective(80, view.getViewport().getSize().x / view.getViewport().getSize().y, 0.1f, view.getViewport().getSize().z);
                                    viewMatrix = reflectView.getViewMatrix().getMatrix().transpose();
                                    projMatrix = reflectView.getProjMatrix().getMatrix().transpose();
                                    math::Matrix4f sbViewMatrix = math::Matrix4f(math::Matrix3f(viewMatrix));
                                    sbViewMatrices.push_back(sbViewMatrix);
                                    sbProjMatrices.push_back(projMatrix);
                                    if (!reflectView.isOrtho())
                                        reflectView.setPerspective(80, view.getViewport().getSize().x / view.getViewport().getSize().y, zNear, view.getViewport().getSize().z);
     
                                }
                                    /*std::vector<Entity*> visibleReflEntities = World::getEntitiesInRect(reflectView.getViewVolume(), expression);
                                    std::vector<Entity*> vEntities;
                                    for (unsigned int j = 0; j < visibleEntities.size(); j++)  {
                                        if (!visibleEntities[j]->isReflectable()) {
                                            vEntities.push_back(visibleEntities[j]);
                                        }
                                    }
                                    rvBatcher.clear();
                                    normalRvBatcher.clear();
                                    for (unsigned int j = 0; j < vEntities.size(); j++) {
                                        for (unsigned int n = 0; n < vEntities[j]->getNbFaces(); n++) {
                                            if (vEntities[j]->getDrawMode() == Entity::INSTANCED) {
                                                rvBatcher.addFace(vEntities[j]->getFace(n));
                                            } else {
                                                normalRvBatcher.addFace(vEntities[j]->getFace(n));
                                            }
                                        }
                                    }
                                    std::vector<Instance> rvInstances = rvBatcher.getInstances();
                                    std::vector<Instance> rvNormals = normalRvBatcher.getInstances();*/
     
                                    skyboxShader.setParameter("projMatrices", sbProjMatrices);
                                    skyboxShader.setParameter("viewMatrices", sbViewMatrices);
                                    vb.clear();
                                    //vb.name = "SKYBOXVB";
                                    for (unsigned int i = 0; i < m_skyboxInstance.size(); i++) {
                                        if (m_skyboxInstance[i].getAllVertices().getVertexCount() > 0) {
                                            vb.setPrimitiveType(m_skyboxInstance[i].getAllVertices().getPrimitiveType());
                                            for (unsigned int j = 0; j < m_skyboxInstance[i].getAllVertices().getVertexCount(); j++) {
                                                //std::cout<<"append"<<std::endl;
                                                vb.append(m_skyboxInstance[i].getAllVertices()[j]);
                                            }
                                        }
                                    }
                                    currentStates.blendMode = sf::BlendAlpha;
                                    currentStates.shader = &skyboxShader;
                                    currentStates.texture = (skybox == nullptr ) ? nullptr : &static_cast<g3d::Skybox*>(skybox)->getTexture();
                                    vb.update();
                                    environmentMap.drawVertexBuffer(vb, currentStates);
                                    sLinkedList.setParameter("viewMatrices", viewMatrices);
                                    sLinkedList.setParameter("projMatrices", projMatrices);
                                    drawEnvReflInst();
                                    sLinkedListNormal.setParameter("viewMatrices", viewMatrices);
                                    sLinkedListNormal.setParameter("projMatrices", projMatrices);
                                    drawEnvReflNormal();
                                    glCheck(glFinish());
                                    glCheck(glMemoryBarrier(GL_SHADER_STORAGE_BARRIER_BIT));
                                    //glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
                                    vb.clear();
                                    vb.setPrimitiveType(sf::Quads);
                                    Vertex v1 (sf::Vector3f(0, 0, quad.getSize().z));
                                    Vertex v2 (sf::Vector3f(quad.getSize().x,0, quad.getSize().z));
                                    Vertex v3 (sf::Vector3f(quad.getSize().x, quad.getSize().y, quad.getSize().z));
                                    Vertex v4 (sf::Vector3f(0, quad.getSize().y, quad.getSize().z));
                                    vb.append(v1);
                                    vb.append(v2);
                                    vb.append(v3);
                                    vb.append(v4);
                                    vb.update();
                                    math::Matrix4f matrix = quad.getTransform().getMatrix().transpose();
                                    sLinkedList2.setParameter("worldMat", matrix);
                                    currentStates.shader = &sLinkedList2;
                                    currentStates.texture = nullptr;
                                    environmentMap.drawVertexBuffer(vb, currentStates);
                                    glCheck(glFinish());
                                    glCheck(glMemoryBarrier(GL_ALL_BARRIER_BITS));
                                }
     
                        }
                    }
                    viewMatrix = view.getViewMatrix().getMatrix().transpose();
                    projMatrix = view.getProjMatrix().getMatrix().transpose();
                    sReflectRefract.setParameter("viewMatrix", viewMatrix);
                    sReflectRefract.setParameter("projectionMatrix", projMatrix);
                    sReflectRefract.setParameter("cameraPos", view.getPosition().x, view.getPosition().y, view.getPosition().z);
                    drawReflInst();
                    viewMatrix = view.getViewMatrix().getMatrix().transpose();
                    projMatrix = view.getProjMatrix().getMatrix().transpose();
                    sReflectRefractNormal.setParameter("viewMatrix", viewMatrix);
                    sReflectRefractNormal.setParameter("projectionMatrix", projMatrix);
                    sReflectRefractNormal.setParameter("cameraPos", view.getPosition().x, view.getPosition().y, view.getPosition().z);
                    drawReflNormal();
                    reflectRefractTex.display();
                    /*glCheck(glBindBufferBase(GL_UNIFORM_BUFFER, 0, 0));
                    glCheck(glBindBufferBase(GL_ATOMIC_COUNTER_BUFFER, 0, 0));
                    glCheck(glBindBufferBase(GL_SHADER_STORAGE_BUFFER, 0, 0));*/
                }
            }
    Le pire c'est que je ne sais pas du tout comment faire pour optimiser le code.

    Mais je trouve que c'est trop lent pour la machine que j'ai bien que ma machine mets plus de temps que lorsque je l'ai acheté pour ouvrir un projet code::blocks par exemple ou pour démarrer.

  8. #8
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 480
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 480
    Points : 20 729
    Points
    20 729
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     projMatrices.push_back(projMatrix);
    viewMatrices.push_back(viewMatrix);
    sbViewMatrices.push_back(sbViewMatrix);
    sbProjMatrices.push_back(projMatrix);
    est-ce vraiment utile ces 4 opérations ?
    Je ne comprends pas pourquoi la View Matrix et celle de projection est sauvegardée autant de fois.
    Et puis question importante: c'est pas possible de partir d'exemples simples d'un tuto d'Open GL et surtout fonctionnel quitte à améliorer le code après ?
    C'est évident que plus vous faites compliqué plus en exécution ça va ramer.

  9. #9
    Membre du Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Novembre 2023
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur de jeux vidéo

    Informations forums :
    Inscription : Novembre 2023
    Messages : 60
    Points : 50
    Points
    50
    Par défaut
    Salut! Les 6 push_back des matrices de vue et de projection sont les 6 matrices pour dessiner sur les 6 faces de la cubemap pour la réfraction. (pour la skybox et pour le reste)

    Je fais en effet des rendus compliqués, j'utilise des images (des depth textures et des textures alpha) pour calculer l'alpha de tout ce qui se trouve devant les ombres ou de la lumière ou la réfraction et faire l'occlusion nécessaire. J'utilise des per pixels linked list pour rendre les 6 faces de la cubemap pour la réfraction. J'utilise des per pixel linked list aussi pour rendre la scène. Bref ODFAEG est un moteur de jeux qui est très poussé graphiquement c'est pour cela que ça bouffe pas mal de FPS. Et encore je n'ai pas encore fait les techniques de rendu avancées. (le parallax mapping, le pbr rendering, le cascade shadow mapping, etc...)

    J'ai même fait un renderer pour le raytracing mais ça, ça bouffe trop de FPS.

    Je pensais séparer objets statique et dynamique en mettant les objets statiques dans un seul VBO et récupérer les indices des objets visible à l'écran et en mettant à jour la VBO pour les objets dynamique à chaque frame mais je ne pense pas que ça optimisera beaucoup car ODFAEG est un moteur de jeux qui est très gourmand au niveau des graphismes. Il faut une machine assez puissante pour avoir un FPS suffisant.

  10. #10
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 480
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 480
    Points : 20 729
    Points
    20 729
    Par défaut
    Citation Envoyé par Laurent7601 Voir le message
    J'ai même fait un renderer pour le raytracing mais ça, ça bouffe trop de FPS.
    Même avec un moteur comme le Unreal Engine en activant le raytracing sous Vulkan ou Direct X 12 la perte de FPS n'est pas si grande.

  11. #11
    Candidat au Club
    Femme Profil pro
    Chargé d'affaire
    Inscrit en
    Septembre 2024
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 20
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Septembre 2024
    Messages : 44
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par Mat.M Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     projMatrices.push_back(projMatrix);
    viewMatrices.push_back(viewMatrix);
    sbViewMatrices.push_back(sbViewMatrix);
    sbProjMatrices.push_back(projMatrix);
    est-ce vraiment utile ces 4 opérations ?
    Je ne comprends pas pourquoi la View Matrix et celle de projection est sauvegardée autant de fois.
    Et puis question importante: c'est pas possible de partir d'exemples simples d'un tuto d'Open GL et surtout fonctionnel quitte à améliorer le code après ?
    C'est évident que plus vous faites compliqué plus en exécution ça va ramer.
    Perso j'ai mon idée sur la réponse. C'est une histoire de pied et de code.

    Son moteur est très poussé dans le rendu 3d tu comprends.

    Unity et UE qui ont un rendu dégueulasse comparé à ce moteur de jeu ( pour l'appeler comme ça il faudrait déjà qu'un jeu soit développé avec ) c'est pourquoi ils sont plus rapides que ce moteur de jeu.

  12. #12
    Membre du Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Novembre 2023
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur de jeux vidéo

    Informations forums :
    Inscription : Novembre 2023
    Messages : 60
    Points : 50
    Points
    50
    Par défaut
    Salut, je ne sais pas si Unity ou UE gèrent la transparence comme moi je la gère.
    Pour le raytracing j'ai fait avec un compute shader avec opengl je n'ai pas utilisé vulkan c'est peut être pour ça.

    Je ne sais pas comment font UE ou Unity pour avoir un FPS plus élevé avec des graphismes similaire..., il faudrait que je me renseigne...

    EDIT : Sans la réfraction je tourne autour de 80 FPS, assassin's creed tourne autour de 60 FPS et il n'y a pas de réfraction.

  13. #13
    Candidat au Club
    Femme Profil pro
    Chargé d'affaire
    Inscrit en
    Septembre 2024
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 20
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Septembre 2024
    Messages : 44
    Points : 3
    Points
    3
    Par défaut
    Bah developpe assassins creed avec ton moteur qu'on rigole

  14. #14
    Membre du Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Novembre 2023
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur de jeux vidéo

    Informations forums :
    Inscription : Novembre 2023
    Messages : 60
    Points : 50
    Points
    50
    Par défaut
    J'aimerais bien essayer mais je ne pense pas que ça soit le bon projet pour commencer à coder avec mon moteur, on m'a plutôt conseillé la 2D. Si je fais la réfraction en 3D avec le dynamic environment mapping je ne suis pas sûr que ça soit suffisamment optimisé, ceci dit même si le FPS est assez bas ça ne saccade pas, ça reste jouable. Mais je vais faire une pause pour la 3D et faire un jeux en 2D plutôt pour commencer je pense que c'est mieux pour apprendre et peut être je repasserai à la 3D plus tard, d'ici là peut être que j'aurai trouvé une idée pour optimiser le temps de rendu.

  15. #15
    Membre du Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Novembre 2023
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur de jeux vidéo

    Informations forums :
    Inscription : Novembre 2023
    Messages : 60
    Points : 50
    Points
    50
    Par défaut
    Ok j'ai essayé de créer mes vbos en début de programme et mettre à jour les indices de ce qui est visible à l'écran mais le FPS reste bas..., je ne sais plus quoi faire...

  16. #16
    Candidat au Club
    Femme Profil pro
    Chargé d'affaire
    Inscrit en
    Septembre 2024
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 20
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Septembre 2024
    Messages : 44
    Points : 3
    Points
    3
    Par défaut
    Abandonner ?

  17. #17
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 480
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 480
    Points : 20 729
    Points
    20 729
    Par défaut
    Citation Envoyé par Laurent7601 Voir le message
    Ok j'ai essayé de créer mes vbos en début de programme et mettre à jour les indices de ce qui est visible à l'écran mais le FPS reste bas..., je ne sais plus quoi faire...
    il y a le code source de Irrlicht3d qui tourne avec Open GL et qui est simple à comprendre on peut s'en inspirer pour construire un ensemble de classes.

  18. #18
    Membre du Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Novembre 2023
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur de jeux vidéo

    Informations forums :
    Inscription : Novembre 2023
    Messages : 60
    Points : 50
    Points
    50
    Par défaut
    Ok super merci.
    J'ai regardé le code et c'est assez ancien il utilise encore glDrawArrays et glBegin glEnd.

Discussions similaires

  1. Le moteur de jeux vidéo Torque 3D est maintenant disponible
    Par raptor70 dans le forum Moteurs 3D
    Réponses: 9
    Dernier message: 12/12/2011, 14h11
  2. moteur de jeux et language ?
    Par stefff285 dans le forum C++
    Réponses: 4
    Dernier message: 10/03/2008, 11h35
  3. Moteur 3D pour FPS
    Par Comir dans le forum Projets
    Réponses: 9
    Dernier message: 21/01/2008, 15h49
  4. Création d'un moteur de jeux 2d
    Par clemsye dans le forum Moteurs 3D
    Réponses: 5
    Dernier message: 15/09/2007, 11h36
  5. Cherche developpeur pour moteur de jeux 2d/3D
    Par Nadirov dans le forum Projets
    Réponses: 2
    Dernier message: 02/08/2006, 18h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo