Geometry Nodes: use static instead of dynamic cast

In my (fairly extreme) test file this results in a 6% speedup.
The assumption that the dynamic cast would succeed was in place
before already.
This commit is contained in:
Jacques Lucke 2022-12-29 21:13:52 +01:00
parent dba2d82846
commit 83b103fd2f
1 changed files with 3 additions and 2 deletions

View File

@ -1324,8 +1324,9 @@ void GeometryNodesLazyFunctionLogger::log_socket_value(
const GPointer value,
const fn::lazy_function::Context &context) const
{
GeoNodesLFUserData *user_data = dynamic_cast<GeoNodesLFUserData *>(context.user_data);
BLI_assert(user_data != nullptr);
/* In this context we expect only a single kind of user data, so use `static_cast`. */
GeoNodesLFUserData *user_data = static_cast<GeoNodesLFUserData *>(context.user_data);
BLI_assert(dynamic_cast<GeoNodesLFUserData *>(context.user_data) != nullptr);
if (!user_data->log_socket_values) {
return;
}