Untitled

 avatar
unknown
plain_text
5 months ago
1.5 kB
6
Indexable
#include "pandaFramework.h"
#include "pandaSystem.h"
#include "CameraController.h"
#include "asyncTaskManager.h"
#include "genericAsyncTask.h"
#include "scenemanager.h"
#include "load_prc_file.h"
#include <GL/gl.h>


int main(int argc, char *argv[])
{

    // load_prc_file_data("", "load-display pandagl");
    // load_prc_file_data("", "notify-level-display debug");
    // load_prc_file_data("", "notify-level-shader debug");

    PandaFramework framework;
    framework.open_framework(argc, argv);
    framework.set_window_title("panda3D");

    WindowFramework *window = framework.open_window();
    if (!window) {
        framework.close_framework();
        return 1;
    }

    window->enable_keyboard();

    SceneManager sceneManager(window);
    sceneManager.initializeScene();

    CameraController* cameraController = new CameraController(window);
    cameraController->setupControls();

    PT(AsyncTaskManager) taskMgr = AsyncTaskManager::get_global_ptr();
    taskMgr->add(new GenericAsyncTask(
        "UpdateCameraTask",
        [](GenericAsyncTask *task, void *data)
        {
            CameraController *cameraController =
                static_cast<CameraController *>(data);
            if (cameraController) {
                cameraController->updateCamera();
            }
            return AsyncTask::DS_cont;
        },
        cameraController));

    framework.main_loop();

    framework.close_framework();
    return 0;
}
Editor is loading...
Leave a Comment