1 | ///////////////////////////////////////////////////////////////////////////////
|
---|
2 | //
|
---|
3 | // ## ######
|
---|
4 | // ###### ###
|
---|
5 | // ## ############### Shark 3D Engine (www.shark3d.com)
|
---|
6 | // ########## # # #
|
---|
7 | // ######## Copyright (c) 1996-2006 Spinor GmbH.
|
---|
8 | // ######### # # # All rights reserved.
|
---|
9 | // ## ##########
|
---|
10 | // ##
|
---|
11 | //
|
---|
12 | ///////////////////////////////////////////////////////////////////////////////
|
---|
13 |
|
---|
14 | // This file configurates the prepare tool.
|
---|
15 |
|
---|
16 | // If enabled the data is optimized.
|
---|
17 | // The tool runs much slower, but runtime performance is better.
|
---|
18 | // Can be overwritten by a command line option.
|
---|
19 | optimize 1
|
---|
20 |
|
---|
21 | // Binary output.
|
---|
22 | // Can be overwritten by a command line option.
|
---|
23 | binary 1
|
---|
24 |
|
---|
25 | // Status message output time interval in seconds.
|
---|
26 | process_msg_step 1.0
|
---|
27 |
|
---|
28 | // Pattern used to decide when to generate normal vectors:
|
---|
29 | normal_gen_kind_pat "normal"
|
---|
30 |
|
---|
31 | // If non-empry, create a new variant with this kind:
|
---|
32 | normal_new_kind ""
|
---|
33 |
|
---|
34 | // Pattern used to decide when to generate tangent-U vectors:
|
---|
35 | tangentu_gen_kind_pat "tangentu|tangent"
|
---|
36 |
|
---|
37 | // Pattern used to decide when to generate tangent-V vectors:
|
---|
38 | tangentv_gen_kind_pat "tangentv|tangent"
|
---|
39 |
|
---|
40 | // If non-empry, create a new variant with this kind:
|
---|
41 | tangent_new_kind ""
|
---|
42 |
|
---|
43 | // Pattern used to decide when to convert into a particle mesh:
|
---|
44 | partic_gen_kind_pat "partic"
|
---|
45 |
|
---|
46 | // If non-empry, create a new variant with this kind:
|
---|
47 | partic_new_kind ""
|
---|
48 |
|
---|
49 | // Pattern used to decide when to generate seal variants:
|
---|
50 | seal_gen_kind_pat "shvolquick|shvolquickbloat"
|
---|
51 |
|
---|
52 | // Pattern used to decide when to generate seal variants:
|
---|
53 | seal_caulk_kind_pat "shvolquickbloat"
|
---|
54 |
|
---|
55 | // If non-empry, create a new variant with this kind:
|
---|
56 | seal_new_kind "sep_seal"
|
---|
57 |
|
---|
58 | // Pattern used to decide when to generate the opp information:
|
---|
59 | opp_gen_kind_pat "geo"
|
---|
60 |
|
---|
61 | // If non-empry, create a new variant with this kind:
|
---|
62 | opp_new_kind ""
|
---|
63 |
|
---|
64 | // Pattern used to decide when to generate the neighbor information:
|
---|
65 | neigh_gen_kind_pat "shvolstrict"
|
---|
66 |
|
---|
67 | // Usage set for neigh variants:
|
---|
68 | neigh_new_kind "sep_neigh"
|
---|
69 |
|
---|
70 | // Define parameters for different model variants.
|
---|
71 | // For each model variant, the first kind entry is used
|
---|
72 | // where the usage_pat wildcard string matches at least one usage string
|
---|
73 | // of the variant.
|
---|
74 | pack_array
|
---|
75 | {
|
---|
76 | // Pattern used to match the usage strings of the variant.
|
---|
77 | // If the string is empty, match everything,
|
---|
78 | // including variants having no usage strings at all.
|
---|
79 | kind_pat "sep_neigh"
|
---|
80 |
|
---|
81 | // All kinds which match this expression are used as usage string:
|
---|
82 | usage_pat ""
|
---|
83 |
|
---|
84 | // Add also these usages:
|
---|
85 | usage_set "shvol_occl"
|
---|
86 |
|
---|
87 | // Maximal number of vertices per packet.
|
---|
88 | // The value 0 means that there is no limit.
|
---|
89 | packet_max_vert_cnt 200
|
---|
90 |
|
---|
91 | // Maximal number of triangles per packet.
|
---|
92 | // The value 0 means that there is no limit.
|
---|
93 | packet_max_tri_cnt 200
|
---|
94 |
|
---|
95 | // Maximal number of bones per packet.
|
---|
96 | packet_max_bone_cnt 32
|
---|
97 |
|
---|
98 | // Vertex cache scores.
|
---|
99 | vertex_dist_score_array
|
---|
100 | }
|
---|
101 | {
|
---|
102 | kind_pat "sep_seal"
|
---|
103 | usage_pat ""
|
---|
104 | usage_set "shvol_occl"
|
---|
105 | packet_max_vert_cnt 0
|
---|
106 | packet_max_tri_cnt 0
|
---|
107 | // OpenGL does not support indexed skinning well.
|
---|
108 | // Therefore for OpenGL we must limit each packet to 4 bones.
|
---|
109 | // Direct3D supports indexed skinning well.
|
---|
110 | // Therefore when using Direct3D only you can use a limit of 32.
|
---|
111 | packet_max_bone_cnt 32
|
---|
112 | //packet_max_bone_cnt 4
|
---|
113 | vertex_dist_score_array
|
---|
114 | }
|
---|
115 | {
|
---|
116 | kind_pat "render|geo"
|
---|
117 | usage_pat "render|geo"
|
---|
118 | usage_set
|
---|
119 | packet_max_vert_cnt 0
|
---|
120 | packet_max_tri_cnt 0
|
---|
121 | // Remarks about this parameter see above.
|
---|
122 | packet_max_bone_cnt 32
|
---|
123 | //packet_max_bone_cnt 4
|
---|
124 | vertex_dist_score_array
|
---|
125 | }
|
---|
126 | {
|
---|
127 | // If no kind matches an above pack entry,
|
---|
128 | // don't report an error if a kind matches the following pattern:
|
---|
129 | kind_pat "null|boundonly|structure|structurehint"
|
---|
130 | & "|shvolstrict|shvolquick|shvolquickbloat"
|
---|
131 |
|
---|
132 | usage_pat ""
|
---|
133 | usage_set
|
---|
134 | }
|
---|