Mesh Batch Cache: Fix regression with mesh that have poly mat id > mat_len
[blender.git] / source / blender / editors / datafiles / CMakeLists.txt
1 # ***** BEGIN GPL LICENSE BLOCK *****
2 #
3 # This program is free software; you can redistribute it and/or
4 # modify it under the terms of the GNU General Public LicenseS
5 # as published by the Free Software Foundation; either version 2
6 # of the License, or (at your option) any later version.
7 #
8 # This program is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11 # GNU General Public License for more details.
12 #
13 # You should have received a copy of the GNU General Public License
14 # along with this program; if not, write to the Free Software Foundation,
15 # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
16 # ***** END GPL LICENSE BLOCK *****
17
18 set(INC
19
20 )
21
22 set(INC_SYS
23
24 )
25
26 # blender and player
27 set(SRC
28
29 )
30
31 set(LIB
32 )
33
34 # Order matches "UI_icons.h", final name will be formatted: "icons{size}_{name}.dat"
35 set(ICON_NAMES
36   question
37   error
38   cancel
39   tria_right
40   tria_down
41   tria_left
42   tria_up
43   arrow_leftright
44   plus
45   disclosure_tri_right
46   disclosure_tri_down
47   radiobut_off
48   radiobut_on
49   menu_panel
50   blender
51   grip
52   dot
53   collapsemenu
54   x
55   duplicate
56   node
57   node_sel
58   window
59   workspace
60   rightarrow_thin
61   bordermove
62   viewzoom
63   add
64   remove
65   panel_close
66   copy_id
67   eyedropper
68   auto
69   checkbox_dehlt
70   checkbox_hlt
71   unlocked
72   locked
73   unpinned
74   pinned
75   screen_back
76   rightarrow
77   downarrow_hlt
78   plugin
79   help
80   ghost_enabled
81   color
82   unlinked
83   linked
84   hand
85   zoom_all
86   zoom_selected
87   zoom_previous
88   zoom_in
89   zoom_out
90   driver_distance
91   driver_rotational_difference
92   driver_transform
93   freeze
94   stylus_pressure
95   ghost_disabled
96   file_new
97   file_tick
98   quit
99   url
100   recover_last
101   three_dots
102   fullscreen_enter
103   fullscreen_exit
104   light
105   material
106   texture
107   anim
108   world
109   scene
110   output
111   script
112   particles
113   physics
114   speaker
115   tool_settings
116   shaderfx
117   fake_user_off
118   fake_user_on
119   view3d
120   graph
121   outliner
122   properties
123   filebrowser
124   image
125   info
126   sequence
127   text
128   sound
129   action
130   nla
131   preferences
132   time
133   nodetree
134   console
135   clip
136   asset_manager
137   node_compositing
138   node_texture
139   node_material
140   object_datamode
141   editmode_hlt
142   uv
143   vpaint_hlt
144   tpaint_hlt
145   wpaint_hlt
146   sculptmode_hlt
147   pose_hlt
148   particlemode
149   tracking
150   tracking_backwards
151   tracking_forwards
152   tracking_backwards_single
153   tracking_forwards_single
154   tracking_clear_backwards
155   tracking_clear_forwards
156   tracking_refine_backwards
157   tracking_refine_forwards
158   scene_data
159   renderlayers
160   world_data
161   object_data
162   mesh_data
163   curve_data
164   meta_data
165   lattice_data
166   light_data
167   material_data
168   texture_data
169   anim_data
170   camera_data
171   particle_data
172   library_data_direct
173   group
174   armature_data
175   community
176   bone_data
177   constraint
178   shapekey_data
179   constraint_bone
180   camera_stereo
181   package
182   uglypackage
183   experimental
184   brush_data
185   image_data
186   file
187   fcurve
188   font_data
189   render_result
190   surface_data
191   empty_data
192   preset
193   render_animation
194   render_still
195   library_data_broken
196   boids
197   strands
198   library_data_indirect
199   greasepencil
200   line_data
201   library_data_override
202   group_bone
203   group_vertex
204   group_vcol
205   group_uvs
206   face_maps
207   rna
208   rna_add
209   mouse_lmb
210   mouse_mmb
211   mouse_rmb
212   mouse_move
213   mouse_lmb_drag
214   mouse_mmb_drag
215   mouse_rmb_drag
216   preset_new
217   decorate
218   decorate_keyframe
219   decorate_animate
220   decorate_driver
221   decorate_linked
222   decorate_library_override
223   decorate_unlocked
224   decorate_locked
225   decorate_override
226   sealed
227   heart
228   orphan_data
229   user
230   system
231   settings
232   outliner_ob_empty
233   outliner_ob_mesh
234   outliner_ob_curve
235   outliner_ob_lattice
236   outliner_ob_meta
237   outliner_ob_light
238   outliner_ob_camera
239   outliner_ob_armature
240   outliner_ob_font
241   outliner_ob_surface
242   outliner_ob_speaker
243   outliner_ob_force_field
244   outliner_ob_group_instance
245   outliner_ob_greasepencil
246   outliner_ob_lightprobe
247   outliner_ob_image
248   restrict_color_off
249   restrict_color_on
250   hide_on
251   hide_off
252   restrict_select_on
253   restrict_select_off
254   restrict_render_on
255   restrict_render_off
256   outliner_data_empty
257   outliner_data_mesh
258   outliner_data_curve
259   outliner_data_lattice
260   outliner_data_meta
261   outliner_data_light
262   outliner_data_camera
263   outliner_data_armature
264   outliner_data_font
265   outliner_data_surface
266   outliner_data_speaker
267   outliner_data_greasepencil
268   gp_select_points
269   gp_select_strokes
270   gp_multiframe_editing
271   gp_only_selected
272   modifier_off
273   modifier_on
274   onionskin_off
275   onionskin_on
276   restrict_view_on
277   restrict_view_off
278   mesh_plane
279   mesh_cube
280   mesh_circle
281   mesh_uvsphere
282   mesh_icosphere
283   mesh_grid
284   mesh_monkey
285   mesh_cylinder
286   mesh_torus
287   mesh_cone
288   mesh_capsule
289   empty_single_arrow
290   light_point
291   light_sun
292   light_spot
293   light_hemi
294   light_area
295   cube
296   sphere
297   cone
298   meta_plane
299   meta_cube
300   meta_ball
301   meta_ellipsoid
302   meta_capsule
303   surface_ncurve
304   surface_ncircle
305   surface_nsurface
306   surface_ncylinder
307   surface_nsphere
308   surface_ntorus
309   empty_axis
310   stroke
311   empty_arrows
312   curve_bezcurve
313   curve_bezcircle
314   curve_ncurve
315   curve_ncircle
316   curve_path
317   lightprobe_cubemap
318   lightprobe_planar
319   lightprobe_grid
320   color_red
321   color_green
322   color_blue
323   tria_right_bar
324   tria_down_bar
325   tria_left_bar
326   tria_up_bar
327   force_force
328   force_wind
329   force_vortex
330   force_magnetic
331   force_harmonic
332   force_charge
333   force_lennardjones
334   force_texture
335   force_curve
336   force_boid
337   force_turbulence
338   force_drag
339   force_smokeflow
340   image_plane
341   image_background
342   image_reference
343   node_insert_on
344   node_insert_off
345   node_top
346   node_side
347   node_corner
348   align_left
349   align_center
350   align_right
351   align_justify
352   align_flush
353   align_top
354   align_middle
355   align_bottom
356   bold
357   italic
358   underline
359   small_caps
360   modifier
361   mod_wave
362   mod_build
363   mod_decim
364   mod_mirror
365   mod_soft
366   mod_subsurf
367   hook
368   mod_physics
369   mod_particles
370   mod_boolean
371   mod_edgesplit
372   mod_array
373   mod_uvproject
374   mod_displace
375   mod_curve
376   mod_lattice
377   mod_tint
378   mod_armature
379   mod_shrinkwrap
380   mod_cast
381   mod_meshdeform
382   mod_bevel
383   mod_smooth
384   mod_simpledeform
385   mod_mask
386   mod_cloth
387   mod_explode
388   mod_fluidsim
389   mod_multires
390   mod_smoke
391   mod_solidify
392   mod_screw
393   mod_vertex_weight
394   mod_dynamicpaint
395   mod_remesh
396   mod_ocean
397   mod_warp
398   mod_skin
399   mod_triangulate
400   mod_wireframe
401   mod_data_transfer
402   mod_normaledit
403   mod_particle_instance
404   mod_hue_saturation
405   mod_noise
406   mod_offset
407   mod_simplify
408   mod_thickness
409   mod_instance
410   mod_time
411   mod_opacity
412   rec
413   play
414   ff
415   rew
416   pause
417   prev_keyframe
418   next_keyframe
419   play_reverse
420   preview_range
421   action_tweak
422   pmarker_act
423   pmarker_sel
424   pmarker
425   marker_hlt
426   marker
427   keyframe_hlt
428   keyframe
429   keyingset
430   key_dehlt
431   key_hlt
432   mute_ipo_off
433   mute_ipo_on
434   driver
435   solo_off
436   solo_on
437   frame_prev
438   frame_next
439   nla_pushdown
440   ipo_constant
441   ipo_linear
442   ipo_bezier
443   ipo_sine
444   ipo_quad
445   ipo_cubic
446   ipo_quart
447   ipo_quint
448   ipo_expo
449   ipo_circ
450   ipo_bounce
451   ipo_elastic
452   ipo_back
453   ipo_ease_in
454   ipo_ease_out
455   ipo_ease_in_out
456   normalize_fcurves
457   vertexsel
458   edgesel
459   facesel
460   pivot_boundbox
461   pivot_cursor
462   pivot_individual
463   pivot_median
464   pivot_active
465   center_only
466   smoothcurve
467   spherecurve
468   rootcurve
469   sharpcurve
470   lincurve
471   nocurve
472   rndcurve
473   prop_off
474   prop_on
475   prop_con
476   sculpt_dyntopo
477   particle_point
478   particle_tip
479   particle_path
480   snap_off
481   snap_on
482   snap_normal
483   snap_grid
484   snap_vertex
485   snap_edge
486   snap_face
487   snap_volume
488   snap_increment
489   sticky_uvs_loc
490   sticky_uvs_disable
491   sticky_uvs_vert
492   clipuv_dehlt
493   clipuv_hlt
494   snap_peel_object
495   grid
496   object_origin
497   orientation_global
498   orientation_gimbal
499   orientation_local
500   orientation_normal
501   orientation_view
502   copydown
503   pastedown
504   pasteflipup
505   pasteflipdown
506   vis_sel_11
507   vis_sel_10
508   vis_sel_01
509   vis_sel_00
510   automerge_on
511   automerge_off
512   uv_vertexsel
513   uv_edgesel
514   uv_facesel
515   uv_islandsel
516   uv_sync_select
517   normals_vertex
518   normals_face
519   normals_vertex_face
520   shading_bbox
521   shading_wire
522   shading_solid
523   shading_rendered
524   shading_texture
525   overlay
526   xray
527   lockview_off
528   lockview_on
529   axis_side
530   axis_front
531   axis_top
532   ndof_dom
533   ndof_turn
534   ndof_fly
535   ndof_trans
536   layer_used
537   layer_active
538   sortalpha
539   sortbyext
540   sorttime
541   sortsize
542   shortdisplay
543   longdisplay
544   imgdisplay
545   bookmarks
546   fontpreview
547   filter
548   newfolder
549   file_parent
550   file_refresh
551   file_folder
552   file_blank
553   file_blend
554   file_image
555   file_movie
556   file_script
557   file_sound
558   file_font
559   file_text
560   sort_desc
561   sort_asc
562   link_blend
563   append_blend
564   import
565   export
566   loop_back
567   loop_forwards
568   back
569   forward
570   file_cache
571   file_volume
572   file_3d
573   file_hidden
574   file_backup
575   disk_drive
576   matplane
577   matsphere
578   matcube
579   monkey
580   hair
581   aliased
582   antialiased
583   mat_sphere_sky
584   matshaderball
585   matcloth
586   matfluid
587   wordwrap_off
588   wordwrap_on
589   syntax_off
590   syntax_on
591   linenumbers_off
592   linenumbers_on
593   scriptplugins
594   seq_sequencer
595   seq_preview
596   seq_luma_waveform
597   seq_chroma_scope
598   seq_histogram
599   seq_splitview
600   image_rgb
601   image_rgb_alpha
602   image_alpha
603   image_zdepth
604   view_perspective
605   view_ortho
606   view_camera
607   view_pan
608   view_zoom
609 )
610
611 # This section is maintained by the updating script, keep BEGIN/END comments.
612 set_property(GLOBAL PROPERTY ICON_GEOM_NAMES
613   # BEGIN ICON_GEOM_NAMES
614   brush.gpencil_draw.draw
615   brush.gpencil_draw.erase
616   brush.gpencil_draw.fill
617   brush.paint_texture.airbrush
618   brush.paint_texture.clone
619   brush.paint_texture.draw
620   brush.paint_texture.fill
621   brush.paint_texture.mask
622   brush.paint_texture.masklort
623   brush.paint_texture.multiply
624   brush.paint_texture.smear
625   brush.paint_texture.soften
626   brush.paint_vertex.alpha
627   brush.paint_vertex.average
628   brush.paint_vertex.blur
629   brush.paint_vertex.draw
630   brush.paint_vertex.smear
631   brush.paint_weight.average
632   brush.paint_weight.blur
633   brush.paint_weight.draw
634   brush.paint_weight.mix
635   brush.paint_weight.smear
636   brush.particle.add
637   brush.particle.comb
638   brush.particle.cut
639   brush.particle.length
640   brush.particle.puff
641   brush.particle.smooth
642   brush.particle.weight
643   brush.sculpt.blob
644   brush.sculpt.clay
645   brush.sculpt.clay_strips
646   brush.sculpt.crease
647   brush.sculpt.draw
648   brush.sculpt.fill
649   brush.sculpt.flatten
650   brush.sculpt.grab
651   brush.sculpt.inflate
652   brush.sculpt.layer
653   brush.sculpt.mask
654   brush.sculpt.nudge
655   brush.sculpt.pinch
656   brush.sculpt.rotate
657   brush.sculpt.scrape
658   brush.sculpt.simplify
659   brush.sculpt.smooth
660   brush.sculpt.snake_hook
661   brush.sculpt.thumb
662   brush.uv_sculpt.grab
663   brush.uv_sculpt.pinch
664   brush.uv_sculpt.relax
665   none
666   ops.armature.bone.roll
667   ops.armature.extrude_cursor
668   ops.armature.extrude_move
669   ops.curve.draw
670   ops.curve.extrude_cursor
671   ops.curve.extrude_move
672   ops.curve.radius
673   ops.curve.vertex_random
674   ops.generic.cursor
675   ops.generic.select
676   ops.generic.select_box
677   ops.generic.select_circle
678   ops.generic.select_lasso
679   ops.gpencil.draw
680   ops.gpencil.draw.eraser
681   ops.gpencil.draw.line
682   ops.gpencil.draw.poly
683   ops.gpencil.edit_bend
684   ops.gpencil.edit_mirror
685   ops.gpencil.edit_shear
686   ops.gpencil.edit_to_sphere
687   ops.gpencil.extrude_move
688   ops.gpencil.primitive_arc
689   ops.gpencil.primitive_box
690   ops.gpencil.primitive_circle
691   ops.gpencil.primitive_curve
692   ops.gpencil.primitive_line
693   ops.gpencil.radius
694   ops.gpencil.sculpt_clone
695   ops.gpencil.sculpt_grab
696   ops.gpencil.sculpt_pinch
697   ops.gpencil.sculpt_push
698   ops.gpencil.sculpt_randomize
699   ops.gpencil.sculpt_smooth
700   ops.gpencil.sculpt_strength
701   ops.gpencil.sculpt_thickness
702   ops.gpencil.sculpt_twist
703   ops.gpencil.sculpt_weight
704   ops.gpencil.stroke_cutter
705   ops.mesh.bevel
706   ops.mesh.bisect
707   ops.mesh.dupli_extrude_cursor
708   ops.mesh.extrude_faces_move
709   ops.mesh.extrude_region_move
710   ops.mesh.extrude_region_shrink_fatten
711   ops.mesh.inset
712   ops.mesh.knife_tool
713   ops.mesh.loopcut_slide
714   ops.mesh.offset_edge_loops_slide
715   ops.mesh.polybuild_hover
716   ops.mesh.primitive_cone_add_gizmo
717   ops.mesh.primitive_cube_add_gizmo
718   ops.mesh.primitive_cylinder_add_gizmo
719   ops.mesh.primitive_grid_add_gizmo
720   ops.mesh.primitive_sphere_add_gizmo
721   ops.mesh.primitive_torus_add_gizmo
722   ops.mesh.rip
723   ops.mesh.rip_edge
724   ops.mesh.spin
725   ops.mesh.spin.duplicate
726   ops.mesh.vertices_smooth
727   ops.node.links_cut
728   ops.paint.vertex_color_fill
729   ops.paint.weight_fill
730   ops.paint.weight_gradient
731   ops.paint.weight_sample
732   ops.paint.weight_sample_group
733   ops.pose.breakdowner
734   ops.pose.push
735   ops.pose.relax
736   ops.sculpt.border_hide
737   ops.sculpt.border_mask
738   ops.sculpt.lasso_mask
739   ops.transform.bone_envelope
740   ops.transform.bone_size
741   ops.transform.edge_slide
742   ops.transform.push_pull
743   ops.transform.resize.cage
744   ops.transform.resize
745   ops.transform.rotate
746   ops.transform.shear
747   ops.transform.shrink_fatten
748   ops.transform.tilt
749   ops.transform.tosphere
750   ops.transform.transform
751   ops.transform.translate
752   ops.transform.vert_slide
753   ops.transform.vertex_random
754   ops.view3d.ruler
755   # END ICON_GEOM_NAMES
756 )
757
758 data_to_c_simple(../../../../release/datafiles/bfont.pfb SRC)
759 data_to_c_simple(../../../../release/datafiles/bfont.ttf SRC)
760 data_to_c_simple(../../../../release/datafiles/bmonofont.ttf SRC)
761
762 if(WITH_BLENDER)
763   # blender only (not player)
764
765   if(NOT WITH_HEADLESS)
766     # blender UI only
767
768     # blends
769     data_to_c_simple(../../../../release/datafiles/preview.blend SRC)
770     data_to_c_simple(../../../../release/datafiles/preview_grease_pencil.blend SRC)
771
772     # images
773     data_to_c_simple(../../../../release/datafiles/splash.png SRC)
774     data_to_c_simple(../../../../release/datafiles/splash_2x.png SRC)
775     # XXX These are handy, but give nasty "false changes" in svn :/
776     #svg_to_png(../../../../release/datafiles/blender_icons.svg
777                #../../../../release/datafiles/blender_icons16.png
778                #90 SRC)
779
780     data_to_c_simple_icons(../../../../release/datafiles/blender_icons16 "icon16_" "${ICON_NAMES}" SRC)
781     #data_to_c_simple(../../../../release/datafiles/blender_icons16.png SRC)
782     #svg_to_png(../../../../release/datafiles/blender_icons.svg
783                #../../../../release/datafiles/blender_icons32.png
784                #180 SRC)
785     data_to_c_simple_icons(../../../../release/datafiles/blender_icons32 "icon32_" "${ICON_NAMES}" SRC)
786     #data_to_c_simple(../../../../release/datafiles/blender_icons32.png SRC)
787     #svg_to_png(../../../../release/datafiles/prvicons.svg
788                #../../../../release/datafiles/prvicons.png
789                #90 SRC)
790     data_to_c_simple(../../../../release/datafiles/prvicons.png SRC)
791
792     # brushes
793     data_to_c_simple(../../../../release/datafiles/brushicons/blob.png SRC)
794     data_to_c_simple(../../../../release/datafiles/brushicons/blur.png SRC)
795     data_to_c_simple(../../../../release/datafiles/brushicons/clay.png SRC)
796     data_to_c_simple(../../../../release/datafiles/brushicons/claystrips.png SRC)
797     data_to_c_simple(../../../../release/datafiles/brushicons/clone.png SRC)
798     data_to_c_simple(../../../../release/datafiles/brushicons/crease.png SRC)
799     data_to_c_simple(../../../../release/datafiles/brushicons/draw.png SRC)
800     data_to_c_simple(../../../../release/datafiles/brushicons/fill.png SRC)
801     data_to_c_simple(../../../../release/datafiles/brushicons/flatten.png SRC)
802     data_to_c_simple(../../../../release/datafiles/brushicons/grab.png SRC)
803     data_to_c_simple(../../../../release/datafiles/brushicons/inflate.png SRC)
804     data_to_c_simple(../../../../release/datafiles/brushicons/layer.png SRC)
805     data_to_c_simple(../../../../release/datafiles/brushicons/mask.png SRC)
806     data_to_c_simple(../../../../release/datafiles/brushicons/mix.png SRC)
807     data_to_c_simple(../../../../release/datafiles/brushicons/nudge.png SRC)
808     data_to_c_simple(../../../../release/datafiles/brushicons/pinch.png SRC)
809     data_to_c_simple(../../../../release/datafiles/brushicons/scrape.png SRC)
810     data_to_c_simple(../../../../release/datafiles/brushicons/smear.png SRC)
811     data_to_c_simple(../../../../release/datafiles/brushicons/smooth.png SRC)
812     data_to_c_simple(../../../../release/datafiles/brushicons/snake_hook.png SRC)
813     data_to_c_simple(../../../../release/datafiles/brushicons/soften.png SRC)
814     data_to_c_simple(../../../../release/datafiles/brushicons/texdraw.png SRC)
815     data_to_c_simple(../../../../release/datafiles/brushicons/texfill.png SRC)
816     data_to_c_simple(../../../../release/datafiles/brushicons/texmask.png SRC)
817     data_to_c_simple(../../../../release/datafiles/brushicons/thumb.png SRC)
818     data_to_c_simple(../../../../release/datafiles/brushicons/twist.png SRC)
819
820     # grease pencil sculpt
821     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_smooth.png SRC)
822     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_thickness.png SRC)
823     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_strength.png SRC)
824     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_grab.png SRC)
825     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_push.png SRC)
826     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_twist.png SRC)
827     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_pinch.png SRC)
828     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_randomize.png SRC)
829     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_clone.png SRC)
830     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_weight.png SRC)
831
832     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_pencil.png SRC)
833     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_pen.png SRC)
834     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_ink.png SRC)
835     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_inknoise.png SRC)
836     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_block.png SRC)
837     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_marker.png SRC)
838     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_fill.png SRC)
839     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_erase_soft.png SRC)
840     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_erase_hard.png SRC)
841     data_to_c_simple(../../../../release/datafiles/brushicons/gp_brush_erase_stroke.png SRC)
842
843   endif()
844
845   data_to_c_simple(../../../../release/datafiles/startup.blend SRC)
846 endif()
847
848 unset(ICON_NAMES)
849
850 blender_add_lib(bf_editor_datafiles "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")