Added license info to some files.
Added mem info for last processed tile view. Fixed memleak in tiled navmesh demo.
This commit is contained in:
parent
aa7357d897
commit
2eab83c0e3
File diff suppressed because it is too large
Load Diff
@ -278,13 +278,13 @@
|
||||
<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
|
||||
<array>
|
||||
<array>
|
||||
<integer>33</integer>
|
||||
<integer>30</integer>
|
||||
<integer>1</integer>
|
||||
<integer>0</integer>
|
||||
</array>
|
||||
</array>
|
||||
<key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
|
||||
<string>{{0, 22}, {282, 660}}</string>
|
||||
<string>{{0, 73}, {282, 660}}</string>
|
||||
</dict>
|
||||
<key>PBXTopSmartGroupGIDs</key>
|
||||
<array/>
|
||||
@ -331,7 +331,7 @@
|
||||
<key>_historyCapacity</key>
|
||||
<integer>0</integer>
|
||||
<key>bookmark</key>
|
||||
<string>6B024BD01005DFAB00CF7107</string>
|
||||
<string>6B024BF61006079300CF7107</string>
|
||||
<key>history</key>
|
||||
<array>
|
||||
<string>6BB87E0B0F9DE8A300E33F12</string>
|
||||
@ -363,27 +363,27 @@
|
||||
<string>6B2AEDA00FFBA507005BE9CC</string>
|
||||
<string>6B092B4F0FFCA0A20088D3A5</string>
|
||||
<string>6B092B500FFCA0A20088D3A5</string>
|
||||
<string>6B092BAB0FFCEC1A0088D3A5</string>
|
||||
<string>6B092BB50FFCEC1A0088D3A5</string>
|
||||
<string>6B092BB70FFCEC1A0088D3A5</string>
|
||||
<string>6B092C5F0FFCFF790088D3A5</string>
|
||||
<string>6B092CC10FFE40160088D3A5</string>
|
||||
<string>6B092CC30FFE40160088D3A5</string>
|
||||
<string>6B02497E1003751300CF7107</string>
|
||||
<string>6B0249821003751300CF7107</string>
|
||||
<string>6B02499F1003766D00CF7107</string>
|
||||
<string>6B0249BE1003793900CF7107</string>
|
||||
<string>6B024ACD1004AC8D00CF7107</string>
|
||||
<string>6B024ACE1004AC8D00CF7107</string>
|
||||
<string>6B024B391004CCCC00CF7107</string>
|
||||
<string>6B024BA81005DC3A00CF7107</string>
|
||||
<string>6B024BB71005DF5700CF7107</string>
|
||||
<string>6B024BB81005DF5700CF7107</string>
|
||||
<string>6B024BB91005DF5700CF7107</string>
|
||||
<string>6B024BC91005DFAB00CF7107</string>
|
||||
<string>6B024BCA1005DFAB00CF7107</string>
|
||||
<string>6B024BCB1005DFAB00CF7107</string>
|
||||
<string>6B024BCC1005DFAB00CF7107</string>
|
||||
<string>6B024BD31006059C00CF7107</string>
|
||||
<string>6B024BD41006059C00CF7107</string>
|
||||
<string>6B024BD51006059C00CF7107</string>
|
||||
<string>6B024BD61006059C00CF7107</string>
|
||||
<string>6B024BD71006059C00CF7107</string>
|
||||
<string>6B024BEB1006064C00CF7107</string>
|
||||
<string>6B024BF41006073700CF7107</string>
|
||||
</array>
|
||||
<key>prevStack</key>
|
||||
<array>
|
||||
@ -516,6 +516,15 @@
|
||||
<string>6B024BCD1005DFAB00CF7107</string>
|
||||
<string>6B024BCE1005DFAB00CF7107</string>
|
||||
<string>6B024BCF1005DFAB00CF7107</string>
|
||||
<string>6B024BDA1006059C00CF7107</string>
|
||||
<string>6B024BDB1006059C00CF7107</string>
|
||||
<string>6B024BDC1006059C00CF7107</string>
|
||||
<string>6B024BDD1006059C00CF7107</string>
|
||||
<string>6B024BDE1006059C00CF7107</string>
|
||||
<string>6B024BDF1006059C00CF7107</string>
|
||||
<string>6B024BE01006059C00CF7107</string>
|
||||
<string>6B024BED1006064C00CF7107</string>
|
||||
<string>6B024BEE1006064C00CF7107</string>
|
||||
</array>
|
||||
</dict>
|
||||
<key>SplitCount</key>
|
||||
|
@ -1,3 +1,21 @@
|
||||
//
|
||||
// Copyright (c) 2009 Mikko Mononen memon@inside.org
|
||||
//
|
||||
// This software is provided 'as-is', without any express or implied
|
||||
// warranty. In no event will the authors be held liable for any damages
|
||||
// arising from the use of this software.
|
||||
// Permission is granted to anyone to use this software for any purpose,
|
||||
// including commercial applications, and to alter it and redistribute it
|
||||
// freely, subject to the following restrictions:
|
||||
// 1. The origin of this software must not be misrepresented; you must not
|
||||
// claim that you wrote the original software. If you use this software
|
||||
// in a product, an acknowledgment in the product documentation would be
|
||||
// appreciated but is not required.
|
||||
// 2. Altered source versions must be plainly marked as such, and must not be
|
||||
// misrepresented as being the original software.
|
||||
// 3. This notice may not be removed or altered from any source distribution.
|
||||
//
|
||||
|
||||
#ifndef RECASTBUILDERTILEDMESH_H
|
||||
#define RECASTBUILDERTILEDMESH_H
|
||||
|
||||
@ -34,6 +52,7 @@ protected:
|
||||
float m_tileBmin[3];
|
||||
float m_tileBmax[3];
|
||||
float m_tileBuildTime;
|
||||
float m_tileMemUsage;
|
||||
int m_tileTriCount;
|
||||
|
||||
enum ToolMode
|
||||
|
@ -1,3 +1,21 @@
|
||||
//
|
||||
// Copyright (c) 2009 Mikko Mononen memon@inside.org
|
||||
//
|
||||
// This software is provided 'as-is', without any express or implied
|
||||
// warranty. In no event will the authors be held liable for any damages
|
||||
// arising from the use of this software.
|
||||
// Permission is granted to anyone to use this software for any purpose,
|
||||
// including commercial applications, and to alter it and redistribute it
|
||||
// freely, subject to the following restrictions:
|
||||
// 1. The origin of this software must not be misrepresented; you must not
|
||||
// claim that you wrote the original software. If you use this software
|
||||
// in a product, an acknowledgment in the product documentation would be
|
||||
// appreciated but is not required.
|
||||
// 2. Altered source versions must be plainly marked as such, and must not be
|
||||
// misrepresented as being the original software.
|
||||
// 3. This notice may not be removed or altered from any source distribution.
|
||||
//
|
||||
|
||||
#define _USE_MATH_DEFINES
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
@ -26,6 +44,7 @@ BuilderTiledMesh::BuilderTiledMesh() :
|
||||
m_chunkyMesh(0),
|
||||
m_keepInterResults(true),
|
||||
m_tileBuildTime(0),
|
||||
m_tileMemUsage(0),
|
||||
m_triflags(0),
|
||||
m_solid(0),
|
||||
m_chf(0),
|
||||
@ -470,7 +489,7 @@ void BuilderTiledMesh::handleRenderOverlay(class GLFont* font, double* proj, dou
|
||||
model, proj, view, &x, &y, &z))
|
||||
{
|
||||
char text[32];
|
||||
snprintf(text,32,"%.3f ms %d Tris", m_tileBuildTime, m_tileTriCount);
|
||||
snprintf(text,32,"%.3fms / %dTris / %.1fkB", m_tileBuildTime, m_tileTriCount, m_tileMemUsage);
|
||||
const float len = font->getTextLength(text);
|
||||
font->drawText((float)x - len/2, (float)y-font->getLineHeight(), text, GLFont::RGBA(0,0,0,220));
|
||||
}
|
||||
@ -523,16 +542,26 @@ void BuilderTiledMesh::setToolEndPos(const float* p)
|
||||
bool BuilderTiledMesh::handleBuild()
|
||||
{
|
||||
if (!m_verts || !m_tris)
|
||||
{
|
||||
printf("No verts or tris\n");
|
||||
return false;
|
||||
}
|
||||
|
||||
delete m_navMesh;
|
||||
m_navMesh = new dtTiledNavMesh;
|
||||
if (!m_navMesh)
|
||||
{
|
||||
printf("Could not allocate navmehs\n");
|
||||
return false;
|
||||
}
|
||||
if (!m_navMesh->init(m_bmin, m_tileSize*m_cellSize, m_agentMaxClimb*m_cellHeight))
|
||||
{
|
||||
printf("Could not init navmesh\n");
|
||||
return false;
|
||||
}
|
||||
|
||||
// Build chunky mesh.
|
||||
delete m_chunkyMesh;
|
||||
m_chunkyMesh = new rcChunkyTriMesh;
|
||||
if (!m_chunkyMesh)
|
||||
{
|
||||
@ -546,7 +575,6 @@ bool BuilderTiledMesh::handleBuild()
|
||||
rcGetLog()->log(RC_LOG_ERROR, "buildTiledNavigation: Could not build chunky mesh.");
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -805,7 +833,6 @@ unsigned char* BuilderTiledMesh::buildTileMesh(const float* bmin, const float* b
|
||||
|
||||
unsigned char* navData = 0;
|
||||
int navDataSize = 0;
|
||||
|
||||
if (m_cfg.maxVertsPerPoly == DT_TILE_VERTS_PER_POLYGON)
|
||||
{
|
||||
// Remove padding from the polymesh data.
|
||||
@ -825,6 +852,7 @@ unsigned char* BuilderTiledMesh::buildTileMesh(const float* bmin, const float* b
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
m_tileMemUsage = navDataSize/1024.0f;
|
||||
|
||||
rcTimeVal totEndTime = rcGetPerformanceTimer();
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user