Tea-bag is Third party extension utility project.
- simdpp 2.1 (Boost Software License, Version 1.0)
- stb master-e6afb9c (Public Domain or MIT license)
- imgui 1.70 (MIT license)
- imnodes master-68af72f (MIT license)
- raylib 2.5-dev (zlib license)
- libressl 2.9.2 (Dual license; OpenSSL & SSLeay)
- zlib 1.2.11 (zlib license)
- libuv 1.38.1 (MIT license)
- freetype 2.9.1 (FreeType License)
- LuaJIT 2.0.5 (MIT license)
- LuaDist/LuaJIT-CMakeLists.txt 2.0.3 (MIT license)
- bzip2 1.0.5 (BSD-like license)
- xz/liblzma 5.2.4 (Public domain)
- libarchive 3.3.3 (New BSD license)
- CMake 3.13.4 (BSD 3-Clause license)
- external/archive/build/Modules/CMakePushCheckState.cmake
- gperftools 2.7 (BSD 3-Clause license)
- nng 1.3.2 (MIT license)
- glfw 3.3 (zlib license)
- sqlite 3.28.0 (Public Domain)
- date master-27d1e1e (MIT license)
- lmdb bbc15ab (The OpenLDAP Public License)
- civetweb master-2100e66 (MIT license)
- asmjit master-5d40561 (zlib license)
- blend2d master-934d071 (zlib license)
- OpenBLAS 0.3.7 (BSD 3-Clause license)
- icu4c 57.1 (ICU license; http://source.icu-project.org/repos/icu/icu/trunk/LICENSE)
- flatbuffers 1.10.0 (Apache License, Version 2.0)
- gtest 1.7.0 (BSD 3-clause license)
- http-parser 2.8.1 (MIT license)
- minizip 1.1 (zlib license)
- demangle (google-glog) 0.3.4 (BSD 3-clause license)
- lemon 1.3.1 (Boost Software License, Version 1.0)
- lfds 7.1.1 (Public domain)
- fmt 6.2.1 (MIT license)
- jsoncpp 1.8.4 (MIT license)
- tinyxml2 7.0.1 (zlib license)
- NanumGothicCoding 2.5 (SIL Open Font License, Version 1.1)
## x11, xRandr
sudo apt-get install xorg-dev
## OpenGL
sudo apt-get install libglu1-mesa-dev
Optional:
## OpenCL
sudo apt-get install ocl-icd-opencl-dev
## UDev
sudo apt-get install libudev-dev
## xcb-image
sudo apt-get install libxcb-image0-dev
- Do not use exception expressions.
The main build options you will want to configure are as follows:
USE_CCACHE
: Enableccache
compile.USE_GOLD
: Enableld.gold
linker ifgcc
compiler.USE_PCH
: Enable PCH compile.USE_OPENGL
: EnableOpenGL
library.USE_OPENCL
: EnableOpenCL
library.USE_CUDA
: EnableCUDA
compile.USE_DOXYGEN
: Enabledoxygen
documentation.USE_RTTI
: Enable RTTI flag.DISABLE_TDLOG
: Disable tbag default logger.DISABLE_LUAJIT_EXE_FLAGS
: Disable LuaJIT Embedding flags if apple.DISABLE_DEFAULT_TPOT_LUAJIT
: Do not use the default TpoT mode as LuaJIT.DISABLE_TESTER
: Do not build the tester target.INSTALL_WITH_FAKE_LUAJIT
: Install fake LuaJIT.
- EMPTY.
luajit + raylib + imgui example:
-- Core - Basic window
width = 800
height = 450
tbag.SetConfigFlags(tbag.FLAG_WINDOW_RESIZABLE);
tbag.InitWindow(width, height, 'Basic window')
tbag.GuiInitRay()
tbag.GuiNodesInitialize()
tbag.SetTargetFPS(60)
gradient = tbag.GenImageGradientV(400, 400, tbag.RED, tbag.BLUE);
texture = tbag.LoadTextureFromImage(gradient);
tbag.UnloadImage(gradient);
gradient = nil
while not tbag.WindowShouldClose() do
tbag.GuiUpdateRay()
if tbag.GuiBegin('Window') then
tbag.GuiText('Label')
end
tbag.GuiEnd()
tbag.GuiShowDemoWindow()
tbag.GuiNodesShowDemoWindow()
tbag.BeginDrawing()
tbag.ClearBackground({30, 30, 30})
tbag.DrawTexture(texture, 0, 0, tbag.WHITE);
tbag.DrawCircleV({width/2, height/2}, 50, tbag.RED);
text = tbag.format('Current FPS: {}', tbag.GetFPS())
tbag.DrawText(text, 10, 20, 20, {200, 200, 200});
tbag.EndDrawing()
end
tbag.UnloadTexture(texture);
texture = nil
tbag.GuiNodesShutdown()
tbag.GuiShutdownRay()
tbag.CloseWindow()
See the LICENSE
file for details. In summary, tbag is licensed under the MIT license.
+--------------------------+
| __ __ |
| / /_/ /_ ____ _____ _ |
| / __/ __ \/ __ `/ __ `/ |
| / /_/ /_/ / /_/ / /_/ / |
| \__/_.___/\__,_/\__, / |
| /____/ |
| Third party libs package |
+--------------------------+