forked from fehaar/FFWD
/
ApplicationSettings.cs
74 lines (69 loc) · 2.96 KB
/
ApplicationSettings.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework.Graphics;
using PressPlay.FFWD.Components;
namespace PressPlay.FFWD
{
public static class ApplicationSettings
{
public static bool ShowComponentProfile = true;
public static bool ShowTurnOffTime = false;
public static bool ShowTimeBetweenUpdates = false;
public static bool ShowRaycastTime = false;
public static bool ShowParticleAnimTime = false;
public static bool ShowPerformanceBreakdown = true;
public static bool ShowFPSCounter = true;
public static bool ShowBodyCounter = true;
public static bool ShowDebugDisplays = true;
public static bool ShowDebugLines = true;
public static bool ShowDebugPhysics = false;
public static bool ShowDebugPhysicsCustom = false;
#if WINDOWS
public static int AssetLoadInterval = 0; // In Milliseconds
#else
public static int AssetLoadInterval = 50; // In Milliseconds
#endif
public static bool UseFallbackRendering = false;
/// <summary>
/// This can be disabled to avoid moving static colliders, which is pretty expensive.
/// If you do it a lot, consider flipping this and making the colliders kinematic.
/// </summary>
public static bool Physics_MoveStaticColliders = true;
public static class DefaultCapacities
{
/// <summary>
/// All of these settings can be tuned in order to adjust memory usage of the engine.
/// You should do this in your game contructor.
/// </summary>
#region Default list sizes
public static int Lights = 4;
public static int QueryHelper = 20;
public static int RaycastHits = 20;
public static int GestureSamples = 4;
public static int Touches = 4;
public static int AnimationComponents = 30;
public static int TransformChanges = 500;
public static int ComponentLists = 1500;
public static int RenderQueues = 100;
public static int RenderCullingQueue = 20;
public static int ColliderContacts = 50;
public static int PriorityQueuePoolSize = 100;
#endregion
}
public static class DefaultValues
{
public static float MinimumNearClipPlane = 0.1f;
/// <summary>
/// This is the vertex limit for single size static batches. If we have more vertices than that, the batch will be cut up into tiled pieces with the world size set below.
/// </summary>
public static int StaticBatchVertexLimit = 2000;
public static float StaticBatchTileSize = 200.0f;
}
public static class LogSettings
{
public static bool LogCulling = false;
}
}
}