void draw_default_lamp_on_texture (void) { screen *lamp_texture_screen; lamp_texture_screen = lamp1_texture_screen; set_system_texture_screen (lamp_texture_screen, TEXTURE_INDEX_AVCKPT_DISPLAY_LHS_MFD); //////////////////////////////////////// // // set up MFD 2D environment // //////////////////////////////////////// set_2d_active_environment (lamp1_env); // // window // set_2d_window (lamp1_env, LAMP1_WINDOW_X_MIN, LAMP1_WINDOW_Y_MIN, LAMP1_WINDOW_X_MAX, LAMP1_WINDOW_Y_MAX); // // viewport // lamp1_viewport_size = LAMP1_VIEWPORT_SMALL_SIZE; lamp1_viewport_x_org = LAMP1_VIEWPORT_TEXTURE_X_ORG; lamp1_viewport_y_org = LAMP1_VIEWPORT_TEXTURE_Y_ORG; lamp1_viewport_x_min = lamp1_viewport_x_org - (lamp1_viewport_size * 0.5); lamp1_viewport_y_min = lamp1_viewport_y_org - (lamp1_viewport_size * 0.5); lamp1_viewport_x_max = lamp1_viewport_x_org + (lamp1_viewport_size * 0.5) - 0.001; lamp1_viewport_y_max = lamp1_viewport_y_org + (lamp1_viewport_size * 0.5) - 0.001; set_2d_viewport (lamp1_env, lamp1_viewport_x_min, lamp1_viewport_y_min, lamp1_viewport_x_max, lamp1_viewport_y_max); set_active_screen (lamp1_texture_screen); if (lock_screen (lamp1_texture_screen)) { draw_default_indicator_lamps_3d (); flush_screen_texture_graphics (lamp1_texture_screen); unlock_screen (lamp1_texture_screen); } set_active_screen (video_screen); }
void initialise_common_crew_skins (void) { // // create textures // us_pilot_high_detail_face = create_user_texture_screen (HIGH_DETAIL_FACE_SIZE, HIGH_DETAIL_FACE_SIZE, SCREEN_FORMAT_TYPE_NOALPHA_NOPALETTE, 0); us_pilot_low_detail_face = create_user_texture_screen (LOW_DETAIL_FACE_SIZE, LOW_DETAIL_FACE_SIZE, SCREEN_FORMAT_TYPE_NOALPHA_NOPALETTE, 0); us_pilot_neck = create_user_texture_screen (NECK_SIZE, NECK_SIZE, SCREEN_FORMAT_TYPE_NOALPHA_NOPALETTE, 0); us_pilot_hands = create_user_texture_screen (HANDS_SIZE, HANDS_SIZE, SCREEN_FORMAT_TYPE_NOALPHA_NOPALETTE, 0); us_co_pilot_high_detail_face = create_user_texture_screen (HIGH_DETAIL_FACE_SIZE, HIGH_DETAIL_FACE_SIZE, SCREEN_FORMAT_TYPE_NOALPHA_NOPALETTE, 0); us_co_pilot_low_detail_face = create_user_texture_screen (LOW_DETAIL_FACE_SIZE, LOW_DETAIL_FACE_SIZE, SCREEN_FORMAT_TYPE_NOALPHA_NOPALETTE, 0); us_co_pilot_neck = create_user_texture_screen (NECK_SIZE, NECK_SIZE, SCREEN_FORMAT_TYPE_NOALPHA_NOPALETTE, 0); us_co_pilot_hands = create_user_texture_screen (HANDS_SIZE, HANDS_SIZE, SCREEN_FORMAT_TYPE_NOALPHA_NOPALETTE, 0); russian_pilot_high_detail_face = create_user_texture_screen (HIGH_DETAIL_FACE_SIZE, HIGH_DETAIL_FACE_SIZE, SCREEN_FORMAT_TYPE_NOALPHA_NOPALETTE, 0); russian_pilot_low_detail_face = create_user_texture_screen (LOW_DETAIL_FACE_SIZE, LOW_DETAIL_FACE_SIZE, SCREEN_FORMAT_TYPE_NOALPHA_NOPALETTE, 0); russian_pilot_neck = create_user_texture_screen (NECK_SIZE, NECK_SIZE, SCREEN_FORMAT_TYPE_NOALPHA_NOPALETTE, 0); russian_pilot_hands = create_user_texture_screen (HANDS_SIZE, HANDS_SIZE, SCREEN_FORMAT_TYPE_NOALPHA_NOPALETTE, 0); russian_co_pilot_high_detail_face = create_user_texture_screen (HIGH_DETAIL_FACE_SIZE, HIGH_DETAIL_FACE_SIZE, SCREEN_FORMAT_TYPE_NOALPHA_NOPALETTE, 0); russian_co_pilot_low_detail_face = create_user_texture_screen (LOW_DETAIL_FACE_SIZE, LOW_DETAIL_FACE_SIZE, SCREEN_FORMAT_TYPE_NOALPHA_NOPALETTE, 0); russian_co_pilot_neck = create_user_texture_screen (NECK_SIZE, NECK_SIZE, SCREEN_FORMAT_TYPE_NOALPHA_NOPALETTE, 0); russian_co_pilot_hands = create_user_texture_screen (HANDS_SIZE, HANDS_SIZE, SCREEN_FORMAT_TYPE_NOALPHA_NOPALETTE, 0); // // set texture screens // set_system_texture_screen (us_pilot_high_detail_face, TEXTURE_INDEX_US_PILOT_FACE_01); set_system_texture_screen (us_pilot_low_detail_face, TEXTURE_INDEX_US_PILOT_FACE_01_LOW_RES); set_system_texture_screen (us_pilot_neck, TEXTURE_INDEX_US_PILOT_NECK_01); set_system_texture_screen (us_pilot_hands, TEXTURE_INDEX_US_PILOT_SKIN); set_system_texture_screen (us_co_pilot_high_detail_face, TEXTURE_INDEX_US_WSO_FACE_01); set_system_texture_screen (us_co_pilot_low_detail_face, TEXTURE_INDEX_US_WSO_FACE_01_LOW_RES); set_system_texture_screen (us_co_pilot_neck, TEXTURE_INDEX_US_WSO_NECK_01); set_system_texture_screen (us_co_pilot_hands, TEXTURE_INDEX_US_WSO_SKIN); set_system_texture_screen (russian_pilot_high_detail_face, TEXTURE_INDEX_RUSSIAN_PILOT_FACE_01); set_system_texture_screen (russian_pilot_low_detail_face, TEXTURE_INDEX_RUSSIAN_PILOT_FACE_LOW_RES); set_system_texture_screen (russian_pilot_neck, TEXTURE_INDEX_RUSSIAN_PILOT_NECK_01); set_system_texture_screen (russian_pilot_hands, TEXTURE_INDEX_RUSSIAN_PILOT_SKIN); set_system_texture_screen (russian_co_pilot_high_detail_face, TEXTURE_INDEX_RUSSIAN_WSO_FACE_01); set_system_texture_screen (russian_co_pilot_low_detail_face, TEXTURE_INDEX_RUSSIAN_WSO_FACE_LOW_RES); set_system_texture_screen (russian_co_pilot_neck, TEXTURE_INDEX_RUSSIAN_WSO_NECK_01); set_system_texture_screen (russian_co_pilot_hands, TEXTURE_INDEX_RUSSIAN_WSO_SKIN); // // load BMPs // load_skin_bitmap ("graphics//skins//usa//pilot//hi_face.bmp", us_pilot_high_detail_face, HIGH_DETAIL_FACE_SIZE); load_skin_bitmap ("graphics//skins//usa//pilot//low_face.bmp", us_pilot_low_detail_face, LOW_DETAIL_FACE_SIZE); load_skin_bitmap ("graphics//skins//usa//pilot//neck.bmp", us_pilot_neck, NECK_SIZE); load_skin_bitmap ("graphics//skins//usa//pilot//hands.bmp", us_pilot_hands, HANDS_SIZE); load_skin_bitmap ("graphics//skins//usa//cpg//hi_face.bmp", us_co_pilot_high_detail_face, HIGH_DETAIL_FACE_SIZE); load_skin_bitmap ("graphics//skins//usa//cpg//low_face.bmp", us_co_pilot_low_detail_face, LOW_DETAIL_FACE_SIZE); load_skin_bitmap ("graphics//skins//usa//cpg//neck.bmp", us_co_pilot_neck, NECK_SIZE); load_skin_bitmap ("graphics//skins//usa//cpg//hands.bmp", us_co_pilot_hands, HANDS_SIZE); load_skin_bitmap ("graphics//skins//russian//pilot//hi_face.bmp", russian_pilot_high_detail_face, HIGH_DETAIL_FACE_SIZE); load_skin_bitmap ("graphics//skins//russian//pilot//low_face.bmp", russian_pilot_low_detail_face, LOW_DETAIL_FACE_SIZE); load_skin_bitmap ("graphics//skins//russian//pilot//neck.bmp", russian_pilot_neck, NECK_SIZE); load_skin_bitmap ("graphics//skins//russian//pilot//hands.bmp", russian_pilot_hands, HANDS_SIZE); load_skin_bitmap ("graphics//skins//russian//cpg//hi_face.bmp", russian_co_pilot_high_detail_face, HIGH_DETAIL_FACE_SIZE); load_skin_bitmap ("graphics//skins//russian//cpg//low_face.bmp", russian_co_pilot_low_detail_face, LOW_DETAIL_FACE_SIZE); load_skin_bitmap ("graphics//skins//russian//cpg//neck.bmp", russian_co_pilot_neck, NECK_SIZE); load_skin_bitmap ("graphics//skins//russian//cpg//hands.bmp", russian_co_pilot_hands, HANDS_SIZE); }
void draw_hind_mfd_on_texture (void) { if (!map_active) return; set_system_texture_screen (mfd_texture_screen, TEXTURE_INDEX_HIND_MAP_DISPLAY); //////////////////////////////////////// // // set up MFD 2D environment // //////////////////////////////////////// set_2d_active_environment (mfd_env); // // window // set_2d_window (mfd_env, MFD_WINDOW_X_MIN, MFD_WINDOW_Y_MIN, MFD_WINDOW_X_MAX, MFD_WINDOW_Y_MAX); // // viewport // if (custom_3d_models.arneh_mi24v_cockpit) { mfd_viewport_size = MFD_VIEWPORT_SIZE; mfd_texture_size = MFD_TEXTURE_SIZE; } else { mfd_viewport_size = MFD_HAVOC_VIEWPORT_SIZE; mfd_texture_size = MFD_HAVOC_TEXTURE_SIZE; } mfd_viewport_texture_x_org = mfd_texture_size / 2; mfd_viewport_texture_y_org = mfd_texture_size / 2; ASSERT (mfd_viewport_size <= mfd_texture_size); mfd_viewport_x_org = mfd_viewport_texture_x_org; mfd_viewport_y_org = mfd_viewport_texture_y_org; mfd_viewport_x_min = mfd_viewport_x_org - (mfd_viewport_size * 0.5); mfd_viewport_y_min = mfd_viewport_y_org - (mfd_viewport_size * 0.5); mfd_viewport_x_max = mfd_viewport_x_org + (mfd_viewport_size * 0.5) - 0.001; mfd_viewport_y_max = mfd_viewport_y_org + (mfd_viewport_size * 0.5) - 0.001; set_2d_viewport (mfd_env, mfd_viewport_x_min, mfd_viewport_y_min, mfd_viewport_x_max, mfd_viewport_y_max); //////////////////////////////////////// // // draw MFD display // //////////////////////////////////////// if (!hind_damage.navigation_computer && !map_up_to_date) { set_active_screen (mfd_texture_screen); if (lock_screen (mfd_texture_screen)) { set_block (0, 0, mfd_viewport_size - 1, mfd_viewport_size - 1, clear_mfd_colour); draw_layout_grid (); draw_map_display (); flush_screen_texture_graphics (mfd_texture_screen); unlock_screen (mfd_texture_screen); } set_active_screen (video_screen); } /* if(command_line_export_mfd) { export_screen=create_screen_for_system_texture (TEXTURE_INDEX_HIND_MAP_DISPLAY); copy_export_mfd(export_screen,NULL); } */ }
void draw_hind_virtual_cockpit_ort_symbology(void) { int mfd_screen_x_min, mfd_screen_y_min, mfd_screen_x_max, mfd_screen_y_max; rgb_colour background_colour, symbology_colour; set_3d_active_environment (main_3d_env); // // set up MFD 2D environment // set_2d_active_environment (mfd_env); set_2d_window (mfd_env, MFD_WINDOW_X_MIN, MFD_WINDOW_Y_MIN, MFD_WINDOW_X_MAX, MFD_WINDOW_Y_MAX); mfd_viewport_size = EO_VIEWPORT_SIZE; mfd_viewport_x_org = EO_VIEWPORT_SIZE * 0.5; mfd_viewport_y_org = EO_VIEWPORT_SIZE * 0.5; mfd_viewport_x_min = 0.0; mfd_viewport_y_min = 0.0; mfd_viewport_x_max = EO_VIEWPORT_SIZE - 0.001; mfd_viewport_y_max = EO_VIEWPORT_SIZE - 0.001; set_2d_viewport (mfd_env, mfd_viewport_x_min, mfd_viewport_y_min, mfd_viewport_x_max, mfd_viewport_y_max); mfd_screen_x_min = full_screen_x_mid - ((256.0 / (640.0 * 2.0)) * full_screen_width); mfd_screen_y_min = full_screen_y_mid - ((256.0 / (480.0 * 2.0)) * full_screen_height); mfd_screen_x_max = full_screen_x_mid + ((256.0 / (640.0 * 2.0)) * full_screen_width) - 0.001; mfd_screen_y_max = full_screen_y_mid + ((256.0 / (480.0 * 2.0)) * full_screen_height) - 0.001; i_translate_3d = mfd_screen_x_min; j_translate_3d = mfd_screen_y_min; i_scale_3d = 640.0 / full_screen_width; j_scale_3d = 480.0 / full_screen_height; symbology_colour = MFD_EO_TEXT_COLOUR; set_rgb_colour(background_colour, 255, 255, 255, 0); set_system_texture_screen (eo_texture_screen, TEXTURE_INDEX_AVCKPT_DISPLAY_RHS_MFD); draw_symbology_to_texture( eo_texture_screen, TEXTURE_INDEX_AVCKPT_DISPLAY_RHS_MFD, mfd_viewport_size, mfd_viewport_size, mfd_screen_x_min, mfd_screen_y_min, mfd_screen_x_max, mfd_screen_y_max, symbology_colour, background_colour, draw_hind_ort_symbology); }