bgfx/examples/00-helloworld/helloworld.cpp

63 lines
1.4 KiB
C++
Raw Normal View History

2013-02-22 09:07:31 +04:00
/*
2016-01-01 11:11:04 +03:00
* Copyright 2011-2016 Branimir Karadzic. All rights reserved.
* License: https://github.com/bkaradzic/bgfx#license-bsd-2-clause
2013-02-22 09:07:31 +04:00
*/
#include "common.h"
#include <bgfx/bgfx.h>
#include <bx/uint32_t.h>
#include "logo.h"
2013-02-22 09:07:31 +04:00
2013-03-26 08:13:54 +04:00
int _main_(int /*_argc*/, char** /*_argv*/)
2013-02-22 09:07:31 +04:00
{
uint32_t width = 1280;
uint32_t height = 720;
uint32_t debug = BGFX_DEBUG_TEXT;
uint32_t reset = BGFX_RESET_VSYNC;
bgfx::init();
2013-05-09 09:57:54 +04:00
bgfx::reset(width, height, reset);
// Enable debug text.
bgfx::setDebug(debug);
2013-02-22 09:07:31 +04:00
// Set view 0 clear state.
bgfx::setViewClear(0
, BGFX_CLEAR_COLOR|BGFX_CLEAR_DEPTH
2013-02-22 09:07:31 +04:00
, 0x303030ff
, 1.0f
, 0
);
while (!entry::processEvents(width, height, debug, reset) )
{
// Set view 0 default viewport.
bgfx::setViewRect(0, 0, 0, width, height);
2013-02-22 09:07:31 +04:00
// This dummy draw call is here to make sure that view 0 is cleared
// if no other draw calls are submitted to view 0.
bgfx::touch(0);
2013-02-22 09:07:31 +04:00
// Use debug font to print information about this example.
bgfx::dbgTextClear();
bgfx::dbgTextImage(bx::uint16_max(width/2/8, 20)-20
, bx::uint16_max(height/2/16, 6)-6
, 40
, 12
, s_logo
, 160
);
2013-02-22 09:07:31 +04:00
bgfx::dbgTextPrintf(0, 1, 0x4f, "bgfx/examples/00-helloworld");
bgfx::dbgTextPrintf(0, 2, 0x6f, "Description: Initialization and debug text.");
// Advance to next frame. Rendering thread will be kicked to
2013-02-22 09:07:31 +04:00
// process submitted rendering primitives.
bgfx::frame();
}
// Shutdown bgfx.
bgfx::shutdown();
return 0;
}