Jump to content

Recommended Posts

Posted

Hello, it's me again with a bug report regarding nuances of the camera workflow :)
 

#include "Leadwerks.h"

namespace lwe = Leadwerks;

int main(int argc, const char* argv[])
{
  auto displays    = lwe::GetDisplays();
  auto window      = lwe::CreateWindow("Camera::SetRealtime in release", 0, 0, displays[0]->size.x, displays[0]->size.y, displays[0], lwe::WINDOW_CENTER);
  auto framebuffer = lwe::CreateFramebuffer(window);
  auto world       = lwe::CreateWorld();

  auto camera0 = lwe::CreateCamera(world);
  auto camera1 = lwe::CreateCamera(world);

  auto camera0_rt = lwe::CreateTextureBuffer(window->size.width, window->size.height, 0, true);
  auto camera1_rt = nullptr; // framebuffer

  auto camera0_tx = lwe::CreateTexture(lwe::TEXTURE_2D, window->size.width, window->size.height, lwe::TEXTURE_DEPTH);
  camera0_rt->SetDepthAttachment(camera0_tx, 0);

  auto camera1_effect    = lwe::LoadPostEffect("Effects/BaseColor.fx");
  auto camera1_effect_id = camera1->AddPostEffect(camera1_effect);
  camera1->EnablePostEffect(camera1_effect_id);
  camera1->SetUniform(camera1_effect_id, "ColorBuffer", camera0_tx);

  camera0->SetRenderTarget(camera0_rt);
  camera1->SetRenderTarget(camera1_rt);

  camera0->SetOrder(0);
  camera1->SetOrder(1);
  camera1->SetRenderLayers(0);

  auto box = lwe::CreateBox(world);
  box->SetPosition(0.0, 0.0, 2.0);

#if 1 // no effect in release build
  camera0->SetRealtime(false);
#endif

  while (!window->Closed() &&
         !window->KeyDown(lwe::KEY_ESCAPE))
  {
    box->Turn(0.0, 10.0, 0.0);

    world->Update();
    world->Render(framebuffer, false, 0);
  }

  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...