/* RENDER_OBJECTS.C symbols in this file: 0017A740 00a0: _object_get_render_bounding_sphere (0000) 0017A7E0 0040: _render_objects_initialize (0000) 0017A820 0010: _render_objects_initialize_for_new_map (0000) 0017A830 0020: _render_objects_dispose_from_old_map (0000) 0017A850 0010: _render_objects_dispose (0000) 0017A860 0070: _code_0017a860 (0000) 0017A8D0 00b0: _code_0017a8d0 (0000) 0017A980 0060: _code_0017a980 (0000) 0017A9E0 0480: _code_0017a9e0 (0000) 0017AE60 00a0: _code_0017ae60 (0000) 0017AF00 00d0: _code_0017af00 (0000) 0017AFD0 00b0: _code_0017afd0 (0000) 0017B080 0100: _code_0017b080 (0000) 0017B180 0060: _code_0017b180 (0000) 0017B1E0 02d0: _code_0017b1e0 (0000) 0017B4B0 0320: _code_0017b4b0 (0000) 0017B7D0 0130: _code_0017b7d0 (0000) 0017B900 0050: _object_get_cached_render_lighting (0000) 0017B950 0270: _code_0017b950 (0000) 0017BBC0 0030: _code_0017bbc0 (0000) 0017BBF0 00c0: _render_objects (0000) 0017BCB0 0070: _render_object_shadows (0000) 0029FEB0 0016: ??_C@_0BG@FKOKPMPP@render_object_shadows?$AA@ (0000) 0029FEC8 000f: ??_C@_0P@LMDLJPAO@render_objects?$AA@ (0000) 0029FED8 001c: ??_C@_0BM@HFAFBIOC@cached_object_render_states?$AA@ (0000) 0029FEF4 0027: ??_C@_0CH@NBGGJMPB@c?3?2halo?2SOURCE?2render?2render_obj@ (0000) 0029FF1C 001c: ??_C@_0BM@GFBNGBOK@cached?5object?5render?5states?$AA@ (0000) 0029FF38 0023: ??_C@_0CD@FKDHABCL@MAXIMUM_RENDERED_OBJECTS?5exceede@ (0000) 0029FF5C 000c: ??_C@_0M@EIIDIBKF@inactive?5?$CFs?$AA@ (0000) 0029FF68 0022: ??_C@_0CC@IDEANNOJ@?$CD?$CD?$CD?5ERROR?5invalid?5modifier?5shade@ (0000) 0029FF8C 000f: ??_C@_0P@POPICHFJ@data?9?$DOlighting?$AA@ (0000) 0029FF9C 0014: ??_C@_0BE@MCONOJLA@parent_model_effect?$AA@ (0000) 0029FFB0 0091: ??_C@_0JB@OHAJFPFN@state?9?$DOlighting?4point_light_indi@ (0000) 002A0044 002f: ??_C@_0CP@MCHIMIAE@state?9?$DOdesired_lighting?4distant_@ (0000) 002A0074 0004: __real@4111745c (0000) 002A0078 0004: __real@3e428f5c (0000) 0030D588 0bf8: _render_shadows (0000) 004C0078 047e: _bss_004c0078 (0000) _debug_inactive_objects (047c) */ /* ---------- headers */ #include "cseries.h" #include "memory/data.h" #include "render/render.h" #include "saved games/game_state.h" /* ---------- constants */ enum { MAXIMUM_CACHED_OBJECT_RENDER_STATES = 256, }; /* ---------- macros */ /* ---------- structures */ struct cached_object_render_state { struct datum_header header; byte opaque[0xFE]; }; typedef char cached_object_render_state_size_assert[ sizeof(struct cached_object_render_state) == 0x100 ? 1 : -1]; /* ---------- prototypes */ /* ---------- globals */ struct data_array *cached_object_render_states; /* ---------- public code */ void render_objects_initialize( void) { cached_object_render_states = game_state_data_new( "cached object render states", MAXIMUM_CACHED_OBJECT_RENDER_STATES, sizeof(struct cached_object_render_state)); match_assert("c:\\halo\\SOURCE\\render\\render_objects.c", 125, cached_object_render_states); return; } void render_objects_initialize_for_new_map( void) { data_make_valid(cached_object_render_states); return; } void render_objects_dispose_from_old_map( void) { if (cached_object_render_states && cached_object_render_states->valid) { data_make_invalid(cached_object_render_states); } return; } void render_objects_dispose( void) { cached_object_render_states = NULL; return; } /* ---------- private code */