From 72e7ec75511d3cc566b6a800917c64ef57739459 Mon Sep 17 00:00:00 2001 From: Peter Li Date: Tue, 20 May 2025 00:56:37 -0700 Subject: [PATCH] saving --- engine/imgui/src/utils/structDebugger.zig | 54 ++++++++--- extras/gameExtras/src/objectSpawner.zig | 3 - projects/content/bsp/testmap.map | 95 ++++++++++--------- projects/sampleGame/externGame/externGame.zig | 53 +++++------ 4 files changed, 117 insertions(+), 88 deletions(-) diff --git a/engine/imgui/src/utils/structDebugger.zig b/engine/imgui/src/utils/structDebugger.zig index 3d43f34..078d1c8 100644 --- a/engine/imgui/src/utils/structDebugger.zig +++ b/engine/imgui/src/utils/structDebugger.zig @@ -2,7 +2,7 @@ pub fn structDebugWindow(ptr: anytype) void { const T = @typeInfo(@TypeOf(ptr)).pointer.child; if (ig.begin("struct debugger: " ++ @typeName(T), null, .{})) { - ig.textf("{s} @ 0x{x}", .{ @typeName(T), @as(u64, @intFromPtr(ptr)) }); + ig.textf("{s} @ 0x{x} size: {d}", .{ @typeName(T), @as(u64, @intFromPtr(ptr)), @sizeOf(T) }); displayStruct(ptr, 0, 3); } @@ -13,40 +13,68 @@ var formatBuf: [128]u8 = undefined; pub inline fn displayStruct(s: anytype, comptime depth: u32, comptime maxDepth: u32) void { const TypeInfo = @typeInfo(@TypeOf(s.*)).@"struct"; - const prefix = " " ** depth; + const prefix = " " ** depth; inline for (TypeInfo.fields) |field| { const fieldTypeInfo = @typeInfo(field.type); switch (fieldTypeInfo) { .@"struct" => { // todo add a struct display function - ig.textf(prefix ++ "{s}({s})[{d}]: size: {d} offset: {d}", .{ + if (@hasField(field.type, "items")) { + ig.textf(prefix ++ "SUSPECTED ARRAYLIST ({s}: []{s}): size: {d} offset: {d}", .{ + field.name, + @typeName(@TypeOf(@field(s, field.name).items[0])), + @sizeOf(field.type), + @offsetOf(@TypeOf(s.*), field.name), + }); + continue; + } + + ig.textf(prefix ++ "{s}({s}): size: {d} offset: {d}", .{ field.name, @typeName(field.type), - depth, @sizeOf(field.type), @offsetOf(@TypeOf(s.*), field.name), }); - if (depth < maxDepth) { + if (depth < maxDepth and fieldTypeInfo.@"struct".layout != .@"packed") { displayStruct(&@field(s, field.name), depth + 1, maxDepth); } }, - .pointer => {}, - .float => {}, - //.bool => { - //const checkboxtext = std.fmt.bufPrintZ(&formatBuf, "{s}", .{field.name}) catch "name too long"; + .bool => { + const checkboxtext = std.fmt.bufPrintZ(&formatBuf, "{s}", .{field.name}) catch "name too long"; - // _ = ig.checkbox(checkboxtext, &@field(s, field.name)); - //}, - else => { - ig.textf(prefix ++ "UNIMPLEMENTED TYPE: {s} {s}: size: {d} offset: {d}", .{ + _ = ig.checkbox(checkboxtext, &@field(s, field.name)); + }, + .int => { + if (fieldTypeInfo.int.bits == 32) { + const p: *c_int = @ptrCast(&@field(s, field.name)); + _ = ig.inputInt(prefix ++ field.name, p, 1, 10, .{}); + } else { + ig.textf(prefix ++ "<{s}>: {s}: size: {d} offset: {d}", .{ + @typeName(field.type), + field.name, + @sizeOf(field.type), + @offsetOf(@TypeOf(s.*), field.name), + }); + } + }, + .@"opaque" => { + ig.textf(prefix ++ "({s}: {s}): size: {d} offset: {d}", .{ @typeName(field.type), field.name, @sizeOf(field.type), @offsetOf(@TypeOf(s.*), field.name), }); }, + else => { + ig.textf(prefix ++ "UNIMPLEMENTED TYPE: ({s}: {s}) size: {d} offset: {d}", .{ + field.name, + @typeName(field.type), + @sizeOf(field.type), + @offsetOf(@TypeOf(s.*), field.name), + }); + }, } } } diff --git a/extras/gameExtras/src/objectSpawner.zig b/extras/gameExtras/src/objectSpawner.zig index a1d8a2f..74fd33c 100644 --- a/extras/gameExtras/src/objectSpawner.zig +++ b/extras/gameExtras/src/objectSpawner.zig @@ -57,9 +57,6 @@ pub fn tick(self: *@This(), dt: f64) void { if (self.windowOpen) { if (ig.begin("object Spawner", null, .{})) { self.objectSpawnOptions(); - } - ig.end(); - if (ig.begin("objects in scene", null, .{})) { self.spawnedObjectsList(); } ig.end(); diff --git a/projects/content/bsp/testmap.map b/projects/content/bsp/testmap.map index 2bba7fd..4615b56 100644 --- a/projects/content/bsp/testmap.map +++ b/projects/content/bsp/testmap.map @@ -567,7 +567,7 @@ ( -792 912 144 ) ( -792 904 152 ) ( -664 904 152 ) mapping_defaults/ProtoBrightBlue -144 -208 0 1 1 ( -784 784 128 ) ( -783 784 128 ) ( -784 785 128 ) mapping_defaults/ProtoBrightBlue -144 -208 0 1 1 ( -720 944 176 ) ( -712 1072 176 ) ( -712 944 176 ) mapping_defaults/ProtoBrightBlue -144 -208 0 1 1 -( -664 944 136 ) ( -663 944 136 ) ( -664 944 137 ) mapping_defaults/ProtoBrightBlue -144 -48 0 1 1 +( -664 948 136 ) ( -663 948 136 ) ( -664 948 137 ) mapping_defaults/ProtoBrightBlue -144 -48 0 1 1 ( -464 944 136 ) ( -464 944 137 ) ( -464 945 136 ) mapping_defaults/ProtoBrightBlue 207.99982 -48 0 1 1 } // brush 63 @@ -689,15 +689,6 @@ } // brush 76 { -( -792 944 176 ) ( -792 945 176 ) ( -792 944 177 ) mapping_defaults/ProtoDark 208 -48 0 1 1 -( -716 940 176 ) ( -716 940 177 ) ( -715 940 176 ) mapping_defaults/ProtoDark -144 -48 0 1 1 -( -716 944 176 ) ( -715 944 176 ) ( -716 945 176 ) mapping_defaults/ProtoDark -144 -208 0 1 1 -( -612 948 272 ) ( -612 949 272 ) ( -611 948 272 ) mapping_defaults/ProtoDark -144 -208 0 1 1 -( -612 948 180 ) ( -611 948 180 ) ( -612 948 181 ) mapping_defaults/ProtoDark -144 -48 0 1 1 -( -464 948 180 ) ( -464 948 181 ) ( -464 949 180 ) mapping_defaults/ProtoDark 208 -48 0 1 1 -} -// brush 77 -{ ( -272 736 16 ) ( -272 737 16 ) ( -272 736 17 ) mapping_defaults/ProtoDark 208 -48 0 1 1 ( -272 736 16 ) ( -272 736 17 ) ( -271 736 16 ) mapping_defaults/ProtoDark -144 -48 0 1 1 ( -272 736 16 ) ( -271 736 16 ) ( -272 737 16 ) mapping_defaults/ProtoDark -144 -208 0 1 1 @@ -705,7 +696,7 @@ ( -256 960 32 ) ( -255 960 32 ) ( -256 960 33 ) mapping_defaults/ProtoDark -144 -48 0 1 1 ( -256 960 32 ) ( -256 960 33 ) ( -256 961 32 ) mapping_defaults/ProtoDark 208 -48 0 1 1 } -// brush 78 +// brush 77 { ( -368 1040 16 ) ( -368 1041 16 ) ( -368 1040 17 ) mapping_defaults/ProtoDark 208 -48 0 1 1 ( -368 1040 16 ) ( -368 1040 17 ) ( -367 1040 16 ) mapping_defaults/ProtoDark -144 -48 0 1 1 @@ -714,7 +705,7 @@ ( -160 1056 32 ) ( -159 1056 32 ) ( -160 1056 33 ) mapping_defaults/ProtoDark -144 -48 0 1 1 ( -160 1056 32 ) ( -160 1056 33 ) ( -160 1057 32 ) mapping_defaults/ProtoDark 208 -48 0 1 1 } -// brush 79 +// brush 78 { ( 64 720 176 ) ( 48 720 160 ) ( 48 848 160 ) mapping_defaults/ProtoDark -144 -208 0 1 1 ( -128 720 16 ) ( -128 720 17 ) ( -127 720 16 ) mapping_defaults/ProtoDark -144 -47.999992 0 1 1 @@ -722,7 +713,7 @@ ( 80 800 32 ) ( 81 800 32 ) ( 80 800 33 ) mapping_defaults/ProtoDark -144 -47.999992 0 1 1 ( 112 768 32 ) ( 112 768 33 ) ( 112 769 32 ) mapping_defaults/ProtoDark 208 -48 0 1 1 } -// brush 80 +// brush 79 { ( 112 720 48 ) ( 112 721 48 ) ( 112 720 49 ) mapping_defaults/ProtoDark 208 -48 0 1 1 ( 80 720 48 ) ( 80 720 49 ) ( 81 720 48 ) mapping_defaults/ProtoDark -144 -48 0 1 1 @@ -731,7 +722,7 @@ ( 176 800 64 ) ( 177 800 64 ) ( 176 800 65 ) mapping_defaults/ProtoDark -144 -48 0 1 1 ( 176 800 64 ) ( 176 800 65 ) ( 176 801 64 ) mapping_defaults/ProtoDark 208 -48 0 1 1 } -// brush 81 +// brush 80 { ( -96 800 16 ) ( -96 801 16 ) ( -96 800 17 ) mapping_defaults/ProtoDark 208 -48 0 1 1 ( -96 800 16 ) ( -96 800 17 ) ( -95 800 16 ) mapping_defaults/ProtoDark -144 -48 0 1 1 @@ -740,7 +731,7 @@ ( 176 880 32 ) ( 177 880 32 ) ( 176 880 33 ) mapping_defaults/ProtoDark -144 -48 0 1 1 ( 0 800 112 ) ( 0 928 96 ) ( 0 800 96 ) mapping_defaults/ProtoDark 208 -48 0 1 1 } -// brush 82 +// brush 81 { ( 176 720 208 ) ( 176 721 208 ) ( 176 720 209 ) mapping_defaults/ProtoDark 208 -48 0 1 1 ( 176 720 208 ) ( 176 720 209 ) ( 177 720 208 ) mapping_defaults/ProtoDark -144 -48 0 1 1 @@ -749,7 +740,7 @@ ( 192 960 224 ) ( 193 960 224 ) ( 192 960 225 ) mapping_defaults/ProtoDark -144 -48 0 1 1 ( 240 752 224 ) ( 240 752 225 ) ( 240 753 224 ) mapping_defaults/ProtoDark 208 -48 0 1 1 } -// brush 83 +// brush 82 { ( -80 880 208 ) ( -80 881 208 ) ( -80 880 209 ) mapping_defaults/ProtoDark 208 -48 0 1 1 ( 160 880 208 ) ( 160 880 209 ) ( 161 880 208 ) mapping_defaults/ProtoDark -144 -48 0 1 1 @@ -758,7 +749,7 @@ ( 176 960 224 ) ( 112 960 240 ) ( 112 1088 240 ) mapping_defaults/ProtoDark -144 -208 0 1 1 ( 176 944 224 ) ( 176 944 225 ) ( 176 945 224 ) mapping_defaults/ProtoDark 208 -48 0 1 1 } -// brush 84 +// brush 83 { ( -176 880 208 ) ( -176 881 208 ) ( -176 880 209 ) mapping_defaults/ProtoDark 208 -48 0 1 1 ( -176 880 208 ) ( -176 880 209 ) ( -175 880 208 ) mapping_defaults/ProtoDark -144 -48 0 1 1 @@ -767,7 +758,7 @@ ( -96 960 224 ) ( -95 960 224 ) ( -96 960 225 ) mapping_defaults/ProtoDark -144 -48 0 1 1 ( -80 960 224 ) ( -80 960 225 ) ( -80 961 224 ) mapping_defaults/ProtoDark 208 -48 0 1 1 } -// brush 85 +// brush 84 { ( -992 464 16 ) ( -992 465 16 ) ( -992 464 17 ) mapping_defaults/ProtoEmerald 192 0 0 0.25 0.25 ( -992 464 16 ) ( -992 464 17 ) ( -991 464 16 ) mapping_defaults/ProtoEmerald 0 0 0 0.25 0.25 @@ -776,7 +767,7 @@ ( -944 608 32 ) ( -943 608 32 ) ( -944 608 33 ) mapping_defaults/ProtoEmerald 0 0 0 0.25 0.25 ( -944 608 32 ) ( -944 608 33 ) ( -944 609 32 ) mapping_defaults/ProtoEmerald 192 0 0 0.25 0.25 } -// brush 86 +// brush 85 { ( -1008 688 16 ) ( -1008 689 16 ) ( -1008 688 17 ) mapping_defaults/ProtoEmerald 192 0 0 0.25 0.25 ( -1008 688 16 ) ( -1008 688 17 ) ( -1007 688 16 ) mapping_defaults/ProtoEmerald 0 0 0 0.25 0.25 @@ -785,7 +776,7 @@ ( -944 832 32 ) ( -943 832 32 ) ( -944 832 33 ) mapping_defaults/ProtoEmerald 0 0 0 0.25 0.25 ( -944 832 32 ) ( -944 832 33 ) ( -944 833 32 ) mapping_defaults/ProtoEmerald 192 0 0 0.25 0.25 } -// brush 87 +// brush 86 { ( -1184 320 16 ) ( -1184 321 16 ) ( -1184 320 17 ) mapping_defaults/ProtoEmerald 192 0 0 0.25 0.25 ( -1184 320 16 ) ( -1184 320 17 ) ( -1183 320 16 ) mapping_defaults/ProtoEmerald 0 0 0 0.25 0.25 @@ -794,7 +785,7 @@ ( -928 368 32 ) ( -927 368 32 ) ( -928 368 33 ) mapping_defaults/ProtoEmerald 0 0 0 0.25 0.25 ( -928 368 32 ) ( -928 368 33 ) ( -928 369 32 ) mapping_defaults/ProtoEmerald 192 0 0 0.25 0.25 } -// brush 88 +// brush 87 { ( -1120 352 144 ) ( -1120 353 144 ) ( -1120 352 145 ) mapping_defaults/ProtoEmerald 192 0 0 0.25 0.25 ( -1120 352 144 ) ( -1120 352 145 ) ( -1119 352 144 ) mapping_defaults/ProtoEmerald 0 0 0 0.25 0.25 @@ -803,7 +794,7 @@ ( -992 816 160 ) ( -991 816 160 ) ( -992 816 161 ) mapping_defaults/ProtoEmerald 0 0 0 0.25 0.25 ( -992 368 160 ) ( -992 368 161 ) ( -992 369 160 ) mapping_defaults/ProtoEmerald 192 0 0 0.25 0.25 } -// brush 89 +// brush 88 { ( -384 208 16 ) ( -384 209 16 ) ( -384 208 17 ) mapping_defaults/ProtoYellow 192 0 0 0.25 0.25 ( -384 208 16 ) ( -384 208 17 ) ( -383 208 16 ) mapping_defaults/ProtoYellow 0 0 0 0.25 0.25 @@ -812,7 +803,7 @@ ( -256 304 32 ) ( -255 304 32 ) ( -256 304 33 ) mapping_defaults/ProtoYellow 0 0 0 0.25 0.25 ( -256 304 32 ) ( -256 304 33 ) ( -256 305 32 ) mapping_defaults/ProtoYellow 192 0 0 0.25 0.25 } -// brush 90 +// brush 89 { ( -792 464 16 ) ( -792 465 16 ) ( -792 464 17 ) mapping_defaults/ProtoOrange 208 -48 0 1 1 ( -792 472 16 ) ( -792 472 17 ) ( -791 472 16 ) mapping_defaults/ProtoOrange -144 -48 0 1 1 @@ -821,7 +812,7 @@ ( -424 480 24 ) ( -423 480 24 ) ( -424 480 25 ) mapping_defaults/ProtoOrange -144 -48 0 1 1 ( -640 472 64 ) ( -640 472 96 ) ( -640 600 96 ) mapping_defaults/ProtoOrange 208 -48 0 1 1 } -// brush 91 +// brush 90 { ( -592 472 64 ) ( -592 600 96 ) ( -592 472 96 ) mapping_defaults/ProtoOrange 208 -48 0 1 1 ( -792 472 16 ) ( -792 472 17 ) ( -791 472 16 ) mapping_defaults/ProtoOrange -144 -48 0 1 1 @@ -830,7 +821,7 @@ ( -424 480 24 ) ( -423 480 24 ) ( -424 480 25 ) mapping_defaults/ProtoOrange -144 -48 0 1 1 ( -424 480 24 ) ( -424 480 25 ) ( -424 481 24 ) mapping_defaults/ProtoOrange 208 -48 0 1 1 } -// brush 92 +// brush 91 { ( -640 472 64 ) ( -640 600 96 ) ( -640 472 96 ) mapping_defaults/ProtoOrange 208 -48 0 1 1 ( -792 472 16 ) ( -792 472 17 ) ( -791 472 16 ) mapping_defaults/ProtoOrange -144 -48 0 1 1 @@ -839,7 +830,7 @@ ( -424 480 24 ) ( -423 480 24 ) ( -424 480 25 ) mapping_defaults/ProtoOrange -144 -48 0 1 1 ( -592 472 64 ) ( -592 472 96 ) ( -592 600 96 ) mapping_defaults/ProtoOrange 208 -48 0 1 1 } -// brush 93 +// brush 92 { ( -256 -256 16 ) ( -256 -224 16 ) ( -256 -224 144 ) mapping_defaults/ProtoDark 0 0 0 0.25 0.25 ( 144 320 16 ) ( 112 320 16 ) ( 112 320 144 ) mapping_defaults/ProtoDark 0 0 0 0.25 0.25 @@ -848,7 +839,7 @@ ( -960 1280 16 ) ( -959 1280 16 ) ( -960 1280 17 ) mapping_defaults/ProtoDark 0 0 0 0.25 0.25 ( 368 -192 16 ) ( 368 -192 17 ) ( 368 -191 16 ) mapping_defaults/ProtoDark 0 0 0 0.25 0.25 } -// brush 94 +// brush 93 { ( -1248 -320 -16 ) ( -1248 -319 -16 ) ( -1248 -320 -15 ) mapping_defaults/ProtoDark 0 0 0 0.25 0.25 ( 144 320 16 ) ( 112 320 16 ) ( 112 320 144 ) mapping_defaults/ProtoDark 0 0 0 0.25 0.25 @@ -857,7 +848,7 @@ ( -960 1280 16 ) ( -959 1280 16 ) ( -960 1280 17 ) mapping_defaults/ProtoDark 0 0 0 0.25 0.25 ( -256 -256 16 ) ( -256 -224 144 ) ( -256 -224 16 ) mapping_defaults/ProtoDark 0 0 0 0.25 0.25 } -// brush 95 +// brush 94 { ( -1248 -320 -16 ) ( -1248 -319 -16 ) ( -1248 -320 -15 ) mapping_defaults/ProtoDark 0 0 0 0.25 0.25 ( -1088 -416 -16 ) ( -1088 -416 -15 ) ( -1087 -416 -16 ) mapping_defaults/ProtoDark 0 0 0 0.25 0.25 @@ -866,7 +857,7 @@ ( 144 320 16 ) ( 112 320 144 ) ( 112 320 16 ) mapping_defaults/ProtoDark 0 0 0 0.25 0.25 ( -256 -256 16 ) ( -256 -224 144 ) ( -256 -224 16 ) mapping_defaults/ProtoDark 0 0 0 0.25 0.25 } -// brush 96 +// brush 95 { ( -96 800 16 ) ( -96 801 16 ) ( -96 800 17 ) mapping_defaults/ProtoDark 208 -48 0 1 1 ( -96 800 16 ) ( -96 800 17 ) ( -95 800 16 ) mapping_defaults/ProtoDark -144 -48 0 1 1 @@ -875,7 +866,7 @@ ( 176 880 32 ) ( 177 880 32 ) ( 176 880 33 ) mapping_defaults/ProtoDark -144 -48 0 1 1 ( 0 800 112 ) ( 0 928 96 ) ( 0 800 96 ) mapping_defaults/ProtoDark 208 -48 0 1 1 } -// brush 97 +// brush 96 { ( -96 800 16 ) ( -96 801 16 ) ( -96 800 17 ) mapping_defaults/ProtoDark 208 -48 0 1 1 ( -96 800 16 ) ( -96 800 17 ) ( -95 800 16 ) mapping_defaults/ProtoDark -144 -48 0 1 1 @@ -884,7 +875,7 @@ ( 176 880 32 ) ( 177 880 32 ) ( 176 880 33 ) mapping_defaults/ProtoDark -144 -48 0 1 1 ( 96 800 112 ) ( 96 928 96 ) ( 96 800 96 ) mapping_defaults/ProtoDark 208 -48 0 1 1 } -// brush 98 +// brush 97 { ( 96 800 112 ) ( 96 800 96 ) ( 96 928 96 ) mapping_defaults/ProtoDark 208 -48 0 1 1 ( -96 800 16 ) ( -96 800 17 ) ( -95 800 16 ) mapping_defaults/ProtoDark -144 -48 0 1 1 @@ -893,23 +884,41 @@ ( 176 880 32 ) ( 177 880 32 ) ( 176 880 33 ) mapping_defaults/ProtoDark -144 -48 0 1 1 ( 176 880 32 ) ( 176 880 33 ) ( 176 881 32 ) mapping_defaults/ProtoDark 208 -48 0 1 1 } +// brush 98 +{ +( 0 848 160 ) ( 0 832 160 ) ( 0 832 128 ) mapping_defaults/ProtoDark 208 -48 0 1 1 +( 0 832 160 ) ( 160 832 160 ) ( 160 832 128 ) mapping_defaults/ProtoDark -144 -48 0 1 1 +( 160 832 128 ) ( 160 848 128 ) ( 0 848 128 ) mapping_defaults/ProtoDark -144 -208 0 1 1 +( 0 848 160 ) ( 160 848 160 ) ( 160 832 160 ) mapping_defaults/ProtoDark -144 -208 0 1 1 +( 160 848 128 ) ( 160 848 160 ) ( 0 848 160 ) mapping_defaults/ProtoDark -144 -48 0 1 1 +( 160 832 160 ) ( 160 848 160 ) ( 160 848 128 ) mapping_defaults/ProtoDark 208 -48 0 1 1 +} // brush 99 { -( 0 800 112 ) ( 0 800 96 ) ( 0 928 96 ) mapping_defaults/ProtoDark 208 -48 0 1 1 -( 176 832 112 ) ( 176 832 128 ) ( 304 832 128 ) mapping_defaults/ProtoDark -144 -48 0 1 1 -( 96 800 128 ) ( 128 800 128 ) ( 128 928 128 ) mapping_defaults/ProtoDark -144 -208 0 1 1 -( 128 880 160 ) ( 96 880 160 ) ( 96 1008 160 ) mapping_defaults/ProtoDark -144 -208 0 1 1 -( 176 848 32 ) ( 177 848 32 ) ( 176 848 33 ) mapping_defaults/ProtoDark -144 -48 0 1 1 -( 176 880 32 ) ( 176 880 33 ) ( 176 881 32 ) mapping_defaults/ProtoDark 208 -48 0 1 1 +( 0 832 160 ) ( 0 800 160 ) ( 0 800 112 ) mapping_defaults/ProtoDark 208 -48 0 1 1 +( 0 800 160 ) ( 176 800 160 ) ( 152 800 112 ) mapping_defaults/ProtoDark -144 -48 0 1 1 +( 152 800 112 ) ( 152 832 112 ) ( 0 832 112 ) mapping_defaults/ProtoDark -144 -208 0 1 1 +( 0 832 160 ) ( 176 832 160 ) ( 176 800 160 ) mapping_defaults/ProtoDark -144 -208 0 1 1 +( 152 832 112 ) ( 176 832 160 ) ( 0 832 160 ) mapping_defaults/ProtoDark -144 -48 0 1 1 +( 176 800 160 ) ( 176 832 160 ) ( 152 832 112 ) mapping_defaults/ProtoDark -44 -44 0 1 1 } // brush 100 { -( 0 800 112 ) ( 0 800 96 ) ( 0 928 96 ) mapping_defaults/ProtoDark 208 -48 0 1 1 -( -96 800 16 ) ( -96 800 17 ) ( -95 800 16 ) mapping_defaults/ProtoDark -144 -48 0 1 1 -( 96 800 112 ) ( 128 800 112 ) ( 128 928 112 ) mapping_defaults/ProtoDark -144 -208 0 1 1 -( 128 880 160 ) ( 96 880 160 ) ( 96 1008 160 ) mapping_defaults/ProtoDark -144 -208 0 1 1 -( 176 832 112 ) ( 304 832 128 ) ( 176 832 128 ) mapping_defaults/ProtoDark -144 -48 0 1 1 -( 176 880 32 ) ( 176 880 33 ) ( 176 881 32 ) mapping_defaults/ProtoDark 208 -48 0 1 1 +( -792 944 176 ) ( -792 945 176 ) ( -792 944 177 ) mapping_defaults/ProtoDark 208 -48 0 1 1 +( -716 940 176 ) ( -716 940 177 ) ( -715 940 176 ) mapping_defaults/ProtoDark -144 -48 0 1 1 +( -716 944 176 ) ( -715 944 176 ) ( -716 945 176 ) mapping_defaults/ProtoDark -144 -208 0 1 1 +( -612 948 272 ) ( -612 949 272 ) ( -611 948 272 ) mapping_defaults/ProtoDark -144 -208 0 1 1 +( -612 948 180 ) ( -611 948 180 ) ( -612 948 181 ) mapping_defaults/ProtoDark -144 -48 0 1 1 +( -512 940 192 ) ( -512 940 208 ) ( -512 1068 208 ) mapping_defaults/ProtoDark 208 -48 0 1 1 +} +// brush 101 +{ +( -512 940 192 ) ( -512 1068 208 ) ( -512 940 208 ) mapping_defaults/ProtoDark 208 -48 0 1 1 +( -716 940 176 ) ( -716 940 177 ) ( -715 940 176 ) mapping_defaults/ProtoDark -144 -48 0 1 1 +( -716 944 224 ) ( -715 944 224 ) ( -716 945 224 ) mapping_defaults/ProtoDark -144 -208 0 1 1 +( -612 948 272 ) ( -612 949 272 ) ( -611 948 272 ) mapping_defaults/ProtoDark -144 -208 0 1 1 +( -612 948 180 ) ( -611 948 180 ) ( -612 948 181 ) mapping_defaults/ProtoDark -144 -48 0 1 1 +( -464 948 180 ) ( -464 948 181 ) ( -464 949 180 ) mapping_defaults/ProtoDark 208 -48 0 1 1 } } // entity 1 diff --git a/projects/sampleGame/externGame/externGame.zig b/projects/sampleGame/externGame/externGame.zig index eabf60d..a263e59 100644 --- a/projects/sampleGame/externGame/externGame.zig +++ b/projects/sampleGame/externGame/externGame.zig @@ -59,39 +59,34 @@ pub const ExternGameObject = struct { const rctx = rend.context(); imgui.utils.structDebugWindow(rctx); - if (ig.begin("external game object", null, .{})) { - ig.textf("sup", .{}); + // if (ig.begin("external game object", null, .{})) { + // ig.textf("sup", .{}); - _ = ig.sliderFloat("skybox strength", &rctx.skyboxSystem.brightnessFactor, 0, 10, null, .{}); + // _ = ig.sliderFloat("skybox strength", &rctx.skyboxSystem.brightnessFactor, 0, 10, null, .{}); - if (rctx.activeCamera) |camera| { - const forwardVector = camera.forward(); - ig.textf("forward vector x:{d} y:{d} z:{d}", .{ forwardVector.x, forwardVector.y, forwardVector.z }); - } + // if (rctx.activeCamera) |camera| { + // const forwardVector = camera.forward(); + // ig.textf("forward vector x:{d} y:{d} z:{d}", .{ forwardVector.x, forwardVector.y, forwardVector.z }); + // } + // } + // ig.end(); - ig.textf("window at 0x{x}", .{@intFromPtr(backlog.platform.context().window)}); - if (ig.smallButton("click to show sdl messagebox")) { - //_ = backlog.platform.windowing.sdl3.c.SDL_ShowSimpleMessageBox(0, "lmao", "you lmaoed your last uwu", backlog.platform.context().window); - } - } - ig.end(); + // if (ig.begin("list of textures", null, .{})) { + // var iterator = rctx.textureList.map.iterator(); + // while (iterator.next()) |i| { + // ig.textf("{s}", .{i.value_ptr.*.name.utf8()}); + // } + // } + // ig.end(); - if (ig.begin("list of textures", null, .{})) { - var iterator = rctx.textureList.map.iterator(); - while (iterator.next()) |i| { - ig.textf("{s}", .{i.value_ptr.*.name.utf8()}); - } - } - ig.end(); - - if (ig.begin("list of meshes", null, .{})) { - ig.textf("number of meshes: {d}", .{rctx.meshPool.installedMeshes.count()}); - var iterator = rctx.meshPool.installedMeshes.iterator(); - while (iterator.next()) |i| { - ig.textf("{s}", .{i.value_ptr.*.name.utf8()}); - } - } - ig.end(); + // if (ig.begin("list of meshes", null, .{})) { + // ig.textf("number of meshes: {d}", .{rctx.meshPool.installedMeshes.count()}); + // var iterator = rctx.meshPool.installedMeshes.iterator(); + // while (iterator.next()) |i| { + // ig.textf("{s}", .{i.value_ptr.*.name.utf8()}); + // } + // } + // ig.end(); } pub fn destroy(self: *@This()) void {