| 1520 | } |
| 1521 | |
| 1522 | void MapDrawerGL::PrepareModelsPolygonBuffer( |
| 1523 | std::vector<Model::Vertex>& vertices, |
| 1524 | std::vector<unsigned short>& indeces, |
| 1525 | r_PolygonBuffer& buffer ) |
| 1526 | { |
| 1527 | buffer.VertexData( |
| 1528 | vertices.data(), |
| 1529 | vertices.size() * sizeof(Model::Vertex), |
| 1530 | sizeof(Model::Vertex) ); |
| 1531 | |
| 1532 | buffer.IndexData( |
| 1533 | indeces.data(), |
| 1534 | indeces.size() * sizeof(unsigned short), |
| 1535 | GL_UNSIGNED_SHORT, |
| 1536 | GL_TRIANGLES ); |
| 1537 | |
| 1538 | Model::Vertex v; |
| 1539 | buffer.VertexAttribPointerInt( |
| 1540 | 0, 1, GL_UNSIGNED_SHORT, |
| 1541 | ((char*)&v.vertex_id) - ((char*)&v) ); |
| 1542 | |
| 1543 | buffer.VertexAttribPointer( |
| 1544 | 1, 3, GL_FLOAT, false, |
| 1545 | ((char*)v.tex_coord) - ((char*)&v) ); |
| 1546 | |
| 1547 | buffer.VertexAttribPointerInt( |
| 1548 | 2, 1, GL_UNSIGNED_BYTE, |
| 1549 | ((char*)&v.texture_id) - ((char*)&v) ); |
| 1550 | |
| 1551 | buffer.VertexAttribPointer( |
| 1552 | 3, 1, GL_UNSIGNED_BYTE, true, |
| 1553 | ((char*)&v.alpha_test_mask) - ((char*)&v) ); |
| 1554 | |
| 1555 | buffer.VertexAttribPointerInt( |
| 1556 | 4, 1, GL_UNSIGNED_BYTE, |
| 1557 | ((char*)&v.groups_mask) - ((char*)&v) ); |
| 1558 | } |
| 1559 | |
| 1560 | void MapDrawerGL::DrawWalls( const m_Mat4& view_matrix ) |
| 1561 | { |
nothing calls this directly
no outgoing calls
no test coverage detected