Ignore:
Timestamp:
09/09/14 20:08:33 (11 years ago)
Author:
epyon
Message:
  • texture types (1D,2D,Rect,3D,Cube - not all fully supported yet)
  • full framebuffer support
  • fixes to texture support
  • minor fixes
File:
1 edited

Legend:

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

    r323 r331  
    88
    99using namespace nv;
     10
     11unsigned int nv::texture_type_to_enum( texture_type type )
     12{
     13        switch( type )
     14        {
     15        case TEXTURE_1D   : return GL_TEXTURE_1D;
     16        case TEXTURE_2D   : return GL_TEXTURE_2D;
     17        case TEXTURE_RECT : return GL_TEXTURE_RECTANGLE;
     18        case TEXTURE_3D   : return GL_TEXTURE_3D;
     19        case TEXTURE_CUBE : return GL_TEXTURE_CUBE_MAP;
     20        NV_RETURN_COVERED_DEFAULT( 0 );
     21        }
     22}
    1023
    1124unsigned int nv::clear_state_buffers_to_mask( clear_state::buffers_type type )
     
    167180}
    168181
     182unsigned int nv::image_format_to_internal_enum( pixel_format format )
     183{
     184        switch( format )
     185        {
     186        case RGB  : return GL_RGB8;
     187        case RGBA : return GL_RGBA8;
     188                NV_RETURN_COVERED_DEFAULT( 0 );
     189        }
     190}
     191
     192
    169193unsigned int nv::sampler_filter_to_enum( sampler::filter filter )
    170194{
     
    207231        }
    208232}
     233
     234unsigned int nv::framebuffer_slot_to_enum( framebuffer_slot slot )
     235{
     236        switch( slot )
     237        {
     238        case READ_FRAMEBUFFER : return GL_READ_FRAMEBUFFER;
     239        case DRAW_FRAMEBUFFER : return GL_DRAW_FRAMEBUFFER;
     240        case FRAMEBUFFER      : return GL_FRAMEBUFFER;
     241        NV_RETURN_COVERED_DEFAULT( 0 );
     242        }
     243}
     244
     245
     246unsigned int nv::output_slot_to_enum( output_slot slot )
     247{
     248        switch( slot )
     249        {
     250        case OUTPUT_0 : return GL_COLOR_ATTACHMENT0;
     251        case OUTPUT_1 : return GL_COLOR_ATTACHMENT1;
     252        case OUTPUT_2 : return GL_COLOR_ATTACHMENT2;
     253        case OUTPUT_3 : return GL_COLOR_ATTACHMENT3;
     254        case OUTPUT_4 : return GL_COLOR_ATTACHMENT4;
     255        case OUTPUT_5 : return GL_COLOR_ATTACHMENT5;
     256        case OUTPUT_6 : return GL_COLOR_ATTACHMENT6;
     257        case OUTPUT_7 : return GL_COLOR_ATTACHMENT7;
     258        case OUTPUT_NONE  : return 0;
     259        case OUTPUT_FRONT : return GL_FRONT;
     260        case OUTPUT_BACK  : return GL_BACK;
     261                NV_RETURN_COVERED_DEFAULT( 0 );
     262        }
     263}
     264
    209265
    210266unsigned int nv::datatype_to_gl_enum( datatype type )
     
    257313        case GL_INT_VEC4       : return INT_VECTOR_4;
    258314// TODO: separate types?
    259         case GL_SAMPLER_1D         : return INT;
    260         case GL_SAMPLER_2D         : return INT;
    261         case GL_SAMPLER_3D         : return INT;
    262         case GL_SAMPLER_CUBE       : return INT;
    263         case GL_SAMPLER_1D_SHADOW  : return INT;       
    264         case GL_SAMPLER_2D_SHADOW  : return INT;
     315        case GL_SAMPLER_1D             : return INT;
     316        case GL_SAMPLER_2D             : return INT;
     317        case GL_SAMPLER_3D             : return INT;
     318        case GL_SAMPLER_2D_RECT        : return INT;
     319        case GL_SAMPLER_2D_RECT_SHADOW : return INT;
     320        case GL_SAMPLER_CUBE           : return INT;
     321        case GL_SAMPLER_1D_SHADOW      : return INT;   
     322        case GL_SAMPLER_2D_SHADOW      : return INT;
    265323// TODO: implement?
    266324//      case GL_BOOL   
Note: See TracChangeset for help on using the changeset viewer.