Abstract
In this chapter, we discuss Blender’s two largest “core” utility libraries. blenlib and blenkernel are the primary modules for generic processing and data. As such, they share a history in the Blender codebase. When appropriate, we will use Blender’s unit tests—written with Google Test—to survey blenlib’s interface (BLI_* functions). Recall struct bContext is defined in blenkernel. We looked at the CTX_* API, a subset of the blenkernel API in Chapter 2. blenkernel’s API is generally accessed by BKE_* functions, which comprise a larger portion of its interface. blenkernel offloads data handling for makesdna, by operating on “DNA” data types. Other utility modules, namely, blenloader, blenfont, and blentranslation, are more specialized and beyond the scope of the current chapter.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
An xUnit framework written by Google for C++ (and C) programs.
- 2.
Thus, blenlib has utility “mixin” classes, i.e., classes not viable on their own. “Mixins” use multiple inheritance to combine member data and functions between more than one class type.
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 2021 The Author(s), under exclusive license to APress Media, LLC , part of Springer Nature
About this chapter
Cite this chapter
Hollister, B.E. (2021). The blenlib and blenkernel Modules. In: Core Blender Development. Apress, Berkeley, CA. https://doi.org/10.1007/978-1-4842-6415-7_4
Download citation
DOI: https://doi.org/10.1007/978-1-4842-6415-7_4
Published:
Publisher Name: Apress, Berkeley, CA
Print ISBN: 978-1-4842-6414-0
Online ISBN: 978-1-4842-6415-7
eBook Packages: Professional and Applied ComputingProfessional and Applied Computing (R0)Apress Access Books