Jump to content

Entity scale affects local SetPosition for children


Go to solution Solved by Josh,

Recommended Posts

Posted

Expect: 3, 4, 3.5

Result due scaling: 3, 8, 5.5

#include "UltraEngine.h"

using namespace UltraEngine;

int main(int argc, const char* argv[]) {
    auto displays = GetDisplays();
    auto window = CreateWindow("Ultra Engine", 0, 0, 1280, 720, displays[0], WINDOW_CENTER | WINDOW_TITLEBAR);
    auto world = CreateWorld();
    auto framebuffer = CreateFramebuffer(window);

    auto mainP = CreatePivot(world);
    mainP->SetScale(5.0);
    mainP->SetPosition(3, 3, 3);
    auto childP = CreatePivot(world);
    childP->SetPosition(mainP->GetPosition());
    childP->SetParent(mainP);
    childP->SetPosition(0, 1, 0.5);
    auto resPos = childP->GetPosition(true);

    Print(String(resPos.x) + String(", ") + String(resPos.y) + String(", ") + String(resPos.z));

    //Main loop
    while (window->Closed() == false and window->KeyDown(KEY_ESCAPE) == false) {
        world->Update();
        world->Render(framebuffer);
    }
    return 0;
}

 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...