Changeset View
Changeset View
Standalone View
Standalone View
intern/cycles/render/hair.cpp
| Show First 20 Lines • Show All 478 Lines • ▼ Show 20 Lines | void Hair::pack_curves(Scene *scene, | ||||
| /* pack curve segments */ | /* pack curve segments */ | ||||
| size_t curve_num = num_curves(); | size_t curve_num = num_curves(); | ||||
| for (size_t i = 0; i < curve_num; i++) { | for (size_t i = 0; i < curve_num; i++) { | ||||
| Curve curve = get_curve(i); | Curve curve = get_curve(i); | ||||
| int shader_id = curve_shader[i]; | int shader_id = curve_shader[i]; | ||||
| Shader *shader = (shader_id < used_shaders.size()) ? | Shader *shader = (shader_id < used_shaders.size()) ? | ||||
| static_cast<Shader *>(used_shaders[shader_id]) : | static_cast<Shader *>(used_shaders[shader_id]) : | ||||
| scene->default_surface; | scene->get_default_surface(); | ||||
| shader_id = scene->shader_manager->get_shader_id(shader, false); | shader_id = scene->get_shader_manager()->get_shader_id(shader, false); | ||||
| curve_data[i] = make_float4(__int_as_float(curve.first_key + curvekey_offset), | curve_data[i] = make_float4(__int_as_float(curve.get_first_key() + curvekey_offset), | ||||
| __int_as_float(curve.num_keys), | __int_as_float(curve.get_num_keys()), | ||||
| __int_as_float(shader_id), | __int_as_float(shader_id), | ||||
| 0.0f); | 0.0f); | ||||
| } | } | ||||
| } | } | ||||
| void Hair::pack_primitives(PackedBVH &pack, int object, uint visibility) | void Hair::pack_primitives(PackedBVH &pack, int object, uint visibility) | ||||
| { | { | ||||
| if (curve_first_key.empty()) | if (curve_first_key.empty()) | ||||
| Show All 29 Lines | |||||