~ubuntu-branches/ubuntu/gutsy/blender/gutsy-security

« back to all changes in this revision

Viewing changes to source/blender/render/intern/include/renderdatabase.h

  • Committer: Bazaar Package Importer
  • Author(s): Lukas Fittl
  • Date: 2006-09-20 01:57:27 UTC
  • mfrom: (1.2.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20060920015727-gmoqlxwstx9wwqs3
Tags: 2.42a-1ubuntu1
* Merge from Debian unstable (Closes: Malone #55903). Remaining changes:
  - debian/genpot: Add python scripts from Lee June <blender@eyou.com> to
    generate a reasonable PO template from the sources. Since gettext is used
    in a highly nonstandard way, xgettext does not work for this job.
  - debian/rules: Call the scripts, generate po/blender.pot, and clean it up
    in the clean target.
  - Add a proper header to the generated PO template.
* debian/control: Build depend on libavformat-dev >= 3:0.cvs20060823-3.1,
  otherwise this package will FTBFS

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/**
 
2
 * $Id: renderdatabase.h,v 1.6 2006/02/27 12:39:35 ton Exp $
 
3
 *
 
4
 * ***** BEGIN GPL LICENSE BLOCK *****
 
5
 *
 
6
 * This program is free software; you can redistribute it and/or
 
7
 * modify it under the terms of the GNU General Public License
 
8
 * as published by the Free Software Foundation; either version 2
 
9
 * of the License, or (at your option) any later version. 
 
10
 *
 
11
 * This program is distributed in the hope that it will be useful,
 
12
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 
13
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
14
 * GNU General Public License for more details.
 
15
 *
 
16
 * You should have received a copy of the GNU General Public License
 
17
 * along with this program; if not, write to the Free Software Foundation,
 
18
 * Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 
19
 *
 
20
 * The Original Code is Copyright (C) 2006 Blender Foundation.
 
21
 * All rights reserved.
 
22
 *
 
23
 * The Original Code is: all of this file.
 
24
 *
 
25
 * Contributor(s): none yet.
 
26
 *
 
27
 * ***** END GPL LICENSE BLOCK *****
 
28
 */
 
29
 
 
30
#ifndef RENDERDATABASE_H
 
31
#define RENDERDATABASE_H
 
32
 
 
33
struct Object;
 
34
struct VlakRen;
 
35
struct VertRen;
 
36
struct HaloRen;
 
37
struct Material;
 
38
struct Render;
 
39
 
 
40
#define RE_QUAD_MASK    0x7FFFFFF
 
41
#define RE_QUAD_OFFS    0x8000000
 
42
 
 
43
/* render allocates totvert/256 of these nodes, for lookup and quick alloc */
 
44
typedef struct VertTableNode {
 
45
        struct VertRen *vert;
 
46
        float *rad;
 
47
        float *sticky;
 
48
        float *strand;
 
49
        float *tangent;
 
50
        float *stress;
 
51
        float *winspeed;
 
52
} VertTableNode;
 
53
 
 
54
/* renderdatabase.c */
 
55
void free_renderdata_tables(struct Render *re);
 
56
void free_renderdata_vertnodes(struct VertTableNode *vertnodes);
 
57
 
 
58
void set_normalflags(Render *re);
 
59
void project_renderdata(struct Render *re, void (*projectfunc)(float *, float mat[][4], float *),  int do_pano, float xoffs);
 
60
 
 
61
/* functions are not exported... so wrong names */
 
62
 
 
63
struct VlakRen *RE_findOrAddVlak(struct Render *re, int nr);
 
64
struct VertRen *RE_findOrAddVert(struct Render *re, int nr);
 
65
struct HaloRen *RE_findOrAddHalo(struct Render *re, int nr);
 
66
struct HaloRen *RE_inithalo(struct Render *re, struct Material *ma, float *vec, float *vec1, float *orco, float hasize, 
 
67
                                         float vectsize, int seed);
 
68
void RE_addRenderObject(struct Render *re, struct Object *ob, struct Object *par, int index, int sve, int eve, int sfa, int efa);
 
69
 
 
70
float *RE_vertren_get_sticky(struct Render *re, struct VertRen *ver, int verify);
 
71
float *RE_vertren_get_stress(struct Render *re, struct VertRen *ver, int verify);
 
72
float *RE_vertren_get_rad(struct Render *re, struct VertRen *ver, int verify);
 
73
float *RE_vertren_get_strand(struct Render *re, struct VertRen *ver, int verify);
 
74
float *RE_vertren_get_tangent(struct Render *re, struct VertRen *ver, int verify);
 
75
float *RE_vertren_get_winspeed(struct Render *re, struct VertRen *ver, int verify);
 
76
 
 
77
/* haloren->type: flags */
 
78
#define HA_ONLYSKY              1
 
79
#define HA_VECT                 2
 
80
#define HA_XALPHA               4
 
81
#define HA_FLARECIRC    8
 
82
 
 
83
/* convertblender.c */
 
84
void init_render_world(Render *re);
 
85
void RE_Database_FromScene_Vectors(Render *re, struct Scene *sce);
 
86
 
 
87
 
 
88
#endif /* RENDERDATABASE_H */
 
89