summaryrefslogtreecommitdiff
path: root/src/lib/evas/canvas/evas_canvas3d_types.eot
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/evas/canvas/evas_canvas3d_types.eot')
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_types.eot292
1 files changed, 292 insertions, 0 deletions
diff --git a/src/lib/evas/canvas/evas_canvas3d_types.eot b/src/lib/evas/canvas/evas_canvas3d_types.eot
new file mode 100644
index 0000000..84153ae
--- /dev/null
+++ b/src/lib/evas/canvas/evas_canvas3d_types.eot
@@ -0,0 +1,292 @@
1// ----------------------------------------------------------------------------
2// All the below types are for Evas 3D
3
4type Evas.Real: double; [[A type for floating value]]
5
6enum Evas.Canvas3D.Object_Type
7{
8 [[Type of 3D Object
9
10 @since 1.10]]
11 invalid = 0, [[Evas 3D type: invalid]]
12 scene, [[Evas 3D type: scene]]
13 node, [[Evas 3D type: node]]
14 camera, [[Evas 3D type: camera]]
15 light, [[Evas 3D type: light]]
16 model, [[Evas 3D type: model]]
17 mesh, [[Evas 3D type: mesh]]
18 texture, [[Evas 3D type: texture]]
19 material, [[Evas 3D type: material]]
20 primitive [[Evas 3D type: primitive
21 @since 1.15]]
22}
23
24enum Evas.Canvas3D.State
25{
26 [[State of the Evas 3D
27
28 @since 1.10]]
29 max = 16, [[Evas 3D state: max]]
30
31 any = 0, [[Evas 3D state: any]]
32
33 scene_root_node = 1, [[Evas 3D state: scene root node]]
34 scene_camera_node, [[Evas 3D state: scene camera node]]
35 scene_background_color, [[Evas 3D state: scene background color]]
36 scene_size, [[Evas 3D state: scene size]]
37 scene_shadows_enabled, [[Evas 3D state: scene shadows enabled]]
38 scene_updated, [[Evas 3D state: scene updated
39 @since 1.14]]
40 scene_shadows_depth, [[Evas 3D state: scene shadows depth]]
41 scene_render_to_texture, [[Evas 3D state: scene render to texture]]
42
43 texture_data = 1, [[Evas 3D state: texture data]]
44 texture_wrap, [[Evas 3D state: texture wrap]]
45 texture_filter, [[Evas 3D state: texture filter]]
46
47 material_id = 1, [[Evas 3D state: material ID]]
48 material_color, [[Evas 3D state: material color]]
49 material_texture, [[Evas 3D state: material texture]]
50
51 mesh_vertex_count = 1, [[Evas 3D state: mesh vertex count]]
52 mesh_frame, [[Evas 3D state: mesh frame]]
53 mesh_material, [[Evas 3D state: mesh material]]
54 mesh_transform, [[Evas 3D state: mesh transform]]
55 mesh_vertex_data, [[Evas 3D state: mesh vertex data]]
56 mesh_index_data, [[Evas 3D state: mesh index data]]
57 mesh_vertex_assembly, [[Evas 3D state: mesh vertex assembly]]
58 mesh_shader_mode, [[Evas 3D state: mesh shader mode]]
59 mesh_fog, [[Evas 3D state: mesh fog]]
60 mesh_blending, [[Evas 3D state: mesh blending]]
61 mesh_alpha_test, [[Evas 3D state: mesh alpha test]]
62 mesh_color_pick, [[Evas 3D state: mesh color pick]]
63 mesh_shadows_edges_filtering, [[Evas 3D state: mesh shadows edges filtering]]
64 mesh_shadows_constant_bias, [[Evas 3D state: mesh shadows constant bias]]
65
66 camera_projection = 1, [[Evas 3D state: camera projection]]
67
68 light_ambient = 1, [[Evas 3D state: light ambient]]
69 light_diffuse, [[Evas 3D state: light diffuse]]
70 light_specular, [[Evas 3D state: light specular]]
71 light_spot_dir, [[Evas 3D state: light spot dir]]
72 light_spot_exp, [[Evas 3D state: light spot exp]]
73 light_spot_cutoff, [[Evas 3D state: light spot cutoff]]
74 light_attenuation, [[Evas 3D state: light attenuation]]
75 light_projection, [[Evas 3D state: light projection]]
76
77 node_transform_position = 1, [[Evas 3D state: node transform position]]
78 node_transform_orientation, [[Evas 3D state: node transform orientation]]
79 node_transform_scale, [[Evas 3D state: node transform scale]]
80 node_mesh_geometry, [[Evas 3D state: node mesh geometry]]
81 node_mesh_material, [[Evas 3D state: node mesh material]]
82 node_mesh_frame, [[Evas 3D state: node mesh frame]]
83 node_mesh_shader_mode, [[Evas 3D state: node mesh shader mode]]
84 node_mesh_material_id, [[Evas 3D state: node mesh material ID]]
85 node_light, [[Evas 3D state: node light]]
86 node_camera, [[Evas 3D state: node camera]]
87 node_parent_position, [[Evas 3D state: node parent position]]
88 node_parent_orientation, [[Evas 3D state: node parent orientation]]
89 node_parent_scale, [[Evas 3D state: node parent scale]]
90 node_member, [[Evas 3D state: node member]]
91 node_parent_billboard, [[Evas 3D state: node parent billboard
92 @since 1.14]]
93 node_lod [[Evas 3D state: node lod
94 @since 1.18]]
95}
96
97enum Evas.Canvas3D.Space
98{
99 [[Transform space
100
101 @since 1.10]]
102 local = 0, [[Local coordinate space]]
103 parent, [[Parent coordinate space]]
104 world [[World coordinate space]]
105}
106
107enum Evas.Canvas3D.Node_Type
108{
109 [[Types of a node
110
111 @since 1.10]]
112 node = 0, [[Node with no items]]
113 camera, [[Node which can contain camera object]]
114 light, [[Node which can contain light object]]
115 mesh [[Node which can contain mesh objects]]
116}
117
118enum Evas.Canvas3D.Node_Orientation_Type
119{
120 [[Types of node orientation
121
122 @since 1.13]]
123 none = 0, [[Node with no orientation properties]]
124 look_at, [[Node orientation is given as a point to look at and a vector that indicates the angle at which the subject is looking at the point]]
125 look_to, [[Node orientation is given as id of another part to look at and a vector that indicates the angle at which the subject is looking at the part]]
126 angle_axis, [[Node orientation is given as an angle and an axis to rotate around]]
127 quaternion [[Node orientation is given as a quaternion]]
128}
129
130enum Evas.Canvas3D.Index_Format
131{
132 [[Index formats
133
134 @since 1.10]]
135 none = 0, [[Indexing is not used]]
136 unsigned_byte, [[Index is of type unsigned byte]]
137 unsigned_short [[Index is of type unsigned short]]
138}
139
140enum Evas.Canvas3D.Frustum_Mode
141{
142 [[Frustum modes
143
144 @since 1.12]]
145 bsphere, [[Bounding sphere]]
146 aabb, [[Axis-aligned bounding box]]
147 central_point [[Central point]]
148}
149
150enum Evas.Canvas3D.Vertex_Assembly
151{
152 [[Vertex assembly modes. Vertex assembly represents how the vertices are organized into geometric primitives.
153
154 @since 1.10]]
155 points = 0, [[A vertex is rendered as a point]]
156 lines, [[Two vertices are organized as a line]]
157 line_strip, [[Vertices are organized as a connected line path]]
158 line_loop, [[Vertices are organized as a closed line path]]
159 triangles, [[Three vertices are organized as a triangle]]
160 triangle_strip, [[Vertices are organized as connected triangles]]
161 triangle_fan [[Vertices are organized as a triangle fan]]
162}
163
164enum Evas.Canvas3D.Comparison
165{
166 [[Comparsion functions for testing(alpha, depth, stencil) in fragment shader
167
168 @since 1.14]]
169 never, [[Never passes]]
170 less, [[Passes if the incoming value is less than the reference value]]
171 equal, [[Passes if the incoming value is equal to the reference value]]
172 lequal, [[Passes if the incoming value is less than or equal to the reference value]]
173 greater, [[Passes if the incoming value is greater than the reference value]]
174 notequal, [[Passes if the incoming value is not equal to the reference value]]
175 gequal, [[Passes if the incoming value is greater than or equal to the reference value]]
176 always [[Always passes (initial value)]]
177}
178
179enum Evas.Canvas3D.Wrap_Mode
180{
181 [[Wrap modes for texture units
182
183 @since 1.14]]
184 clamp = 0, [[Values will be clamped to be in range (min, max)]]
185 repeat, [[Values will be repeated]]
186 reflect [[Values will be repeated in a reflected manner]]
187}
188
189enum Evas.Canvas3D.Texture_Filter
190{
191 [[Filters for texture units
192
193 @since 1.14]]
194 nearest = 0, [[Samples nearest texel]]
195 linear, [[Lineary interpolate nearby texels]]
196 nearest_mipmap_nearest, [[Nearest sampling mipmap]]
197 linear_mipmap_nearest, [[Nearest sampling mipmap and interpolate]]
198 nearest_mipmap_linear, [[Linear sampling in nearest mipmap]]
199 linear_mipmap_linear [[Linear sampling in mipmap and interpolate]]
200}
201
202enum Evas.Canvas3D.Mesh_Primitive
203{
204 [[Mesh primitive
205
206 @since 1.12]]
207 none = 0, [[An empty space]]
208 square, [[One sided square]]
209 cube, [[Cube primitive]]
210 cylinder, [[Cylinder (can use precision and texture scale)]]
211 cone, [[Cone (can use precision and texture scale)]]
212 sphere, [[Sphere (can use precision and texture scale)]]
213 torus, [[Torus (can use ratio, precision and texture scale)]]
214 surface, [[Custom surface (can use pointer to users function, precision and texture scale)]]
215 terrain, [[Terrain as surface with pointer to perlin's noise function]]
216 count [[Sentinel value to indicate last enum field during iteration]]
217}
218
219enum Evas.Canvas3D.Primitive_Mode
220{
221 [[Mode of mesh primitive
222
223 @since 1.15]]
224 default = 0, [[Default mode of primitive]]
225 without_base, [[Primitive without base (supported for cylinder and cone)]]
226 alternative_uv [[Ptimitive with alternative uv (supported for sphere)]]
227}
228
229enum Evas.Canvas3D.Shader_Mode
230{
231 [[Shader shade modes
232
233 @since 1.10]]
234 vertex_color = 0, [[Shaded using vertex color attribute]]
235 diffuse, [[Shaded using material diffuse term]]
236 flat, [[Per-vertex flat lighting]]
237 phong, [[Per-pixel phong shading]]
238 normal_map, [[Per-pixel normal map shading]]
239 shadow_map_render, [[Fragment color is defined by its z-coord]]
240 color_pick, [[Rendering to additional frame bufer]]
241 parallax_occlusion, [[Per-pixel parallax occlusion map shading]]
242 post_processing_FXAA [[Render full screen quard]]
243}
244
245enum Evas.Canvas3D.Vertex_Attrib
246{
247 [[Vertex attribute IDs
248
249 @since 1.10]]
250 position = 0, [[vertex position]]
251 normal, [[vertex normal]]
252 tangent, [[vertex tangent (for normal mapping)]]
253 color, [[vertex color]]
254 texcoord [[vertex texture coordinate]]
255}
256
257enum Evas.Canvas3D.Blend_Func
258{
259 [[Blending function
260
261 @since 1.14]]
262
263 zero = 0, [[The scale factors for color components is (0, 0, 0, 0)]]
264 one, [[The scale factors for color components is (1, 1, 1, 1)]]
265 src_color, [[The scale factors for color components is (rs/kr, gs/kg, bs/kb, as/ka)]]
266 one_minus_src_color, [[The scale factors for color components is (1, 1, 1, 1) - (rs/kr, gs/kg, bs/kb, as/ka)]]
267 dst_color, [[The scale factors for color components is (rd/kr, gd/kg, bd/kb, ad/ka)]]
268 one_minus_dst_color, [[The scale factors for color components is (1, 1, 1, 1) - (rd/kr, gd/kg, bd/kb, ad/ka)]]
269 src_alpha, [[The scale factors for color components is (as/ka, as/ka, as/ka, as/ka)]]
270 one_minus_src_alpha, [[The scale factors for color components is (1, 1, 1, 1) - (as/ka, as/ka, as/ka, as/ka)]]
271 dst_alpha, [[The scale factors for color components is (ad/ka, ad/ka, ad/ka, ad/ka)]]
272 one_minus_dst_alpha, [[The scale factors for color components is (1, 1, 1, 1) - (ad/ka, ad/ka, ad/ka, ad/ka)]]
273 constant_color, [[The scale factors for color components is (rc, gc, bc, ac)]]
274 one_minus_constant_color, [[The scale factors for color components is (1, 1, 1, 1) - (rc, gc, bc, ac)]]
275 constant_alpha, [[The scale factors for color components is (ac, ac, ac, ac)]]
276 one_minus_constant_alpha, [[The scale factors for color components is (1, 1, 1, 1) - (ac, ac, ac, ac)]]
277 src_alpha_saturate [[The scale factors for color components is (i, i, i, 1) where i = min(as, ka, ad)/ka]]
278}
279
280enum Evas.Canvas3D.Material_Attrib
281{
282 [[Material attributes
283
284 @since 1.10]]
285 ambient = 0, [[ambient term]]
286 diffuse, [[diffuse term]]
287 specular, [[specular term]]
288 emission, [[emission term]]
289 normal [[Normal map term]]
290}
291
292type Evas.Canvas3D.Surface_Func: __undefined_type; [[Evas 3D canvas surface function type]]