Changeset 139 for trunk/tests/objload_test/objload_test.cc
- Timestamp:
- 06/29/13 20:32:29 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/objload_test/objload_test.cc
r137 r139 24 24 ~application(); 25 25 protected: 26 nv::device* m_device; 27 nv::window* m_window; 28 nv::texture2d* m_texture; 29 nv::clear_state m_clear_state; 30 nv::render_state m_render_state; 26 nv::device* m_device; 27 nv::window* m_window; 28 nv::texture2d* m_diffuse; 29 nv::texture2d* m_specular; 30 nv::clear_state m_clear_state; 31 nv::render_state m_render_state; 31 32 32 33 nv::vertex_array* m_va; … … 40 41 m_device = new nv::gl_device(); 41 42 m_window = m_device->create_window( 800, 600 ); 43 nv::sampler sampler( nv::sampler::LINEAR, nv::sampler::REPEAT ); 42 44 43 45 nv::image_data* sprites = m_device->create_image_data( "diffuse.png" ); 44 nv::sampler sampler( nv::sampler::LINEAR, nv::sampler::REPEAT ); 45 m_texture = m_device->create_texture2d( sprites->get_size(), nv::RGBA, nv::UBYTE, sampler, (void*)sprites->get_data() ); 46 m_diffuse = m_device->create_texture2d( sprites->get_size(), nv::RGBA, nv::UBYTE, sampler, (void*)sprites->get_data() ); 47 delete sprites; 48 49 sprites = m_device->create_image_data( "specular.png" ); 50 m_specular = m_device->create_texture2d( sprites->get_size(), nv::RGBA, nv::UBYTE, sampler, (void*)sprites->get_data() ); 46 51 delete sprites; 47 52 … … 86 91 glm::mat4 projection = glm::perspective(60.0f, 1.0f*800.0f/600.0f, 0.1f, 1000.0f); 87 92 glm::mat4 mv = view * model; 93 glm::mat3 normal_matrix = glm::transpose(glm::inverse(glm::mat3(mv))); 88 94 89 m_texture->bind( 0 ); 95 m_diffuse->bind( 0 ); 96 m_specular->bind( 1 ); 97 m_program->set_opt_uniform( "nv_m_modelview", mv ); 98 m_program->set_opt_uniform( "nv_m_projection", projection ); 99 m_program->set_opt_uniform( "nv_m_normal", normal_matrix ); 90 100 m_program->set_uniform( "matrix_mvp", projection * mv ); 91 m_program->set_uniform( "light", glm::vec3(8.5, 8.5, 0) ); 92 m_program->set_uniform( "tex", 0 ); 101 m_program->set_uniform( "light_position", glm::vec3(12.0, 12.0, 0) ); 102 m_program->set_uniform( "light_diffuse", glm::vec4(0.7,0.7,0.7,1.0) ); 103 m_program->set_uniform( "light_specular", glm::vec4(1.0,1.0,1.0,1.0) ); 104 m_program->set_uniform( "custom_color_1", glm::vec3(1.0,0.0,0.0) ); 105 m_program->set_uniform( "custom_color_2", glm::vec3(0.0,0.0,1.0) ); 106 m_program->set_uniform( "diffuse", 0 ); 107 m_program->set_uniform( "specular", 1 ); 93 108 m_window->get_context()->draw( nv::TRIANGLES, m_render_state, m_program, m_va, m_count * 3 ); 94 109 m_window->swap_buffers(); … … 127 142 delete m_program; 128 143 delete m_mesh; 129 delete m_texture; 144 delete m_diffuse; 145 delete m_specular; 130 146 delete m_window; 131 147 delete m_device;
Note: See TracChangeset
for help on using the changeset viewer.