Changeset 121 for trunk/src/gl


Ignore:
Timestamp:
06/15/13 17:47:57 (12 years ago)
Author:
epyon
Message:
  • Nova builds with -Weverything/-Wall/-pedantic/etc on: on MSVC 2012 on GCC 4.6.3 on clang 3.2
  • ... without a single fucking warning.
Location:
trunk/src/gl
Files:
7 edited

Legend:

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

    r116 r121  
    8383}
    8484
    85 void gl_context::apply_stencil_face( int face, stencil_test_face& stencil, const stencil_test_face& new_stencil )
     85void gl_context::apply_stencil_face( unsigned face, stencil_test_face& stencil, const stencil_test_face& new_stencil )
    8686{
    8787        if (( stencil.op_fail       != new_stencil.op_fail       ) ||
     
    317317}
    318318
    319 void gl_context::force_apply_stencil_face( int face, const stencil_test_face& stencil )
     319void gl_context::force_apply_stencil_face( unsigned face, const stencil_test_face& stencil )
    320320{
    321321        glStencilOpSeparate( face,
     
    356356}
    357357
    358 void gl_context::draw( primitive prim, const render_state& rs, program* p, vertex_array* va, int count )
     358void gl_context::draw( primitive prim, const render_state& rs, program* p, vertex_array* va, size_t count )
    359359{
    360360        apply_render_state( rs );
     
    365365                if ( va->has_index_buffer() )
    366366                {
    367                         glDrawElements( primitive_to_enum(prim), count, datatype_to_gl_enum( va->get_index_buffer_type() ), 0 );
     367                        glDrawElements( primitive_to_enum(prim), static_cast<GLsizei>( count ), datatype_to_gl_enum( va->get_index_buffer_type() ), 0 );
    368368                }
    369369                else
    370370                {
    371                         glDrawArrays( primitive_to_enum(prim), 0, count);
     371                        glDrawArrays( primitive_to_enum(prim), 0, static_cast<GLsizei>( count ) );
    372372                }
    373373                va->unbind();
  • trunk/src/gl/gl_device.cc

    r120 r121  
    5353}
    5454
    55 vertex_buffer* gl_device::create_vertex_buffer( buffer_hint hint, int size, void* source /*= nullptr */ )
     55vertex_buffer* gl_device::create_vertex_buffer( buffer_hint hint, size_t size, void* source /*= nullptr */ )
    5656{
    5757        return new gl_vertex_buffer( hint, size, source );
    5858}
    5959
    60 index_buffer* gl_device::create_index_buffer( buffer_hint hint, int size, void* source /*= nullptr */ )
     60index_buffer* gl_device::create_index_buffer( buffer_hint hint, size_t size, void* source /*= nullptr */ )
    6161{
    6262        return new gl_index_buffer( hint, size, source );
  • trunk/src/gl/gl_enum.cc

    r70 r121  
    3030        case depth_test::GREATER_OR_EQUAL : return GL_GEQUAL;
    3131        case depth_test::ALWAYS           : return GL_ALWAYS;
    32         default : return 0; // TODO: throw!
     32        NV_RETURN_COVERED_DEFAULT( 0 );
    3333        }
    3434}
     
    5353        case blending::ONE_MINUS_CONSTANT_ALPHA: return GL_ONE_MINUS_CONSTANT_ALPHA;
    5454        case blending::SRC_ALPHA_SATURATE      : return GL_SRC_ALPHA_SATURATE;
    55         default : return 0; // TODO: throw!
     55        NV_RETURN_COVERED_DEFAULT( 0 );
    5656        }
    5757}
     
    6666        case blending::MINIMUM          : return GL_MIN;
    6767        case blending::MAXIMUM          : return GL_MAX;
    68         default : return 0; // TODO: throw!
     68        NV_RETURN_COVERED_DEFAULT( 0 );
    6969        }
    7070}
     
    7777        case culling::BACK           : return GL_BACK;
    7878        case culling::FRONT_AND_BACK : return GL_FRONT_AND_BACK;
    79         default : return 0; // TODO: throw!
     79        NV_RETURN_COVERED_DEFAULT( 0 );
    8080        }
    8181}
     
    8787        case culling::CW   : return GL_CW;
    8888        case culling::CCW  : return GL_CCW;
    89         default : return 0; // TODO: throw!
     89        NV_RETURN_COVERED_DEFAULT( 0 );
    9090        }
    9191}
     
    103103        case stencil_test_face::GREATER_OR_EQUAL : return GL_GEQUAL;
    104104        case stencil_test_face::ALWAYS           : return GL_ALWAYS;
    105         default : return 0; // TODO: throw!
     105        NV_RETURN_COVERED_DEFAULT( 0 );
    106106        }
    107107}
     
    119119        case stencil_test_face::INCREMENT_WRAP   : return GL_INCR_WRAP;
    120120        case stencil_test_face::DECREMENT_WRAP   : return GL_DECR_WRAP;
    121         default : return 0; // TODO: throw!
     121        NV_RETURN_COVERED_DEFAULT( 0 );
    122122        }
    123123}
     
    130130        case STREAM_DRAW   : return GL_STREAM_DRAW;
    131131        case DYNAMIC_DRAW  : return GL_DYNAMIC_DRAW;
    132         default : return 0; // TODO: throw!
     132        NV_RETURN_COVERED_DEFAULT( 0 );
    133133        }
    134134}
     
    140140        case RGB  : return GL_RGB;
    141141        case RGBA : return GL_RGBA;
    142         default : return 0; // TODO: throw!
     142        NV_RETURN_COVERED_DEFAULT( 0 );
    143143        }
    144144}
     
    154154        case sampler::NEAREST_MIPMAP_LINEAR  : return GL_NEAREST_MIPMAP_LINEAR;
    155155        case sampler::LINEAR_MIPMAP_LINEAR   : return GL_LINEAR_MIPMAP_LINEAR;
    156         default : return 0; // TODO: throw!
     156        NV_RETURN_COVERED_DEFAULT( 0 );
    157157        }
    158158}
     
    166166        case sampler::MIRRORED_REPEAT : return GL_MIRRORED_REPEAT;
    167167        case sampler::REPEAT          : return GL_REPEAT;
    168         default : return 0; // TODO: throw!
     168        NV_RETURN_COVERED_DEFAULT( 0 );
    169169        }
    170170}
     
    181181        case TRIANGLE_STRIP : return GL_TRIANGLE_STRIP;
    182182        case TRIANGLE_FAN   : return GL_TRIANGLE_FAN;
    183         default : return 0; // TODO: throw!
     183        NV_RETURN_COVERED_DEFAULT( 0 );
    184184        }
    185185}
     
    209209        case BYTE_VECTOR_3  : return GL_INT_VEC3;
    210210        case BYTE_VECTOR_4  : return GL_INT_VEC4;
    211         default : return 0; // TODO: throw!
     211        NV_RETURN_COVERED_DEFAULT( 0 );
    212212        }
    213213}
  • trunk/src/gl/gl_program.cc

    r70 r121  
    1414using namespace nv;
    1515
    16 gl_shader::gl_shader( uint32 shader_type )
    17         : object_id(0), shader_type( shader_type )
     16gl_shader::gl_shader( uint32 sh_type )
     17        : shader_type( sh_type ), object_id(0)
    1818{
    1919        // no op
    2020}
    2121
    22 gl_shader::gl_shader( uint32 shader_type, const string& shader_code )
    23         : object_id(0), shader_type( shader_type )
     22gl_shader::gl_shader( uint32 sh_type, const string& shader_code )
     23        : shader_type( sh_type ), object_id(0)
    2424{
    2525        compile( shader_code );
     
    140140        glGetProgramiv( m_name.get_value(), GL_ACTIVE_ATTRIBUTES, &params );
    141141
    142         for ( int i = 0; i < params; ++i )
     142        for ( unsigned i = 0; i < (unsigned)params; ++i )
    143143        {
    144144                int attr_nlen;
     
    149149                glGetActiveAttrib( m_name.get_value(), i, 128, &attr_nlen, &attr_len, &attr_type, name_buffer );
    150150
    151                 string name( name_buffer, attr_nlen );
     151                string name( name_buffer, size_t(attr_nlen) );
    152152
    153153                // skip built-ins
     
    165165        glGetProgramiv( m_name.get_value(), GL_ACTIVE_UNIFORMS, &params );
    166166
    167         for ( int i = 0; i < params; ++i )
     167        for ( unsigned i = 0; i < size_t(params); ++i )
    168168        {
    169169                int uni_nlen;
     
    174174                glGetActiveUniform( m_name.get_value(), i, 128, &uni_nlen, &uni_len, &uni_type, name_buffer );
    175175
    176                 string name( name_buffer, uni_nlen );
     176                string name( name_buffer, size_t(uni_nlen) );
    177177
    178178                // skip built-ins
     
    206206                        case FLOAT_MATRIX_3 : glUniformMatrix3fv( uloc, 1, GL_FALSE, glm::value_ptr(((uniform< enum_to_type< FLOAT_MATRIX_3 >::type >*)( ubase ))->get_value()) ); break;
    207207                        case FLOAT_MATRIX_4 : glUniformMatrix4fv( uloc, 1, GL_FALSE, glm::value_ptr(((uniform< enum_to_type< FLOAT_MATRIX_4 >::type >*)( ubase ))->get_value()) ); break;
    208                         //default     : error?
     208                        default : break; // error?
    209209                        }
    210210                        ubase->clean();
  • trunk/src/gl/gl_texture2d.cc

    r70 r121  
    1515        glBindTexture( GL_TEXTURE_2D, m_name.get_value() );
    1616
    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) );
     17        glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, (int)nv::sampler_filter_to_enum( m_sampler.filter_min ) );
     18        glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, (int)nv::sampler_filter_to_enum( m_sampler.filter_max ) );
     19        glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, (int)nv::sampler_wrap_to_enum( m_sampler.wrap_s) );
     20        glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, (int)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::image_format_to_enum(m_format), m_size.x, m_size.y, 0, nv::image_format_to_enum(m_format), nv::datatype_to_gl_enum(m_datatype), data );
     33        glTexImage2D( GL_TEXTURE_2D, 0, (GLint)nv::image_format_to_enum(m_format), m_size.x, m_size.y, 0, nv::image_format_to_enum(m_format), nv::datatype_to_gl_enum(m_datatype), data );
    3434        glBindTexture( GL_TEXTURE_2D, 0 );
    3535}
    3636
    37 void nv::gl_texture2d::bind( int slot )
     37void nv::gl_texture2d::bind( size_t slot )
    3838{
    3939        glActiveTexture( GL_TEXTURE0 + slot );
  • trunk/src/gl/gl_vertex_buffer.cc

    r116 r121  
    1010using namespace nv;
    1111
    12 gl_vertex_buffer::gl_vertex_buffer( buffer_hint hint, int size, void* data )
     12gl_vertex_buffer::gl_vertex_buffer( buffer_hint hint, size_t size, void* data )
    1313        : vertex_buffer( hint, size ), m_name()
    1414{
    1515        bind();
    16         glBufferData( GL_ARRAY_BUFFER, m_size, data, buffer_hint_to_enum( m_hint ) );
     16        glBufferData( GL_ARRAY_BUFFER, (GLsizeiptr)m_size, data, buffer_hint_to_enum( m_hint ) );
    1717        unbind();
    1818}
    1919
    20 void gl_vertex_buffer::update( void* data, int offset, int size )
     20void gl_vertex_buffer::update( void* data, size_t offset, size_t size )
    2121{
    22         glBufferSubData( GL_ARRAY_BUFFER, offset, size, data );
     22        glBufferSubData( GL_ARRAY_BUFFER, (GLintptr)offset, (GLsizeiptr)size, data );
    2323}
    2424
     
    3939}
    4040
    41 gl_index_buffer::gl_index_buffer( buffer_hint hint, int size, void* data )
     41gl_index_buffer::gl_index_buffer( buffer_hint hint, size_t size, void* data )
    4242        : index_buffer( hint, size ), m_name()
    4343{
    4444        bind();
    45         glBufferData( GL_ELEMENT_ARRAY_BUFFER, m_size, data, buffer_hint_to_enum( m_hint ) );
     45        glBufferData( GL_ELEMENT_ARRAY_BUFFER, (GLsizeiptr)m_size, data, buffer_hint_to_enum( m_hint ) );
    4646        unbind();
    4747}
    4848
    49 void gl_index_buffer::update( void* data, int offset, int size )
     49void gl_index_buffer::update( void* data, size_t offset, size_t size )
    5050{
    51         glBufferSubData( GL_ELEMENT_ARRAY_BUFFER, offset, size, data );
     51        glBufferSubData( GL_ELEMENT_ARRAY_BUFFER, (GLintptr)offset, (GLsizeiptr)size, data );
    5252}
    5353
     
    7676        for ( vertex_buffer_attribute_map::iterator i = m_map.begin();  i != m_map.end(); ++i )
    7777        {
    78                 int location                = i->first;
     78                uint32 location             = static_cast<uint32>( i->first );
    7979                vertex_buffer_attribute* va = i->second;
    8080                vertex_buffer*           vb = va->get_buffer();
     
    8383                glVertexAttribPointer(
    8484                        location,
    85                         va->get_components(),
     85                        static_cast<GLint>( va->get_components() ),
    8686                        nv::datatype_to_gl_enum( va->get_datatype() ),
    8787                        GL_FALSE,
    88                         va->get_stride(),
     88                        static_cast<GLsizei>( va->get_stride() ),
    8989                        (void*)va->get_offset()
    9090                        );
     
    107107        for ( vertex_buffer_attribute_map::iterator i = m_map.begin();  i != m_map.end(); ++i )
    108108        {
    109                 glDisableVertexAttribArray( i->first );
     109                glDisableVertexAttribArray( static_cast<uint32>( i->first ) );
    110110        }
    111111}
  • trunk/src/gl/gl_window.cc

    r98 r121  
    2121        if (ke.keysym.unicode >= 32 && ke.keysym.unicode < 128 )
    2222        {
    23                 kevent.key.ascii = (char)ke.keysym.unicode;
     23                kevent.key.ascii = static_cast<char8>( ke.keysym.unicode );
    2424        }
    2525
     
    151151        : m_device( dev ), m_width( width ), m_height( height ), m_title("NV Engine"), m_screen( nullptr )
    152152{
    153         int flags = SDL_OPENGL;
     153        uint32 flags = SDL_OPENGL;
    154154       
    155155        m_screen = SDL_SetVideoMode( width, height, 32, flags );
Note: See TracChangeset for help on using the changeset viewer.