Skip to content

Commit a748177

Browse files
-reverted numsymbols per tri
1 parent 7dce828 commit a748177

File tree

2 files changed

+23
-4
lines changed

2 files changed

+23
-4
lines changed

src/main.ts

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,8 @@ const controls = {
3434
'HighTriRange': 1.0,
3535
'HeightT': 'Off',
3636
'SymbolScaleT': 'Off',
37-
'SymbolPositionT': 'Off'
37+
'SymbolPositionT': 'Off',
38+
'NumSymbolsPerTri': 1.0,
3839

3940
};
4041

@@ -92,6 +93,7 @@ function main() {
9293
f1.add(controls, 'HeightT', [ 'On', 'Off' ]);
9394
f1.add(controls, 'SymbolScaleT', [ 'On', 'Off' ]);
9495
f1.add(controls, 'SymbolPositionT', [ 'On', 'Off' ]);
96+
f1.add(controls, 'NumSymbolsPerTri', 0.0, 10.0).step(1.0);
9597

9698
var f2 = gui.addFolder('Animation');
9799

@@ -137,13 +139,21 @@ function main() {
137139
sdf.setDimensions(window.innerWidth, window.innerHeight);
138140

139141
time = 0;
142+
143+
let SymbolPositionT = 0;
144+
let SymbolScaleT = 0;
145+
let HeightT = 0;
140146
// This function will be called every frame
141147
function tick() {
142148
time +=1;
143149
color = vec4.fromValues(controls.Color[0] /255, controls.Color[1] / 255, controls.Color[2] / 255, 1);
144150
noiseColor = vec4.fromValues(controls['Noise Color'][0] /255, controls['Noise Color'][1] / 255, controls['Noise Color'][2] / 255, 1);
145151
height = controls['Depth'];
146152

153+
if(controls['SymbolScaleT'] == 'On'){SymbolScaleT += 0.01}
154+
if(controls['SymbolPositionT'] == 'On'){SymbolPositionT += 0.01}
155+
if(controls['HeightT'] == 'On'){HeightT += 0.01}
156+
147157
if(controls['Camera Animation'] == 'On'){
148158
// camera.setPosition(vec3.fromValues(
149159
// controls['CameraX'] + Math.sin(timeCamera) * 4,
@@ -167,13 +177,16 @@ function main() {
167177
icosphere.create();
168178
}
169179

180+
181+
170182
sdf.setRows(controls['Rows']);
171183
sdf.setTriScale(controls['TriScale']);
172184
sdf.setLowTriRange(controls['LowTriRange']);
173185
sdf.setHighTriRange(controls['HighTriRange']);
174-
sdf.setHightT(controls['HeightT'] == 'On' ? 1.0 : 0.0);
175-
sdf.setSymbolScaleT(controls['SymbolScaleT'] == 'On' ? 1.0 : 0.0);
176-
sdf.setSymbolPositionT(controls['SymbolPositionT'] == 'On' ? 1.0 : 0.0);
186+
sdf.setHightT(HeightT);
187+
sdf.setSymbolScaleT(SymbolScaleT);
188+
sdf.setSymbolPositionT(SymbolPositionT);
189+
//sdf.setNumSymbolsPerTri(controls['NumSymbolsPerTri']);
177190

178191
renderer.render(camera, time, height, color, noiseColor, sdf, [
179192
square,

src/shaders/sdf-objects.glsl

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -275,6 +275,12 @@ float pyramidNormalSDF(vec3 p, float h, float depth, float depth_scale, float nu
275275
shape_transform = transform(shape_transform, vec3(0, 0, 0), vec3(-0.01+0.02*random(vec2(_x+i+_y, _z+g_rot)), -0.01+0.02*random(vec2(_x+i, _z+g_rot)), 0.0), vec3(1.0 * scale, 1000.0 * scale, 1.0 * scale));
276276
prisim = flatSubtraction(prisim, randomSymbol(shape_transform, random(vec2(_x+j+i, _z+g_rot))));
277277

278+
// for(float k=0.0; k<u_NumSymbolsPerTri; k++){
279+
// float scale = 0.02 + 0.04 * random(vec2(_x+i, _z+g_rot+k));
280+
// vec3 shape_transform2 = transform(shape_transform, vec3(0, 0, 0), vec3(-0.1+0.2*random(vec2(_x+i+_y+u_SymbolPositionT, _z+g_rot+k)), -0.1+0.2*random(vec2(_x+i+k+u_SymbolPositionT, _z+g_rot)), -0.02+0.04*random(vec2(k+u_SymbolPositionT, k))), vec3(1.0 * scale, 1000.0 * scale, 1.0 * scale));
281+
// prisim = flatSubtraction(prisim, randomSymbol(shape_transform2, random(vec2(_x+j+i, _z+g_rot+k))));
282+
// }
283+
278284
if(noiseHeight > 0.0){
279285
final = flatUnion(final, prisim);
280286
}else{

0 commit comments

Comments
 (0)