|
|
|
@ -167,118 +167,118 @@ function __3dSurfaceExtrude(surface = noone, height = noone, smooth = false) : _
|
|
|
|
|
: dep;
|
|
|
|
|
depb = -depb;
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, depb, 0, 0, -1, tb1, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, 0, 0, -1, tb0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, depb, 0, 0, -1, tb1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, depb, 0, 0, -1, tb1, ty0,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, 0, 0, -1, tb0, ty0,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, depb, 0, 0, -1, tb1, ty1,,, 0, 0, 255);
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, depb, 0, 0, -1, tb1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, 0, 0, -1, tb0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, depb, 0, 0, -1, tb0, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, depb, 0, 0, -1, tb1, ty1,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, 0, 0, -1, tb0, ty0,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, depb, 0, 0, -1, tb0, ty1,,, 0, 0, 255);
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, dep, 0, 0, 1, tx1, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 0, 0, 1, tx1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, dep, 0, 0, 1, tx0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, dep, 0, 0, 1, tx1, ty0,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 0, 0, 1, tx1, ty1,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, dep, 0, 0, 1, tx0, ty0,,, 0, 0, 255);
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 0, 0, 1, tx1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, dep, 0, 0, 1, tx0, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, dep, 0, 0, 1, tx0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 0, 0, 1, tx1, ty1,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, dep, 0, 0, 1, tx0, ty1,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, dep, 0, 0, 1, tx0, ty0,,, 0, 0, 255);
|
|
|
|
|
|
|
|
|
|
if(back) {
|
|
|
|
|
|
|
|
|
|
if((useH && dep * 2 > buffer_read_at(h_buff, (round(i * hgtW) + max(0, round((j - 1) * hgtH)) * hg_ww) * 2, buffer_u16) / 65536)
|
|
|
|
|
|| (j == 0 || buffer_read_at(c_buff, (j - 1) * ww + (i), buffer_u8) == 0)) { //y side
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, dep, 0, 1, 0, tx1, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, 0, 0, 1, 0, tx0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, dep, 0, 1, 0, tx1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, dep, 0, 1, 0, tx1, ty0,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, 0, 0, 1, 0, tx0, ty0,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, dep, 0, 1, 0, tx1, ty1,,, 0, 0, 255);
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, 0, 0, 1, 0, tx1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, 0, 0, 1, 0, tx0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, dep, 0, 1, 0, tx0, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, 0, 0, 1, 0, tx1, ty1,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, 0, 0, 1, 0, tx0, ty0,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, dep, 0, 1, 0, tx0, ty1,,, 0, 0, 255);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if((useH && abs(depb) * 2 > buffer_read_at(hb_buff, (round(i * hgtW) + max(0, round((j - 1) * hgtH)) * hg_ww) * 2, buffer_u16) / 65536)
|
|
|
|
|
|| (j == 0 || buffer_read_at(c_buff, (j - 1) * ww + (i), buffer_u8) == 0)) { //y side
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, 0, 0, 1, 0, tb1, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, 0, 1, 0, tb0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, 0, 0, 1, 0, tb1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, 0, 0, 1, 0, tb1, ty0,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, 0, 1, 0, tb0, ty0,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, 0, 0, 1, 0, tb1, ty1,,, 0, 0, 255);
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, 0, 1, 0, tb1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, depb, 0, 1, 0, tb0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, 0, 0, 1, 0, tb0, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, 0, 1, 0, tb1, ty1,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, depb, 0, 1, 0, tb0, ty0,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, 0, 0, 1, 0, tb0, ty1,,, 0, 0, 255);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if((useH && dep * 2 > buffer_read_at(h_buff, (round(i * hgtW) + min(round((j + 1) * hgtH), hg_hh - 1) * hg_ww) * 2, buffer_u16) / 65536)
|
|
|
|
|
|| (j == hh - 1 || buffer_read_at(c_buff, (j + 1) * ww + (i), buffer_u8) == 0)) { //y side
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, dep, 0, -1, 0, tx1, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 0, -1, 0, tx1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, 0, 0, -1, 0, tx0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, dep, 0, -1, 0, tx1, ty0,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 0, -1, 0, tx1, ty1,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, 0, 0, -1, 0, tx0, ty0,,, 0, 0, 255);
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, 0, 0, -1, 0, tx1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 0, -1, 0, tx0, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, 0, 0, -1, 0, tx0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, 0, 0, -1, 0, tx1, ty1,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 0, -1, 0, tx0, ty1,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, 0, 0, -1, 0, tx0, ty0,,, 0, 0, 255);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if((useH && abs(depb) * 2 > buffer_read_at(hb_buff, (round(i * hgtW) + min(round((j + 1) * hgtH), hg_hh - 1) * hg_ww) * 2, buffer_u16) / 65536)
|
|
|
|
|
|| (j == hh - 1 || buffer_read_at(c_buff, (j + 1) * ww + (i), buffer_u8) == 0)) { //y side
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, 0, 0, -1, 0, tb1, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, 0, 0, -1, 0, tb1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, depb, 0, -1, 0, tb0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, 0, 0, -1, 0, tb1, ty0,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, 0, 0, -1, 0, tb1, ty1,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, depb, 0, -1, 0, tb0, ty0,,, 0, 0, 255);
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, depb, 0, -1, 0, tb1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, 0, 0, -1, 0, tb0, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, depb, 0, -1, 0, tb0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, depb, 0, -1, 0, tb1, ty1,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, 0, 0, -1, 0, tb0, ty1,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, depb, 0, -1, 0, tb0, ty0,,, 0, 0, 255);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if((useH && dep * 2 > buffer_read_at(h_buff, (max(0, round((i - 1) * hgtW)) + round(j * hgtH) * hg_ww) * 2, buffer_u16) / 65536)
|
|
|
|
|
|| (i == 0 || buffer_read_at(c_buff, (j) * ww + (i - 1), buffer_u8) == 0)) { //x side
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, dep, -1, 0, 0, tx1, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, dep, -1, 0, 0, tx1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, 0, -1, 0, 0, tx0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, dep, -1, 0, 0, tx1, ty0,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, dep, -1, 0, 0, tx1, ty1,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, 0, -1, 0, 0, tx0, ty0,,, 0, 0, 255);
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, 0, -1, 0, 0, tx1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, dep, -1, 0, 0, tx0, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, 0, -1, 0, 0, tx0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, 0, -1, 0, 0, tx1, ty1,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, dep, -1, 0, 0, tx0, ty1,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, 0, -1, 0, 0, tx0, ty0,,, 0, 0, 255);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if((useH && abs(depb) * 2 > buffer_read_at(hb_buff, (max(0, round((i - 1) * hgtW)) + round(j * hgtH) * hg_ww) * 2, buffer_u16) / 65536)
|
|
|
|
|
|| (i == 0 || buffer_read_at(c_buff, (j) * ww + (i - 1), buffer_u8) == 0)) { //x side
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, 0, -1, 0, 0, tb1, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, 0, -1, 0, 0, tb1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, -1, 0, 0, tb0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, 0, -1, 0, 0, tb1, ty0,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, 0, -1, 0, 0, tb1, ty1,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, -1, 0, 0, tb0, ty0,,, 0, 0, 255);
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, -1, 0, 0, tb1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, 0, -1, 0, 0, tb0, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, depb, -1, 0, 0, tb0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, -1, 0, 0, tb1, ty1,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, 0, -1, 0, 0, tb0, ty1,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, depb, -1, 0, 0, tb0, ty0,,, 0, 0, 255);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if((useH && dep * 2 > buffer_read_at(h_buff, (min(round((i + 1) * hgtW), hg_ww - 1 ) + round(j * hgtH) * hg_ww) * 2, buffer_u16) / 65536)
|
|
|
|
|
|| (i == ww - 1 || buffer_read_at(c_buff, (j) * ww + (i + 1), buffer_u8) == 0)) { //x side
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, dep, 1, 0, 0, tx1, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, 0, 1, 0, 0, tx0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 1, 0, 0, tx1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, dep, 1, 0, 0, tx1, ty0,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, 0, 1, 0, 0, tx0, ty0,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 1, 0, 0, tx1, ty1,,, 0, 0, 255);
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, 0, 1, 0, 0, tx1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, 0, 1, 0, 0, tx0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 1, 0, 0, tx0, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, 0, 1, 0, 0, tx1, ty1,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, 0, 1, 0, 0, tx0, ty0,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 1, 0, 0, tx0, ty1,,, 0, 0, 255);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if((useH && abs(depb) * 2 > buffer_read_at(hb_buff, (min(round((i + 1) * hgtW), hg_ww - 1 ) + round(j * hgtH) * hg_ww) * 2, buffer_u16) / 65536)
|
|
|
|
|
|| (i == ww - 1 || buffer_read_at(c_buff, (j) * ww + (i + 1), buffer_u8) == 0)) { //x side
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, 0, 1, 0, 0, tb1, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, depb, 1, 0, 0, tb0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, 0, 1, 0, 0, tb1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, 0, 1, 0, 0, tb1, ty0,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, depb, 1, 0, 0, tb0, ty0,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, 0, 1, 0, 0, tb1, ty1,,, 0, 0, 255);
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, depb, 1, 0, 0, tb1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, depb, 1, 0, 0, tb0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, 0, 1, 0, 0, tb0, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, depb, 1, 0, 0, tb1, ty1,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, depb, 1, 0, 0, tb0, ty0,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, 0, 1, 0, 0, tb0, ty1,,, 0, 0, 255);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
@ -286,49 +286,49 @@ function __3dSurfaceExtrude(surface = noone, height = noone, smooth = false) : _
|
|
|
|
|
if((useH && dep * 2 > buffer_read_at(h_buff, (round(i * hgtW) + max(0, round((j - 1) * hgtH)) * hg_ww) * 2, buffer_u16) / 65536)
|
|
|
|
|
|| (j == 0 || buffer_read_at(c_buff, (j - 1) * ww + (i), buffer_u8) == 0)) { //y side
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, dep, 0, 1, 0, tx1, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, 0, 1, 0, tx0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, dep, 0, 1, 0, tx1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, dep, 0, 1, 0, tx1, ty0,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, 0, 1, 0, tx0, ty0,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, dep, 0, 1, 0, tx1, ty1,,, 0, 0, 255);
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, 0, 1, 0, tx1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, depb, 0, 1, 0, tx0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, dep, 0, 1, 0, tx0, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, 0, 1, 0, tx1, ty1,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, depb, 0, 1, 0, tx0, ty0,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, dep, 0, 1, 0, tx0, ty1,,, 0, 0, 255);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if((useH && dep * 2 > buffer_read_at(h_buff, (round(i * hgtW) + min(round((j + 1) * hgtH), hg_hh - 1) * hg_ww) * 2, buffer_u16) / 65536)
|
|
|
|
|
|| (j == hh - 1 || buffer_read_at(c_buff, (j + 1) * ww + (i), buffer_u8) == 0)) { //y side
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, dep, 0, -1, 0, tx1, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 0, -1, 0, tx1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, depb, 0, -1, 0, tx0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, dep, 0, -1, 0, tx1, ty0,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 0, -1, 0, tx1, ty1,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, depb, 0, -1, 0, tx0, ty0,,, 0, 0, 255);
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, depb, 0, -1, 0, tx1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 0, -1, 0, tx0, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, depb, 0, -1, 0, tx0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, depb, 0, -1, 0, tx1, ty1,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 0, -1, 0, tx0, ty1,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, depb, 0, -1, 0, tx0, ty0,,, 0, 0, 255);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if((useH && dep * 2 > buffer_read_at(h_buff, (max(0, round((i - 1) * hgtW)) + round(j * hgtH) * hg_ww) * 2, buffer_u16) / 65536)
|
|
|
|
|
|| (i == 0 || buffer_read_at(c_buff, (j) * ww + (i - 1), buffer_u8) == 0)) { //x side
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, dep, -1, 0, 0, tx1, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, dep, -1, 0, 0, tx1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, -1, 0, 0, tx0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, dep, -1, 0, 0, tx1, ty0,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, dep, -1, 0, 0, tx1, ty1,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, -1, 0, 0, tx0, ty0,,, 0, 0, 255);
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, -1, 0, 0, tx1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, dep, -1, 0, 0, tx0, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, depb, -1, 0, 0, tx0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j0, depb, -1, 0, 0, tx1, ty1,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, dep, -1, 0, 0, tx0, ty1,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i0, j1, depb, -1, 0, 0, tx0, ty0,,, 0, 0, 255);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if((useH && dep * 2 > buffer_read_at(h_buff, (min(round((i + 1) * hgtW), hg_ww - 1 ) + round(j * hgtH) * hg_ww) * 2, buffer_u16) / 65536)
|
|
|
|
|
|| (i == ww - 1 || buffer_read_at(c_buff, (j) * ww + (i + 1), buffer_u8) == 0)) { //x side
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, dep, 1, 0, 0, tx1, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, depb, 1, 0, 0, tx0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 1, 0, 0, tx1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, dep, 1, 0, 0, tx1, ty0,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, depb, 1, 0, 0, tx0, ty0,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 1, 0, 0, tx1, ty1,,, 0, 0, 255);
|
|
|
|
|
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, depb, 1, 0, 0, tx1, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, depb, 1, 0, 0, tx0, ty0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 1, 0, 0, tx0, ty1);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j0, depb, 1, 0, 0, tx1, ty1,,, 255, 0, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, depb, 1, 0, 0, tx0, ty0,,, 0, 255, 0);
|
|
|
|
|
__vertex_add_pntc(_vb, i1, j1, dep, 1, 0, 0, tx0, ty1,,, 0, 0, 255);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|