fmt: fix alignment of struct init fields (#22025)

This commit is contained in:
yuyi 2024-08-11 14:11:24 +08:00 committed by GitHub
parent 99da5726db
commit c51d30bf53
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
671 changed files with 18817 additions and 18787 deletions

View file

@ -33,16 +33,16 @@ mut:
fn create_texture(w int, h int, buf &u8) (gfx.Image, gfx.Sampler) {
sz := w * h * 4
mut img_desc := gfx.ImageDesc{
width: w
height: h
width: w
height: h
num_mipmaps: 0
// usage: .dynamic
label: &u8(0)
label: &u8(0)
d3d11_texture: 0
}
// comment, if .dynamic is enabled
img_desc.data.subimage[0][0] = gfx.Range{
ptr: buf
ptr: buf
size: usize(sz)
}
@ -51,8 +51,8 @@ fn create_texture(w int, h int, buf &u8) (gfx.Image, gfx.Sampler) {
mut smp_desc := gfx.SamplerDesc{
min_filter: .linear
mag_filter: .linear
wrap_u: .clamp_to_edge
wrap_v: .clamp_to_edge
wrap_u: .clamp_to_edge
wrap_v: .clamp_to_edge
}
sg_smp := gfx.make_sampler(&smp_desc)
@ -68,7 +68,7 @@ fn update_text_texture(sg_img gfx.Image, w int, h int, buf &u8) {
sz := w * h * 4
mut tmp_sbc := gfx.ImageData{}
tmp_sbc.subimage[0][0] = gfx.Range{
ptr: buf
ptr: buf
size: usize(sz)
}
gfx.update_image(sg_img, &tmp_sbc)
@ -311,7 +311,7 @@ fn my_init(mut app App) {
color_state := gfx.ColorTargetState{
blend: gfx.BlendState{
enabled: true
enabled: true
src_factor_rgb: .src_alpha
dst_factor_rgb: .one_minus_src_alpha
}
@ -320,7 +320,7 @@ fn my_init(mut app App) {
pipdesc.depth = gfx.DepthState{
write_enabled: true
compare: .less_equal
compare: .less_equal
}
pipdesc.cull_mode = .back
app.pip_3d = sgl.make_pipeline(&pipdesc)
@ -381,15 +381,15 @@ fn my_event_manager(mut ev gg.Event, mut app App) {
fn main() {
mut app := &App{}
app.gg = gg.new_context(
width: win_width
height: win_height
width: win_width
height: win_height
create_window: true
window_title: '3D Cube Demo'
user_data: app
bg_color: bg_color
frame_fn: frame
init_fn: my_init
event_fn: my_event_manager
window_title: '3D Cube Demo'
user_data: app
bg_color: bg_color
frame_fn: frame
init_fn: my_init
event_fn: my_event_manager
)
app.gg.run()
}

View file

@ -56,16 +56,16 @@ mut:
fn create_texture(w int, h int, buf &u8) (gfx.Image, gfx.Sampler) {
sz := w * h * 4
mut img_desc := gfx.ImageDesc{
width: w
height: h
width: w
height: h
num_mipmaps: 0
// usage: .dynamic
label: &u8(0)
label: &u8(0)
d3d11_texture: 0
}
// comment if .dynamic is enabled
img_desc.data.subimage[0][0] = gfx.Range{
ptr: buf
ptr: buf
size: usize(sz)
}
@ -74,8 +74,8 @@ fn create_texture(w int, h int, buf &u8) (gfx.Image, gfx.Sampler) {
mut smp_desc := gfx.SamplerDesc{
min_filter: .linear
mag_filter: .linear
wrap_u: .clamp_to_edge
wrap_v: .clamp_to_edge
wrap_u: .clamp_to_edge
wrap_v: .clamp_to_edge
}
sg_smp := gfx.make_sampler(&smp_desc)
@ -91,7 +91,7 @@ fn update_text_texture(sg_img gfx.Image, w int, h int, buf &u8) {
sz := w * h * 4
mut tmp_sbc := gfx.ImageData{}
tmp_sbc.subimage[0][0] = gfx.Range{
ptr: buf
ptr: buf
size: usize(sz)
}
gfx.update_image(sg_img, &tmp_sbc)
@ -304,7 +304,7 @@ fn init_cube_glsl(mut app App) {
vert_buffer_desc.size = usize(vertices.len * int(sizeof(Vertex_t)))
vert_buffer_desc.data = gfx.Range{
ptr: vertices.data
ptr: vertices.data
size: usize(vertices.len * int(sizeof(Vertex_t)))
}
@ -331,7 +331,7 @@ fn init_cube_glsl(mut app App) {
index_buffer_desc.size = usize(indices.len * int(sizeof(u16)))
index_buffer_desc.data = gfx.Range{
ptr: indices.data
ptr: indices.data
size: usize(indices.len * int(sizeof(u16)))
}
@ -356,7 +356,7 @@ fn init_cube_glsl(mut app App) {
pipdesc.depth = gfx.DepthState{
write_enabled: true
compare: .less_equal
compare: .less_equal
}
pipdesc.cull_mode = .back
@ -407,7 +407,7 @@ fn draw_cube_glsl(app App) {
// passing the view matrix as uniform
// res is a 4x4 matrix of f32 thus: 4*16 byte of size
vs_uniforms_range := gfx.Range{
ptr: &tr_matrix
ptr: &tr_matrix
size: usize(4 * 16)
}
gfx.apply_uniforms(.vs, C.SLOT_vs_params, &vs_uniforms_range)
@ -421,7 +421,7 @@ fn draw_cube_glsl(app App) {
0, // padding 4 Bytes == 1 f32
]!
fs_uniforms_range := gfx.Range{
ptr: unsafe { &text_res }
ptr: unsafe { &text_res }
size: usize(4 * 4)
}
gfx.apply_uniforms(.fs, C.SLOT_fs_params, &fs_uniforms_range)
@ -528,7 +528,7 @@ fn my_init(mut app App) {
color_state := gfx.ColorTargetState{
blend: gfx.BlendState{
enabled: true
enabled: true
src_factor_rgb: .src_alpha
dst_factor_rgb: .one_minus_src_alpha
}
@ -537,7 +537,7 @@ fn my_init(mut app App) {
pipdesc.depth = gfx.DepthState{
write_enabled: true
compare: .less_equal
compare: .less_equal
}
pipdesc.cull_mode = .back
@ -610,15 +610,15 @@ fn main() {
println(a)
app.gg = gg.new_context(
width: win_width
height: win_height
width: win_width
height: win_height
create_window: true
window_title: '3D Cube Demo'
user_data: app
bg_color: bg_color
frame_fn: frame
init_fn: my_init
event_fn: my_event_manager
window_title: '3D Cube Demo'
user_data: app
bg_color: bg_color
frame_fn: frame
init_fn: my_init
event_fn: my_event_manager
)
app.ticks = time.ticks()

View file

@ -55,20 +55,20 @@ mut:
fn create_texture(w int, h int, buf &u8) (gfx.Image, gfx.Sampler) {
sz := w * h * 4
mut img_desc := gfx.ImageDesc{
width: w
height: h
width: w
height: h
num_mipmaps: 0
// min_filter: .linear
// mag_filter: .linear
// usage: .dynamic
// wrap_u: .clamp_to_edge
// wrap_v: .clamp_to_edge
label: &u8(0)
label: &u8(0)
d3d11_texture: 0
}
// comment if .dynamic is enabled
img_desc.data.subimage[0][0] = gfx.Range{
ptr: buf
ptr: buf
size: usize(sz)
}
@ -77,8 +77,8 @@ fn create_texture(w int, h int, buf &u8) (gfx.Image, gfx.Sampler) {
mut smp_desc := gfx.SamplerDesc{
min_filter: .linear
mag_filter: .linear
wrap_u: .clamp_to_edge
wrap_v: .clamp_to_edge
wrap_u: .clamp_to_edge
wrap_v: .clamp_to_edge
}
sg_smp := gfx.make_sampler(&smp_desc)
@ -94,7 +94,7 @@ fn update_text_texture(sg_img gfx.Image, w int, h int, buf &u8) {
sz := w * h * 4
mut tmp_sbc := gfx.ImageData{}
tmp_sbc.subimage[0][0] = gfx.Range{
ptr: buf
ptr: buf
size: usize(sz)
}
gfx.update_image(sg_img, &tmp_sbc)
@ -171,7 +171,7 @@ fn init_cube_glsl(mut app App) {
vert_buffer_desc.size = usize(vertices.len * int(sizeof(Vertex_t)))
vert_buffer_desc.data = gfx.Range{
ptr: vertices.data
ptr: vertices.data
size: usize(vertices.len * int(sizeof(Vertex_t)))
}
@ -197,7 +197,7 @@ fn init_cube_glsl(mut app App) {
index_buffer_desc.size = usize(indices.len * int(sizeof(u16)))
index_buffer_desc.data = gfx.Range{
ptr: indices.data
ptr: indices.data
size: usize(indices.len * int(sizeof(u16)))
}
@ -222,7 +222,7 @@ fn init_cube_glsl(mut app App) {
pipdesc.depth = gfx.DepthState{
write_enabled: true
compare: .less_equal
compare: .less_equal
}
pipdesc.cull_mode = .back
@ -284,7 +284,7 @@ fn draw_cube_glsl(app App) {
// passing the view matrix as uniform
// res is a 4x4 matrix of f32 thus: 4*16 byte of size
vs_uniforms_range := gfx.Range{
ptr: &tr_matrix
ptr: &tr_matrix
size: usize(4 * 16)
}
gfx.apply_uniforms(.vs, C.SLOT_vs_params, &vs_uniforms_range)
@ -302,7 +302,7 @@ fn draw_cube_glsl(app App) {
0, // padding bytes , see "fs_params" struct paddings in rt_glsl.h
]!
fs_uniforms_range := gfx.Range{
ptr: unsafe { &tmp_fs_params }
ptr: unsafe { &tmp_fs_params }
size: usize(sizeof(tmp_fs_params))
}
gfx.apply_uniforms(.fs, C.SLOT_fs_params, &fs_uniforms_range)
@ -410,15 +410,15 @@ fn my_event_manager(mut ev gg.Event, mut app App) {
fn main() {
mut app := &App{}
app.gg = gg.new_context(
width: win_width
height: win_height
width: win_width
height: win_height
create_window: true
window_title: '3D Ray Marching Cube'
user_data: app
bg_color: bg_color
frame_fn: frame
init_fn: my_init
event_fn: my_event_manager
window_title: '3D Ray Marching Cube'
user_data: app
bg_color: bg_color
frame_fn: frame
init_fn: my_init
event_fn: my_event_manager
)
app.ticks = time.ticks()
app.gg.run()

View file

@ -47,19 +47,19 @@ mut:
fn create_texture(w int, h int, buf byteptr) (gfx.Image, gfx.Sampler) {
sz := w * h * 4
mut img_desc := gfx.ImageDesc{
width: w
width: w
height: h
}
img_desc.data.subimage[0][0] = gfx.Range{
ptr: buf
ptr: buf
size: usize(sz)
}
sg_img := gfx.make_image(&img_desc)
mut smp_desc := gfx.SamplerDesc{
min_filter: .linear
mag_filter: .linear
wrap_u: .clamp_to_edge
wrap_v: .clamp_to_edge
wrap_u: .clamp_to_edge
wrap_v: .clamp_to_edge
}
sg_smp := gfx.make_sampler(&smp_desc)
return sg_img, sg_smp
@ -326,13 +326,13 @@ fn (mut app App) on_event(ev &gg.Event, x voidptr) {
fn main() {
mut app := &App{}
app.gg = gg.new_context(
width: 800
height: 800
width: 800
height: 800
window_title: '3D Dual shader Cube - click and rotate with the mouse'
user_data: app
frame_fn: app.frame
init_fn: app.on_init
event_fn: app.on_event
user_data: app
frame_fn: app.frame
init_fn: app.on_init
event_fn: app.on_event
)
app.gg.run()
}

View file

@ -80,7 +80,7 @@ fn create_texture(w int, h int, buf byteptr) (gfx.Image, gfx.Sampler) {
// vfmt on
// comment if .dynamic is enabled
img_desc.data.subimage[0][0] = gfx.Range{
ptr: buf
ptr: buf
size: usize(sz)
}
@ -89,8 +89,8 @@ fn create_texture(w int, h int, buf byteptr) (gfx.Image, gfx.Sampler) {
mut smp_desc := gfx.SamplerDesc{
min_filter: .linear
mag_filter: .linear
wrap_u: .clamp_to_edge
wrap_v: .clamp_to_edge
wrap_u: .clamp_to_edge
wrap_v: .clamp_to_edge
}
sg_smp := gfx.make_sampler(&smp_desc)
@ -106,7 +106,7 @@ fn update_text_texture(sg_img gfx.Image, w int, h int, buf byteptr) {
sz := w * h * 4
mut tmp_sbc := gfx.ImageData{}
tmp_sbc.subimage[0][0] = gfx.Range{
ptr: buf
ptr: buf
size: usize(sz)
}
gfx.update_image(sg_img, &tmp_sbc)
@ -183,7 +183,7 @@ fn init_cube_glsl_i(mut app App) {
unsafe { vmemset(&vert_buffer_desc, 0, int(sizeof(vert_buffer_desc))) }
vert_buffer_desc.size = usize(vertices.len * int(sizeof(Vertex_t)))
vert_buffer_desc.data = gfx.Range{
ptr: vertices.data
ptr: vertices.data
size: usize(vertices.len * int(sizeof(Vertex_t)))
}
vert_buffer_desc.@type = .vertexbuffer
@ -218,7 +218,7 @@ fn init_cube_glsl_i(mut app App) {
unsafe { vmemset(&index_buffer_desc, 0, int(sizeof(index_buffer_desc))) }
index_buffer_desc.size = usize(indices.len * int(sizeof(u16)))
index_buffer_desc.data = gfx.Range{
ptr: indices.data
ptr: indices.data
size: usize(indices.len * int(sizeof(u16)))
}
index_buffer_desc.@type = .indexbuffer
@ -253,7 +253,7 @@ fn init_cube_glsl_i(mut app App) {
pipdesc.depth = gfx.DepthState{
write_enabled: true
compare: .less_equal
compare: .less_equal
}
pipdesc.cull_mode = .back
@ -330,7 +330,7 @@ fn draw_cube_glsl_i(mut app App) {
// vfmt on
}
range := gfx.Range{
ptr: unsafe { &app.inst_pos }
ptr: unsafe { &app.inst_pos }
size: usize(num_inst * int(sizeof(m4.Vec4)))
}
gfx.update_buffer(app.bind['inst'].vertex_buffers[1], &range)
@ -340,7 +340,7 @@ fn draw_cube_glsl_i(mut app App) {
// passing the view matrix as uniform
// res is a 4x4 matrix of f32 thus: 4*16 byte of size
vs_uniforms_range := gfx.Range{
ptr: unsafe { &tr_matrix }
ptr: unsafe { &tr_matrix }
size: usize(4 * 16)
}
gfx.apply_uniforms(.vs, C.SLOT_vs_params_i, &vs_uniforms_range)

View file

@ -21,20 +21,20 @@ import stbi
pub fn create_texture(w int, h int, buf &u8) (gfx.Image, gfx.Sampler) {
sz := w * h * 4
mut img_desc := gfx.ImageDesc{
width: w
height: h
width: w
height: h
num_mipmaps: 0
// min_filter: .linear
// mag_filter: .linear
// usage: .dynamic
// wrap_u: .clamp_to_edge
// wrap_v: .clamp_to_edge
label: &u8(0)
label: &u8(0)
d3d11_texture: 0
}
// comment if .dynamic is enabled
img_desc.data.subimage[0][0] = gfx.Range{
ptr: buf
ptr: buf
size: usize(sz)
}
@ -43,8 +43,8 @@ pub fn create_texture(w int, h int, buf &u8) (gfx.Image, gfx.Sampler) {
mut smp_desc := gfx.SamplerDesc{
min_filter: .linear
mag_filter: .linear
wrap_u: .clamp_to_edge
wrap_v: .clamp_to_edge
wrap_u: .clamp_to_edge
wrap_v: .clamp_to_edge
}
sg_smp := gfx.make_sampler(&smp_desc)
@ -82,7 +82,7 @@ pub fn (mut obj_part ObjPart) create_pipeline(in_part []int, shader gfx.Shader,
vert_buffer_desc.size = usize(obj_buf.vbuf.len * int(sizeof(Vertex_pnct)))
vert_buffer_desc.data = gfx.Range{
ptr: obj_buf.vbuf.data
ptr: obj_buf.vbuf.data
size: usize(obj_buf.vbuf.len * int(sizeof(Vertex_pnct)))
}
@ -96,7 +96,7 @@ pub fn (mut obj_part ObjPart) create_pipeline(in_part []int, shader gfx.Shader,
index_buffer_desc.size = usize(obj_buf.ibuf.len * int(sizeof(u32)))
index_buffer_desc.data = gfx.Range{
ptr: obj_buf.ibuf.data
ptr: obj_buf.ibuf.data
size: usize(obj_buf.ibuf.len * int(sizeof(u32)))
}
@ -118,7 +118,7 @@ pub fn (mut obj_part ObjPart) create_pipeline(in_part []int, shader gfx.Shader,
color_state := gfx.ColorTargetState{
blend: gfx.BlendState{
enabled: true
enabled: true
src_factor_rgb: .src_alpha
dst_factor_rgb: .one_minus_src_alpha
}
@ -127,7 +127,7 @@ pub fn (mut obj_part ObjPart) create_pipeline(in_part []int, shader gfx.Shader,
pipdesc.depth = gfx.DepthState{
write_enabled: true
compare: .less_equal
compare: .less_equal
}
pipdesc.cull_mode = .front
@ -243,11 +243,11 @@ pub fn (obj_part ObjPart) bind_and_draw(rend_data_index int, in_data Shader_data
gfx.apply_bindings(part_render_data.bind)
vs_uniforms_range := gfx.Range{
ptr: in_data.vs_data
ptr: in_data.vs_data
size: usize(in_data.vs_len)
}
fs_uniforms_range := gfx.Range{
ptr: unsafe { &tmp_fs_params }
ptr: unsafe { &tmp_fs_params }
size: usize(in_data.fs_len)
}

View file

@ -90,9 +90,9 @@ fn calc_matrices(w f32, h f32, rx f32, ry f32, in_scale f32, pos m4.Vec4) obj.Ma
mvp := mv * view_proj // model view projection
return obj.Mats{
mv: mv
mv: mv
mvp: mvp
nm: nm
nm: nm
}
}
@ -119,9 +119,9 @@ fn draw_model(app App, model_pos m4.Vec4) u32 {
mats := calc_matrices(dw, dh, rot[0], rot[1], zoom_scale, model_pos)
mut tmp_vs_param := obj.Tmp_vs_param{
mv: mats.mv
mv: mats.mv
mvp: mats.mvp
nm: mats.nm
nm: mats.nm
}
// *** fragment shader uniforms ***
@ -135,9 +135,9 @@ fn draw_model(app App, model_pos m4.Vec4) u32 {
sd := obj.Shader_data{
vs_data: unsafe { &tmp_vs_param }
vs_len: int(sizeof(tmp_vs_param))
vs_len: int(sizeof(tmp_vs_param))
fs_data: unsafe { &tmp_fs_params }
fs_len: int(sizeof(tmp_fs_params))
fs_len: int(sizeof(tmp_fs_params))
}
return app.obj_part.bind_and_draw_all(sd)
@ -292,16 +292,16 @@ fn main() {
}
app.gg = gg.new_context(
width: win_width
height: win_height
width: win_width
height: win_height
create_window: true
window_title: 'V Wavefront OBJ viewer - Use the mouse wheel to zoom'
user_data: app
bg_color: bg_color
frame_fn: frame
init_fn: my_init
cleanup_fn: cleanup
event_fn: my_event_manager
window_title: 'V Wavefront OBJ viewer - Use the mouse wheel to zoom'
user_data: app
bg_color: bg_color
frame_fn: frame
init_fn: my_init
cleanup_fn: cleanup
event_fn: my_event_manager
)
app.ticks = time.ticks()

View file

@ -34,8 +34,8 @@ struct Vertex_t {
fn main() {
mut app := &App{
width: 800
height: 400
width: 800
height: 400
pass_action: gfx.create_clear_pass_action(0.0, 0.0, 0.0, 1.0) // This will create a black color as a default pass (window background color)
}
app.run()
@ -53,15 +53,15 @@ mut:
fn (mut a App) run() {
title := 'V Simple Shader Example'
desc := sapp.Desc{
width: a.width
height: a.height
user_data: a
init_userdata_cb: init
frame_userdata_cb: frame
window_title: title.str
html5_canvas_name: title.str
width: a.width
height: a.height
user_data: a
init_userdata_cb: init
frame_userdata_cb: frame
window_title: title.str
html5_canvas_name: title.str
cleanup_userdata_cb: cleanup
sample_count: 4 // Enables MSAA (Multisample anti-aliasing) x4 on rendered output, this can be omitted.
sample_count: 4 // Enables MSAA (Multisample anti-aliasing) x4 on rendered output, this can be omitted.
}
sapp.run(&desc)
}
@ -100,7 +100,7 @@ fn init(user_data voidptr) {
vertex_buffer_desc.size = usize(vertices.len * int(sizeof(Vertex_t)))
vertex_buffer_desc.data = gfx.Range{
ptr: vertices.data
ptr: vertices.data
size: vertex_buffer_desc.size
}

View file

@ -28,7 +28,7 @@ fn init(mut state State) {
fsq_verts := [f32(-1.0), -3.0, 3.0, 1.0, -1.0, 1.0]!
state.bind.vertex_buffers[0] = gfx.make_buffer(gfx.BufferDesc{
label: c'fsq vertices'
data: unsafe { gfx.Range{&fsq_verts[0], sizeof(fsq_verts)} }
data: unsafe { gfx.Range{&fsq_verts[0], sizeof(fsq_verts)} }
})
mut pipeline := gfx.PipelineDesc{}
@ -55,13 +55,13 @@ fn frame(mut state State) {
fn main() {
sapp.run(sapp.Desc{
window_title: c'SDF Rendering'
width: 512
height: 512
window_title: c'SDF Rendering'
width: 512
height: 512
frame_userdata_cb: frame
init_userdata_cb: init
cleanup_cb: gfx.shutdown
icon: sapp.IconDesc{
init_userdata_cb: init
cleanup_cb: gfx.shutdown
icon: sapp.IconDesc{
sokol_default: true
}
user_data: &State{}

View file

@ -14,12 +14,12 @@ fn frame(mut action gfx.PassAction) {
fn main() {
action := gfx.create_clear_pass_action(1.0, 0, 0, 1.0)
sapp.run(
window_title: c'Clear (sokol app)'
width: 400
height: 300
init_cb: || gfx.setup(sapp.create_desc())
cleanup_cb: || gfx.shutdown()
window_title: c'Clear (sokol app)'
width: 400
height: 300
init_cb: || gfx.setup(sapp.create_desc())
cleanup_cb: || gfx.shutdown()
frame_userdata_cb: frame
user_data: &action
user_data: &action
)
}

View file

@ -12,12 +12,12 @@ fn main() {
}
title := 'Sokol Drawing Template'
desc := sapp.Desc{
width: 640
height: 480
user_data: state
init_userdata_cb: init
width: 640
height: 480
user_data: state
init_userdata_cb: init
frame_userdata_cb: frame
window_title: title.str
window_title: title.str
html5_canvas_name: title.str
}
sapp.run(&desc)

View file

@ -14,15 +14,15 @@ mut:
fn main() {
state := &AppState{
pass_action: gfx.create_clear_pass_action(0.3, 0.3, 0.32, 1.0)
pass_action: gfx.create_clear_pass_action(0.3, 0.3, 0.32, 1.0)
font_context: unsafe { nil } // &fontstash.Context(0)
}
title := 'V Metal/GL Text Rendering'
desc := sapp.Desc{
user_data: state
init_userdata_cb: init
user_data: state
init_userdata_cb: init
frame_userdata_cb: frame
window_title: title.str
window_title: title.str
html5_canvas_name: title.str
}
sapp.run(&desc)

View file

@ -73,18 +73,18 @@ fn main() {
pass_action.colors[0] = color_action
state := &AppState{
pass_action: pass_action
fons: unsafe { nil } // &fontstash.Context(0)
fons: unsafe { nil } // &fontstash.Context(0)
}
title := 'V Metal/GL Text Rendering'
desc := sapp.Desc{
user_data: state
init_userdata_cb: init
user_data: state
init_userdata_cb: init
frame_userdata_cb: frame
window_title: title.str
window_title: title.str
html5_canvas_name: title.str
width: 600
height: 700
high_dpi: true
width: 600
height: 700
high_dpi: true
}
sapp.run(&desc)
}

View file

@ -11,11 +11,11 @@ const default_v_color = Color{93, 136, 193, 255}
// * Module public
pub fn new(location vec.Vec2[f64]) &Particle {
p := &Particle{
location: location
velocity: vec.Vec2[f64]{0, 0}
acceleration: vec.Vec2[f64]{0, 0}
color: particle.default_v_color
life_time: particle.default_life_time
location: location
velocity: vec.Vec2[f64]{0, 0}
acceleration: vec.Vec2[f64]{0, 0}
color: particle.default_v_color
life_time: particle.default_life_time
life_time_init: particle.default_life_time
}
return p

View file

@ -10,8 +10,8 @@ import particle
fn main() {
mut app := &App{
width: 800
height: 400
width: 800
height: 400
pass_action: gfx.create_clear_pass_action(0.1, 0.1, 0.1, 1.0)
}
app.init()
@ -33,7 +33,7 @@ fn (mut a App) init() {
a.frame = 0
a.last = time.ticks()
a.ps = particle.System{
width: a.width
width: a.width
height: a.height
}
a.ps.init(particle.SystemConfig{
@ -50,14 +50,14 @@ fn (mut a App) cleanup() {
fn (mut a App) run() {
title := 'V Particle Example'
desc := sapp.Desc{
width: a.width
height: a.height
user_data: a
init_userdata_cb: init
frame_userdata_cb: frame
event_userdata_cb: event
window_title: title.str
html5_canvas_name: title.str
width: a.width
height: a.height
user_data: a
init_userdata_cb: init
frame_userdata_cb: frame
event_userdata_cb: event
window_title: title.str
html5_canvas_name: title.str
cleanup_userdata_cb: cleanup
}
sapp.run(&desc)
@ -80,7 +80,7 @@ fn init(mut app App) {
color_state := gfx.ColorTargetState{
blend: gfx.BlendState{
enabled: true
enabled: true
src_factor_rgb: .src_alpha
dst_factor_rgb: .one_minus_src_alpha
}

View file

@ -47,12 +47,12 @@ fn main() {
audio.setup(stream_userdata_cb: my_audio_stream_callback, user_data: state)
defer { audio.shutdown() }
state.gg = gg.new_context(
bg_color: gg.Color{50, 50, 50, 255}
width: 800
height: 600
bg_color: gg.Color{50, 50, 50, 255}
width: 800
height: 600
window_title: 'ByteBeat Music'
frame_fn: graphics_frame
user_data: state
frame_fn: graphics_frame
user_data: state
)
state.gg.run()
}

View file

@ -54,9 +54,9 @@ fn audio_player_callback(mut buffer &f32, num_frames int, num_channels int, mut
fn (mut p Player) init() {
audio.setup(
num_channels: 2
num_channels: 2
stream_userdata_cb: audio_player_callback
user_data: p
user_data: p
)
}