Restore back dialogs and interaction with objects
This commit is contained in:
1 parent
0fcf8c4fa5
commit
f90324e2b7
7 files changed
+86
-57
No files matched your search
@@ -278,7 +278,7 @@ namespace FRG
|
||||
|
||||
// --- interaction position pole ---
|
||||
if (obj.state.hasInteractionPosition) {
|
||||
const Eigen::Vector3f& p = obj.state.interactionPosition;
|
||||
Eigen::Vector3f p = obj.state.interactionPosition.toEigen();
|
||||
static constexpr float hw = 0.05f; // half width/depth
|
||||
static constexpr float hh = 1.5f; // half height (pole = 3.0 tall)
|
||||
|
||||
@@ -340,7 +340,7 @@ namespace FRG
|
||||
if (ctrlHeld) {
|
||||
// Set the interaction position for the selected object (world XZ, Y=0).
|
||||
auto& target = loc.interactiveObjects[selectedInteractiveObjectIndex];
|
||||
target.state.interactionPosition = Eigen::Vector3f(worldHit.x(), 0.f, worldHit.z());
|
||||
target.state.interactionPosition = Vec3fp(static_cast<fp>(worldHit.x()), static_cast<fp>(0.f), static_cast<fp>(worldHit.z()));
|
||||
target.state.hasInteractionPosition = true;
|
||||
boundsClickCount = 0; // cancel any in-progress bounds placement
|
||||
buildInteractiveObjectBoundsMeshes();
|
||||
@@ -417,12 +417,9 @@ namespace FRG
|
||||
item["rotationX"] = obj.loadedObject.creationInfo.meshRotationX;
|
||||
item["rotationY"] = obj.loadedObject.creationInfo.meshRotationY;
|
||||
item["rotationZ"] = obj.loadedObject.creationInfo.meshRotationZ;
|
||||
item["positionX"] = obj.state.jsonPositionX;
|
||||
item["positionY"] = obj.state.jsonPositionY;
|
||||
item["positionZ"] = obj.state.jsonPositionZ;
|
||||
item["scale"] = obj.loadedObject.creationInfo.meshScale;
|
||||
item["interactionRadius"] = obj.state.interactionRadius;
|
||||
item["approachRadius"] = obj.state.approachRadius;
|
||||
item["approachRadius"] = static_cast<double>(obj.state.approachRadius);
|
||||
if (!obj.state.activateFunctionName.empty())
|
||||
item["activateFunction"] = obj.state.activateFunctionName;
|
||||
item["pivotX"] = obj.state.pivot.x();
|
||||
@@ -435,9 +432,9 @@ namespace FRG
|
||||
item["boundsMaxY"] = obj.state.boundsMax.y();
|
||||
item["boundsMaxZ"] = obj.state.boundsMax.z();
|
||||
if (obj.state.hasInteractionPosition) {
|
||||
item["interactionPositionX"] = obj.state.interactionPosition.x();
|
||||
item["interactionPositionY"] = obj.state.interactionPosition.y();
|
||||
item["interactionPositionZ"] = obj.state.interactionPosition.z();
|
||||
item["interactionPositionX"] = static_cast<double>(obj.state.interactionPosition.x);
|
||||
item["interactionPositionY"] = static_cast<double>(obj.state.interactionPosition.y);
|
||||
item["interactionPositionZ"] = static_cast<double>(obj.state.interactionPosition.z);
|
||||
}
|
||||
j["objects"].push_back(item);
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user