Macos changes
This commit is contained in:
Vendored
+5
-2
@@ -18,9 +18,12 @@
|
||||
"name": "Editor (Mac)",
|
||||
"type": "lldb",
|
||||
"request": "launch",
|
||||
"program": "${workspaceRoot}/build/external/Seele/Debug/Editor",
|
||||
"program": "${workspaceRoot}/build/external/Seele/Editor",
|
||||
"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)",
|
||||
|
||||
@@ -58,7 +58,9 @@ add_library(Engine SHARED "")
|
||||
target_include_directories(Engine PRIVATE src/Engine)
|
||||
target_link_libraries(Engine PUBLIC Vulkan::Vulkan)
|
||||
target_link_libraries(Engine PUBLIC GPUOpen::VulkanMemoryAllocator)
|
||||
if(NOT APPLE)
|
||||
target_link_libraries(Engine PUBLIC slang::slang-glslang)
|
||||
endif()
|
||||
target_link_libraries(Engine PUBLIC EnTT::EnTT)
|
||||
target_link_libraries(Engine PUBLIC glfw)
|
||||
target_link_libraries(Engine PUBLIC glm::glm)
|
||||
|
||||
+10
-5
@@ -70,27 +70,32 @@
|
||||
{
|
||||
"name": "release",
|
||||
"displayName": "Release (no ASan)",
|
||||
"configurePreset": "release"
|
||||
"configurePreset": "release",
|
||||
"jobs": 0
|
||||
},
|
||||
{
|
||||
"name": "release-asan",
|
||||
"displayName": "Release (ASan)",
|
||||
"configurePreset": "release-asan"
|
||||
"configurePreset": "release-asan",
|
||||
"jobs": 0
|
||||
},
|
||||
{
|
||||
"name": "debug",
|
||||
"displayName": "Debug (no ASan)",
|
||||
"configurePreset": "debug"
|
||||
"configurePreset": "debug",
|
||||
"jobs": 0
|
||||
},
|
||||
{
|
||||
"name": "debug-mac",
|
||||
"displayName": "Debug Mac (no ASan)",
|
||||
"configurePreset": "debug-mac"
|
||||
"configurePreset": "debug-mac",
|
||||
"jobs": 0
|
||||
},
|
||||
{
|
||||
"name": "debug-asan",
|
||||
"displayName": "Debug (ASan)",
|
||||
"configurePreset": "debug-asan"
|
||||
"configurePreset": "debug-asan",
|
||||
"jobs": 0
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -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")
|
||||
@@ -619,7 +619,7 @@ void VertexData::loadMeshlets(MeshId id, const Array<Vector>& loadedPositions, c
|
||||
// todo: use meshopt for bb generation
|
||||
m.bounding = AABB();
|
||||
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{
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
{
|
||||
"name": "vulkan"
|
||||
},
|
||||
"vulkan-loader",
|
||||
{
|
||||
"name": "vulkan-memory-allocator"
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user