Blender V2.61 - r43446
|
#include <limits.h>
#include <math.h>
#include <string.h>
#include "MEM_guardedalloc.h"
#include "BLI_math.h"
#include "BLI_blenlib.h"
#include "BLI_utildefines.h"
#include "BLI_ghash.h"
#include "BLI_memarena.h"
#include "DNA_material_types.h"
#include "DNA_mesh_types.h"
#include "DNA_meshdata_types.h"
#include "DNA_texture_types.h"
#include "BKE_customdata.h"
#include "BKE_texture.h"
#include "BKE_DerivedMesh.h"
#include "RE_render_ext.h"
#include "rayobject.h"
#include "renderpipeline.h"
#include "render_types.h"
#include "renderdatabase.h"
#include "texture.h"
#include "strand.h"
#include "zbuf.h"
Go to the source code of this file.
Defines | |
#define | RE_STICKY_ELEMS 2 |
#define | RE_STRESS_ELEMS 1 |
#define | RE_RAD_ELEMS 4 |
#define | RE_STRAND_ELEMS 1 |
#define | RE_TANGENT_ELEMS 3 |
#define | RE_STRESS_ELEMS 1 |
#define | RE_WINSPEED_ELEMS 4 |
#define | RE_MTFACE_ELEMS 1 |
#define | RE_MCOL_ELEMS 4 |
#define | RE_UV_ELEMS 2 |
#define | RE_SURFNOR_ELEMS 3 |
#define | RE_RADFACE_ELEMS 1 |
#define | RE_SIMPLIFY_ELEMS 2 |
#define | RE_FACE_ELEMS 1 |
#define | RE_NMAP_TANGENT_ELEMS 16 |
Functions | |
float * | RE_vertren_get_sticky (ObjectRen *obr, VertRen *ver, int verify) |
float * | RE_vertren_get_stress (ObjectRen *obr, VertRen *ver, int verify) |
float * | RE_vertren_get_rad (ObjectRen *obr, VertRen *ver, int verify) |
float * | RE_vertren_get_strand (ObjectRen *obr, VertRen *ver, int verify) |
float * | RE_vertren_get_tangent (ObjectRen *obr, VertRen *ver, int verify) |
float * | RE_vertren_get_winspeed (ObjectInstanceRen *obi, VertRen *ver, int verify) |
VertRen * | RE_vertren_copy (ObjectRen *obr, VertRen *ver) |
VertRen * | RE_findOrAddVert (ObjectRen *obr, int nr) |
MTFace * | RE_vlakren_get_tface (ObjectRen *obr, VlakRen *vlr, int n, char **name, int verify) |
MCol * | RE_vlakren_get_mcol (ObjectRen *obr, VlakRen *vlr, int n, char **name, int verify) |
float * | RE_vlakren_get_surfnor (ObjectRen *obr, VlakRen *vlak, int verify) |
float * | RE_vlakren_get_nmap_tangent (ObjectRen *obr, VlakRen *vlak, int verify) |
RadFace ** | RE_vlakren_get_radface (ObjectRen *obr, VlakRen *vlak, int verify) |
VlakRen * | RE_vlakren_copy (ObjectRen *obr, VlakRen *vlr) |
void | RE_vlakren_get_normal (Render *UNUSED(re), ObjectInstanceRen *obi, VlakRen *vlr, float *nor) |
void | RE_set_customdata_names (ObjectRen *obr, CustomData *data) |
VlakRen * | RE_findOrAddVlak (ObjectRen *obr, int nr) |
float * | RE_strandren_get_surfnor (ObjectRen *obr, StrandRen *strand, int verify) |
float * | RE_strandren_get_uv (ObjectRen *obr, StrandRen *strand, int n, char **name, int verify) |
MCol * | RE_strandren_get_mcol (ObjectRen *obr, StrandRen *strand, int n, char **name, int verify) |
float * | RE_strandren_get_simplify (struct ObjectRen *obr, struct StrandRen *strand, int verify) |
int * | RE_strandren_get_face (ObjectRen *obr, StrandRen *strand, int verify) |
float * | RE_strandren_get_winspeed (ObjectInstanceRen *obi, StrandRen *strand, int verify) |
StrandRen * | RE_findOrAddStrand (ObjectRen *obr, int nr) |
StrandBuffer * | RE_addStrandBuffer (ObjectRen *obr, int totvert) |
ObjectRen * | RE_addRenderObject (Render *re, Object *ob, Object *par, int index, int psysindex, int lay) |
void | free_renderdata_vertnodes (VertTableNode *vertnodes) |
void | free_renderdata_vlaknodes (VlakTableNode *vlaknodes) |
static void | free_renderdata_strandnodes (StrandTableNode *strandnodes) |
void | free_renderdata_tables (Render *re) |
HaloRen * | RE_findOrAddHalo (ObjectRen *obr, int nr) |
HaloRen * | RE_inithalo (Render *re, ObjectRen *obr, Material *ma, float *vec, float *vec1, float *orco, float hasize, float vectsize, int seed) |
HaloRen * | RE_inithalo_particle (Render *re, ObjectRen *obr, DerivedMesh *dm, Material *ma, float *vec, float *vec1, float *orco, float *uvco, float hasize, float vectsize, int seed, float *pa_co) |
static int | panotestclip (Render *re, int do_pano, float *v) |
void | project_renderdata (Render *re, void(*projectfunc)(const float *, float mat[][4], float *), int do_pano, float xoffs, int UNUSED(do_buckets)) |
ObjectInstanceRen * | RE_addRenderInstance (Render *re, ObjectRen *obr, Object *ob, Object *par, int index, int psysindex, float mat[][4], int lay) |
void | RE_makeRenderInstances (Render *re) |
int | clip_render_object (float boundbox[][3], float *bounds, float winmat[][4]) |
Definition in file renderdatabase.c.
#define RE_FACE_ELEMS 1 |
Definition at line 114 of file renderdatabase.c.
Referenced by RE_strandren_get_face().
#define RE_MCOL_ELEMS 4 |
Definition at line 109 of file renderdatabase.c.
Referenced by RE_strandren_get_mcol(), RE_vlakren_copy(), and RE_vlakren_get_mcol().
#define RE_MTFACE_ELEMS 1 |
Definition at line 108 of file renderdatabase.c.
Referenced by RE_vlakren_copy().
#define RE_NMAP_TANGENT_ELEMS 16 |
Definition at line 115 of file renderdatabase.c.
Referenced by RE_vlakren_copy(), and RE_vlakren_get_nmap_tangent().
#define RE_RAD_ELEMS 4 |
Definition at line 103 of file renderdatabase.c.
Referenced by RE_vertren_copy(), and RE_vertren_get_rad().
#define RE_RADFACE_ELEMS 1 |
Definition at line 112 of file renderdatabase.c.
Referenced by RE_vlakren_get_radface().
#define RE_SIMPLIFY_ELEMS 2 |
Definition at line 113 of file renderdatabase.c.
Referenced by RE_strandren_get_simplify().
#define RE_STICKY_ELEMS 2 |
Definition at line 101 of file renderdatabase.c.
Referenced by RE_vertren_copy(), and RE_vertren_get_sticky().
#define RE_STRAND_ELEMS 1 |
Definition at line 104 of file renderdatabase.c.
Referenced by RE_vertren_copy(), and RE_vertren_get_strand().
#define RE_STRESS_ELEMS 1 |
Definition at line 106 of file renderdatabase.c.
Referenced by RE_vertren_copy(), and RE_vertren_get_stress().
#define RE_STRESS_ELEMS 1 |
Definition at line 106 of file renderdatabase.c.
#define RE_SURFNOR_ELEMS 3 |
Definition at line 111 of file renderdatabase.c.
Referenced by RE_strandren_get_surfnor(), and RE_vlakren_get_surfnor().
#define RE_TANGENT_ELEMS 3 |
Definition at line 105 of file renderdatabase.c.
Referenced by RE_vertren_copy(), and RE_vertren_get_tangent().
#define RE_UV_ELEMS 2 |
Definition at line 110 of file renderdatabase.c.
Referenced by RE_strandren_get_uv().
#define RE_WINSPEED_ELEMS 4 |
Definition at line 107 of file renderdatabase.c.
Referenced by RE_strandren_get_winspeed(), and RE_vertren_get_winspeed().
int clip_render_object | ( | float | boundbox[][3], |
float * | bounds, | ||
float | winmat[][4] | ||
) |
Definition at line 1379 of file renderdatabase.c.
References copy_m4_m4(), and mul_m4_v4().
Referenced by zbuffer_abuf(), zbuffer_shadow(), zbuffer_solid(), zbuffer_sss(), and zbuffer_strands_abuf().
static void free_renderdata_strandnodes | ( | StrandTableNode * | strandnodes | ) | [static] |
Definition at line 782 of file renderdatabase.c.
References MEM_freeN(), NULL, and StrandTableNode::strand.
Referenced by free_renderdata_tables().
void free_renderdata_tables | ( | Render * | re | ) |
Definition at line 808 of file renderdatabase.c.
References BLI_freelistN(), ObjectRen::bloha, ObjectRen::blohalen, StrandBuffer::bound, Render::customdata_names, ListBase::first, free_renderdata_strandnodes(), free_renderdata_vertnodes(), free_renderdata_vlaknodes(), Render::instancetable, ListBase::last, ObjectRen::mcol, MEM_freeN(), ObjectRen::mtface, ObjectInstanceRen::next, ObjectRen::next, NULL, Render::objectinstance, Render::objecttable, ObjectRen::rayfaces, ObjectRen::rayprimitives, ObjectInstanceRen::raytree, ObjectRen::raytree, RE_rayobject_free(), Render::sortedhalos, ObjectRen::strandbuf, ObjectRen::strandnodes, ObjectRen::strandnodeslen, Render::totinstance, ObjectRen::totvlak, ObjectInstanceRen::vectors, StrandBuffer::vert, ObjectRen::vertnodes, ObjectRen::vertnodeslen, ObjectRen::vlaknodes, and ObjectRen::vlaknodeslen.
Referenced by RE_Database_Free(), and RE_FreeRender().
void free_renderdata_vertnodes | ( | VertTableNode * | vertnodes | ) |
Definition at line 732 of file renderdatabase.c.
References MEM_freeN(), NULL, and VertTableNode::vert.
Referenced by free_renderdata_tables().
void free_renderdata_vlaknodes | ( | VlakTableNode * | vlaknodes | ) |
Definition at line 758 of file renderdatabase.c.
References MEM_freeN(), NULL, and VlakTableNode::vlak.
Referenced by free_renderdata_tables().
static int panotestclip | ( | Render * | re, |
int | do_pano, | ||
float * | v | ||
) | [static] |
Definition at line 1203 of file renderdatabase.c.
References fabs(), testclip(), and Render::xparts.
Referenced by project_renderdata().
void project_renderdata | ( | Render * | re, |
void(*)(const float *, float mat[][4], float *) | projectfunc, | ||
int | do_pano, | ||
float | xoffs, | ||
int | UNUSEDdo_buckets | ||
) |
Definition at line 1236 of file renderdatabase.c.
References ObjectRen::bloha, CLAMPIS, HaloRen::co, copy_v3_v3(), cos(), fabs(), fabsf, ListBase::first, HA_ONLYSKY, HaloRen::hasize, HaloRen::maxy, HaloRen::miny, ObjectRen::next, NULL, Render::objecttable, Render::panoco, Render::panosi, panotestclip(), HaloRen::rad, HaloRen::radsq, sin(), ObjectRen::tothalo, HaloRen::type, Render::winmat, Render::winx, Render::winy, HaloRen::xs, Render::ycor, HaloRen::ys, HaloRen::zBufDist, HaloRen::zd, and HaloRen::zs.
ObjectInstanceRen* RE_addRenderInstance | ( | Render * | re, |
ObjectRen * | obr, | ||
Object * | ob, | ||
Object * | par, | ||
int | index, | ||
int | psysindex, | ||
float | mat[][4], | ||
int | lay | ||
) | [read] |
Definition at line 1324 of file renderdatabase.c.
References BLI_addtail(), copy_m3_m4(), copy_m4_m4(), ObjectInstanceRen::flag, ObjectInstanceRen::index, Render::instancetable, invert_m3_m3(), ObjectInstanceRen::lay, ObjectInstanceRen::mat, MEM_callocN(), ObjectInstanceRen::nmat, ObjectInstanceRen::ob, ObjectInstanceRen::obr, ObjectInstanceRen::par, ObjectInstanceRen::psysindex, R_DUPLI_TRANSFORMED, and transpose_m3().
Referenced by add_render_object(), and database_init_objects().
ObjectRen* RE_addRenderObject | ( | Render * | re, |
Object * | ob, | ||
Object * | par, | ||
int | index, | ||
int | psysindex, | ||
int | lay | ||
) | [read] |
Definition at line 718 of file renderdatabase.c.
References BLI_addtail(), ObjectRen::index, ObjectRen::lay, MEM_callocN(), ObjectRen::ob, Render::objecttable, ObjectRen::par, and ObjectRen::psysindex.
Referenced by add_render_object(), and RE_make_stars().
StrandBuffer* RE_addStrandBuffer | ( | ObjectRen * | obr, |
int | totvert | ||
) | [read] |
Definition at line 702 of file renderdatabase.c.
References MEM_callocN(), StrandBuffer::obr, ObjectRen::strandbuf, StrandBuffer::totvert, and StrandBuffer::vert.
Referenced by render_new_particle_system().
Definition at line 901 of file renderdatabase.c.
References ObjectRen::bloha, ObjectRen::blohalen, MEM_callocN(), MEM_freeN(), NULL, and TABLEINITSIZE.
Referenced by initstar(), RE_inithalo(), and RE_inithalo_particle().
Definition at line 664 of file renderdatabase.c.
References i, MEM_callocN(), MEM_freeN(), MEM_mallocN(), NULL, StrandTableNode::strand, ObjectRen::strandnodes, ObjectRen::strandnodeslen, and TABLEINITSIZE.
Referenced by deep_alpha(), finalize_render_object(), render_new_particle_system(), shade_strand_samples(), unref_strand_samples(), zbuffer_shadow(), and zbuffer_strands_abuf().
Definition at line 250 of file renderdatabase.c.
References i, VertRen::index, MEM_callocN(), MEM_freeN(), MEM_mallocN(), NULL, TABLEINITSIZE, VertTableNode::vert, ObjectRen::vertnodes, and ObjectRen::vertnodeslen.
Referenced by autosmooth(), calc_edge_stress(), calc_vertexnormals(), dl_surf_to_renderdata(), do_displacement(), init_render_curve(), init_render_dm(), init_render_mball(), init_render_mesh(), particle_billboard(), RE_vertren_copy(), shadowbuf_autoclip(), static_particle_strand(), and static_particle_wire().
Definition at line 493 of file renderdatabase.c.
References i, MEM_callocN(), MEM_freeN(), MEM_mallocN(), NULL, TABLEINITSIZE, VlakTableNode::vlak, ObjectRen::vlaknodes, and ObjectRen::vlaknodeslen.
Referenced by autosmooth(), calc_edge_stress(), calc_vertexnormals(), check_non_flat_quads(), deep_alpha(), dl_surf_to_renderdata(), do_displacement(), get_next_bake_face(), GetNormal(), GetNumVertsOfFace(), GetPosition(), GetTextureCoordinate(), init_render_curve(), init_render_dm(), init_render_mball(), init_render_mesh(), isb_make_buffer(), isb_make_buffer_transp(), occ_build_shade(), occ_face(), occ_form_factor(), particle_billboard(), RE_vlakren_copy(), set_fullsample_trace_flag(), set_phong_threshold(), SetTSpace(), shade_input_set_triangle(), split_quads(), split_v_renderfaces(), static_particle_strand(), static_particle_wire(), and zbufshade_sss_tile().
HaloRen* RE_inithalo | ( | Render * | re, |
ObjectRen * | obr, | ||
Material * | ma, | ||
float * | vec, | ||
float * | vec1, | ||
float * | orco, | ||
float | hasize, | ||
float | vectsize, | ||
int | seed | ||
) | [read] |
Definition at line 935 of file renderdatabase.c.
References Material::add, HaloRen::add, HaloRen::alfa, Material::alpha, KDL::atan2(), Material::b, HaloRen::b, HaloRen::co, MTex::colfac, copy_v3_v3(), cos(), HaloRen::cos, externtex(), Material::flarec, HaloRen::flarec, Material::g, HaloRen::g, HA_VECT, HA_XALPHA, Material::har, HaloRen::hard, HaloRen::hasize, len_v3v3(), Material::linec, HaloRen::linec, MA_HALO_FLARE, MA_HALO_LINES, MA_HALO_RINGS, MA_HALO_XALPHA, MA_HALOTEX, MA_STAR, MAP_ALPHA, MAP_COL, MTex::mapto, HaloRen::mat, Material::mode, Material::mtex, HaloRen::no, normalize_v3(), NULL, projectverto(), Material::r, HaloRen::r, RE_findOrAddHalo(), Material::ringc, HaloRen::ringc, HaloRen::seed, Material::septex, sin(), HaloRen::sin, Material::starc, HaloRen::starpoints, sub_v3_v3v3(), HaloRen::tex, MTex::texco, TEXCO_NORM, TEXCO_OBJECT, TEXCO_UV, ObjectRen::tothalo, HaloRen::type, Render::winmat, Render::winx, Render::winy, HaloRen::xs, HaloRen::ys, HaloRen::zBufDist, and HaloRen::zs.
Referenced by make_render_halos().
HaloRen* RE_inithalo_particle | ( | Render * | re, |
ObjectRen * | obr, | ||
DerivedMesh * | dm, | ||
Material * | ma, | ||
float * | vec, | ||
float * | vec1, | ||
float * | orco, | ||
float * | uvco, | ||
float | hasize, | ||
float | vectsize, | ||
int | seed, | ||
float * | pa_co | ||
) | [read] |
Definition at line 1048 of file renderdatabase.c.
References add(), Material::add, HaloRen::add, HaloRen::alfa, Material::alpha, MTex::alphafac, KDL::atan2(), Material::b, HaloRen::b, MTex::blendtype, CD_MTFACE, CLAMP(), HaloRen::co, MTex::colfac, copy_v3_v3(), cos(), HaloRen::cos, CustomData_get_active_layer_index(), CustomData_get_layer_index(), CustomData_get_named_layer_index(), MTex::def_var, externtex(), DerivedMesh::faceData, Material::flarec, HaloRen::flarec, Material::g, HaloRen::g, HA_VECT, HA_XALPHA, Material::har, HaloRen::hard, MTex::hardfac, HaloRen::hasize, i, Object::imat_ren, len_v3v3(), Material::linec, HaloRen::linec, MA_HALO_FLARE, MA_HALO_LINES, MA_HALO_RINGS, MA_HALO_XALPHA, MA_HALOTEX, MA_STAR, MAP_ALPHA, MAP_COL, MAP_HAR, MAP_RAYMIRR, MAP_TRANSLU, MTex::mapto, HaloRen::mat, MAX_MTEX, Material::mode, Material::mtex, mul_m4_v3(), HaloRen::no, normalize_v3(), NULL, MTex::object, projectverto(), Material::r, HaloRen::r, MTex::raymirrfac, RE_findOrAddHalo(), Material::ringc, HaloRen::ringc, HaloRen::seed, Material::septex, sin(), HaloRen::sin, Material::starc, HaloRen::starpoints, sub_v3_v3v3(), HaloRen::tex, MTex::texco, TEXCO_GLOB, TEXCO_NORM, TEXCO_OBJECT, TEXCO_PARTICLE, TEXCO_UV, texture_rgb_blend(), texture_value_blend(), ObjectRen::tothalo, MTex::translfac, HaloRen::type, MTex::uvname, Render::winmat, Render::winx, Render::winy, HaloRen::xs, HaloRen::ys, HaloRen::zBufDist, and HaloRen::zs.
Referenced by particle_curve(), and particle_normal_ren().
void RE_makeRenderInstances | ( | Render * | re | ) |
Definition at line 1350 of file renderdatabase.c.
References BLI_addtail(), BLI_countlist(), BLI_freelistN(), ListBase::first, Render::instancetable, ListBase::last, MEM_callocN(), ObjectInstanceRen::next, NULL, Render::objectinstance, ObjectInstanceRen::obr, ObjectInstanceRen::prev, and Render::totinstance.
Referenced by database_init_objects().
void RE_set_customdata_names | ( | ObjectRen * | obr, |
CustomData * | data | ||
) |
Definition at line 460 of file renderdatabase.c.
References CustomDataLayer::active, CustomDataLayer::active_rnd, ObjectRen::actmcol, ObjectRen::actmtface, ObjectRen::bakemtface, BLI_strncpy(), CD_MCOL, CD_MTFACE, CLAMPIS, CustomData_has_layer(), CustomData_number_of_layers(), i, CustomData::layers, ObjectRen::mcol, MEM_callocN(), ObjectRen::mtface, CustomDataLayer::name, CustomData::totlayer, and CustomDataLayer::type.
Referenced by init_render_dm(), init_render_mesh(), and render_new_particle_system().
Definition at line 631 of file renderdatabase.c.
References StrandTableNode::face, StrandRen::index, MEM_callocN(), NULL, RE_FACE_ELEMS, and ObjectRen::strandnodes.
Referenced by calculate_speedvectors(), render_new_particle_system(), and sample_occ_surface().
MCol* RE_strandren_get_mcol | ( | ObjectRen * | obr, |
StrandRen * | strand, | ||
int | n, | ||
char ** | name, | ||
int | verify | ||
) | [read] |
Definition at line 582 of file renderdatabase.c.
References StrandRen::index, ObjectRen::mcol, StrandTableNode::mcol, MEM_callocN(), MEM_freeN(), NULL, RE_MCOL_ELEMS, size(), ObjectRen::strandnodes, and StrandTableNode::totmcol.
Referenced by render_new_particle_system(), and shade_input_set_strand_texco().
Definition at line 616 of file renderdatabase.c.
References StrandRen::index, MEM_callocN(), NULL, RE_SIMPLIFY_ELEMS, StrandTableNode::simplify, and ObjectRen::strandnodes.
Referenced by render_new_particle_system(), and strand_eval_point().
Definition at line 533 of file renderdatabase.c.
References StrandRen::index, MEM_callocN(), NULL, RE_SURFNOR_ELEMS, ObjectRen::strandnodes, and StrandTableNode::surfnor.
Referenced by render_new_particle_system(), and shade_input_set_strand_texco().
Definition at line 548 of file renderdatabase.c.
References StrandRen::index, MEM_callocN(), MEM_freeN(), ObjectRen::mtface, NULL, RE_UV_ELEMS, size(), ObjectRen::strandnodes, StrandTableNode::totuv, and StrandTableNode::uv.
Referenced by render_new_particle_system(), and shade_input_set_strand_texco().
float* RE_strandren_get_winspeed | ( | ObjectInstanceRen * | obi, |
StrandRen * | strand, | ||
int | verify | ||
) |
Definition at line 647 of file renderdatabase.c.
References StrandRen::index, MEM_callocN(), NULL, ObjectInstanceRen::obr, RE_WINSPEED_ELEMS, ObjectRen::totstrand, ObjectRen::totvert, and ObjectInstanceRen::vectors.
Referenced by calculate_speedvectors(), and shade_input_set_strand_texco().
Definition at line 213 of file renderdatabase.c.
References VertRen::index, RE_findOrAddVert(), RE_RAD_ELEMS, RE_STICKY_ELEMS, RE_STRAND_ELEMS, RE_STRESS_ELEMS, RE_TANGENT_ELEMS, RE_vertren_get_rad(), RE_vertren_get_sticky(), RE_vertren_get_strand(), RE_vertren_get_stress(), RE_vertren_get_tangent(), and ObjectRen::totvert.
Referenced by autosmooth(), and split_v_renderfaces().
Definition at line 148 of file renderdatabase.c.
References VertRen::index, MEM_callocN(), NULL, VertTableNode::rad, RE_RAD_ELEMS, and ObjectRen::vertnodes.
Referenced by RE_vertren_copy().
Definition at line 117 of file renderdatabase.c.
References VertRen::index, MEM_mallocN(), NULL, RE_STICKY_ELEMS, VertTableNode::sticky, and ObjectRen::vertnodes.
Referenced by displace_render_vert(), init_render_mesh(), RE_vertren_copy(), and shade_input_set_shade_texco().
Definition at line 163 of file renderdatabase.c.
References VertRen::index, MEM_mallocN(), NULL, RE_STRAND_ELEMS, VertTableNode::strand, and ObjectRen::vertnodes.
Referenced by RE_vertren_copy().
Definition at line 132 of file renderdatabase.c.
References VertRen::index, MEM_mallocN(), NULL, RE_STRESS_ELEMS, VertTableNode::stress, and ObjectRen::vertnodes.
Referenced by calc_edge_stress(), displace_render_vert(), RE_vertren_copy(), and shade_input_set_shade_texco().
Definition at line 179 of file renderdatabase.c.
References VertRen::index, MEM_callocN(), NULL, RE_TANGENT_ELEMS, VertTableNode::tangent, and ObjectRen::vertnodes.
Referenced by calc_tangent_vector(), calc_vertexnormals(), RE_vertren_copy(), and shade_input_set_shade_texco().
float* RE_vertren_get_winspeed | ( | ObjectInstanceRen * | obi, |
VertRen * | ver, | ||
int | verify | ||
) |
Definition at line 196 of file renderdatabase.c.
References VertRen::index, MEM_callocN(), NULL, ObjectInstanceRen::obr, RE_WINSPEED_ELEMS, ObjectRen::totstrand, ObjectRen::totvert, and ObjectInstanceRen::vectors.
Referenced by calculate_speedvectors(), load_fluidsimspeedvectors(), and shade_input_set_shade_texco().
Definition at line 403 of file renderdatabase.c.
References copy_v3_v3(), i, VlakRen::index, NULL, RE_findOrAddVlak(), RE_MCOL_ELEMS, RE_MTFACE_ELEMS, RE_NMAP_TANGENT_ELEMS, RE_vlakren_get_mcol(), RE_vlakren_get_nmap_tangent(), RE_vlakren_get_radface(), RE_vlakren_get_surfnor(), RE_vlakren_get_tface(), and ObjectRen::totvlak.
Referenced by check_non_flat_quads(), and split_quads().
MCol* RE_vlakren_get_mcol | ( | ObjectRen * | obr, |
VlakRen * | vlr, | ||
int | n, | ||
char ** | name, | ||
int | verify | ||
) | [read] |
Definition at line 324 of file renderdatabase.c.
References VlakRen::index, ObjectRen::mcol, VlakTableNode::mcol, MEM_callocN(), MEM_freeN(), NULL, RE_MCOL_ELEMS, size(), VlakTableNode::totmcol, and ObjectRen::vlaknodes.
Referenced by init_render_dm(), init_render_mesh(), RE_vlakren_copy(), shade_input_set_shade_texco(), static_particle_strand(), and use_mesh_edge_lookup().
Definition at line 373 of file renderdatabase.c.
References VlakRen::index, MEM_callocN(), NULL, RE_NMAP_TANGENT_ELEMS, VlakTableNode::tangent, and ObjectRen::vlaknodes.
Referenced by calc_vertexnormals(), init_render_mesh(), RE_vlakren_copy(), SetTSpace(), and shade_input_set_shade_texco().
void RE_vlakren_get_normal | ( | Render * | UNUSEDre, |
ObjectInstanceRen * | obi, | ||
VlakRen * | vlr, | ||
float * | nor | ||
) |
Definition at line 447 of file renderdatabase.c.
References copy_v3_v3(), ObjectInstanceRen::flag, mul_v3_m3v3(), VlakRen::n, ObjectInstanceRen::nmat, normalize_v3(), and R_TRANSFORMED.
Definition at line 388 of file renderdatabase.c.
References VlakRen::index, MEM_callocN(), NULL, VlakTableNode::radface, RE_RADFACE_ELEMS, and ObjectRen::vlaknodes.
Referenced by RE_vlakren_copy().
Definition at line 358 of file renderdatabase.c.
References VlakRen::index, MEM_callocN(), NULL, RE_SURFNOR_ELEMS, VlakTableNode::surfnor, and ObjectRen::vlaknodes.
Referenced by RE_vlakren_copy(), shade_input_set_shade_texco(), and static_particle_strand().
MTFace* RE_vlakren_get_tface | ( | ObjectRen * | obr, |
VlakRen * | vlr, | ||
int | n, | ||
char ** | name, | ||
int | verify | ||
) | [read] |
Definition at line 290 of file renderdatabase.c.
References VlakRen::index, MEM_callocN(), MEM_freeN(), ObjectRen::mtface, VlakTableNode::mtface, NULL, size(), VlakTableNode::totmtface, and ObjectRen::vlaknodes.
Referenced by calc_tangent_vector(), calc_vertexnormals(), compatible_bump_uv_derivs(), displace_render_vert(), get_next_bake_face(), GetTextureCoordinate(), init_render_dm(), init_render_mesh(), particle_billboard(), RE_vlakren_copy(), shade_input_set_shade_texco(), shade_tface(), static_particle_strand(), and use_mesh_edge_lookup().