summary refs log tree commit diff stats
path: root/src/util.cpp
diff options
context:
space:
mode:
authorKelly Rauchenberger <fefferburbia@gmail.com>2018-02-16 16:04:32 -0500
committerKelly Rauchenberger <fefferburbia@gmail.com>2018-02-16 16:04:32 -0500
commited08b673c50b076042d8f0c49501372168142764 (patch)
tree18ecda99942ef11ce4023c3ad4437976f96b75da /src/util.cpp
parent224645d1071c14b4829dbb3ae35870868fcff85a (diff)
downloadtherapy-ed08b673c50b076042d8f0c49501372168142764.tar.gz
therapy-ed08b673c50b076042d8f0c49501372168142764.tar.bz2
therapy-ed08b673c50b076042d8f0c49501372168142764.zip
Refactored renderer
Renderer is basically now more C++'y, as it makes more use of classes (a lot of GL types have been wrapped), and the renderer itself is now a class. The monitor mesh is also now indexed.

Tweaked the NTSC artifacting after inadvertently fixing a bug with the way the image was loaded.
Diffstat (limited to 'src/util.cpp')
-rw-r--r--src/util.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/util.cpp b/src/util.cpp new file mode 100644 index 0000000..f0c39fd --- /dev/null +++ b/src/util.cpp
@@ -0,0 +1,30 @@
1#include "util.h"
2
3std::string slurp(std::ifstream& in)
4{
5 std::stringstream sstr;
6 sstr << in.rdbuf();
7 return sstr.str();
8}
9
10void flipImageData(
11 unsigned char* data,
12 int width,
13 int height,
14 int comps)
15{
16 unsigned char* dataCopy = new unsigned char[width * height * comps];
17 memcpy(dataCopy, data, width * height * comps);
18
19 int rowSize = width * comps;
20
21 for (int i = 0; i < height; i++)
22 {
23 memcpy(
24 data + (rowSize * i),
25 dataCopy + (rowSize * (height - i - 1)),
26 rowSize);
27 }
28
29 delete[] dataCopy;
30}