Ignore:
Timestamp:
08/18/14 23:25:46 (11 years ago)
Author:
epyon
Message:
  • cleanup of context and device interfaces
  • create_vertex_array moved to context (as it's context bound)
  • added partial framebuffer functions to context
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/gl/gl_device.cc

    r303 r313  
    9090gl_device::~gl_device()
    9191{
    92         while ( m_vertex_arrays.size() > 0 )
    93                 release( m_vertex_arrays.get_handle(0) );
    9492        while ( m_textures.size() > 0 )
    9593                release( m_textures.get_handle(0) );
     
    9896        while ( m_programs.size() > 0 )
    9997                release( m_programs.get_handle(0) );
    100 
    10198        SDL_Quit();
    10299}
     
    192189}
    193190
    194 nv::vertex_array nv::gl_device::create_vertex_array()
    195 {
    196         vertex_array result = m_vertex_arrays.create();
    197         vertex_array_info* info = m_vertex_arrays.get( result );
    198         info->count       = 0;
    199         info->index       = buffer();
    200         info->index_owner = false;
    201         info->index_type  = USHORT;
    202         return result;
    203 }
    204 
    205 void nv::gl_device::release( vertex_array va )
    206 {
    207         vertex_array_info* info = m_vertex_arrays.get( va );
    208         if ( info )
    209         {
    210                 for ( uint32 i = 0; i < info->count; ++i )
    211                 {
    212                         if ( info->attr[i].owner ) release( info->attr[i].vbuffer );
    213                 }
    214                 if ( info->index.is_valid() && info->index_owner) release( info->index );
    215                 m_vertex_arrays.destroy( va );
    216         }
    217 }
    218 
    219191void nv::gl_device::release( program p )
    220192{
     
    233205                m_programs.destroy( p );
    234206        }
    235 }
    236 
    237 const vertex_array_info* nv::gl_device::get_vertex_array_info( vertex_array va ) const
    238 {
    239         return m_vertex_arrays.get( va );
    240 }
    241 
    242 vertex_array_info* nv::gl_device::get_vertex_array_info_mutable( vertex_array va )
    243 {
    244         return m_vertex_arrays.get( va );
    245207}
    246208
     
    485447}
    486448
    487 
Note: See TracChangeset for help on using the changeset viewer.