Skip to content

integration of impact overlay and base system - #88

Open
ccp-intern wants to merge 2 commits into
mainfrom
base-system-integration
Open

integration of impact overlay and base system#88
ccp-intern wants to merge 2 commits into
mainfrom
base-system-integration

Conversation

@ccp-intern

Copy link
Copy Markdown
Member

https://fenriscreations.atlassian.net/browse/PLAT-11995
Integration of modular ship base system and impact overlays.
Fixes damage displayed on modular ships, as well as shield effect and debris particle effects.

Generalizes damage overlay functions from EveChildMesh to EveSpaceObjectChild, and provides implementations for EveChildInstancedMeshes.
Akin to EveChildMesh, makes parts in EveChildInstancedMeshes own their locators.
Added python exposed function for explosion and benchmark scripts to get transformed locators.

In conjunction with https://p4swarm.ccp.ad.local/reviews/3505580

cleanup

Update EveChildInstancedMeshes.cpp

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cpp-linter Review

Used clang-format v21.1.8

Click here for the full clang-format patch
diff --git a/trinity/Eve/SpaceObject/EveSpaceObject2.h b/trinity/Eve/SpaceObject/EveSpaceObject2.h
index 5e11408..b77b530 100644
--- a/trinity/Eve/SpaceObject/EveSpaceObject2.h
+++ b/trinity/Eve/SpaceObject/EveSpaceObject2.h
@@ -314 +314 @@ public:
-	void CollectPartDamageOverlays( std::vector<std::pair<EveDamageOverlay*, int32_t>>& out );
+	void CollectPartDamageOverlays( std::vector<std::pair<EveDamageOverlay*, int32_t>> & out );

Have any feedback or feature suggestions? Share it here.

Comment thread trinity/Eve/SpaceObject/EveSpaceObject2.h Outdated
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
@github-actions
github-actions Bot dismissed their stale review September 10, 2026 09:13

outdated suggestion


EveDamageOverlayPtr EveSpaceObjectChild::EnsurePartDamageOverlay( PartTag )
{
CCP_ASSERT( false );

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need this?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Kind of. This "ensure" function is basically "get or create". So it should never return null.

What would the proper default implementation be?

  1. Returning a nullptr would violate the premise, that this function is never returning null.
  2. Creating new objects, just to be able to return something that is not null, seems like an even worse choice. Not only because of the unnecessary allocation, but also because you would expect GetPartDamageOverlay to not return null when you call it later on with that partTag.

Which is why I chose asserting that the function has a proper implementation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants