Dev:Source/Modifiers/Stack/API Refactor

提供: wiki
移動先: 案内検索

Overview

This page describes work to refactor the modifier stack API. The current aim is to split modifier.c into one source file per modifier, leaving only the stack management functions in modifier.c. This should make the system easier to understand, and facilitate work on individual modifiers.

Directory structure

The new directory structure is inspired by the nodes API.

  • A modifiers directory has been added, which holds all the code for specific modifiers
  • modifier.c is still in the blenkernel/intern directory, but now it only holds modifier stack API functions
blender/
    source/
        blender/
            blenkernel/
                BKE_modifiers.h       - public interface for the modifier API
                intern/
                    modifier.c        - modifier stack API implementation
            modifiers/
                MOD_modifiers.h       - type structures for individual modifier types
                intern/
                    MOD_armature.c    - Armature modifier implementation
                    MOD_array.c       - Array modifier implementation
                    MOD_bevel.c       - Bevel modifier implementation
                    ... etc ...
                    MOD_util.h        - modifier utility function declarations
                    MOD_util.c        - modifier utility function implementations

Patches

A patch can be found in the patch tracker at https://projects.blender.org/tracker/index.php?func=detail&aid=14437&group_id=9&atid=127 .