2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-12-09 03:47:43 +00:00

Fix water rendering

This commit is contained in:
Jack Andersen
2018-06-02 20:11:39 -10:00
parent 357a7efa9a
commit a5f25bf3f4
16 changed files with 98 additions and 73 deletions

View File

@@ -380,13 +380,12 @@ public:
void AddVert(const VTX& vert)
{
++m_added;
if (m_added > 3)
if (m_added > 3 && (m_added & 1) == 0)
{
const VTX& last = m_vec.back();
m_vec.reserve(m_vec.size() + 4);
m_vec.push_back(m_vec[m_start]);
m_vec.push_back(m_vec[m_start]);
m_vec.reserve(m_vec.size() + 3);
m_vec.push_back(last);
m_vec.push_back(m_vec[m_start]);
}
m_vec.push_back(vert);
}
@@ -395,13 +394,12 @@ public:
void EmplaceVert(_Args&&... args)
{
++m_added;
if (m_added > 3)
if (m_added > 3 && (m_added & 1) == 0)
{
const VTX& last = m_vec.back();
m_vec.reserve(m_vec.size() + 4);
m_vec.push_back(m_vec[m_start]);
m_vec.push_back(m_vec[m_start]);
m_vec.reserve(m_vec.size() + 3);
m_vec.push_back(last);
m_vec.push_back(m_vec[m_start]);
}
m_vec.emplace_back(std::forward<_Args>(args)...);
}