Changeset 501 for trunk/nv/interface/context.hh
- Timestamp:
- 06/15/16 18:34:37 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/nv/interface/context.hh
r500 r501 157 157 virtual void release( framebuffer ) = 0; 158 158 159 virtual void release( program p ) { m_device->release( p ); } 160 virtual void release( texture t ) { m_device->release( t ); } 161 virtual void release( buffer b ) { m_device->release( b ); } 162 163 virtual texture create_texture( texture_type type, ivec2 size, image_format aformat, sampler asampler, const void* data = nullptr ) = 0; 164 virtual texture create_texture( texture_type type, ivec3 size, image_format aformat, sampler asampler, const void* data = nullptr ) = 0; 165 virtual texture create_texture( texture_type type, pixel_format format ) { return m_device->create_texture( type, format ); } 166 // TODO: remove? 167 virtual texture create_texture( ivec2 size, image_format aformat, sampler asampler, const void* data = nullptr ) 168 { 169 return create_texture( TEXTURE_2D, size, aformat, asampler, data ); 170 } 171 virtual texture create_texture( const image_data* data, sampler asampler ) 172 { 173 return create_texture( data->get_size(), data->get_format(), asampler, data->get_data() ); 174 } 175 176 177 virtual program create_program( string_view vs_source, string_view fs_source ) { return m_device->create_program( vs_source, fs_source ); } 178 virtual buffer create_buffer( buffer_type type, buffer_hint hint, size_t size, const void* source = nullptr ) = 0; 179 virtual void create_buffer( buffer, size_t, const void* = nullptr ) = 0; 180 181 159 182 virtual const framebuffer_info* get_framebuffer_info( framebuffer ) const = 0; 160 183 … … 219 242 vertex_array create_vertex_array( const VTX* v, size_t count, buffer_hint hint ) 220 243 { 221 buffer vb = m_device->create_buffer( VERTEX_BUFFER, hint, count * sizeof( VTX ), v );244 buffer vb = create_buffer( VERTEX_BUFFER, hint, count * sizeof( VTX ), v ); 222 245 vertex_array_desc desc; 223 246 desc.add_vertex_buffers< VTX >( vb, true ); … … 228 251 vertex_array create_vertex_array( const VTX* v, size_t vcount, const IDX* i, size_t icount, buffer_hint hint ) 229 252 { 230 buffer vb = m_device->create_buffer( VERTEX_BUFFER, hint, count * sizeof( VTX ), v );231 buffer ib = m_device->create_buffer( INDEX_BUFFER, hint, icount * sizeof( IDX ), i );253 buffer vb = create_buffer( VERTEX_BUFFER, hint, count * sizeof( VTX ), v ); 254 buffer ib = create_buffer( INDEX_BUFFER, hint, icount * sizeof( IDX ), i ); 232 255 vertex_array_desc desc; 233 256 desc.add_vertex_buffers< VTX >( vb, true ); … … 248 271 if ( desc[0].vslot == slot::INDEX ) 249 272 { 250 buffer b = m_device->create_buffer( INDEX_BUFFER, hint, channel.raw_size(), channel.raw_data() );273 buffer b = create_buffer( INDEX_BUFFER, hint, channel.raw_size(), channel.raw_data() ); 251 274 va_desc.set_index_buffer( b, desc[0].etype, true ); 252 275 } 253 276 else 254 277 { 255 buffer b = m_device->create_buffer( VERTEX_BUFFER, hint, channel.raw_size(), channel.raw_data() );278 buffer b = create_buffer( VERTEX_BUFFER, hint, channel.raw_size(), channel.raw_data() ); 256 279 va_desc.add_vertex_buffers( b, desc ); 257 280 }
Note: See TracChangeset
for help on using the changeset viewer.