Changeset 280 for trunk/src/gfx


Ignore:
Timestamp:
07/08/14 18:29:24 (11 years ago)
Author:
epyon
Message:
  • unified mesh_raw_channel and mesh_raw_index_channel
  • string_table cleaned up and implementation of creator split into a cc file
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/gfx/keyframed_mesh.cc

    r275 r280  
    3232
    3333        m_index_count  = m_mesh_data->get_index_channel()->count;
    34         m_vertex_count = m_mesh_data->get_channel_data()[1]->count;
    35         m_frame_count  = m_mesh_data->get_channel_data()[0]->count / m_vertex_count;
     34        m_vertex_count = m_mesh_data->get_channel<vertex_t>()->count;
     35        m_frame_count  = m_mesh_data->get_channel<vertex_pn>()->count / m_vertex_count;
    3636}
    3737
     
    167167        : keyframed_mesh( a_device, a_data, a_tag_map )
    168168{
    169         m_vb = a_device->create_vertex_buffer( nv::STATIC_DRAW, m_vertex_count * sizeof( vertex_pn ), (void*)m_mesh_data->get_channel_data()[0]->data );
    170         m_va->add_vertex_buffers( m_vb, m_mesh_data->get_channel_data()[0] );
     169        m_vb = a_device->create_vertex_buffer( nv::STATIC_DRAW, m_vertex_count * sizeof( vertex_pn ), (void*)m_mesh_data->get_channel<vertex_pn>()->data );
     170        m_va->add_vertex_buffers( m_vb, m_mesh_data->get_channel<vertex_pn>() );
    171171
    172         nv::vertex_buffer* vb = a_device->create_vertex_buffer( nv::STATIC_DRAW, m_vertex_count * sizeof( nv::vec2 ), (void*)m_mesh_data->get_channel_data()[1]->data );
    173         m_va->add_vertex_buffers( vb, m_mesh_data->get_channel_data()[1] );
     172        nv::vertex_buffer* vb = a_device->create_vertex_buffer( nv::STATIC_DRAW, m_vertex_count * sizeof( nv::vec2 ), (void*)m_mesh_data->get_channel<vertex_t>()->data );
     173        m_va->add_vertex_buffers( vb, m_mesh_data->get_channel<vertex_t>() );
    174174
    175         nv::index_buffer* ib = a_device->create_index_buffer( nv::STATIC_DRAW, m_mesh_data->get_index_channel()->size, (void*)m_mesh_data->get_index_channel()->data );
    176         m_va->set_index_buffer( ib, m_mesh_data->get_index_channel()->etype, true );
     175        nv::index_buffer* ib = a_device->create_index_buffer( nv::STATIC_DRAW, m_mesh_data->get_index_channel()->size(), (void*)m_mesh_data->get_index_channel()->data );
     176        m_va->set_index_buffer( ib, m_mesh_data->get_index_channel()->desc.slots[0].etype, true );
    177177
    178178        m_vertex.resize( m_vertex_count );
     
    183183        keyframed_mesh::update( ms );
    184184
    185         const vertex_pn* data = (const vertex_pn*)(m_mesh_data->get_channel_data()[0]->data);
     185        const vertex_pn* data = m_mesh_data->get_channel_data<vertex_pn>();
    186186        const vertex_pn* prev = data + m_vertex_count * m_last_frame;
    187187        const vertex_pn* next = data + m_vertex_count * m_next_frame;
Note: See TracChangeset for help on using the changeset viewer.