Merge branch 'main' into SP3-20-UI-System

This commit is contained in:
maverickdgg 2022-11-22 21:04:03 +08:00
commit 44733308f1
4 changed files with 29 additions and 21 deletions

View File

@ -53,15 +53,16 @@ project "SHADE_CSharp"
function configElementCS(cfg) function configElementCS(cfg)
_p(2,'<Configurations>Debug;Release;Publish</Configurations>') _p(2,'<Configurations>Debug;Release;Publish</Configurations>')
end end
function docsElementCS(cfg) -- function docsElementCS(cfg)
_p(2,'<GenerateDocumentationFile>true</GenerateDocumentationFile>') -- _p(2,'<GenerateDocumentationFile>true</GenerateDocumentationFile>')
end -- end
function docsLocationElementCS(cfg) -- function docsLocationElementCS(cfg)
_p(2,'<DocumentationFile>$(OutDir)</DocumentationFile>') -- _p(2,'<DocumentationFile>$(OutDir)</DocumentationFile>')
end -- end
premake.override(premake.vstudio.cs2005.elements, "projectProperties", function (oldfn, cfg) premake.override(premake.vstudio.cs2005.elements, "projectProperties", function (oldfn, cfg)
return table.join(oldfn(cfg), { return table.join(oldfn(cfg), {
platformsElementCS, configElementCS, docsElementCS, docsLocationElementCS, -- platformsElementCS, configElementCS, docsElementCS, docsLocationElementCS,
platformsElementCS, configElementCS,
}) })
end) end)

View File

@ -47,14 +47,14 @@ namespace SHADE
{ {
// Get the current scene graph to traverse and update // Get the current scene graph to traverse and update
const auto& SCENE_GRAPH = SHSceneManager::GetCurrentSceneGraph(); const auto& SCENE_GRAPH = SHSceneManager::GetCurrentSceneGraph();
UpdateEntity(SCENE_GRAPH.GetRoot(), !IsRunInEditorPause); UpdateEntity(SCENE_GRAPH.GetRoot(), false);
} }
void SHTransformSystem::TransformPostPhysicsUpdate::Execute(double) noexcept void SHTransformSystem::TransformPostPhysicsUpdate::Execute(double) noexcept
{ {
// Get the current scene graph to traverse and update // Get the current scene graph to traverse and update
const auto& SCENE_GRAPH = SHSceneManager::GetCurrentSceneGraph(); const auto& SCENE_GRAPH = SHSceneManager::GetCurrentSceneGraph();
UpdateEntity(SCENE_GRAPH.GetRoot(), IsRunInEditorPause); UpdateEntity(SCENE_GRAPH.GetRoot(), true);
} }
void SHTransformSystem::Init() void SHTransformSystem::Init()

View File

@ -302,11 +302,14 @@ namespace SHADE
{ {
colliderComponent->position = WORLD_POS; colliderComponent->position = WORLD_POS;
colliderComponent->orientation = WORLD_ROT; colliderComponent->orientation = WORLD_ROT;
colliderComponent->scale = WORLD_SCL;
if (colliderComponent->scale != WORLD_SCL)
{
colliderComponent->scale = WORLD_SCL;
colliderComponent->RecomputeCollisionShapes(); colliderComponent->RecomputeCollisionShapes();
} }
} }
}
void SHPhysicsSystem::PhysicsPostUpdate::postUpdateSyncTransforms void SHPhysicsSystem::PhysicsPostUpdate::postUpdateSyncTransforms
( (
@ -325,7 +328,11 @@ namespace SHADE
if (physicsObject.GetRigidBody()->isActive()) if (physicsObject.GetRigidBody()->isActive())
physicsObject.prevTransform = CURRENT_TF; physicsObject.prevTransform = CURRENT_TF;
// Sync with rigid bodies. If an object doesn't have a rigidbody, no update is needed here as it is done in pre-update. // Skip sleeping objects
if (physicsObject.GetRigidBody()->isSleeping())
return;
// Sync with rigid bodies
if (rigidBodyComponent && SHSceneManager::CheckNodeAndComponentsActive<SHRigidBodyComponent>(physicsObject.entityID)) if (rigidBodyComponent && SHSceneManager::CheckNodeAndComponentsActive<SHRigidBodyComponent>(physicsObject.entityID))
{ {
// Skip static bodies // Skip static bodies

View File

@ -119,14 +119,14 @@ project "SHADE_Managed"
links{"librttr_core.lib"} links{"librttr_core.lib"}
links{"fmodstudio_vc.lib", "fmod_vc.lib"} links{"fmodstudio_vc.lib", "fmod_vc.lib"}
require "vstudio" -- require "vstudio"
function docsElementCPP(cfg) -- function docsElementCPP(cfg)
_p(3,'<GenerateXMLDocumentationFiles>true</GenerateXMLDocumentationFiles>') -- _p(3,'<GenerateXMLDocumentationFiles>true</GenerateXMLDocumentationFiles>')
end -- end
premake.override(premake.vstudio.vc2010.elements, "clCompile", function (oldfn, cfg) -- premake.override(premake.vstudio.vc2010.elements, "clCompile", function (oldfn, cfg)
return table.join(oldfn(cfg), { -- return table.join(oldfn(cfg), {
docsElementCPP, -- docsElementCPP,
}) -- })
end) -- end)