Blender V2.61 - r43446
|
#include <float.h>
#include <math.h>
#include <stdio.h>
#include <algorithm>
#include <queue>
#include <vector>
#include "BKE_global.h"
Go to the source code of this file.
Classes | |
struct | OVBVHNode |
struct | VBVH_optimalPackSIMD< Node, TestCost > |
struct | VBVH_optimalPackSIMD< Node, TestCost >::calc_best |
Defines | |
#define | MAX_CUT_SIZE 4 |
#define | MAX_OPTIMIZE_CHILDS MAX_CUT_SIZE |
Functions | |
template<class Node > | |
bool | node_fits_inside (Node *a, Node *b) |
template<class Node > | |
void | reorganize_find_fittest_parent (Node *tree, Node *node, std::pair< float, Node * > &cost) |
template<class Node > | |
void | reorganize (Node *root) |
template<class Node > | |
void | remove_useless (Node *node, Node **new_node) |
template<class Node > | |
void | pushup (Node *parent) |
template<class Node , int SSize> | |
void | pushup_simd (Node *parent) |
template<class Node > | |
void | pushdown (Node *parent) |
template<class Node > | |
float | bvh_refit (Node *node) |
Variables | |
int | tot_pushup |
int | tot_pushdown |
static int | tot_moves = 0 |
Definition in file reorganize.h.
#define MAX_CUT_SIZE 4 |
Definition at line 311 of file reorganize.h.
Referenced by VBVH_optimalPackSIMD< Node, TestCost >::calc_best::calc_best(), VBVH_optimalPackSIMD< Node, TestCost >::calc_costs(), and OVBVHNode::set_cut().
#define MAX_OPTIMIZE_CHILDS MAX_CUT_SIZE |
Definition at line 312 of file reorganize.h.
Referenced by VBVH_optimalPackSIMD< Node, TestCost >::calc_best::calc_best().
float bvh_refit | ( | Node * | node | ) |
Definition at line 284 of file reorganize.h.
References bb_area(), DO_MAX, DO_MIN, INIT_MINMAX, and is_leaf().
Referenced by bvh_done< VBVHTree >().
Definition at line 58 of file reorganize.h.
References bb_fits_inside().
Referenced by reorganize_find_fittest_parent().
void pushdown | ( | Node * | parent | ) |
Definition at line 244 of file reorganize.h.
References bb_fits_inside(), i, next, RE_rayobject_isAligned, and tot_pushdown.
Referenced by bvh_done< VBVHTree >().
void pushup | ( | Node * | parent | ) |
Definition at line 170 of file reorganize.h.
References append_sibling(), bb_area(), count_childs(), is_leaf(), RenderLayer::prev, RE_rayobject_isAligned, and tot_pushup.
Referenced by bvh_done< VBVHTree >().
void pushup_simd | ( | Node * | parent | ) |
Definition at line 209 of file reorganize.h.
References append_sibling(), count_childs(), is_leaf(), RenderLayer::prev, and RE_rayobject_isAligned.
Definition at line 138 of file reorganize.h.
References next, RenderLayer::prev, and RE_rayobject_isAligned.
Referenced by bvh_done< VBVHTree >().
void reorganize | ( | Node * | root | ) |
Definition at line 87 of file reorganize.h.
References assert, FLT_MAX, RenderLayer::prev, RE_rayobject_isAligned, reorganize_find_fittest_parent(), and tot_moves.
Referenced by bvh_done< VBVHTree >().
void reorganize_find_fittest_parent | ( | Node * | tree, |
Node * | node, | ||
std::pair< float, Node * > & | cost | ||
) |
Definition at line 64 of file reorganize.h.
References bb_area(), min, node_fits_inside(), and RE_rayobject_isAligned.
Referenced by reorganize().
int tot_moves = 0 [static] |
Definition at line 85 of file reorganize.h.
Referenced by bfree(), and reorganize().
int tot_pushdown |
Definition at line 34 of file rayobject_vbvh.cpp.
Referenced by bfree(), and pushdown().
int tot_pushup |
Definition at line 33 of file rayobject_vbvh.cpp.