rm push/pop
This commit is contained in:
34
effects.cm
34
effects.cm
@@ -36,7 +36,7 @@ effects.register('bloom', {
|
||||
|
||||
// Threshold extraction
|
||||
var thresh_target = ctx.alloc_target(size.width, size.height, 'bloom_thresh')
|
||||
push(passes, {
|
||||
passes[] = {
|
||||
type: 'shader',
|
||||
shader: 'threshold',
|
||||
input: input,
|
||||
@@ -45,7 +45,7 @@ effects.register('bloom', {
|
||||
threshold: params.threshold != null ? params.threshold : 0.8,
|
||||
intensity: params.intensity != null ? params.intensity : 1.0
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
// Blur ping-pong
|
||||
var blur_a = ctx.alloc_target(size.width, size.height, 'bloom_blur_a')
|
||||
@@ -56,31 +56,31 @@ effects.register('bloom', {
|
||||
var i = 0
|
||||
|
||||
for (i = 0; i < blur_count; i++) {
|
||||
push(passes, {
|
||||
passes[] = {
|
||||
type: 'shader',
|
||||
shader: 'blur',
|
||||
input: blur_src,
|
||||
output: blur_a,
|
||||
uniforms: {direction: {x: 2, y: 0}, texel_size: texel}
|
||||
})
|
||||
push(passes, {
|
||||
}
|
||||
passes[] = {
|
||||
type: 'shader',
|
||||
shader: 'blur',
|
||||
input: blur_a,
|
||||
output: blur_b,
|
||||
uniforms: {direction: {x: 0, y: 2}, texel_size: texel}
|
||||
})
|
||||
}
|
||||
blur_src = blur_b
|
||||
}
|
||||
|
||||
// Additive composite
|
||||
push(passes, {
|
||||
passes[] = {
|
||||
type: 'composite',
|
||||
base: input,
|
||||
overlay: blur_src,
|
||||
output: output,
|
||||
blend: 'add'
|
||||
})
|
||||
}
|
||||
|
||||
return passes
|
||||
}
|
||||
@@ -125,16 +125,16 @@ effects.register('mask', {
|
||||
|
||||
// Render mask source to target
|
||||
var mask_target = ctx.alloc_target(size.width, size.height, 'mask_src')
|
||||
push(passes, {
|
||||
passes[] = {
|
||||
type: 'render_subtree',
|
||||
root: mask_source,
|
||||
output: mask_target,
|
||||
clear: {r: 0, g: 0, b: 0, a: 0},
|
||||
space: params.space || 'local'
|
||||
})
|
||||
}
|
||||
|
||||
// Apply mask shader
|
||||
push(passes, {
|
||||
passes[] = {
|
||||
type: 'shader',
|
||||
shader: 'mask',
|
||||
inputs: [input, mask_target],
|
||||
@@ -143,7 +143,7 @@ effects.register('mask', {
|
||||
channel: params.channel == 'alpha' ? 0 : 1,
|
||||
invert: params.invert ? 1 : 0
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
return passes
|
||||
}
|
||||
@@ -192,25 +192,25 @@ effects.register('blur', {
|
||||
var i = 0
|
||||
|
||||
for (i = 0; i < blur_count; i++) {
|
||||
push(passes, {
|
||||
passes[] = {
|
||||
type: 'shader',
|
||||
shader: 'blur',
|
||||
input: src,
|
||||
output: blur_a,
|
||||
uniforms: {direction: {x: 2, y: 0}, texel_size: texel}
|
||||
})
|
||||
push(passes, {
|
||||
}
|
||||
passes[] = {
|
||||
type: 'shader',
|
||||
shader: 'blur',
|
||||
input: blur_a,
|
||||
output: blur_b,
|
||||
uniforms: {direction: {x: 0, y: 2}, texel_size: texel}
|
||||
})
|
||||
}
|
||||
src = blur_b
|
||||
}
|
||||
|
||||
// Final blit to output
|
||||
push(passes, {type: 'blit', source: src, dest: output})
|
||||
passes[] = {type: 'blit', source: src, dest: output}
|
||||
return passes
|
||||
}
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user