25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.
 
 
 
 
 
 

127 satır
5.4 KiB

  1. #!/usr/bin/env python3
  2. # -*- Coding: UTF-8 -*-
  3. # ---------------------------------------------------------------------------
  4. # Open Asset Import Library (ASSIMP)
  5. # ---------------------------------------------------------------------------
  6. #
  7. # Copyright (c) 2006-2010, ASSIMP Development Team
  8. #
  9. # All rights reserved.
  10. #
  11. # Redistribution and use of this software in source and binary forms,
  12. # with or without modification, are permitted provided that the following
  13. # conditions are met:
  14. #
  15. # * Redistributions of source code must retain the above
  16. # copyright notice, this list of conditions and the
  17. # following disclaimer.
  18. #
  19. # * Redistributions in binary form must reproduce the above
  20. # copyright notice, this list of conditions and the
  21. # following disclaimer in the documentation and/or other
  22. # materials provided with the distribution.
  23. #
  24. # * Neither the name of the ASSIMP team, nor the names of its
  25. # contributors may be used to endorse or promote products
  26. # derived from this software without specific prior
  27. # written permission of the ASSIMP Development Team.
  28. #
  29. # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  30. # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  31. # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  32. # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
  33. # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  34. # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  35. # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  36. # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  37. # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  38. # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  39. # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  40. # ---------------------------------------------------------------------------
  41. """Shared settings for the regression suite (bold builder and
  42. test scripts rely on this)
  43. """
  44. import os
  45. # -------------------------------------------------------------------------------
  46. # List of file extensions to be excluded from the regression suite
  47. # File extensions are case insensitive
  48. # -------------------------------------------------------------------------------
  49. exclude_extensions = [
  50. ".lws", ".assbin", ".assxml", ".txt", ".md",
  51. ".jpeg", ".jpg", ".png", ".gif", ".tga", ".bmp",
  52. ".skeleton", ".skeleton.xml"
  53. ]
  54. # -------------------------------------------------------------------------------
  55. # Post processing configurations to be included in the test. The
  56. # strings are parameters for assimp_cmd, see assimp_cmd's doxydoc
  57. # for more details.
  58. # The defaults are (validate-data-structure is always enabled, for
  59. # self-explanatory reasons :-):
  60. #
  61. # '-cfull' :apply all post processing except 'og' and 'ptv' (optimize-scenegraph)
  62. # '-og -om' :run optimize-scenegraph in combination with optimize-meshes.
  63. # '-vds -jiv' :join-identical-vertices alone. This is a hotspot where
  64. # floating-point inaccuracies can cause severe damage.
  65. # '-ptv': transform all meshes to world-space
  66. # As you can see, not all possible combinations of pp steps are covered -
  67. # but at least each step is executed at least once on each model.
  68. # -------------------------------------------------------------------------------
  69. pp_configs_to_test = [
  70. "-cfull",
  71. "-og -om -vds",
  72. "-vds -jiv",
  73. "-ptv -gsn -cts -db",
  74. # this is especially important: if no failures are present with this
  75. # preset, the regression is most likely caused by the post
  76. # processing pipeline.
  77. ""
  78. ]
  79. # -------------------------------------------------------------------------------
  80. # Name of the regression database file to be used
  81. # gen_db.py writes to this directory, run.py checks against this directory.
  82. # If a zip file with the same name exists, its contents are favoured to a
  83. # normal directory, so in order to test against unzipped files the ZIP needs
  84. # to be deleted.
  85. # -------------------------------------------------------------------------------
  86. database_name = "db"
  87. # -------------------------------------------------------------------------------
  88. # List of directories to be processed. Paths are processed recursively.
  89. # -------------------------------------------------------------------------------
  90. model_directories = [
  91. os.path.join("..","models"),
  92. os.path.join("..","models-nonbsd")
  93. ]
  94. # -------------------------------------------------------------------------------
  95. # Remove the original database files after the ZIP has been built?
  96. # -------------------------------------------------------------------------------
  97. remove_old = True
  98. # -------------------------------------------------------------------------------
  99. # Bytes to skip at the beginning of a dump. This skips the file header, which
  100. # is currently the same 500 bytes header for both assbin, assxml and minidumps.
  101. # -------------------------------------------------------------------------------
  102. dump_header_skip = 500
  103. # -------------------------------------------------------------------------------
  104. # Directory to write all results and logs to. The dumps pertaining to failed
  105. # tests are written to a subfolder of this directory ('tmp').
  106. # -------------------------------------------------------------------------------
  107. results = os.path.join("..","results")
  108. # Create results directory if it does not exist
  109. if not os.path.exists(results):
  110. os.makedirs(results)
  111. # vim: ai ts=4 sts=4 et sw=4