paint: cleanup
This commit is contained in:
@@ -111,6 +111,34 @@ void render_path_raytrace_commands(bool use_live_layer) {
|
||||
}
|
||||
}
|
||||
|
||||
void render_path_raytrace_build_data() {
|
||||
if (context_raw->merged_object == NULL) {
|
||||
util_mesh_merge(NULL);
|
||||
}
|
||||
|
||||
mesh_object_t *mo = !context_layer_filter_used() ? context_raw->merged_object : context_raw->paint_object;
|
||||
|
||||
if (context_raw->tool == TOOL_TYPE_GIZMO) {
|
||||
render_path_raytrace_transform = mo->base->transform->world_unpack;
|
||||
}
|
||||
else {
|
||||
render_path_raytrace_transform = mat4_identity();
|
||||
}
|
||||
|
||||
f32 sc = mo->base->transform->scale.x * mo->data->scale_pos;
|
||||
if (mo->base->parent != NULL) {
|
||||
sc *= mo->base->parent->transform->scale.x;
|
||||
}
|
||||
render_path_raytrace_transform = mat4_scale(render_path_raytrace_transform, vec4_create(sc, sc, sc, 1.0));
|
||||
|
||||
gc_unroot(render_path_raytrace_vb);
|
||||
render_path_raytrace_vb = mo->data->_->vertex_buffer;
|
||||
gc_root(render_path_raytrace_vb);
|
||||
gc_unroot(render_path_raytrace_ib);
|
||||
render_path_raytrace_ib = mo->data->_->index_buffer;
|
||||
gc_root(render_path_raytrace_ib);
|
||||
}
|
||||
|
||||
void render_path_raytrace_raytrace_init(char *shader_name, bool build) {
|
||||
if (render_path_raytrace_init_shader) {
|
||||
render_path_raytrace_init_shader = false;
|
||||
@@ -149,34 +177,6 @@ void render_path_raytrace_raytrace_init(char *shader_name, bool build) {
|
||||
}
|
||||
}
|
||||
|
||||
void render_path_raytrace_build_data() {
|
||||
if (context_raw->merged_object == NULL) {
|
||||
util_mesh_merge(NULL);
|
||||
}
|
||||
|
||||
mesh_object_t *mo = !context_layer_filter_used() ? context_raw->merged_object : context_raw->paint_object;
|
||||
|
||||
if (context_raw->tool == TOOL_TYPE_GIZMO) {
|
||||
render_path_raytrace_transform = mo->base->transform->world_unpack;
|
||||
}
|
||||
else {
|
||||
render_path_raytrace_transform = mat4_identity();
|
||||
}
|
||||
|
||||
f32 sc = mo->base->transform->scale.x * mo->data->scale_pos;
|
||||
if (mo->base->parent != NULL) {
|
||||
sc *= mo->base->parent->transform->scale.x;
|
||||
}
|
||||
render_path_raytrace_transform = mat4_scale(render_path_raytrace_transform, vec4_create(sc, sc, sc, 1.0));
|
||||
|
||||
gc_unroot(render_path_raytrace_vb);
|
||||
render_path_raytrace_vb = mo->data->_->vertex_buffer;
|
||||
gc_root(render_path_raytrace_vb);
|
||||
gc_unroot(render_path_raytrace_ib);
|
||||
render_path_raytrace_ib = mo->data->_->index_buffer;
|
||||
gc_root(render_path_raytrace_ib);
|
||||
}
|
||||
|
||||
void render_path_raytrace_draw(bool use_live_layer) {
|
||||
bool is_live = config_raw->brush_live && render_path_paint_live_layer_drawn > 0;
|
||||
if (context_raw->ddirty > 1 || context_raw->pdirty > 0 || is_live) {
|
||||
|
||||
Reference in New Issue
Block a user