Macos changes

This commit is contained in:
Dynamitos
2026-03-16 16:54:30 +01:00
parent 4fd44b075f
commit 925537dcb3
6 changed files with 82 additions and 9 deletions
+5 -2
View File
@@ -18,9 +18,12 @@
"name": "Editor (Mac)", "name": "Editor (Mac)",
"type": "lldb", "type": "lldb",
"request": "launch", "request": "launch",
"program": "${workspaceRoot}/build/external/Seele/Debug/Editor", "program": "${workspaceRoot}/build/external/Seele/Editor",
"args": [], "args": [],
"cwd": "${workspaceRoot}/build/external/Seele/Debug", "cwd": "${workspaceRoot}/build/external/Seele",
"initCommands": [
"command script import ${workspaceFolder}/external/Seele/gdb/Seele_lldb.py"
]
}, },
{ {
"name": "Editor (Linux)", "name": "Editor (Linux)",
+3 -1
View File
@@ -58,7 +58,9 @@ add_library(Engine SHARED "")
target_include_directories(Engine PRIVATE src/Engine) target_include_directories(Engine PRIVATE src/Engine)
target_link_libraries(Engine PUBLIC Vulkan::Vulkan) target_link_libraries(Engine PUBLIC Vulkan::Vulkan)
target_link_libraries(Engine PUBLIC GPUOpen::VulkanMemoryAllocator) target_link_libraries(Engine PUBLIC GPUOpen::VulkanMemoryAllocator)
target_link_libraries(Engine PUBLIC slang::slang-glslang) if(NOT APPLE)
target_link_libraries(Engine PUBLIC slang::slang-glslang)
endif()
target_link_libraries(Engine PUBLIC EnTT::EnTT) target_link_libraries(Engine PUBLIC EnTT::EnTT)
target_link_libraries(Engine PUBLIC glfw) target_link_libraries(Engine PUBLIC glfw)
target_link_libraries(Engine PUBLIC glm::glm) target_link_libraries(Engine PUBLIC glm::glm)
+10 -5
View File
@@ -70,27 +70,32 @@
{ {
"name": "release", "name": "release",
"displayName": "Release (no ASan)", "displayName": "Release (no ASan)",
"configurePreset": "release" "configurePreset": "release",
"jobs": 0
}, },
{ {
"name": "release-asan", "name": "release-asan",
"displayName": "Release (ASan)", "displayName": "Release (ASan)",
"configurePreset": "release-asan" "configurePreset": "release-asan",
"jobs": 0
}, },
{ {
"name": "debug", "name": "debug",
"displayName": "Debug (no ASan)", "displayName": "Debug (no ASan)",
"configurePreset": "debug" "configurePreset": "debug",
"jobs": 0
}, },
{ {
"name": "debug-mac", "name": "debug-mac",
"displayName": "Debug Mac (no ASan)", "displayName": "Debug Mac (no ASan)",
"configurePreset": "debug-mac" "configurePreset": "debug-mac",
"jobs": 0
}, },
{ {
"name": "debug-asan", "name": "debug-asan",
"displayName": "Debug (ASan)", "displayName": "Debug (ASan)",
"configurePreset": "debug-asan" "configurePreset": "debug-asan",
"jobs": 0
} }
] ]
} }
+62
View File
@@ -0,0 +1,62 @@
import lldb
def Array_SummaryProvider(valobj, internal_dict):
size = valobj.GetChildMemberWithName('arraySize').GetValueAsUnsigned(0)
return f"Array(size={size})"
class ArraySyntheticProvider:
def __init__(self, valobj, internal_dict):
self.valobj = valobj
self.update()
def num_children(self):
return self.size
def get_child_index(self, name):
try:
return int(name.lstrip('[').rstrip(']'))
except:
return -1
def get_child_at_index(self, index):
if index < 0 or index >= self.size:
return None
offset = index * self.data.GetType().GetPointeeType().GetByteSize()
return self.data.CreateChildAtOffset(f'[{index}]', offset, self.data.GetType().GetPointeeType())
def update(self):
self.data = self.valobj.GetChildMemberWithName('_data')
self.size = self.valobj.GetChildMemberWithName('arraySize').GetValueAsUnsigned(0)
def has_children(self):
return True
def Vector_SummaryProvider(valobj, internal_dict):
# Get the template parameters to determine vector length
type_name = valobj.GetTypeName()
# Extract components
x = valobj.GetChildMemberWithName('x').GetValue()
y = valobj.GetChildMemberWithName('y').GetValue()
# Check if z and w exist
z_child = valobj.GetChildMemberWithName('z')
w_child = valobj.GetChildMemberWithName('w')
comps = [x, y]
if z_child.IsValid():
comps.append(z_child.GetValue())
if w_child.IsValid():
comps.append(w_child.GetValue())
return "(" + ", ".join(comps) + ")"
def __lldb_init_module(debugger, internal_dict):
# Register Array formatter
debugger.HandleCommand('type summary add -F Seele_lldb.Array_SummaryProvider -x "^Seele::Array<.*>$"')
debugger.HandleCommand('type synthetic add -l Seele_lldb.ArraySyntheticProvider -x "^Seele::Array<.*>$"')
# Register Vector formatter
debugger.HandleCommand('type summary add -F Seele_lldb.Vector_SummaryProvider -x "^glm::(detail::)?t?vec[234]?<.*>$"')
print("Seele LLDB formatters loaded")
+1 -1
View File
@@ -619,7 +619,7 @@ void VertexData::loadMeshlets(MeshId id, const Array<Vector>& loadedPositions, c
// todo: use meshopt for bb generation // todo: use meshopt for bb generation
m.bounding = AABB(); m.bounding = AABB();
for (size_t j = 0; j < m.vertexIndices.size; ++j) { for (size_t j = 0; j < m.vertexIndices.size; ++j) {
m.bounding.adjust(loadedPositions[vertexIndices[meshoptMeshlets[i].vertex_offset + j + m.indicesOffset]]); m.bounding.adjust(loadedPositions[vertexIndices[meshoptMeshlets[i].vertex_offset + j + vertexOffset]]);
} }
} }
registeredMeshes[id].meshData = MeshData{ registeredMeshes[id].meshData = MeshData{
+1
View File
@@ -3,6 +3,7 @@
{ {
"name": "vulkan" "name": "vulkan"
}, },
"vulkan-loader",
{ {
"name": "vulkan-memory-allocator" "name": "vulkan-memory-allocator"
}, },