efl/src/lib/ephysics/ephysics_trimesh.h

336 lines
11 KiB
C

#ifndef EPHYSICS_TRIMESH_H
#define EPHYSICS_TRIMESH_H
#define CYLINDER_NUM_VERTICES 58
#define CYLINDER_NUM_TRIANGLES 104
static btScalar cylinder_vertices[CYLINDER_NUM_VERTICES * 3] = {
btScalar(0.508134), btScalar(-0.210476), btScalar(0.550000),
btScalar(0.530611), btScalar(0.097476), btScalar(0.550000),
btScalar(0.406474), btScalar(0.362621), btScalar(0.550000),
btScalar(0.165687), btScalar(0.517043), btScalar(0.550000),
btScalar(-0.145614), btScalar(0.521036), btScalar(0.550000),
btScalar(-0.405485), btScalar(0.364100), btScalar(0.550000),
btScalar(-0.536816), btScalar(0.066283), btScalar(0.550000),
btScalar(-0.491202), btScalar(-0.235817), btScalar(0.550000),
btScalar(-0.289243), btScalar(-0.455503), btScalar(0.550000),
btScalar(0.018444), btScalar(-0.546331), btScalar(0.550000),
btScalar(0.321449), btScalar(-0.433984), btScalar(0.550000),
btScalar(0.508134), btScalar(-0.210476), btScalar(-0.550000),
btScalar(0.321449), btScalar(-0.433984), btScalar(-0.550000),
btScalar(0.023871), btScalar(-0.545252), btScalar(-0.550000),
btScalar(-0.289243), btScalar(-0.455503), btScalar(-0.550000),
btScalar(-0.490465), btScalar(-0.236920), btScalar(-0.550000),
btScalar(-0.537432), btScalar(0.063186), btScalar(-0.550000),
btScalar(-0.407240), btScalar(0.361475), btScalar(-0.550000),
btScalar(-0.145614), btScalar(0.521036), btScalar(-0.550000),
btScalar(0.162590), btScalar(0.517659), btScalar(-0.550000),
btScalar(0.405750), btScalar(0.363704), btScalar(-0.550000),
btScalar(0.529995), btScalar(0.100572), btScalar(-0.550000),
btScalar(0.225162), btScalar(-0.126432), btScalar(0.550000),
btScalar(0.182505), btScalar(0.180319), btScalar(0.550000),
btScalar(-0.135548), btScalar(0.257663), btScalar(0.550000),
btScalar(-0.128146), btScalar(-0.029182), btScalar(0.550000),
btScalar(-0.047689), btScalar(-0.299859), btScalar(0.550000),
btScalar(0.192370), btScalar(-0.050817), btScalar(-0.550000),
btScalar(-0.080199), btScalar(-0.257948), btScalar(-0.550000),
btScalar(-0.229392), btScalar(0.019540), btScalar(-0.550000),
btScalar(-0.034804), btScalar(0.258372), btScalar(-0.550000),
btScalar(0.241500), btScalar(0.226175), btScalar(-0.550000),
btScalar(0.532902), btScalar(-0.085955), btScalar(0.216643),
btScalar(0.483467), btScalar(0.247392), btScalar(0.234226),
btScalar(0.278528), btScalar(0.462663), btScalar(0.218255),
btScalar(-0.041739), btScalar(0.541698), btScalar(0.182347),
btScalar(-0.330369), btScalar(0.428024), btScalar(0.180626),
btScalar(-0.518580), btScalar(0.157959), btScalar(0.172947),
btScalar(-0.521671), btScalar(-0.142420), btScalar(0.183206),
btScalar(-0.340102), btScalar(-0.421520), btScalar(0.186658),
btScalar(-0.046556), btScalar(-0.540740), btScalar(0.196846),
btScalar(0.325206), btScalar(-0.431473), btScalar(0.238916),
btScalar(0.479824), btScalar(-0.252844), btScalar(-0.162453),
btScalar(0.184507), btScalar(-0.513299), btScalar(-0.136220),
btScalar(-0.159624), btScalar(-0.518249), btScalar(-0.150107),
btScalar(-0.426985), btScalar(-0.331923), btScalar(-0.168222),
btScalar(-0.541617), btScalar(-0.042144), btScalar(-0.168426),
btScalar(-0.470990), btScalar(0.266065), btScalar(-0.185909),
btScalar(-0.239361), btScalar(0.488834), btScalar(-0.187932),
btScalar(0.134846), btScalar(0.523178), btScalar(-0.152636),
btScalar(0.397364), btScalar(0.376254), btScalar(-0.269892),
btScalar(0.531212), btScalar(0.094456), btScalar(-0.324493),
btScalar(0.382010), btScalar(0.393518), btScalar(-0.011940),
btScalar(0.523986), btScalar(0.130780), btScalar(-0.048009),
btScalar(0.041379), btScalar(-0.196807), btScalar(0.054210),
btScalar(0.013146), btScalar(0.357496), btScalar(0.024686),
btScalar(-0.047077), btScalar(0.119424), btScalar(-0.167934),
btScalar(0.055271), btScalar(0.158920), btScalar(0.227414),
};
static int cylinder_indices[CYLINDER_NUM_TRIANGLES][3] = {
{0, 1, 22},
{1, 2, 23},
{22, 1, 23},
{2, 3, 23},
{3, 4, 24},
{23, 3, 24},
{4, 5, 24},
{10, 0, 22},
{25, 24, 6},
{5, 6, 24},
{6, 7, 25},
{7, 8, 26},
{25, 7, 26},
{8, 9, 26},
{22, 26, 10},
{9, 10, 26},
{26, 22, 25},
{22, 23, 25},
{23, 24, 25},
{11, 12, 27},
{13, 28, 12},
{13, 14, 28},
{27, 12, 28},
{14, 15, 28},
{15, 16, 29},
{28, 15, 29},
{16, 17, 29},
{21, 11, 27},
{17, 18, 30},
{29, 17, 30},
{18, 19, 30},
{19, 20, 31},
{30, 19, 31},
{20, 21, 31},
{31, 21, 27},
{30, 31, 27},
{28, 29, 27},
{30, 27, 29},
{1, 0, 32},
{2, 1, 33},
{1, 32, 33},
{3, 2, 34},
{2, 33, 34},
{4, 3, 35},
{3, 34, 35},
{5, 4, 36},
{4, 35, 36},
{6, 5, 37},
{5, 36, 37},
{7, 6, 38},
{6, 37, 38},
{8, 7, 39},
{7, 38, 39},
{9, 8, 40},
{8, 39, 40},
{10, 9, 41},
{9, 40, 41},
{12, 11, 42},
{13, 12, 43},
{12, 42, 43},
{14, 13, 44},
{13, 43, 44},
{15, 14, 45},
{14, 44, 45},
{16, 15, 46},
{15, 45, 46},
{17, 16, 47},
{16, 46, 47},
{18, 17, 48},
{17, 47, 48},
{19, 18, 49},
{18, 48, 49},
{20, 19, 50},
{19, 49, 50},
{21, 20, 51},
{20, 50, 51},
{10, 41, 0},
{21, 51, 11},
{0, 41, 32},
{11, 51, 42},
{34, 33, 52},
{35, 34, 49},
{36, 35, 48},
{37, 36, 47},
{38, 37, 46},
{39, 38, 45},
{40, 39, 44},
{41, 40, 43},
{48, 35, 49},
{44, 43, 40},
{45, 44, 39},
{46, 45, 38},
{47, 46, 37},
{48, 47, 36},
{50, 49, 52},
{51, 50, 53},
{50, 52, 53},
{33, 32, 53},
{43, 42, 41},
{41, 42, 32},
{52, 49, 34},
{33, 53, 52},
{32, 42, 53},
{42, 51, 53},
};
#define CUBE_NUM_VERTICES 61
#define CUBE_NUM_TRIANGLES 96
static btScalar cube_vertices[CUBE_NUM_VERTICES * 3] = {
btScalar(0.550000), btScalar(-0.550000), btScalar(-0.550000),
btScalar(0.550000), btScalar(-0.550000), btScalar(-0.215571),
btScalar(0.550000), btScalar(-0.550000), btScalar(0.149207),
btScalar(0.550000), btScalar(-0.550000), btScalar(0.550000),
btScalar(-0.550000), btScalar(-0.550000), btScalar(-0.550000),
btScalar(-0.215767), btScalar(-0.550000), btScalar(-0.550000),
btScalar(0.178583), btScalar(-0.550000), btScalar(-0.550000),
btScalar(-0.550000), btScalar(-0.550000), btScalar(0.550000),
btScalar(-0.550000), btScalar(-0.550000), btScalar(0.205306),
btScalar(-0.550000), btScalar(-0.550000), btScalar(-0.180403),
btScalar(0.213790), btScalar(-0.550000), btScalar(0.550000),
btScalar(-0.152594), btScalar(-0.550000), btScalar(0.550000),
btScalar(0.550000), btScalar(-0.171346), btScalar(-0.550000),
btScalar(0.550000), btScalar(0.218404), btScalar(-0.550000),
btScalar(0.550000), btScalar(0.550000), btScalar(-0.550000),
btScalar(0.550000), btScalar(0.550000), btScalar(0.550000),
btScalar(0.550000), btScalar(0.216178), btScalar(0.550000),
btScalar(0.550000), btScalar(-0.168604), btScalar(0.550000),
btScalar(0.550000), btScalar(0.550000), btScalar(-0.230974),
btScalar(0.550000), btScalar(0.550000), btScalar(0.154825),
btScalar(-0.550000), btScalar(-0.201191), btScalar(-0.550000),
btScalar(-0.550000), btScalar(0.180873), btScalar(-0.550000),
btScalar(-0.550000), btScalar(0.550000), btScalar(-0.550000),
btScalar(-0.167045), btScalar(0.550000), btScalar(-0.550000),
btScalar(0.207428), btScalar(0.550000), btScalar(-0.550000),
btScalar(-0.550000), btScalar(0.550000), btScalar(0.550000),
btScalar(-0.550000), btScalar(0.235945), btScalar(0.550000),
btScalar(-0.550000), btScalar(-0.152540), btScalar(0.550000),
btScalar(0.202185), btScalar(0.550000), btScalar(0.550000),
btScalar(-0.178486), btScalar(0.550000), btScalar(0.550000),
btScalar(-0.550000), btScalar(0.550000), btScalar(-0.200119),
btScalar(-0.550000), btScalar(0.550000), btScalar(0.178238),
btScalar(0.183518), btScalar(-0.550000), btScalar(-0.048608),
btScalar(-0.193942), btScalar(-0.550000), btScalar(-0.265714),
btScalar(-0.176127), btScalar(-0.550000), btScalar(0.121548),
btScalar(0.550000), btScalar(-0.228480), btScalar(-0.211018),
btScalar(0.550000), btScalar(0.115197), btScalar(-0.269727),
btScalar(0.550000), btScalar(0.087351), btScalar(0.133224),
btScalar(0.019637), btScalar(-0.192951), btScalar(-0.550000),
btScalar(0.260210), btScalar(0.183806), btScalar(-0.550000),
btScalar(-0.127158), btScalar(0.171482), btScalar(-0.550000),
btScalar(-0.144513), btScalar(-0.112619), btScalar(0.550000),
btScalar(0.201326), btScalar(0.040933), btScalar(0.550000),
btScalar(-0.167096), btScalar(0.273800), btScalar(0.550000),
btScalar(0.207212), btScalar(0.550000), btScalar(-0.049764),
btScalar(-0.148416), btScalar(0.550000), btScalar(-0.261736),
btScalar(-0.150781), btScalar(0.550000), btScalar(0.120466),
btScalar(-0.550000), btScalar(-0.243131), btScalar(0.177642),
btScalar(-0.550000), btScalar(-0.017683), btScalar(-0.199324),
btScalar(-0.550000), btScalar(0.150767), btScalar(0.162842),
btScalar(-0.138413), btScalar(-0.072881), btScalar(-0.103734),
btScalar(0.139934), btScalar(0.152037), btScalar(-0.158703),
btScalar(0.254965), btScalar(-0.254145), btScalar(-0.307055),
btScalar(0.228935), btScalar(-0.176885), btScalar(0.123000),
btScalar(0.115739), btScalar(0.220857), btScalar(0.251735),
};
static int cube_indices[CUBE_NUM_TRIANGLES][3] = {
{0, 1, 6},
{1, 2, 32},
{2, 3, 10},
{5, 33, 4},
{5, 6, 33},
{9, 4, 33},
{7, 8, 11},
{8, 9, 34},
{11, 8, 34},
{9, 33, 34},
{10, 11, 34},
{2, 10, 32},
{6, 1, 32},
{6, 32, 33},
{33, 32, 34},
{34, 32, 10},
{12, 35, 0},
{2, 1, 35},
{3, 2, 17},
{12, 13, 36},
{36, 13, 18},
{15, 16, 19},
{19, 16, 37},
{16, 17, 37},
{18, 19, 37},
{17, 2, 37},
{14, 18, 13},
{1, 0, 35},
{35, 12, 36},
{18, 37, 36},
{35, 36, 37},
{2, 35, 37},
{0, 6, 12},
{5, 4, 20},
{6, 5, 38},
{5, 20, 38},
{13, 12, 39},
{13, 39, 14},
{21, 40, 20},
{21, 22, 23},
{23, 24, 40},
{21, 23, 40},
{24, 14, 39},
{12, 6, 38},
{38, 20, 40},
{38, 40, 39},
{40, 24, 39},
{12, 38, 39},
{10, 3, 17},
{7, 11, 27},
{27, 11, 41},
{11, 10, 41},
{16, 15, 28},
{17, 16, 42},
{26, 43, 25},
{26, 27, 41},
{28, 29, 43},
{16, 28, 42},
{41, 43, 26},
{10, 17, 42},
{41, 10, 42},
{28, 43, 42},
{41, 42, 43},
{29, 25, 43},
{18, 14, 24},
{15, 19, 28},
{19, 18, 44},
{28, 19, 44},
{30, 45, 22},
{24, 23, 45},
{25, 29, 31},
{29, 28, 46},
{31, 29, 46},
{28, 44, 46},
{30, 31, 46},
{23, 22, 45},
{18, 24, 44},
{30, 46, 45},
{45, 46, 44},
{44, 24, 45},
{4, 9, 20},
{27, 47, 7},
{9, 8, 47},
{8, 7, 47},
{21, 20, 48},
{22, 21, 30},
{26, 25, 31},
{26, 31, 49},
{27, 26, 49},
{31, 30, 49},
{30, 21, 48},
{47, 27, 49},
{20, 9, 48},
{30, 48, 49},
{47, 49, 48},
{9, 47, 48},
};
#endif