Ignore:
Timestamp:
08/25/14 02:43:30 (11 years ago)
Author:
epyon
Message:
  • updated all tests to new nova
  • cleaned up tests paths
  • general cleanup of tests and test data
File:
1 moved

Legend:

Unmodified
Added
Removed
  • trunk/tests/render_test/nv_render_test.cc

    r239 r321  
    1 #include <nv/interface/vertex_buffer.hh>
    21#include <nv/gl/gl_device.hh>
    32#include <nv/gfx/image.hh>
    43#include <nv/interface/context.hh>
    54#include <nv/interface/window.hh>
    6 #include <nv/interface/program.hh>
    7 #include <nv/interface/texture2d.hh>
    8 #include <nv/logging.hh>
    9 #include <nv/logger.hh>
    10 #include <nv/math.hh>
    11 #include <nv/string.hh>
     5#include <nv/core/logging.hh>
     6#include <nv/core/logger.hh>
     7#include <nv/core/math.hh>
     8#include <nv/core/string.hh>
    129
    1310const nv::uint16 size_x  = 16;
     
    6360        ~application();
    6461protected:
    65         nv::device* m_device;
    66         nv::window* m_window;
    67         nv::texture2d* m_texture;
     62        nv::device*  m_device;
     63        nv::context* m_context;
     64        nv::window*  m_window;
     65        nv::texture  m_texture;
    6866
    6967        nv::clear_state  m_clear_state;
     
    7169        nv::scene_state  m_scene_state;
    7270
    73         nv::program* m_char_program;
    74         nv::program* m_box_program;
    75         nv::vertex_array* m_char_va;
    76         nv::vertex_array* m_box_va;
     71        nv::program m_char_program;
     72        nv::program m_box_program;
     73        nv::vertex_array m_char_va;
     74        nv::vertex_array m_box_va;
    7775        unsigned int m_count;
    7876};
     
    8987application::application()
    9088{
    91         m_device = new nv::gl_device();
    92         m_window = m_device->create_window( 800, 600, false );
     89        m_device  = new nv::gl_device();
     90        m_window  = m_device->create_window( 800, 600, false );
     91        m_context = m_window->get_context();
    9392       
    9493        nv::image_data* sprites = m_device->create_image_data( "spritesheet.png" );
    9594        nv::sampler sampler( nv::sampler::NEAREST, nv::sampler::REPEAT );
    96         m_texture = m_device->create_texture2d( sprites->get_size(), nv::RGBA, nv::UBYTE, sampler, (void*)sprites->get_data() );
     95        m_texture = m_device->create_texture( sprites, sampler );
    9796        delete sprites;
    9897
     
    119118                v.emplace_back( nv::i8vec3( x,   h, y ), mt ); 
    120119                m_char_program = m_device->create_program( nv::slurp( "char.vert" ), nv::slurp( "char.frag" ) );
    121                 m_char_va      = m_device->create_vertex_array( v, nv::STATIC_DRAW );
     120                m_char_va      = m_context->create_vertex_array( v, nv::STATIC_DRAW );
    122121        }
    123122
     
    176175                m_count       = v.size();
    177176                m_box_program = m_device->create_program( nv::slurp( "box.vert" ), nv::slurp( "box.frag" ) );
    178                 m_box_va      = m_device->create_vertex_array( v, nv::STATIC_DRAW );
     177                m_box_va      = m_context->create_vertex_array( v, nv::STATIC_DRAW );
    179178        }
    180179
     
    194193                m_scene_state.get_camera().set_lookat(glm::vec3(0.0, 20.0, 5.0) + move, glm::vec3(0.0, 4.0, 0.0) + move, glm::vec3(0.0, 1.0, 0.0));
    195194
    196                 m_window->get_context()->clear( m_clear_state );
    197                 m_texture->bind( 0 );
    198                 m_box_program->set_uniform( "light", glm::vec3(8.5, 4.5, 6.5) + move );
    199                 m_window->get_context()->draw( nv::TRIANGLES, m_render_state, m_scene_state, m_box_program, m_box_va, m_count );
    200 
    201                 m_char_program->set_uniform( "pos", move + glm::vec3( 8, 4.1, 6 ) );
    202                 m_window->get_context()->draw( nv::TRIANGLES, m_render_state, m_scene_state, m_char_program, m_char_va, 6 );
     195                m_context->clear( m_clear_state );
     196                m_context->bind( m_texture, nv::TEXTURE_0 );
     197                m_device->set_uniform( m_box_program, "light", glm::vec3(8.5, 4.5, 6.5) + move );
     198                m_context->draw( nv::TRIANGLES, m_render_state, m_scene_state, m_box_program, m_box_va, m_count );
     199
     200                m_device->set_uniform( m_char_program, "pos", move + glm::vec3( 8, 4.1, 6 ) );
     201                m_context->draw( nv::TRIANGLES, m_render_state, m_scene_state, m_char_program, m_char_va, 6 );
    203202                m_window->swap_buffers();
    204203
     
    234233application::~application()
    235234{
    236         delete m_char_program;
    237         delete m_box_program;
    238         delete m_char_va;
    239         delete m_box_va;
    240         delete m_texture;
     235        m_device->release( m_char_program );
     236        m_device->release( m_box_program );
     237        m_context->release( m_char_va );
     238        m_context->release( m_box_va );
     239        m_device->release( m_texture );
    241240        delete m_window;
    242241        delete m_device;
Note: See TracChangeset for help on using the changeset viewer.