Ignore:
Timestamp:
07/09/15 14:40:36 (10 years ago)
Author:
epyon
Message:
  • refactoring of raw_data_channel and data_descriptor access
File:
1 edited

Legend:

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

    r410 r412  
    2323        , m_active( false )
    2424{
    25         m_index_count  = m_mesh_data->get_index_channel()->count;
    26         m_vertex_count = m_mesh_data->get_channel<vertex_t>()->count;
     25        m_index_count  = m_mesh_data->get_index_channel()->element_count();
     26        m_vertex_count = m_mesh_data->get_channel<vertex_t>()->element_count();
    2727        m_vchannel     = m_mesh_data->get_channel<vertex_pnt>();
    2828        m_vsize        = sizeof( vertex_pnt );
     
    3434                m_vsize        = sizeof( vertex_pn );
    3535        }
    36         m_frame_count  = m_vchannel->count / m_vertex_count;
     36        m_frame_count  = m_vchannel->element_count() / m_vertex_count;
    3737        m_pbuffer      = buffer();
    3838}
     
    190190        m_context->add_vertex_buffers( m_va, vb, m_mesh_data->get_channel<vertex_t>() );
    191191
    192         buffer  ib = m_context->get_device()->create_buffer( INDEX_BUFFER, STATIC_DRAW, m_mesh_data->get_index_channel()->size(), m_mesh_data->get_index_channel()->data );
    193 
    194         m_context->set_index_buffer( m_va, ib, m_mesh_data->get_index_channel()->desc[0].etype, true );
     192        const raw_data_channel* index_channel = m_mesh_data->get_index_channel();
     193        buffer  ib = m_context->get_device()->create_buffer( INDEX_BUFFER, STATIC_DRAW, index_channel->raw_size(), index_channel->raw_data() );
     194
     195        m_context->set_index_buffer( m_va, ib, m_mesh_data->get_index_channel()->descriptor()[0].etype, true );
    195196
    196197        m_data = new uint8[ m_vertex_count * m_vsize ];
Note: See TracChangeset for help on using the changeset viewer.