Changed to non branching algo, sped up a good 30-50 ms at the current max

ray dist. Also changed bounds checking a little, not sure if it's faster
This commit is contained in:
MitchellHansen
2016-09-04 23:59:39 -07:00
parent 160756186d
commit 6f5d2b2f6f
4 changed files with 84 additions and 77 deletions

View File

@@ -8,21 +8,15 @@ class Map {
public:
Map(sf::Vector3i dim) {
list = new char[dim.x * dim.y * dim.z];
for (int i = 0; i < dim.x * dim.y * dim.x; i++) {
list[i] = 0;
}
//for (int i = 0; i < dim.x * dim.y * dim.x; i++) {
// list[i] = 0;
//}
for (int x = 0; x < dim.x; x++) {
for (int y = 0; y < dim.y; y++) {
for (int z = 0; z < dim.z; z++) {
if (dim.z < 30) {
list[x + dim.x * (y + dim.z * z)] = 3;
}
else if (rand() % 1000 < 1)
for (int x = 0; x < dim.x / 10; x++) {
for (int y = 0; y < dim.y / 10; y++) {
for (int z = 0; z < dim.z / 10; z++) {
if (rand() % 1000 < 1)
list[x + dim.x * (y + dim.z * z)] = rand() % 6;
else
list[x + dim.x * (y + dim.z * z)] = 0;
}
}
}

View File

@@ -19,6 +19,10 @@ public:
}
void frame(double delta_time){
if (frame_count == 100){
frame_count = 0;
fps_average = 0;
}
frame_count++;
fps_average += (delta_time - fps_average) / frame_count;
}