BVB Source Codes

CRYENGINE Show UIDraw.h Source code

Return Download CRYENGINE: download UIDraw.h Source code - Download CRYENGINE Source code - Type:.h
  1. // Copyright 2001-2016 Crytek GmbH / Crytek Group. All rights reserved.
  2.  
  3. /*************************************************************************
  4.    -------------------------------------------------------------------------
  5.    $Id$
  6.    $DateTime$
  7.    Description: UI draw functions
  8.  
  9.    -------------------------------------------------------------------------
  10.    History:
  11.    - 07:11:2005: Created by Julien Darre
  12.  
  13. *************************************************************************/
  14. #ifndef __UIDRAW_H__
  15. #define __UIDRAW_H__
  16.  
  17. //-----------------------------------------------------------------------------------------------------
  18.  
  19. #include "IUIDraw.h"
  20.  
  21. //-----------------------------------------------------------------------------------------------------
  22.  
  23. class CUIDraw : public IUIDraw
  24. {
  25. public:
  26.         void   Release();
  27.  
  28.         void   PreRender();
  29.         void   PostRender();
  30.  
  31.         uint32 GetColorARGB(uint8 ucAlpha, uint8 ucRed, uint8 ucGreen, uint8 ucBlue);
  32.  
  33.         int    CreateTexture(const char* strName, bool dontRelease = true);
  34.  
  35.         bool   DeleteTexture(int iTextureID);
  36.  
  37.         void   GetTextureSize(int iTextureID, float& rfSizeX, float& rfSizeY);
  38.  
  39.         void   GetMemoryStatistics(ICrySizer* s);
  40.  
  41.         void   DrawTriangle(float fX0, float fY0, float fX1, float fY1, float fX2, float fY2, uint32 uiColor);
  42.  
  43.         void   DrawLine(float fX1, float fY1, float fX2, float fY2, uint32 uiDiffuse);
  44.  
  45.         void   DrawQuadSimple(float fX, float fY, float fSizeX, float fSizeY, uint32 uiDiffuse, int iTextureID);
  46.  
  47.         void   DrawQuad(float fX,
  48.                         float fY,
  49.                         float fSizeX,
  50.                         float fSizeY,
  51.                         uint32 uiDiffuse = 0,
  52.                         uint32 uiDiffuseTL = 0, uint32 uiDiffuseTR = 0, uint32 uiDiffuseDL = 0, uint32 uiDiffuseDR = 0,
  53.                         int iTextureID = -1,
  54.                         float fUTexCoordsTL = 0.0f, float fVTexCoordsTL = 0.0f,
  55.                         float fUTexCoordsTR = 1.0f, float fVTexCoordsTR = 0.0f,
  56.                         float fUTexCoordsDL = 0.0f, float fVTexCoordsDL = 1.0f,
  57.                         float fUTexCoordsDR = 1.0f, float fVTexCoordsDR = 1.0f,
  58.                         bool bUse169 = true);
  59.  
  60.         void DrawImage(int iTextureID, float fX,
  61.                        float fY,
  62.                        float fSizeX,
  63.                        float fSizeY,
  64.                        float fAngleInDegrees,
  65.                        float fRed,
  66.                        float fGreen,
  67.                        float fBlue,
  68.                        float fAlpha,
  69.                        float fS0 = 0.0f,
  70.                        float fT0 = 0.0f,
  71.                        float fS1 = 1.0f,
  72.                        float fT1 = 1.0f);
  73.  
  74.         void DrawImageCentered(int iTextureID, float fX,
  75.                                float fY,
  76.                                float fSizeX,
  77.                                float fSizeY,
  78.                                float fAngleInDegrees,
  79.                                float fRed,
  80.                                float fGreen,
  81.                                float fBlue,
  82.                                float fAlpha);
  83.  
  84.         void DrawTextSimple(IFFont* pFont,
  85.                             float fX, float fY,
  86.                             float fSizeX, float fSizeY,
  87.                             const char* strText, ColorF color,
  88.                             EUIDRAWHORIZONTAL eUIDrawHorizontal, EUIDRAWVERTICAL eUIDrawVertical);
  89.  
  90.         void DrawText(IFFont* pFont,
  91.                       float fX,
  92.                       float fY,
  93.                       float fSizeX,
  94.                       float fSizeY,
  95.                       const char* strText,
  96.                       float fAlpha,
  97.                       float fRed,
  98.                       float fGreen,
  99.                       float fBlue,
  100.                       EUIDRAWHORIZONTAL eUIDrawHorizontalDocking,
  101.                       EUIDRAWVERTICAL eUIDrawVerticalDocking,
  102.                       EUIDRAWHORIZONTAL eUIDrawHorizontal,
  103.                       EUIDRAWVERTICAL eUIDrawVertical);
  104.  
  105.         void DrawWrappedText(IFFont* pFont,
  106.                              float fX,
  107.                              float fY,
  108.                              float fMaxWidth,
  109.                              float fSizeX,
  110.                              float fSizeY,
  111.                              const char* strText,
  112.                              float fAlpha,
  113.                              float fRed,
  114.                              float fGreen,
  115.                              float fBlue,
  116.                              EUIDRAWHORIZONTAL eUIDrawHorizontalDocking,
  117.                              EUIDRAWVERTICAL eUIDrawVerticalDocking,
  118.                              EUIDRAWHORIZONTAL eUIDrawHorizontal,
  119.                              EUIDRAWVERTICAL eUIDrawVertical);
  120.  
  121.         void GetTextDim(IFFont* pFont,
  122.                         float* fWidth,
  123.                         float* fHeight,
  124.                         float fSizeX,
  125.                         float fSizeY,
  126.                         const char* strText);
  127.  
  128.         void GetWrappedTextDim(IFFont* pFont,
  129.                                float* fWidth,
  130.                                float* fHeight,
  131.                                float fMaxWidth,
  132.                                float fSizeX,
  133.                                float fSizeY,
  134.                                const char* strText);
  135.  
  136.         // ~IUIDraw
  137.  
  138.         CUIDraw();
  139.         ~CUIDraw();
  140.  
  141. protected:
  142.         void InternalDrawText(IFFont* pFont,
  143.                               float fX,
  144.                               float fY,
  145.                               float fMaxWidth,
  146.                               float fSizeX,
  147.                               float fSizeY,
  148.                               const char* strText,
  149.                               float fAlpha,
  150.                               float fRed,
  151.                               float fGreen,
  152.                               float fBlue,
  153.                               EUIDRAWHORIZONTAL eUIDrawHorizontalDocking,
  154.                               EUIDRAWVERTICAL eUIDrawVerticalDocking,
  155.                               EUIDRAWHORIZONTAL eUIDrawHorizontal,
  156.                               EUIDRAWVERTICAL eUIDrawVertical);
  157.  
  158.         void InternalGetTextDim(IFFont* pFont,
  159.                                 float* fWidth,
  160.                                 float* fHeight,
  161.                                 float fMaxWidth,
  162.                                 float fSizeX,
  163.                                 float fSizeY,
  164.                                 const char* strText);
  165.  
  166.         typedef std::map<int, ITexture*> TTexturesMap;
  167.         TTexturesMap m_texturesMap;
  168.  
  169.         IRenderer*   m_pRenderer;
  170. };
  171.  
  172. //-----------------------------------------------------------------------------------------------------
  173.  
  174. #endif
  175.  
  176. //-----------------------------------------------------------------------------------------------------
  177.  
downloadUIDraw.h Source code - Download CRYENGINE Source code
Related Source Codes/Software:
postal - 2017-06-11
reactide - Reactide is the first dedicated IDE for React web ... 2017-06-11
rkt - rkt is a pod-native container engine for Linux. It... 2017-06-11
uWebSockets - Tiny WebSockets https://for... 2017-06-11
realworld - TodoMVC for the RealWorld - Exemplary fullstack Me... 2017-06-11
CRYENGINE - CRYENGINE is a powerful real-time game development... 2017-06-11
goreplay - GoReplay is an open-source tool for capturing and ... 2017-06-10
pyenv - Simple Python version management 2017-06-10
redux-saga - An alternative side effect model for Redux apps ... 2017-06-10
angular-starter - 2017-06-10

 Back to top