Changeset 49 for trunk


Ignore:
Timestamp:
05/28/13 22:19:58 (12 years ago)
Author:
epyon
Message:
  • renamings for easier typing
Location:
trunk
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/nv/gl/gl_device.hh

    r45 r49  
    2626                virtual index_buffer* create_index_buffer( buffer_hint hint, int size, void* source = nullptr );
    2727                virtual vertex_array* create_vertex_array();
    28                 virtual texture2d* create_texture2d( ivec2 size, texture2d::format aformat, texture2d::datatype adatatype, texture2d_sampler sampler, void* data = nullptr );
     28                virtual texture2d* create_texture2d( ivec2 size, image_format aformat, type adatatype, sampler asampler, void* data = nullptr );
    2929                virtual ~gl_device();
    3030        private:
  • trunk/nv/gl/gl_enum.hh

    r45 r49  
    3232        unsigned int stencil_operation_to_enum( stencil_test_face::operation type );
    3333        unsigned int buffer_hint_to_enum( buffer_hint hint );
    34         unsigned int texture_format_to_enum( texture2d::format format );
    35         unsigned int texture_datatype_to_enum( texture2d::datatype datatype );
    36         unsigned int texture_filter_to_enum( texture2d_sampler::filter filter );
    37         unsigned int texture_wrap_to_enum( texture2d_sampler::wrap wrap );
     34        unsigned int image_format_to_enum( image_format format );
     35        unsigned int sampler_filter_to_enum( sampler::filter filter );
     36        unsigned int sampler_wrap_to_enum( sampler::wrap wrap );
    3837        unsigned int primitive_to_enum( primitive p );
    3938
  • trunk/nv/gl/gl_texture2d.hh

    r43 r49  
    2222        {
    2323        public:
    24                 gl_texture2d( ivec2 size, format aformat, datatype adatatype, texture2d_sampler sampler, void* data = nullptr );
     24                gl_texture2d( ivec2 size, image_format aformat, type adatatype, sampler asampler, void* data = nullptr );
    2525                virtual void assign( void* data );
    2626                virtual void bind( int slot = 0 );
  • trunk/nv/interface/device.hh

    r45 r49  
    3131                virtual index_buffer* create_index_buffer( buffer_hint hint, int size, void* source = nullptr ) = 0;
    3232                virtual vertex_array* create_vertex_array() = 0;
    33                 virtual texture2d* create_texture2d( ivec2 size, texture2d::format aformat, texture2d::datatype adatatype, texture2d_sampler sampler, void* data = nullptr ) = 0;
     33                virtual texture2d* create_texture2d( ivec2 size, image_format aformat, type adatatype, sampler asampler, void* data = nullptr ) = 0;
    3434        };
    3535
  • trunk/nv/interface/texture2d.hh

    r43 r49  
    1919{
    2020
    21         struct texture2d_sampler
     21        struct sampler
    2222        {
    2323                enum filter
     
    4343                wrap wrap_t;
    4444
    45                 texture2d_sampler( filter min, filter max, wrap s, wrap t )
     45                sampler( filter min, filter max, wrap s, wrap t )
    4646                        : filter_min( min ), filter_max( max ), wrap_s( s ), wrap_t( t ) {}
    47                 texture2d_sampler( filter f, wrap w )
     47                sampler( filter f, wrap w )
    4848                        : filter_min( f ), filter_max( f ), wrap_s( w ), wrap_t( w ) {}
    4949
    5050        };
    5151
     52        enum image_format
     53        {
     54                RGB,
     55                RGBA
     56        };
    5257
    5358        class texture2d
    5459        {
    5560        public:
    56                 enum format
    57                 {
    58                         RGB,
    59                         RGBA
    60                 };
    6161
    62                 enum datatype
    63                 {
    64                         UINT,
    65                         UBYTE,
    66                         FLOAT
    67                 };
    68                 texture2d( ivec2 size, format aformat, datatype adatatype, texture2d_sampler asampler ) :
     62                texture2d( ivec2 size, image_format aformat, type adatatype, sampler asampler ) :
    6963                        m_size( size ), m_format( aformat ), m_datatype( adatatype ), m_sampler( asampler ) {}
    7064                virtual void assign( void* data ) = 0;
     
    7569                int get_width() const { return m_size.x; }
    7670                int get_height() const { return m_size.y; }
    77                 format get_format() const { return m_format; }
    78                 datatype get_datatype() const { return m_datatype; }
    79                 const texture2d_sampler& get_sampler() const { return m_sampler; }
     71                image_format get_format() const { return m_format; }
     72                type get_datatype() const { return m_datatype; }
     73                const sampler& get_sampler() const { return m_sampler; }
    8074        protected:
    81                 ivec2             m_size;
    82                 format            m_format;
    83                 datatype          m_datatype;
    84                 texture2d_sampler m_sampler;
     75                ivec2        m_size;
     76                image_format m_format;
     77                type         m_datatype;
     78                sampler      m_sampler;
    8579        };
    8680
  • trunk/src/gl/gl_device.cc

    r45 r49  
    6767}
    6868
    69 texture2d* gl_device::create_texture2d( ivec2 size, texture2d::format aformat, texture2d::datatype adatatype, texture2d_sampler sampler, void* data /*= nullptr */ )
     69texture2d* gl_device::create_texture2d( ivec2 size, image_format aformat, type adatatype, sampler asampler, void* data /*= nullptr */ )
    7070{
    71         return new gl_texture2d( size, aformat, adatatype, sampler, data );
     71        return new gl_texture2d( size, aformat, adatatype, asampler, data );
    7272}
    7373
  • trunk/src/gl/gl_enum.cc

    r45 r49  
    134134}
    135135
    136 unsigned int nv::texture_format_to_enum( texture2d::format format )
     136unsigned int nv::image_format_to_enum( image_format format )
    137137{
    138138        switch( format )
    139139        {
    140         case texture2d::RGB  : return GL_RGB;
    141         case texture2d::RGBA : return GL_RGBA;
    142         default : return 0; // TODO: throw!
    143         }
    144 }
    145 
    146 unsigned int nv::texture_datatype_to_enum( texture2d::datatype datatype )
    147 {
    148         switch( datatype )
    149         {
    150         case texture2d::UINT   : return GL_UNSIGNED_INT;
    151         case texture2d::UBYTE  : return GL_UNSIGNED_BYTE;
    152         case texture2d::FLOAT  : return GL_FLOAT;
    153         default : return 0; // TODO: throw!
    154         }
    155 }
    156 
    157 unsigned int nv::texture_filter_to_enum( texture2d_sampler::filter filter )
     140        case RGB  : return GL_RGB;
     141        case RGBA : return GL_RGBA;
     142        default : return 0; // TODO: throw!
     143        }
     144}
     145
     146unsigned int nv::sampler_filter_to_enum( sampler::filter filter )
    158147{
    159148        switch( filter )
    160149        {
    161         case texture2d_sampler::LINEAR                 : return GL_LINEAR;
    162         case texture2d_sampler::NEAREST                : return GL_NEAREST;
    163         case texture2d_sampler::NEAREST_MIPMAP_NEAREST : return GL_NEAREST_MIPMAP_NEAREST;
    164         case texture2d_sampler::LINEAR_MIPMAP_NEAREST  : return GL_LINEAR_MIPMAP_NEAREST;
    165         case texture2d_sampler::NEAREST_MIPMAP_LINEAR  : return GL_NEAREST_MIPMAP_LINEAR;
    166         case texture2d_sampler::LINEAR_MIPMAP_LINEAR   : return GL_LINEAR_MIPMAP_LINEAR;
    167         default : return 0; // TODO: throw!
    168         }
    169 }
    170 
    171 unsigned int nv::texture_wrap_to_enum( texture2d_sampler::wrap wrap )
     150        case sampler::LINEAR                 : return GL_LINEAR;
     151        case sampler::NEAREST                : return GL_NEAREST;
     152        case sampler::NEAREST_MIPMAP_NEAREST : return GL_NEAREST_MIPMAP_NEAREST;
     153        case sampler::LINEAR_MIPMAP_NEAREST  : return GL_LINEAR_MIPMAP_NEAREST;
     154        case sampler::NEAREST_MIPMAP_LINEAR  : return GL_NEAREST_MIPMAP_LINEAR;
     155        case sampler::LINEAR_MIPMAP_LINEAR   : return GL_LINEAR_MIPMAP_LINEAR;
     156        default : return 0; // TODO: throw!
     157        }
     158}
     159
     160unsigned int nv::sampler_wrap_to_enum( sampler::wrap wrap )
    172161{
    173162        switch( wrap )
    174163        {
    175         case texture2d_sampler::CLAMP_TO_EDGE   : return GL_CLAMP_TO_EDGE;
    176         case texture2d_sampler::CLAMP_TO_BORDER : return GL_CLAMP_TO_BORDER;
    177         case texture2d_sampler::MIRRORED_REPEAT : return GL_MIRRORED_REPEAT;
    178         case texture2d_sampler::REPEAT          : return GL_REPEAT;
     164        case sampler::CLAMP_TO_EDGE   : return GL_CLAMP_TO_EDGE;
     165        case sampler::CLAMP_TO_BORDER : return GL_CLAMP_TO_BORDER;
     166        case sampler::MIRRORED_REPEAT : return GL_MIRRORED_REPEAT;
     167        case sampler::REPEAT          : return GL_REPEAT;
    179168        default : return 0; // TODO: throw!
    180169        }
  • trunk/src/gl/gl_texture2d.cc

    r43 r49  
    1010using namespace nv;
    1111
    12 nv::gl_texture2d::gl_texture2d( ivec2 size, format aformat, datatype adatatype, texture2d_sampler sampler, void* data /*= nullptr */ )
    13         : texture2d( size, aformat, adatatype, sampler ), m_name()
     12nv::gl_texture2d::gl_texture2d( ivec2 size, image_format aformat, type adatatype, sampler asampler, void* data /*= nullptr */ )
     13        : texture2d( size, aformat, adatatype, asampler ), m_name()
    1414{
    1515        glBindTexture( GL_TEXTURE_2D, m_name.get_value() );
    1616
    17         glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, nv::texture_filter_to_enum( m_sampler.filter_min ) );
    18         glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, nv::texture_filter_to_enum( m_sampler.filter_max ) );
    19         glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, nv::texture_wrap_to_enum( m_sampler.wrap_s) );
    20         glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, nv::texture_wrap_to_enum( m_sampler.wrap_t) );
     17        glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, nv::sampler_filter_to_enum( m_sampler.filter_min ) );
     18        glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, nv::sampler_filter_to_enum( m_sampler.filter_max ) );
     19        glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, nv::sampler_wrap_to_enum( m_sampler.wrap_s) );
     20        glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, nv::sampler_wrap_to_enum( m_sampler.wrap_t) );
    2121
    2222        glBindTexture( GL_TEXTURE_2D, 0 );
     
    3131{
    3232        glBindTexture( GL_TEXTURE_2D, m_name.get_value() );
    33         glTexImage2D( GL_TEXTURE_2D, 0, nv::texture_format_to_enum(m_format), m_size.x, m_size.y, 0, nv::texture_format_to_enum(m_format), nv::texture_datatype_to_enum(m_datatype), data );
     33        glTexImage2D( GL_TEXTURE_2D, 0, nv::image_format_to_enum(m_format), m_size.x, m_size.y, 0, nv::image_format_to_enum(m_format), nv::type_to_gl_enum(m_datatype), data );
    3434        glBindTexture( GL_TEXTURE_2D, 0 );
    3535}
  • trunk/tests/render_test/rl.cc

    r47 r49  
    9595        SDL_Surface* texture = IMG_Load( "spritesheet.png" );
    9696        nv::image sprites( glm::ivec2( texture->w, texture->h ), 4, (nv::uint8*)texture->pixels );
    97         nv::texture2d_sampler sampler( nv::texture2d_sampler::NEAREST, nv::texture2d_sampler::REPEAT );
    98         m_texture = m_device->create_texture2d( sprites.get_size(), nv::texture2d::RGBA, nv::texture2d::UBYTE, sampler, (void*)sprites.get_data() );
     97        nv::sampler sampler( nv::sampler::NEAREST, nv::sampler::REPEAT );
     98        m_texture = m_device->create_texture2d( sprites.get_size(), nv::RGBA, nv::UBYTE, sampler, (void*)sprites.get_data() );
    9999
    100100        m_clear_state.buffers = nv::clear_state::COLOR_AND_DEPTH_BUFFER;
Note: See TracChangeset for help on using the changeset viewer.