1 /* 2 This file is part of Warzone 2100. 3 Copyright (C) 1999-2004 Eidos Interactive 4 Copyright (C) 2005-2020 Warzone 2100 Project 5 6 Warzone 2100 is free software; you can redistribute it and/or modify 7 it under the terms of the GNU General Public License as published by 8 the Free Software Foundation; either version 2 of the License, or 9 (at your option) any later version. 10 11 Warzone 2100 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 Warzone 2100; if not, write to the Free Software 18 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 19 */ 20 /***************************************************************************/ 21 /* 22 * piedef.h 23 * 24 * type defines for all pumpkin image library functions. 25 * 26 */ 27 /***************************************************************************/ 28 29 #ifndef _piedef_h 30 #define _piedef_h 31 32 /***************************************************************************/ 33 34 #include "lib/framework/frame.h" 35 #include "lib/framework/vector.h" 36 #include <glm/fwd.hpp> 37 #include "pietypes.h" 38 39 struct iIMDShape; 40 41 /***************************************************************************/ 42 /* 43 * Global ProtoTypes 44 */ 45 /***************************************************************************/ 46 bool pie_Draw3DShape(iIMDShape *shape, int frame, int team, PIELIGHT colour, int pieFlag, int pieFlagData, const glm::mat4 &modelView); 47 48 void pie_GetResetCounts(size_t *pPieCount, size_t *pPolyCount); 49 50 /** Setup stencil shadows and OpenGL lighting. */ 51 void pie_BeginLighting(const Vector3f &light); 52 void pie_setShadows(bool drawShadows); 53 54 /** Set light parameters */ 55 void pie_InitLighting(); 56 void pie_Lighting0(LIGHTING_TYPE entry, const float value[4]); 57 58 void pie_RemainingPasses(uint64_t currentGameFrame); 59 60 void pie_CleanUp(); 61 62 #endif // _piedef_h 63