August 2, 2018, 15:27 (GMT) |
Remove most VDB grid as texture storage functions. |
August 2, 2018, 15:15 (GMT) |
Fixed incorrect preview of imported OpenVDB files. Error was caused by not taking into account minumum bound of the volume. Also changed dense array to VDB grid converter in Cycles to use the exporter in intern/openvdb. |
August 2, 2018, 15:06 (GMT) |
Move VDB functions from Cycles to intern/openvdb. So they can be used on Blender side. Changed variable names and types to be more consistent between Cycles and intern/openvdb. |
August 2, 2018, 14:34 (GMT) |
Benchmark: temporary Python drawing API, until we have real one in 2.8. |
August 2, 2018, 14:34 (GMT) |
Benchmark: wm hacks to open a single window with benchmark space. |
August 2, 2018, 14:23 (GMT) |
Merge branch 'master' of git.blender.org:blender into cycles_embree |
August 2, 2018, 14:04 (GMT) |
Set thread stack size on macOS to 1MB for Embree builds. |
August 2, 2018, 13:33 (GMT) |
Revert "Cycles: Raised thread stack size to 1MB for macOS to be consistent with Windows." This reverts commit 151b5a9a1e568476c6886709b460edbf0936f7f7. |
August 2, 2018, 13:04 (GMT) |
Feature: Collada added new User interface options keep_keyframes: When sampling the distance between 2 keyframes is defined by the sampling rate. Furthermore the keyframes defined in the FCurves are not exported. However when this option is enabled then also the defined keyframes will be added to the exported fcurves keep_smooth_curves: When sampling we do not use FCurves. So we also have no Curve handles for smooth exporting. However when this option is enabled, Blender does its best to recreate the handles for export. This is a very experimental feature and it is know to break when: - the exported animated objects have parent inverse matrices different from the unit matrix - The exported objects have negative scaling There may be many other situations when this feature breaks. This needs to be further tested. It may be removed later or replaced by something less wonky. |
August 2, 2018, 13:04 (GMT) |
refactor: Collada: removed trivial function The function get_joint_id(Object *ob, Bone *bone) was so simple I replaced the function by a one line statement. Now you can see directly what happens and no longer need to lookup what the function does. |
August 2, 2018, 13:04 (GMT) |
Feature Collada: Export also not selected intermediate objects Problem: When we export an Object Hierarchy, then we must export all elements of the hierarchy to maintain the transforms. This is especially important when exporting animated objects, because the animation curves are exported as relative curves based on the parent-child hierarchy. If an intermediate animated object is missing then the exported animation breaks. Solution: If the "Selected" Optioon is enabled, then take care to also export all objects which are not selected and hidden, but which are parents of selected objects. |
August 2, 2018, 12:56 (GMT) |
Benchmark: add space type for drawing benchmark in. Once we have custom space types, this could be removed. For now all code is in a branch so some hacks don't matter too much. |
August 2, 2018, 12:50 (GMT) |
Cleanup: Collada added indentation, changed variable names Just for better reading, no functional change here. |
August 2, 2018, 12:34 (GMT) |
Feature: Collada: Added new classes for The Animation exporter Actually the new classes are not depending on Collada itself. They coul dbe reused for other purposes as well, for example as a general helper tool for Animation export. |
August 2, 2018, 12:34 (GMT) |
Refactor Collada: Moved Classes into separate files Renamed AnimationCurveCache to BCAnimationCurveContainer because this is really not a cache but just a set of Data that prepares the export of FCurves. This container only lives during export and is otherwiose not used for anything else. The BCAnimationCurveContainer is not depending on Collada in any way. Theoretically it could be used also from Python, but this is another story. Additions in more detail: Classes: * BCAnimationCurve a wrapper for handling FCurves tied to an object within the Animation Exporter * BCAnimationCurveContainer A container to keep all FCurves in one place. It also maintains creation and deletion of temporary FCurves needed to export data without interfering with the User's production data in Blender. * BCMatrix Handy class for making float mat[4][4] a primetime resident in the code. Not necessary but nice. Support functions: * bc_get_children(std::vector<Object *> &child_set, Object *ob, Scene *scene) returns the immediate children of an object into a set * bc_string_after(const std::string& s, const char c) returns the string after the last occurance of char * bc_startswith(std::string const & value, std::string const & starting) returns true if the string starts with the starting sequence * bc_endswith(std::string const & value, std::string const & ending) returns true if the string ends with the ending sequence |
August 2, 2018, 12:31 (GMT) |
fix: Collada: changed scene update for sampling animation data According to a comment in physics_fluid.c it sounds like the function BKE_scene_update_for_newframe() does not work in all cases. According to the comment it seems better to use ED_update_for_newframe() instead. This change only affects the export of Animation Data. I make this change as a precaution. I am not aware that there was anything wrong here before. |
August 2, 2018, 12:25 (GMT) |
Feature Collada: Added AnimationCurveCache for exporting sampled animations Details: When exporting sampled Animations to Collada we need to create sample data for every Animation curve. However it turns out to be extremely slow when we repeatedly step over the entire animation for each curve. The solution is to only step over the animation once but cache all needed animation data in a cache. Once the animation has been processed, all export information is located in the cache and can be easily read from there. The AnimationCurveCache is the first try to proof the concept. This is work in progres and may still change a lot. |
August 2, 2018, 12:25 (GMT) |
Feature Collada: Added new class files to CMakeLists.txt AnimationClipExporter.cpp and AnimationClipExporter.h both need to be added to CMakeLists.txt so they are actually built into Blender |
August 2, 2018, 12:25 (GMT) |
Feature Collada: Added new Enum and Mappings * BC_animation_transform_type Enum that Contains all animation types which can be exported * BC_ANIMATION_NAME_FROM_TYPE Map from transform_type to the name that is used in the exported data * BC_ANIMATION_TYPE_FROM_NAME Maps to get the animation transformtype from RNA Pathes and from collada names (also needed for the Importer later) These maps and Enums will later replace hard coded integer numbers which are currently used all over the place and make it really hard to understand what exactly is going on. |
August 2, 2018, 12:25 (GMT) |
Cleanup Collada: Added #ifdef to avoid duplicate include This avoids that the include file AnimationExporter.h gets included more than once. |
|