• Create Account

### #ActualDivega

Posted 17 October 2012 - 09:25 PM

[THIS STUPID EDITOR WILL NOT FORMAT THE TEXT CORRECTLY]

Hey there GameDevs,

I'm having trouble grasping a few concepts about using binary triangle trees for representing terrain data. Lets say I'm working with a 17x17 square grid of vertices and i have a class as follows:

public class Terrain {
private int maxWidth;
private int numVertices;
private float[][] heightmap;
public Terrain(int gridWidth) { // 16 assuming each grid cell's length and width = 1;
this.maxWidth = gridWidth + 1; // 17
this.numVertices = this.maxWidth * this.maxWidth; // 289
System.out.println(this.numVertices);
this.heightmap = new float[this.maxWidth][this.maxWidth]; // 17x17
for(int x = 0; x < this.maxWidth; x++) {
for(int z = 0; z < this.maxWidth; z++) {
this.heightmap[x][z] = 0; // Zero out height data;
}
}
}
}

Bounds of terrain:

The vertices would be contained in a vertex buffer from 0 - 289; Each 1x1 cell contains 2 triangles and total of 4 vertices / 6 indices.

So what I am not grasping is how to represent this data using a BTT. The way I understand a BTT is

BTT {
data
leftchild
rightchild
}

Now I'm assuming the data variable in each tree would be an index buffer of the 3 indices for the triangle. This biggest thing i struggle with is how do I keep track of the left, right, and bottom neighbor of each triangle without being able to pass data by reference. Please let me know if you need anymore information from me, this is all i can think up right now.

### #23Divega

Posted 17 October 2012 - 09:21 PM

[THIS STUPID EDITOR WILL NOT FORMAT THE TEXT CORRECTLY]

Hey there GameDevs,

I'm having trouble grasping a few concepts about using binary triangle trees for representing terrain data. Lets say I'm working with a 17x17 square grid of vertices and i have a class as follows:

public class Terrain {
private int maxWidth;
private int numVertices;
private float[][] heightmap;
public Terrain(int gridWidth) { // 16 assuming each grid cell's length and width = 1;
this.maxWidth = gridWidth + 1; // 17
this.numVertices = this.maxWidth * this.maxWidth; // 289
System.out.println(this.numVertices);
this.heightmap = new float[this.maxWidth][this.maxWidth]; // 17x17
for(int x = 0; x < this.maxWidth; x++) {
for(int z = 0; z < this.maxWidth; z++) {
this.heightmap[x][z] = 0; // Zero out height data;
}
}
}

}

Bounds of terrain:

The vertices would be contained in a vertex buffer from 0 - 289; Each 1x1 cell contains 2 triangles and total of 4 vertices / 6 indices.

So what I am not grasping is how to represent this data using a BTT. The way I understand a BTT is

BTT {
data
leftchild
rightchild
}

Now I'm assuming the data variable in each tree would be an index buffer of the 3 indices for the triangle. This biggest thing i struggle with is how do I keep track of the left, right, and bottom neighbor of each triangle without being able to pass data by reference. Please let me know if you need anymore information from me, this is all i can think up right now.

### #22Divega

Posted 17 October 2012 - 09:20 PM

[THIS STUPID EDITOR WILL NOT FORMAT THE TEXT CORRECTLY]

Hey there GameDevs,

I'm having trouble grasping a few concepts about using binary triangle trees for representing terrain data. Lets say I'm working with a 17x17 square grid of vertices and i have a class as follows:

public class Terrain {
private int maxWidth;
private int numVertices;
private float[][] heightmap;
public Terrain(int gridWidth) { // 16 assuming each grid cell's length and width = 1;
this.maxWidth = gridWidth + 1;  // 17
this.numVertices = this.maxWidth * this.maxWidth; // 289
System.out.println(this.numVertices);
this.heightmap = new float[this.maxWidth][this.maxWidth];  // 17x17
for(int x = 0; x < this.maxWidth; x++) {
for(int z = 0; z < this.maxWidth; z++) {
this.heightmap[x][z] = 0; // Zero out height data;
}
}
}

}

Bounds of terrain:

The vertices would be contained in a vertex buffer from 0 - 289; Each 1x1 cell contains 2 triangles and total of 4 vertices / 6 indices.

So what I am not grasping is how to represent this data using a BTT. The way I understand a BTT is

BTT {
data
leftchild
rightchild
}


Now I'm assuming the data variable in each tree would be an index buffer of the 3 indices for the triangle. This biggest thing i struggle with is how do I keep track of the left, right, and bottom neighbor of each triangle without being able to pass data by reference. Please let me know if you need anymore information from me, this is all i can think up right now.

### #21Divega

Posted 17 October 2012 - 09:20 PM

[THIS STUPID EDITOR WILL NOT FORMAT THE TEXT CORRECTLY]

Hey there GameDevs,

I'm having trouble grasping a few concepts about using binary triangle trees for representing terrain data. Lets say I'm working with a 17x17 square grid of vertices and i have a class as follows:

public class Terrain {private int maxWidth;
private int numVertices;
private float[][] heightmap;
public Terrain(int gridWidth) { // 16 assuming each grid cell's length and width = 1;
this.maxWidth = gridWidth + 1;  // 17
this.numVertices = this.maxWidth * this.maxWidth; // 289
System.out.println(this.numVertices);
this.heightmap = new float[this.maxWidth][this.maxWidth];  // 17x17
for(int x = 0; x < this.maxWidth; x++) {
for(int z = 0; z < this.maxWidth; z++) {
this.heightmap[x][z] = 0; // Zero out height data;
}
}
}

}

Bounds of terrain:

The vertices would be contained in a vertex buffer from 0 - 289; Each 1x1 cell contains 2 triangles and total of 4 vertices / 6 indices.

So what I am not grasping is how to represent this data using a BTT. The way I understand a BTT is

BTT {
data
leftchild
rightchild
}


Now I'm assuming the data variable in each tree would be an index buffer of the 3 indices for the triangle. This biggest thing i struggle with is how do I keep track of the left, right, and bottom neighbor of each triangle without being able to pass data by reference. Please let me know if you need anymore information from me, this is all i can think up right now.

### #20Divega

Posted 17 October 2012 - 09:19 PM

[THIS STUPID EDITOR WILL NOT FORMAT THE TEXT CORRECTLY]

Hey there GameDevs,

I'm having trouble grasping a few concepts about using binary triangle trees for representing terrain data. Lets say I'm working with a 17x17 square grid of vertices and i have a class as follows:

public class Terrain {
private int maxWidth;
private int numVertices;
private float[][] heightmap;
public Terrain(int gridWidth) { // 16 assuming each grid cell's length and width = 1;
this.maxWidth = gridWidth + 1;  // 17
this.numVertices = this.maxWidth * this.maxWidth; // 289
System.out.println(this.numVertices);
this.heightmap = new float[this.maxWidth][this.maxWidth];  // 17x17
for(int x = 0; x < this.maxWidth; x++) {
for(int z = 0; z < this.maxWidth; z++) {
this.heightmap[x][z] = 0; // Zero out height data;
}
}
}

}

Bounds of terrain:

The vertices would be contained in a vertex buffer from 0 - 289; Each 1x1 cell contains 2 triangles and total of 4 vertices / 6 indices.

So what I am not grasping is how to represent this data using a BTT. The way I understand a BTT is

BTT {
data
leftchild
rightchild
}


Now I'm assuming the data variable in each tree would be an index buffer of the 3 indices for the triangle. This biggest thing i struggle with is how do I keep track of the left, right, and bottom neighbor of each triangle without being able to pass data by reference. Please let me know if you need anymore information from me, this is all i can think up right now.

### #19Divega

Posted 17 October 2012 - 09:19 PM

[THIS STUPID EDITOR WILL NOT FORMAT THE TEXT CORRECTLY]

Hey there GameDevs,

I'm having trouble grasping a few concepts about using binary triangle trees for representing terrain data. Lets say I'm working with a 17x17 square grid of vertices and i have a class as follows:

public class Terrain {private int maxWidth;
private int numVertices;
private float[][] heightmap;
public Terrain(int gridWidth) { // 16 assuming each grid cell's length and width = 1;
this.maxWidth = gridWidth + 1;  // 17
this.numVertices = this.maxWidth * this.maxWidth; // 289
System.out.println(this.numVertices);
this.heightmap = new float[this.maxWidth][this.maxWidth];  // 17x17
for(int x = 0; x < this.maxWidth; x++) {
for(int z = 0; z < this.maxWidth; z++) {
this.heightmap[x][z] = 0; // Zero out height data;
}
}
}

}

Bounds of terrain:

The vertices would be contained in a vertex buffer from 0 - 289; Each 1x1 cell contains 2 triangles and total of 4 vertices / 6 indices.

So what I am not grasping is how to represent this data using a BTT. The way I understand a BTT is

BTT {
data
leftchild
rightchild
}


Now I'm assuming the data variable in each tree would be an index buffer of the 3 indices for the triangle. This biggest thing i struggle with is how do I keep track of the left, right, and bottom neighbor of each triangle without being able to pass data by reference. Please let me know if you need anymore information from me, this is all i can think up right now.

PARTNERS