Changeset View
Changeset View
Standalone View
Standalone View
source/blender/draw/intern/draw_cache_impl_particles.c
| Show First 20 Lines • Show All 884 Lines • ▼ Show 20 Lines | for (int i = 0; i < cache->num_uv_layers; i++) { | ||||
| GPU_vertbuf_data_alloc(cache->proc_uv_buf[i], cache->strands_len); | GPU_vertbuf_data_alloc(cache->proc_uv_buf[i], cache->strands_len); | ||||
| GPU_vertbuf_attr_get_raw_data(cache->proc_uv_buf[i], uv_id, &uv_step[i]); | GPU_vertbuf_attr_get_raw_data(cache->proc_uv_buf[i], uv_id, &uv_step[i]); | ||||
| char attr_safe_name[GPU_MAX_SAFE_ATTR_NAME]; | char attr_safe_name[GPU_MAX_SAFE_ATTR_NAME]; | ||||
| const char *name = CustomData_get_layer_name(&psmd->mesh_final->ldata, CD_MLOOPUV, i); | const char *name = CustomData_get_layer_name(&psmd->mesh_final->ldata, CD_MLOOPUV, i); | ||||
| GPU_vertformat_safe_attr_name(name, attr_safe_name, GPU_MAX_SAFE_ATTR_NAME); | GPU_vertformat_safe_attr_name(name, attr_safe_name, GPU_MAX_SAFE_ATTR_NAME); | ||||
| int n = 0; | int n = 0; | ||||
| BLI_snprintf(cache->uv_layer_names[i][n++], MAX_LAYER_NAME_LEN, "u%s", attr_safe_name); | |||||
| BLI_snprintf(cache->uv_layer_names[i][n++], MAX_LAYER_NAME_LEN, "a%s", attr_safe_name); | BLI_snprintf(cache->uv_layer_names[i][n++], MAX_LAYER_NAME_LEN, "a%s", attr_safe_name); | ||||
| if (i == active_uv) { | if (i == active_uv) { | ||||
| BLI_strncpy(cache->uv_layer_names[i][n++], "au", MAX_LAYER_NAME_LEN); | BLI_strncpy(cache->uv_layer_names[i][n++], "au", MAX_LAYER_NAME_LEN); | ||||
| } | } | ||||
| if (i == render_uv) { | if (i == render_uv) { | ||||
| BLI_strncpy(cache->uv_layer_names[i][n++], "u", MAX_LAYER_NAME_LEN); | BLI_strncpy(cache->uv_layer_names[i][n++], "a", MAX_LAYER_NAME_LEN); | ||||
| } | } | ||||
| } | } | ||||
| /* Vertex colors */ | /* Vertex colors */ | ||||
| for (int i = 0; i < cache->num_col_layers; i++) { | for (int i = 0; i < cache->num_col_layers; i++) { | ||||
| cache->proc_col_buf[i] = GPU_vertbuf_create_with_format(&format_col); | cache->proc_col_buf[i] = GPU_vertbuf_create_with_format(&format_col); | ||||
| GPU_vertbuf_data_alloc(cache->proc_col_buf[i], cache->strands_len); | GPU_vertbuf_data_alloc(cache->proc_col_buf[i], cache->strands_len); | ||||
| GPU_vertbuf_attr_get_raw_data(cache->proc_col_buf[i], col_id, &col_step[i]); | GPU_vertbuf_attr_get_raw_data(cache->proc_col_buf[i], col_id, &col_step[i]); | ||||
| char attr_safe_name[GPU_MAX_SAFE_ATTR_NAME]; | char attr_safe_name[GPU_MAX_SAFE_ATTR_NAME]; | ||||
| const char *name = CustomData_get_layer_name(&psmd->mesh_final->ldata, CD_MLOOPCOL, i); | const char *name = CustomData_get_layer_name(&psmd->mesh_final->ldata, CD_MLOOPCOL, i); | ||||
| GPU_vertformat_safe_attr_name(name, attr_safe_name, GPU_MAX_SAFE_ATTR_NAME); | GPU_vertformat_safe_attr_name(name, attr_safe_name, GPU_MAX_SAFE_ATTR_NAME); | ||||
| int n = 0; | int n = 0; | ||||
| BLI_snprintf(cache->col_layer_names[i][n++], MAX_LAYER_NAME_LEN, "c%s", attr_safe_name); | |||||
| /* We only do vcols auto name that are not overridden by uvs */ | |||||
| if (CustomData_get_named_layer_index(&psmd->mesh_final->ldata, CD_MLOOPUV, name) == -1) { | |||||
| BLI_snprintf(cache->col_layer_names[i][n++], MAX_LAYER_NAME_LEN, "a%s", attr_safe_name); | BLI_snprintf(cache->col_layer_names[i][n++], MAX_LAYER_NAME_LEN, "a%s", attr_safe_name); | ||||
| } | |||||
| if (i == active_col) { | if (i == active_col) { | ||||
| BLI_strncpy(cache->col_layer_names[i][n++], "ac", MAX_LAYER_NAME_LEN); | BLI_strncpy(cache->col_layer_names[i][n++], "ac", MAX_LAYER_NAME_LEN); | ||||
| } | } | ||||
| if (i == render_col) { | if (i == render_col) { | ||||
| BLI_strncpy(cache->col_layer_names[i][n++], "c", MAX_LAYER_NAME_LEN); | BLI_strncpy(cache->col_layer_names[i][n++], "c", MAX_LAYER_NAME_LEN); | ||||
| } | } | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 268 Lines • ▼ Show 20 Lines | if (psmd) { | ||||
| col_id = MEM_mallocN(sizeof(*col_id) * num_col_layers, "Col attr format"); | col_id = MEM_mallocN(sizeof(*col_id) * num_col_layers, "Col attr format"); | ||||
| for (int i = 0; i < num_uv_layers; i++) { | for (int i = 0; i < num_uv_layers; i++) { | ||||
| char uuid[32], attr_safe_name[GPU_MAX_SAFE_ATTR_NAME]; | char uuid[32], attr_safe_name[GPU_MAX_SAFE_ATTR_NAME]; | ||||
| const char *name = CustomData_get_layer_name(&psmd->mesh_final->ldata, CD_MLOOPUV, i); | const char *name = CustomData_get_layer_name(&psmd->mesh_final->ldata, CD_MLOOPUV, i); | ||||
| GPU_vertformat_safe_attr_name(name, attr_safe_name, GPU_MAX_SAFE_ATTR_NAME); | GPU_vertformat_safe_attr_name(name, attr_safe_name, GPU_MAX_SAFE_ATTR_NAME); | ||||
| BLI_snprintf(uuid, sizeof(uuid), "u%s", attr_safe_name); | BLI_snprintf(uuid, sizeof(uuid), "a%s", attr_safe_name); | ||||
| uv_id[i] = GPU_vertformat_attr_add(&format, uuid, GPU_COMP_F32, 2, GPU_FETCH_FLOAT); | uv_id[i] = GPU_vertformat_attr_add(&format, uuid, GPU_COMP_F32, 2, GPU_FETCH_FLOAT); | ||||
| if (i == active_uv) { | if (i == active_uv) { | ||||
| GPU_vertformat_alias_add(&format, "u"); | GPU_vertformat_alias_add(&format, "a"); | ||||
| } | } | ||||
| } | } | ||||
| for (int i = 0; i < num_col_layers; i++) { | for (int i = 0; i < num_col_layers; i++) { | ||||
| char uuid[32], attr_safe_name[GPU_MAX_SAFE_ATTR_NAME]; | char uuid[32], attr_safe_name[GPU_MAX_SAFE_ATTR_NAME]; | ||||
| const char *name = CustomData_get_layer_name(&psmd->mesh_final->ldata, CD_MLOOPCOL, i); | const char *name = CustomData_get_layer_name(&psmd->mesh_final->ldata, CD_MLOOPCOL, i); | ||||
| GPU_vertformat_safe_attr_name(name, attr_safe_name, GPU_MAX_SAFE_ATTR_NAME); | GPU_vertformat_safe_attr_name(name, attr_safe_name, GPU_MAX_SAFE_ATTR_NAME); | ||||
| BLI_snprintf(uuid, sizeof(uuid), "c%s", attr_safe_name); | BLI_snprintf(uuid, sizeof(uuid), "a%s", attr_safe_name); | ||||
| col_id[i] = GPU_vertformat_attr_add(&format, uuid, GPU_COMP_U16, 4, GPU_FETCH_FLOAT); | col_id[i] = GPU_vertformat_attr_add(&format, uuid, GPU_COMP_U16, 4, GPU_FETCH_FLOAT); | ||||
| if (i == active_col) { | if (i == active_col) { | ||||
| GPU_vertformat_alias_add(&format, "c"); | GPU_vertformat_alias_add(&format, "c"); | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 499 Lines • Show Last 20 Lines | |||||