diff options
Diffstat (limited to 'model.cpp')
-rw-r--r-- | model.cpp | 17 |
1 files changed, 12 insertions, 5 deletions
@@ -156,16 +156,13 @@ void Model::update_transforms() { meshes[i].get_world(*this); } -void Model::render( +void Model::update_cbuffers( Device* dev, - Arena* a, - Render_Pass& pass, const m4f& transform, const m4f& view_projection ) { int i, c = mesh_count; Mesh* meshes = get_meshes(); - Context& ctx = dev->get_ctx(); MVP_Cbuffer* cbuffers = (MVP_Cbuffer*)dev->map_buffer( mvp, 0, @@ -175,8 +172,18 @@ void Model::render( cbuffers[i].view_projection = view_projection; cbuffers[i].model = transform * meshes[i].world; } - bool depth_only = !pass.colour_count; dev->unmap_buffer(mvp); +} + +void Model::render( + Device* dev, + Arena* a, + Render_Pass& pass +) { + int i, c = mesh_count; + Mesh* meshes = get_meshes(); + Context& ctx = dev->get_ctx(); + bool depth_only = !pass.colour_count; for (i = 0; i < c; i++) { Mesh& mesh = meshes[i]; Shader& shader = dev->get_shader(mesh.shader); |