Browse Source

Fix approximately 80 billion compilation warnings.

legacy
Sam Hocevar 7 years ago
parent
commit
44e39867b1
27 changed files with 125 additions and 128 deletions
  1. +3
    -20
      doc/samples/math/poly.cpp
  2. +2
    -2
      src/audio/audio.cpp
  3. +0
    -4
      src/debug/lines.cpp
  4. +3
    -5
      src/easymesh/csgbsp.cpp
  5. +3
    -2
      src/easymesh/easymeshlua.cpp
  6. +2
    -0
      src/eglapp.cpp
  7. +1
    -1
      src/emitter.cpp
  8. +1
    -1
      src/engine/entity.cpp
  9. +1
    -1
      src/font.cpp
  10. +2
    -0
      src/image/color/cie1931.cpp
  11. +3
    -3
      src/image/filter/median.cpp
  12. +6
    -2
      src/image/movie.cpp
  13. +22
    -12
      src/lol/math/matrix.h
  14. +17
    -0
      src/lol/math/transform.h
  15. +23
    -0
      src/lol/math/vector.h
  16. +3
    -1
      src/lolimgui.cpp
  17. +1
    -1
      src/lolua/baselua.cpp
  18. +2
    -4
      src/math/geometry.cpp
  19. +0
    -56
      src/math/vector.cpp
  20. +3
    -1
      src/mesh/mesh.cpp
  21. +3
    -0
      src/mesh/primitivemesh.cpp
  22. +5
    -3
      src/scene.cpp
  23. +1
    -1
      src/scene.h
  24. +1
    -1
      src/sprite.cpp
  25. +10
    -2
      src/sys/file.cpp
  26. +5
    -5
      src/tileset.cpp
  27. +2
    -0
      src/video.cpp

+ 3
- 20
doc/samples/math/poly.cpp View File

@@ -1,7 +1,7 @@
//
// Lol Engine — Sample math program: check trigonometric functions
// Lol Engine — Sample math program: polynomials
//
// Copyright © 2005—2011 Sam Hocevar <sam@hocevar.net>
// Copyright © 2005—2017 Sam Hocevar <sam@hocevar.net>
//
// This program is free software. It comes without any warranty, to
// the extent permitted by applicable law. You can redistribute it
@@ -20,28 +20,11 @@

using namespace lol;

mat4 multiply_copy(mat4 m1, mat4 m2, mat4 m3)
{
return m1 * m2 * m3;
}

mat4 multiply_ref(mat4 const &m1, mat4 const &m2, mat4 const &m3)
{
return m1 * m2 * m3;
}

int main(int argc, char **argv)
{
UNUSED(argc, argv);

mat4 a = mat4::rotate(0.1f, vec3(1.f, 1.f, 0.f));
mat4 b = mat4::rotate(0.1f, vec3(0.f, 0.f, 1.f));
mat4 m = mat4(1.f);

for (int i = 0; i < 40000000; ++i)
//m = multiply_copy(a, m, b);
m = multiply_ref(a, m, b);
m.printf();
polynomial<polynomial<float>> p;

return EXIT_SUCCESS;
}


+ 2
- 2
src/audio/audio.cpp View File

@@ -64,9 +64,9 @@ void audio::set_channels(int channels)
void audio::set_volume(int channel, int volume)
{
#if defined LOL_USE_SDL_MIXER
Mix_Volume(channel,volume);
Mix_Volume(channel, volume);
#else
UNUSED(channel);
UNUSED(channel, volume);
#endif
}



+ 0
- 4
src/debug/lines.cpp View File

@@ -220,7 +220,6 @@ void Debug::DrawBox(vec2 a, vec2 b, mat2 transform, DCD data)
v[2] = b;
v[3] = vec2(b.x, a.y);

int i = 0;
Debug::DrawLine((transform * v[0]).xy, (transform * v[1]).xy, data);
Debug::DrawLine((transform * v[1]).xy, (transform * v[2]).xy, data);
Debug::DrawLine((transform * v[2]).xy, (transform * v[3]).xy, data);
@@ -253,7 +252,6 @@ void Debug::DrawCircle(vec2 a, vec2 s, DCD data)
//--
void Debug::DrawCircle(vec3 a, vec3 x, vec3 y, DCD data)
{
Scene& scene = Scene::GetScene();
float size = F_PI * 2.f * lol::max(length(x), length(y));
int segment_nb = lol::max(1, (int)((size * .25f) / data.m_segment_size));
for (int i = 0; i < segment_nb; i++)
@@ -272,7 +270,6 @@ void Debug::DrawCircle(vec3 a, vec3 x, vec3 y, DCD data)
//--
void Debug::DrawCircle(vec2 a, vec2 x, vec2 y, DCD data)
{
Scene& scene = Scene::GetScene();
float size = F_PI * 2.f * lol::max(length(x), length(y));
int segment_nb = lol::max(1, (int)((size * .25f) / data.m_segment_size));
for (int i = 0; i < segment_nb; i++)
@@ -318,7 +315,6 @@ void Debug::DrawCapsule(vec3 a, float s, vec3 h, DCD data)
//--
void Debug::DrawCapsule(vec3 a, vec3 x, vec3 y, vec3 z, vec3 h, DCD data)
{
Scene& scene = Scene::GetScene();
float size = F_PI * 2.f * lol::max(length(x), length(y));
int segment_nb = lol::max(1, (int)((size * .25f) / data.m_segment_size));
for (int i = -1; i < 2; i += 2)


+ 3
- 5
src/easymesh/csgbsp.cpp View File

@@ -97,7 +97,6 @@ void CsgBsp::AddTriangleToTree(int const &tri_idx, vec3 const &tri_p0, vec3 cons
{
//there are two intersections, no more.
vec3 isec_v[2] = { vec3(.0f), vec3(.0f) };
int isec_i[2] = { 0, 0 };
int isec_base = 0;
int isec_idx = 0;

@@ -108,7 +107,7 @@ void CsgBsp::AddTriangleToTree(int const &tri_idx, vec3 const &tri_p0, vec3 cons
if (TestRayVsPlane(v[i], v[(i + 1) % 3],
m_tree[leaf_idx].m_origin, m_tree[leaf_idx].m_normal,
isec_v[isec_idx]))
isec_i[isec_idx++] = i;
++isec_idx;
else
isec_base = i;
}
@@ -274,7 +273,6 @@ int CsgBsp::TestTriangleToTree(vec3 const &tri_p0, vec3 const &tri_p1, vec3 cons
int isec_i[2] = { 0, 0 };
int new_v_idx[2] = { 0, 0 };
int isec_base = 0;
int isec_idx = 0;

int i = 0;
for (; i < m_tree[leaf_idx].m_tri_list.count(); i++)
@@ -351,11 +349,11 @@ int CsgBsp::TestTriangleToTree(vec3 const &tri_p0, vec3 const &tri_p1, vec3 cons

int v_idx0 = (isec_base == 1)?(1):(0);
int v_idx1 = (isec_base == 1)?(0):(1);
int tri_to_remove = tri_to_process.count() - 1;
#if 0
//Leaf_type is the type for the triangle that is alone on its side.
int leaf_type = res_side[(isec_base + 2) % 3];
int tri_to_remove = tri_to_process.count() - 1;

#if 0
if (m_tree[leaf_idx].m_leaves[leaf_type] == LEAF_CURRENT && tri_to_process.last().m1.last() == 1)
tri_list.push(leaf_type,
t[(isec_base + 2) % 3], new_v_idx[v_idx1], new_v_idx[v_idx0]);


+ 3
- 2
src/easymesh/easymeshlua.cpp View File

@@ -187,17 +187,18 @@ const LuaObjectLibrary* EasyMeshLuaObject::GetLib()
}

//-----------------------------------------------------------------------------
bool EasyMesh::Compile(char const *command, bool Execute)
bool EasyMesh::Compile(char const *command, bool execute)
{
bool res = false;
// FIXME: make this work again
UNUSED(command, execute);
#if 0
EasyMeshCompiler mc(*this);
BD()->Enable(MeshBuildOperation::CommandRecording);
if ((res = mc.ParseString(command)))
{
BD()->Disable(MeshBuildOperation::CommandRecording);
if (Execute)
if (execute)
ExecuteCmdStack();
}
#endif


+ 2
- 0
src/eglapp.cpp View File

@@ -259,6 +259,8 @@ EglApp::EglApp(char const *title, ivec2 res, float fps) :
Ticker::Setup(fps);
Video::Setup((ivec2)data->screen_size);
audio::init();
#else
UNUSED(title, res, fps);
#endif
}



+ 1
- 1
src/emitter.cpp View File

@@ -70,7 +70,7 @@ void Emitter::TickDraw(float seconds, Scene &scene)

for (int i = 0; i < data->nparticles; i++)
scene.AddTile(data->tileset, data->particles[i],
data->positions[i], 0, vec2(1.0f), 0.0f);
data->positions[i], vec2(1.0f), 0.0f);
}

void Emitter::AddParticle(int id, vec3 pos, vec3 vel)


+ 1
- 1
src/engine/entity.cpp View File

@@ -69,7 +69,7 @@ void Entity::TickGame(float seconds)

void Entity::TickDraw(float seconds, Scene &scene)
{
(void)seconds;
UNUSED(seconds, scene);
#if !LOL_BUILD_RELEASE
if (m_tickstate != STATE_PRETICK_DRAW)
msg::error("invalid entity draw tick\n");


+ 1
- 1
src/font.cpp View File

@@ -89,7 +89,7 @@ void Font::Print(Scene &scene, vec3 pos, char const *str, vec2 scale, float spac
break;
default:
if (ch != ' ')
scene.AddTile(data->tileset, ch & 255, pos, 0, scale, 0.0f);
scene.AddTile(data->tileset, ch & 255, pos, scale, 0.0f);
pos.x += data->size.x * scale.x;
break;
}


+ 2
- 0
src/image/color/cie1931.cpp View File

@@ -320,6 +320,7 @@ static float cie_1931_xyz[] =

/* CIE 1964 Colorimetric Observer, aka. 10º Observer
* for wavelengths 360 to 830. */
#if 0
static float cie_1964_xyz[] =
{
/* 360 — 399 nm */
@@ -571,6 +572,7 @@ static float cie_1964_xyz[] =
1.747e-06f, 7.074e-07f, 0.0000000f, 1.647e-06f, 6.675e-07f, 0.0000000f,
1.553e-06f, 6.297e-07f, 0.0000000f,
};
#endif

vec3 Color::WavelengthToCIExyY(float nm)
{


+ 3
- 3
src/image/filter/median.cpp View File

@@ -152,7 +152,7 @@ image image::Median(ivec2 ksize) const
return ret;
}

image image::Median(array2d<float> const &kernel) const
image image::Median(array2d<float> const &ker) const
{
ivec2 const isize = size();
image tmp = *this;
@@ -166,7 +166,7 @@ image image::Median(array2d<float> const &kernel) const
else
#endif
{
ivec2 const ksize = kernel.size();
ivec2 const ksize = ker.size();
array2d<vec3> list(ksize);

vec4 *srcp = tmp.lock<PixelFormat::RGBA_F32>();
@@ -207,7 +207,7 @@ image image::Median(array2d<float> const &kernel) const
for (int j = 0; j < ksize.y; ++j)
for (int i = 0; i < ksize.x; ++i)
{
float d = kernel[i][j] /
float d = ker[i][j] /
(1e-10f + distance(median, list[i][j]));
s1 += list[i][j] * d;
s2 += d;


+ 6
- 2
src/image/movie.cpp View File

@@ -99,9 +99,11 @@ bool movie::open_file(char const *filename)
msg::error("could not write header: %s\n", ERROR_TO_STRING(ret));
return false;
}
#endif

return true;
#else
UNUSED(filename);
return false;
#endif
}

bool movie::push_image(image &im)
@@ -144,6 +146,8 @@ bool movie::push_image(image &im)
return false;
}
}
#else
UNUSED(im);
#endif

return true;


+ 22
- 12
src/lol/math/matrix.h View File

@@ -63,6 +63,10 @@ struct LOL_ATTR_NODISCARD mat_t
inline vec_t<T,ROWS>& operator[](size_t n) { return m_data[n]; }
inline vec_t<T,ROWS> const& operator[](size_t n) const { return m_data[n]; }

template<class U>
friend std::ostream &operator<<(std::ostream &stream,
mat_t<U,COLS,ROWS> const &m);

private:
vec_t<T,ROWS> m_data[COLS];
};
@@ -131,10 +135,6 @@ struct LOL_ATTR_NODISCARD mat_t<T, 2, 2>
void printf() const;
String tostring() const;

template<class U>
friend std::ostream &operator<<(std::ostream &stream,
mat_t<U,2,2> const &m);

static const mat_t<T,2,2> identity;

private:
@@ -262,10 +262,6 @@ struct LOL_ATTR_NODISCARD mat_t<T, 3, 3>
void printf() const;
String tostring() const;

template<class U>
friend std::ostream &operator<<(std::ostream &stream,
mat_t<U,3,3> const &m);

static const mat_t<T,3,3> identity;

private:
@@ -442,10 +438,6 @@ struct LOL_ATTR_NODISCARD mat_t<T, 4, 4>
void printf() const;
String tostring() const;

template<class U>
friend std::ostream &operator<<(std::ostream &stream,
mat_t<U,4,4> const &m);

static const mat_t<T,4,4> identity;

private:
@@ -463,6 +455,24 @@ static_assert(sizeof(f16mat4) == 32, "sizeof(f16mat4) == 32");
static_assert(sizeof(mat4) == 64, "sizeof(mat4) == 64");
static_assert(sizeof(dmat4) == 128, "sizeof(dmat4) == 128");

/*
* stdstream method implementations
*/

template<class U, int COLS, int ROWS>
std::ostream &operator<<(std::ostream &stream,
mat_t<U,COLS,ROWS> const &m)
{
for (int y = 0; y < ROWS; ++y)
{
stream << (y == 0 ? "(" : ", ");
for (int x = 0; x < COLS; ++x)
stream << (x == 0 ? "(" : ", ") << m[x][y];
stream << ")";
}
return stream << ")";
}

/*
* Transpose any matrix
*/


+ 17
- 0
src/lol/math/transform.h View File

@@ -321,6 +321,23 @@ struct LOL_ATTR_NODISCARD sqt_t
T s;
};

/*
* stdstream method implementations
*/

template<typename U>
std::ostream &operator<<(std::ostream &stream, cmplx_t<U> const &c)
{
return stream << "(" << c.x << ", " << c.y << ")";
}

template<typename U>
std::ostream &operator<<(std::ostream &stream, quat_t<U> const &q)
{
return stream << "(" << q.w << ", " << q.x << ", "
<< q.y << ", " << q.z << ")";
}

/*
* Common operations on transforms
*/


+ 23
- 0
src/lol/math/vector.h View File

@@ -1017,6 +1017,29 @@ static_assert(sizeof(f16vec4) == 8, "sizeof(f16vec4) == 8");
static_assert(sizeof(vec4) == 16, "sizeof(vec4) == 16");
static_assert(sizeof(dvec4) == 32, "sizeof(dvec4) == 32");

/*
* stdstream method implementations
*/

template<typename U>
std::ostream &operator<<(std::ostream &stream, vec_t<U,2> const &v)
{
return stream << "(" << v.x << ", " << v.y << ")";
}

template<typename U>
std::ostream &operator<<(std::ostream &stream, vec_t<U,3> const &v)
{
return stream << "(" << v.x << ", " << v.y << ", " << v.z << ")";
}

template<typename U>
std::ostream &operator<<(std::ostream &stream, vec_t<U,4> const &v)
{
return stream << "(" << v.x << ", " << v.y << ", "
<< v.z << ", " << v.w << ")";
}

/*
* vec_t *(scalar, vec_t)
*/


+ 3
- 1
src/lolimgui.cpp View File

@@ -346,6 +346,8 @@ void LolImGui::TickDraw(float seconds, Scene &scene)
}
void PrimitiveLolImGui::Render(Scene& scene, PrimitiveSource* primitive)
{
UNUSED(scene, primitive);

ImGuiIO& io = ImGui::GetIO();
if (io.Fonts->TexID)
ImGui::Render();
@@ -416,7 +418,7 @@ void LolImGui::RenderDrawListsMethod(ImDrawData* draw_data)
for (int n = 0; n < draw_data->CmdListsCount; n++)
{
const ImDrawList* cmd_list = draw_data->CmdLists[n];
const unsigned char* vtx_buffer = (const unsigned char*)&cmd_list->VtxBuffer.front();
/*const unsigned char* vtx_buffer = (const unsigned char*)&cmd_list->VtxBuffer.front();*/

//Register uniforms
m_shader->SetUniform(m_ortho, ortho);


+ 1
- 1
src/lolua/baselua.cpp View File

@@ -151,7 +151,7 @@ void Loader::StoreObject(lua_State* l, Object* obj)
//-----------------------------------------------------------------------------
bool Loader::ExecLuaFile(String const &lua)
{
const char* c = lua_pushstring(m_lua_state, lua.C());
lua_pushstring(m_lua_state, lua.C());
int status = LuaBaseData::LuaDoFile(m_lua_state);
return status == 0;
}


+ 2
- 4
src/math/geometry.cpp View File

@@ -123,7 +123,7 @@ namespace lol
//We first need to find two points intersecting, no matter on which triangle.
for (int i = 0; i < 2 && isecIdx < 2; i++)
{
int found_isec = -1;
/*int found_isec = -1;*/
for (int j = 0; j < 3 && isecIdx < 2; j++)
{
int pIdx = j + i * 3;
@@ -150,7 +150,7 @@ namespace lol
//if it's the second intersection, we need it to be different from the first one.
(isecIdx == 1 && length(isec[0] - isec[1]) > TestEpsilon::Get()))
{
found_isec = i;
/*found_isec = i;*/
isecIdx++;
}
}
@@ -172,11 +172,9 @@ namespace lol
vec3 &isec_p)
{
vec3 rayD0 = ray_p01 - ray_p00;
float rayS0 = length(rayD0);
vec3 rayD0N = normalize(rayD0);

vec3 rayD1 = ray_p11 - ray_p10;
float rayS1 = length(rayD1);
vec3 rayD1N = normalize(rayD1);

vec3 rayP0P1 = ray_p10 - ray_p00;


+ 0
- 56
src/math/vector.cpp View File

@@ -92,61 +92,5 @@ template<> String mat4::tostring() const
p[0][3], p[1][3], p[2][3], p[3][3]);
}

template<> std::ostream &operator<<(std::ostream &stream, ivec2 const &v)
{
return stream << "(" << v.x << ", " << v.y << ")";
}

template<> std::ostream &operator<<(std::ostream &stream, ivec3 const &v)
{
return stream << "(" << v.x << ", " << v.y << ", " << v.z << ")";
}

template<> std::ostream &operator<<(std::ostream &stream, ivec4 const &v)
{
return stream << "(" << v.x << ", " << v.y << ", "
<< v.z << ", " << v.w << ")";
}

template<> std::ostream &operator<<(std::ostream &stream, vec2 const &v)
{
return stream << "(" << v.x << ", " << v.y << ")";
}

template<> std::ostream &operator<<(std::ostream &stream, cmplx const &v)
{
return stream << "(" << v.x << ", " << v.y << ")";
}

template<> std::ostream &operator<<(std::ostream &stream, vec3 const &v)
{
return stream << "(" << v.x << ", " << v.y << ", " << v.z << ")";
}

template<> std::ostream &operator<<(std::ostream &stream, vec4 const &v)
{
return stream << "(" << v.x << ", " << v.y << ", "
<< v.z << ", " << v.w << ")";
}

template<> std::ostream &operator<<(std::ostream &stream, quat const &v)
{
return stream << "(" << v.x << ", " << v.y << ", "
<< v.z << ", " << v.w << ")";
}

template<> std::ostream &operator<<(std::ostream &stream, mat4 const &m)
{
stream << "((" << m[0][0] << ", " << m[1][0]
<< ", " << m[2][0] << ", " << m[3][0] << "), ";
stream << "(" << m[0][1] << ", " << m[1][1]
<< ", " << m[2][1] << ", " << m[3][1] << "), ";
stream << "(" << m[0][2] << ", " << m[1][2]
<< ", " << m[2][2] << ", " << m[3][2] << "), ";
stream << "(" << m[0][3] << ", " << m[1][3]
<< ", " << m[2][3] << ", " << m[3][3] << "))";
return stream;
}

} /* namespace lol */


+ 3
- 1
src/mesh/mesh.cpp View File

@@ -132,11 +132,13 @@ void SubMesh::Render()
attribs[j] = m_shader->GetAttribLocation(usage, usages[usage_index]++);
}

vertex_count = m_vbos[i]->GetSize() / m_vdecl->GetStream(i).GetSize();
vertex_count += m_vbos[i]->GetSize() / m_vdecl->GetStream(i).GetSize();

m_vdecl->SetStream(m_vbos[i], attribs);
}

UNUSED(vertex_count);

for (int i = 0; i < m_textures.count(); ++i)
{
// TODO: might be good to cache this


+ 3
- 0
src/mesh/primitivemesh.cpp View File

@@ -39,6 +39,9 @@ void PrimitiveMesh::Render(Scene& scene, PrimitiveSource* primitive)
ShaderUniform u_model, u_modelview, u_normalmat, uni_tex, uni_texsize;
ShaderAttrib a_pos, a_tex;

/* FIXME: ignored for now */
UNUSED(primitive);

{
/* If this primitive uses a new shader, update attributes */
if (m_submesh->GetShader() != shader)


+ 5
- 3
src/scene.cpp View File

@@ -58,6 +58,8 @@ static inline void gpu_marker(char const *message)
#if LOL_USE_GLEW
if (GLEW_GREMEDY_string_marker)
glStringMarkerGREMEDY(0, message);
#else
UNUSED(message);
#endif
}

@@ -498,7 +500,7 @@ void Scene::ReleaseAllPrimitiveRenderers(uintptr_t key)
}

//-----------------------------------------------------------------------------
void Scene::AddTile(TileSet *tileset, int id, vec3 pos, int o, vec2 scale, float radians)
void Scene::AddTile(TileSet *tileset, int id, vec3 pos, vec2 scale, float radians)
{
ASSERT(id < tileset->GetTileCount());

@@ -582,7 +584,7 @@ void Scene::DisableDisplay()

static bool do_pp = true;

void Scene::pre_render(float seconds)
void Scene::pre_render(float)
{
gpu_marker("Pre Render");

@@ -615,7 +617,7 @@ void Scene::render(float seconds)
render_lines(seconds);
}

void Scene::post_render(float seconds)
void Scene::post_render(float)
{
gpu_marker("Post Render");



+ 1
- 1
src/scene.h View File

@@ -230,7 +230,7 @@ public:

/* FIXME: this should be deprecated -- it doesn't really match
* the architecture we want to build */
void AddTile(TileSet *tileset, int id, vec3 pos, int o, vec2 scale, float radians);
void AddTile(TileSet *tileset, int id, vec3 pos, vec2 scale, float radians);
void AddTile(TileSet *tileset, int id, mat4 model);

public:


+ 1
- 1
src/sprite.cpp View File

@@ -46,7 +46,7 @@ void Sprite::TickDraw(float seconds, Scene &scene)
{
Entity::TickDraw(seconds, scene);

scene.AddTile(data->tileset, data->id, m_position, 0, vec2(1.0f), 0.0f);
scene.AddTile(data->tileset, data->id, m_position, vec2(1.0f), 0.0f);
}

Sprite::~Sprite()


+ 10
- 2
src/sys/file.cpp View File

@@ -25,6 +25,10 @@
# include <dirent.h>
#endif

#if defined HAVE_UNISTD_H
# include <unistd.h>
#endif

#include <atomic>
#include <sys/stat.h>

@@ -60,6 +64,7 @@ class FileData
case StreamType::StdOut: m_fd = stdout; break;
case StreamType::StdErr: m_fd = stderr; break;
#endif
default: break;
}
}

@@ -352,6 +357,8 @@ class DirectoryData

void Open(String const &directory, FileAccess mode)
{
UNUSED(mode); /* FIXME */

m_type = StreamType::File;
#if __ANDROID__
/* FIXME: not implemented */
@@ -540,6 +547,7 @@ bool Directory::GetContent(array<String>* files, array<Directory>* directories)
{
array<String> sfiles, sdirectories;
bool found_some = m_data->GetContentList(&sfiles, &sdirectories);
UNUSED(found_some);

if (directories)
for (int i = 0; i < sdirectories.count(); i++)
@@ -608,8 +616,8 @@ bool Directory::SetCurrent(String directory)
String result = directory;
result.replace('/', '\\', true);
return !!SetCurrentDirectory(result.C());
#elif HAVE_STDIO_H
/* FIXME: not implemented */
#elif HAVE_UNISTD_H
chdir(directory.C());
#endif
return false;
}


+ 5
- 5
src/tileset.cpp View File

@@ -46,21 +46,21 @@ protected:
*/

TileSet::TileSet(char const *path)
: m_tileset_data(new TileSetData()),
m_palette(nullptr),
TextureImage(path)
: TextureImage(path),
m_tileset_data(new TileSetData()),
m_palette(nullptr)
{
}

TileSet::TileSet(char const *path, Image* image)
: TextureImage(path, image),
: TextureImage(path, image),
m_tileset_data(new TileSetData()),
m_palette(nullptr)
{
}

TileSet::TileSet(char const *path, Image* image, array<ivec2, ivec2>& tiles)
: TextureImage(path, image),
: TextureImage(path, image),
m_tileset_data(new TileSetData()),
m_palette(nullptr)
{


+ 2
- 0
src/video.cpp View File

@@ -121,6 +121,8 @@ void Video::Capture(uint32_t *buffer)
buffer[j * width + i] = buffer[(height - j - 1) * width + i];
buffer[(height - j - 1) * width + i] = tmp;
}
#else
UNUSED(buffer);
#endif
}



Loading…
Cancel
Save