Refactor: use new api for some remaining functions in writefile
This commit is contained in:
@@ -980,10 +980,10 @@ static void write_curvemapping(BlendWriter *writer, CurveMapping *cumap)
|
||||
write_curvemapping_curves(writer, cumap);
|
||||
}
|
||||
|
||||
static void write_CurveProfile(WriteData *wd, CurveProfile *profile)
|
||||
static void write_CurveProfile(BlendWriter *writer, CurveProfile *profile)
|
||||
{
|
||||
writestruct(wd, DATA, CurveProfile, 1, profile);
|
||||
writestruct(wd, DATA, CurveProfilePoint, profile->path_len, profile->path);
|
||||
BLO_write_struct(writer, CurveProfile, profile);
|
||||
BLO_write_struct_array(writer, CurveProfilePoint, profile->path_len, profile->path);
|
||||
}
|
||||
|
||||
static void write_node_socket_default_value(BlendWriter *writer, bNodeSocket *sock)
|
||||
@@ -1324,39 +1324,39 @@ static void write_userdef(BlendWriter *writer, const UserDef *userdef)
|
||||
}
|
||||
}
|
||||
|
||||
static void write_boid_state(WriteData *wd, BoidState *state)
|
||||
static void write_boid_state(BlendWriter *writer, BoidState *state)
|
||||
{
|
||||
BoidRule *rule = state->rules.first;
|
||||
|
||||
writestruct(wd, DATA, BoidState, 1, state);
|
||||
BLO_write_struct(writer, BoidState, state);
|
||||
|
||||
for (; rule; rule = rule->next) {
|
||||
switch (rule->type) {
|
||||
case eBoidRuleType_Goal:
|
||||
case eBoidRuleType_Avoid:
|
||||
writestruct(wd, DATA, BoidRuleGoalAvoid, 1, rule);
|
||||
BLO_write_struct(writer, BoidRuleGoalAvoid, rule);
|
||||
break;
|
||||
case eBoidRuleType_AvoidCollision:
|
||||
writestruct(wd, DATA, BoidRuleAvoidCollision, 1, rule);
|
||||
BLO_write_struct(writer, BoidRuleAvoidCollision, rule);
|
||||
break;
|
||||
case eBoidRuleType_FollowLeader:
|
||||
writestruct(wd, DATA, BoidRuleFollowLeader, 1, rule);
|
||||
BLO_write_struct(writer, BoidRuleFollowLeader, rule);
|
||||
break;
|
||||
case eBoidRuleType_AverageSpeed:
|
||||
writestruct(wd, DATA, BoidRuleAverageSpeed, 1, rule);
|
||||
BLO_write_struct(writer, BoidRuleAverageSpeed, rule);
|
||||
break;
|
||||
case eBoidRuleType_Fight:
|
||||
writestruct(wd, DATA, BoidRuleFight, 1, rule);
|
||||
BLO_write_struct(writer, BoidRuleFight, rule);
|
||||
break;
|
||||
default:
|
||||
writestruct(wd, DATA, BoidRule, 1, rule);
|
||||
BLO_write_struct(writer, BoidRule, rule);
|
||||
break;
|
||||
}
|
||||
}
|
||||
#if 0
|
||||
BoidCondition *cond = state->conditions.first;
|
||||
for (; cond; cond = cond->next) {
|
||||
writestruct(wd, DATA, BoidCondition, 1, cond);
|
||||
BLO_write_struct(writer, BoidCondition, cond);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
@@ -1464,7 +1464,7 @@ static void write_particlesettings(BlendWriter *writer,
|
||||
BLO_write_struct(writer, BoidSettings, part->boids);
|
||||
|
||||
LISTBASE_FOREACH (BoidState *, state, &part->boids->states) {
|
||||
write_boid_state(writer->wd, state);
|
||||
write_boid_state(writer, state);
|
||||
}
|
||||
}
|
||||
if (part->fluid && part->phystype == PART_PHYS_FLUID) {
|
||||
@@ -1834,7 +1834,7 @@ static void write_modifiers(BlendWriter *writer, ListBase *modbase)
|
||||
else if (md->type == eModifierType_Bevel) {
|
||||
BevelModifierData *bmd = (BevelModifierData *)md;
|
||||
if (bmd->custom_profile) {
|
||||
write_CurveProfile(writer->wd, bmd->custom_profile);
|
||||
write_CurveProfile(writer, bmd->custom_profile);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2577,7 +2577,7 @@ static void write_view_layer(BlendWriter *writer, ViewLayer *view_layer)
|
||||
write_layer_collections(writer, &view_layer->layer_collections);
|
||||
}
|
||||
|
||||
static void write_lightcache_texture(WriteData *wd, LightCacheTexture *tex)
|
||||
static void write_lightcache_texture(BlendWriter *writer, LightCacheTexture *tex)
|
||||
{
|
||||
if (tex->data) {
|
||||
size_t data_size = tex->components * tex->tex_size[0] * tex->tex_size[1] * tex->tex_size[2];
|
||||
@@ -2587,24 +2587,24 @@ static void write_lightcache_texture(WriteData *wd, LightCacheTexture *tex)
|
||||
else if (tex->data_type == LIGHTCACHETEX_UINT) {
|
||||
data_size *= sizeof(uint);
|
||||
}
|
||||
writedata(wd, DATA, data_size, tex->data);
|
||||
BLO_write_raw(writer, data_size, tex->data);
|
||||
}
|
||||
}
|
||||
|
||||
static void write_lightcache(WriteData *wd, LightCache *cache)
|
||||
static void write_lightcache(BlendWriter *writer, LightCache *cache)
|
||||
{
|
||||
write_lightcache_texture(wd, &cache->grid_tx);
|
||||
write_lightcache_texture(wd, &cache->cube_tx);
|
||||
write_lightcache_texture(writer, &cache->grid_tx);
|
||||
write_lightcache_texture(writer, &cache->cube_tx);
|
||||
|
||||
if (cache->cube_mips) {
|
||||
writestruct(wd, DATA, LightCacheTexture, cache->mips_len, cache->cube_mips);
|
||||
BLO_write_struct_array(writer, LightCacheTexture, cache->mips_len, cache->cube_mips);
|
||||
for (int i = 0; i < cache->mips_len; i++) {
|
||||
write_lightcache_texture(wd, &cache->cube_mips[i]);
|
||||
write_lightcache_texture(writer, &cache->cube_mips[i]);
|
||||
}
|
||||
}
|
||||
|
||||
writestruct(wd, DATA, LightGridCache, cache->grid_len, cache->grid_data);
|
||||
writestruct(wd, DATA, LightProbeCache, cache->cube_len, cache->cube_data);
|
||||
BLO_write_struct_array(writer, LightGridCache, cache->grid_len, cache->grid_data);
|
||||
BLO_write_struct_array(writer, LightProbeCache, cache->cube_len, cache->cube_data);
|
||||
}
|
||||
|
||||
static void write_scene(BlendWriter *writer, Scene *sce, const void *id_address)
|
||||
@@ -2673,7 +2673,7 @@ static void write_scene(BlendWriter *writer, Scene *sce, const void *id_address)
|
||||
}
|
||||
/* Write the curve profile to the file. */
|
||||
if (tos->custom_bevel_profile_preset) {
|
||||
write_CurveProfile(writer->wd, tos->custom_bevel_profile_preset);
|
||||
write_CurveProfile(writer, tos->custom_bevel_profile_preset);
|
||||
}
|
||||
|
||||
write_paint(writer, &tos->imapaint.paint);
|
||||
@@ -2829,7 +2829,7 @@ static void write_scene(BlendWriter *writer, Scene *sce, const void *id_address)
|
||||
/* Eevee Lightcache */
|
||||
if (sce->eevee.light_cache_data && !BLO_write_is_undo(writer)) {
|
||||
BLO_write_struct(writer, LightCache, sce->eevee.light_cache_data);
|
||||
write_lightcache(writer->wd, sce->eevee.light_cache_data);
|
||||
write_lightcache(writer, sce->eevee.light_cache_data);
|
||||
}
|
||||
|
||||
write_view3dshading(writer, &sce->display.shading);
|
||||
|
||||
Reference in New Issue
Block a user