// // EasyMesh: A class about generating 3D mesh without using the hands // Mesh can be generated using C++ or lua code // // Copyright: (c) 2010-2015 Sam Hocevar // (c) 2009-2015 Cédric Lecacheur // (c) 2009-2015 Benjamin "Touky" Huet // This program is free software; you can redistribute it and/or // modify it under the terms of the Do What The Fuck You Want To // Public License, Version 2, as published by Sam Hocevar. See // http://www.wtfpl.net/ for more details. // #include LOLFX_RESOURCE_DECLARE(shiny); namespace lol { //----------------------------------------------------------------------------- EasyMesh::EasyMesh() : m_build_data(nullptr) { m_cursors.push(0, 0); m_state = MeshRender::NeedData; } //----------------------------------------------------------------------------- EasyMesh::EasyMesh(const EasyMesh& em) { m_indices = em.m_indices; m_vert = em.m_vert; m_cursors = em.m_cursors; m_build_data = nullptr; if (em.m_build_data) m_build_data = new EasyMeshBuildData(*em.m_build_data); if (m_indices.count() && m_vert.count() && m_cursors.count()) m_state = MeshRender::NeedConvert; else m_state = MeshRender::NeedData; } //----------------------------------------------------------------------------- bool EasyMesh::SetRender(bool should_render) { if (m_state == MeshRender::CanRender) { if (!should_render) m_state = MeshRender::IgnoreRender; return true; } else if (m_state == MeshRender::IgnoreRender) { if (should_render) m_state = MeshRender::CanRender; return true; } return false; } } /* namespace lol */