diff options
Diffstat (limited to 'libraries/irrlicht-1.8/source/Irrlicht/CFPSCounter.cpp')
-rw-r--r-- | libraries/irrlicht-1.8/source/Irrlicht/CFPSCounter.cpp | 152 |
1 files changed, 76 insertions, 76 deletions
diff --git a/libraries/irrlicht-1.8/source/Irrlicht/CFPSCounter.cpp b/libraries/irrlicht-1.8/source/Irrlicht/CFPSCounter.cpp index 3bbf3af..cc565b8 100644 --- a/libraries/irrlicht-1.8/source/Irrlicht/CFPSCounter.cpp +++ b/libraries/irrlicht-1.8/source/Irrlicht/CFPSCounter.cpp | |||
@@ -1,76 +1,76 @@ | |||
1 | // Copyright (C) 2002-2012 Nikolaus Gebhardt | 1 | // Copyright (C) 2002-2012 Nikolaus Gebhardt |
2 | // This file is part of the "Irrlicht Engine". | 2 | // This file is part of the "Irrlicht Engine". |
3 | // For conditions of distribution and use, see copyright notice in irrlicht.h | 3 | // For conditions of distribution and use, see copyright notice in irrlicht.h |
4 | 4 | ||
5 | #include "CFPSCounter.h" | 5 | #include "CFPSCounter.h" |
6 | #include "irrMath.h" | 6 | #include "irrMath.h" |
7 | 7 | ||
8 | namespace irr | 8 | namespace irr |
9 | { | 9 | { |
10 | namespace video | 10 | namespace video |
11 | { | 11 | { |
12 | 12 | ||
13 | 13 | ||
14 | CFPSCounter::CFPSCounter() | 14 | CFPSCounter::CFPSCounter() |
15 | : FPS(60), Primitive(0), StartTime(0), FramesCounted(0), | 15 | : FPS(60), Primitive(0), StartTime(0), FramesCounted(0), |
16 | PrimitivesCounted(0), PrimitiveAverage(0), PrimitiveTotal(0) | 16 | PrimitivesCounted(0), PrimitiveAverage(0), PrimitiveTotal(0) |
17 | { | 17 | { |
18 | 18 | ||
19 | } | 19 | } |
20 | 20 | ||
21 | 21 | ||
22 | //! returns current fps | 22 | //! returns current fps |
23 | s32 CFPSCounter::getFPS() const | 23 | s32 CFPSCounter::getFPS() const |
24 | { | 24 | { |
25 | return FPS; | 25 | return FPS; |
26 | } | 26 | } |
27 | 27 | ||
28 | 28 | ||
29 | //! returns current primitive count | 29 | //! returns current primitive count |
30 | u32 CFPSCounter::getPrimitive() const | 30 | u32 CFPSCounter::getPrimitive() const |
31 | { | 31 | { |
32 | return Primitive; | 32 | return Primitive; |
33 | } | 33 | } |
34 | 34 | ||
35 | 35 | ||
36 | //! returns average primitive count of last period | 36 | //! returns average primitive count of last period |
37 | u32 CFPSCounter::getPrimitiveAverage() const | 37 | u32 CFPSCounter::getPrimitiveAverage() const |
38 | { | 38 | { |
39 | return PrimitiveAverage; | 39 | return PrimitiveAverage; |
40 | } | 40 | } |
41 | 41 | ||
42 | 42 | ||
43 | //! returns accumulated primitive count since start | 43 | //! returns accumulated primitive count since start |
44 | u32 CFPSCounter::getPrimitiveTotal() const | 44 | u32 CFPSCounter::getPrimitiveTotal() const |
45 | { | 45 | { |
46 | return PrimitiveTotal; | 46 | return PrimitiveTotal; |
47 | } | 47 | } |
48 | 48 | ||
49 | 49 | ||
50 | //! to be called every frame | 50 | //! to be called every frame |
51 | void CFPSCounter::registerFrame(u32 now, u32 primitivesDrawn) | 51 | void CFPSCounter::registerFrame(u32 now, u32 primitivesDrawn) |
52 | { | 52 | { |
53 | ++FramesCounted; | 53 | ++FramesCounted; |
54 | PrimitiveTotal += primitivesDrawn; | 54 | PrimitiveTotal += primitivesDrawn; |
55 | PrimitivesCounted += primitivesDrawn; | 55 | PrimitivesCounted += primitivesDrawn; |
56 | Primitive = primitivesDrawn; | 56 | Primitive = primitivesDrawn; |
57 | 57 | ||
58 | const u32 milliseconds = now - StartTime; | 58 | const u32 milliseconds = now - StartTime; |
59 | 59 | ||
60 | if (milliseconds >= 1500 ) | 60 | if (milliseconds >= 1500 ) |
61 | { | 61 | { |
62 | const f32 invMilli = core::reciprocal ( (f32) milliseconds ); | 62 | const f32 invMilli = core::reciprocal ( (f32) milliseconds ); |
63 | 63 | ||
64 | FPS = core::ceil32 ( ( 1000 * FramesCounted ) * invMilli ); | 64 | FPS = core::ceil32 ( ( 1000 * FramesCounted ) * invMilli ); |
65 | PrimitiveAverage = core::ceil32 ( ( 1000 * PrimitivesCounted ) * invMilli ); | 65 | PrimitiveAverage = core::ceil32 ( ( 1000 * PrimitivesCounted ) * invMilli ); |
66 | 66 | ||
67 | FramesCounted = 0; | 67 | FramesCounted = 0; |
68 | PrimitivesCounted = 0; | 68 | PrimitivesCounted = 0; |
69 | StartTime = now; | 69 | StartTime = now; |
70 | } | 70 | } |
71 | } | 71 | } |
72 | 72 | ||
73 | 73 | ||
74 | } // end namespace video | 74 | } // end namespace video |
75 | } // end namespace irr | 75 | } // end namespace irr |
76 | 76 | ||