92968c23fe1663ab81dfa6b2b66aa61acc06ab9f
This removes the old `DrawEngineType` and use the new `DrawEngine` virtual class instead. This removes a lot of boilerplate functions that were only there for legacy reason. To this end, some engines that were based on static functions have been refactored into `Instance` classes. This was particularly cumbersome for the Grease pencil engine which needed some more refactoring. The `Engine` class that is in each namespace is a workaround to isolate the internal implementation (i.e. the `Instance`) to the engine modules. Without this, the whole engine is getting included in each compile unit that includes the `Instance` class. Eventually, if we get rid of these intricate dependencies, we could remove the `Engine` class. Pull Request: https://projects.blender.org/blender/blender/pulls/136001
…
Blender
Blender is the free and open source 3D creation suite. It supports the entirety of the 3D pipeline-modeling, rigging, animation, simulation, rendering, compositing, motion tracking and video editing.
Project Pages
Development
License
Blender as a whole is licensed under the GNU General Public License, Version 3. Individual files may have a different, but compatible license.
See blender.org/about/license for details.
Description
Languages
C++
78%
Python
14.9%
C
2.9%
GLSL
1.9%
CMake
1.2%
Other
0.9%
